Skip to content

Commit

Permalink
Merge pull request #3972 from advplyr/remove-col-ambiguity
Browse files Browse the repository at this point in the history
Fix server crash remove column name ambiguity #3966
  • Loading branch information
advplyr authored Feb 12, 2025
2 parents 725192f + a34813b commit 808d235
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
8 changes: 4 additions & 4 deletions server/utils/queries/libraryItemsBookFilters.js
Original file line number Diff line number Diff line change
Expand Up @@ -580,9 +580,9 @@ module.exports = {
// When collapsing series and sorting by title then use the series name instead of the book title
// for this set an attribute "display_title" to use in sorting
if (global.ServerSettings.sortingIgnorePrefix) {
bookAttributes.include.push([Sequelize.literal(`IFNULL((SELECT s.nameIgnorePrefix FROM bookSeries AS bs, series AS s WHERE bs.seriesId = s.id AND bs.bookId = book.id AND bs.id IN (${bookSeriesToInclude.map((v) => `"${v.id}"`).join(', ')})), titleIgnorePrefix)`), 'display_title'])
bookAttributes.include.push([Sequelize.literal(`IFNULL((SELECT s.nameIgnorePrefix FROM bookSeries AS bs, series AS s WHERE bs.seriesId = s.id AND bs.bookId = book.id AND bs.id IN (${bookSeriesToInclude.map((v) => `"${v.id}"`).join(', ')})), \`libraryItem\`.\`titleIgnorePrefix\`)`), 'display_title'])
} else {
bookAttributes.include.push([Sequelize.literal(`IFNULL((SELECT s.name FROM bookSeries AS bs, series AS s WHERE bs.seriesId = s.id AND bs.bookId = book.id AND bs.id IN (${bookSeriesToInclude.map((v) => `"${v.id}"`).join(', ')})), \`book\`.\`title\`)`), 'display_title'])
bookAttributes.include.push([Sequelize.literal(`IFNULL((SELECT s.name FROM bookSeries AS bs, series AS s WHERE bs.seriesId = s.id AND bs.bookId = book.id AND bs.id IN (${bookSeriesToInclude.map((v) => `"${v.id}"`).join(', ')})), \`libraryItem\`.\`title\`)`), 'display_title'])
}
}

Expand Down Expand Up @@ -1035,8 +1035,8 @@ module.exports = {

const textSearchQuery = await Database.createTextSearchQuery(query)

const matchTitle = textSearchQuery.matchExpression('title')
const matchSubtitle = textSearchQuery.matchExpression('subtitle')
const matchTitle = textSearchQuery.matchExpression('book.title')
const matchSubtitle = textSearchQuery.matchExpression('book.subtitle')

// Search title, subtitle, asin, isbn
const books = await Database.bookModel.findAll({
Expand Down
6 changes: 3 additions & 3 deletions server/utils/queries/libraryItemsPodcastFilters.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ module.exports = {
return [[Sequelize.literal(`\`podcast\`.\`author\` COLLATE NOCASE ${nullDir}`)]]
} else if (sortBy === 'media.metadata.title') {
if (global.ServerSettings.sortingIgnorePrefix) {
return [[Sequelize.literal('titleIgnorePrefix COLLATE NOCASE'), dir]]
return [[Sequelize.literal('`podcast`.`titleIgnorePrefix` COLLATE NOCASE'), dir]]
} else {
return [[Sequelize.literal('`podcast`.`title` COLLATE NOCASE'), dir]]
}
Expand Down Expand Up @@ -321,8 +321,8 @@ module.exports = {

const textSearchQuery = await Database.createTextSearchQuery(query)

const matchTitle = textSearchQuery.matchExpression('title')
const matchAuthor = textSearchQuery.matchExpression('author')
const matchTitle = textSearchQuery.matchExpression('podcast.title')
const matchAuthor = textSearchQuery.matchExpression('podcast.author')

// Search title, author, itunesId, itunesArtistId
const podcasts = await Database.podcastModel.findAll({
Expand Down

0 comments on commit 808d235

Please sign in to comment.