mirror of
				https://github.com/advplyr/audiobookshelf.git
				synced 2025-10-27 11:18:14 +01:00 
			
		
		
		
	
						commit
						2115895e81
					
				@ -1,5 +1,5 @@
 | 
				
			|||||||
<template>
 | 
					<template>
 | 
				
			||||||
  <div class="flex h-full px-1 overflow-hidden">
 | 
					  <div class="flex items-center h-full px-1 overflow-hidden">
 | 
				
			||||||
    <covers-book-cover :audiobook="audiobook" :width="coverWidth" :book-cover-aspect-ratio="bookCoverAspectRatio" />
 | 
					    <covers-book-cover :audiobook="audiobook" :width="coverWidth" :book-cover-aspect-ratio="bookCoverAspectRatio" />
 | 
				
			||||||
    <div class="flex-grow px-2 audiobookSearchCardContent">
 | 
					    <div class="flex-grow px-2 audiobookSearchCardContent">
 | 
				
			||||||
      <p v-if="matchKey !== 'title'" class="truncate text-sm">{{ title }}</p>
 | 
					      <p v-if="matchKey !== 'title'" class="truncate text-sm">{{ title }}</p>
 | 
				
			||||||
@ -10,7 +10,7 @@
 | 
				
			|||||||
      <p v-if="matchKey !== 'authorFL'" class="text-xs text-gray-200 truncate">by {{ authorFL }}</p>
 | 
					      <p v-if="matchKey !== 'authorFL'" class="text-xs text-gray-200 truncate">by {{ authorFL }}</p>
 | 
				
			||||||
      <p v-else class="truncate text-xs text-gray-200" v-html="matchHtml" />
 | 
					      <p v-else class="truncate text-xs text-gray-200" v-html="matchHtml" />
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      <div v-if="matchKey === 'series' || matchKey === 'tags'" class="m-0 p-0 truncate" v-html="matchHtml" />
 | 
					      <div v-if="matchKey === 'series' || matchKey === 'tags' || matchKey === 'isbn'" class="m-0 p-0 truncate text-xs" v-html="matchHtml" />
 | 
				
			||||||
    </div>
 | 
					    </div>
 | 
				
			||||||
  </div>
 | 
					  </div>
 | 
				
			||||||
</template>
 | 
					</template>
 | 
				
			||||||
@ -70,6 +70,7 @@ export default {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      if (this.matchKey === 'tags') return `<p class="truncate">Tags: ${html}</p>`
 | 
					      if (this.matchKey === 'tags') return `<p class="truncate">Tags: ${html}</p>`
 | 
				
			||||||
      if (this.matchKey === 'authorFL') return `by ${html}`
 | 
					      if (this.matchKey === 'authorFL') return `by ${html}`
 | 
				
			||||||
 | 
					      if (this.matchKey === 'isbn') return `<p class="truncate">ISBN: ${html}</p>`
 | 
				
			||||||
      if (this.matchKey === 'series') return `<p class="truncate">Series: ${html}</p>`
 | 
					      if (this.matchKey === 'series') return `<p class="truncate">Series: ${html}</p>`
 | 
				
			||||||
      return `${html}`
 | 
					      return `${html}`
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
@ -43,6 +43,7 @@ class Book {
 | 
				
			|||||||
  get _authorsList() { return this._author.split(', ') }
 | 
					  get _authorsList() { return this._author.split(', ') }
 | 
				
			||||||
  get _narratorsList() { return this._narrator.split(', ') }
 | 
					  get _narratorsList() { return this._narrator.split(', ') }
 | 
				
			||||||
  get _genres() { return this.genres || [] }
 | 
					  get _genres() { return this.genres || [] }
 | 
				
			||||||
 | 
					  get _isbn() { return this.isbn || '' }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  get shouldSearchForCover() {
 | 
					  get shouldSearchForCover() {
 | 
				
			||||||
    if (this.cover) return false
 | 
					    if (this.cover) return false
 | 
				
			||||||
@ -279,7 +280,11 @@ class Book {
 | 
				
			|||||||
    // var authorMatch = this._author.toLowerCase().includes(search)
 | 
					    // var authorMatch = this._author.toLowerCase().includes(search)
 | 
				
			||||||
    var seriesMatch = this._series.toLowerCase().includes(search)
 | 
					    var seriesMatch = this._series.toLowerCase().includes(search)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    var bookMatchKey = titleMatch ? 'title' : subtitleMatch ? 'subtitle' : authorsMatched.length ? 'authorFL' : seriesMatch ? 'series' : false
 | 
					    // ISBN match has to be exact to prevent isbn matches to flood results. Remove dashes since isbn might have those
 | 
				
			||||||
 | 
					    var isbnMatch = this._isbn.toLowerCase().replace(/-/g, '') === search.replace(/-/g, '')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    var bookMatchKey = titleMatch ? 'title' : subtitleMatch ? 'subtitle' : authorsMatched.length ? 'authorFL' : seriesMatch ? 'series' : isbnMatch ? 'isbn' : false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    var bookMatchText = bookMatchKey ? this[bookMatchKey] : ''
 | 
					    var bookMatchText = bookMatchKey ? this[bookMatchKey] : ''
 | 
				
			||||||
    return {
 | 
					    return {
 | 
				
			||||||
      book: bookMatchKey,
 | 
					      book: bookMatchKey,
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user