diff options
Diffstat (limited to 'src/static/js/client/sidebar-search.js')
| -rw-r--r-- | src/static/js/client/sidebar-search.js | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/static/js/client/sidebar-search.js b/src/static/js/client/sidebar-search.js index 94f1e4ef..61a33c0d 100644 --- a/src/static/js/client/sidebar-search.js +++ b/src/static/js/client/sidebar-search.js @@ -16,6 +16,7 @@ import { openFlash, openGroup, openTrack, + openVGMAlbum, rebase, templateContent, } from '../client-util.js'; @@ -84,6 +85,7 @@ export const info = { groupResultKindString: null, singleResultKindString: null, tagResultKindString: null, + vgmAlbumResultKindString: null, groupResultDisambiguatorString: null, flashResultDisambiguatorString: null, @@ -242,6 +244,9 @@ export function getPageReferences() { info.tagResultKindString = findString('tag-result-kind'); + info.vgmAlbumResultKindString = + findString('vgm-album-result-kind'); + info.groupResultDisambiguatorString = findString('group-result-disambiguator'); @@ -1109,11 +1114,15 @@ function generateSidebarSearchResult(result, results) { switch (result.referenceType) { case 'album': { preparedSlots.href = - openAlbum(result.directory); + (result.data.classification === 'in-game vgm' + ? openVGMAlbum(result.directory) + : openAlbum(result.directory)); preparedSlots.kindString = (result.data.classification === 'single' ? info.singleResultKindString + : result.data.classification === 'in-game vgm' + ? info.vgmAlbumResultKindString : info.albumResultKindString); break; @@ -1252,11 +1261,19 @@ function generateSidebarSearchResult(result, results) { } function getSearchResultName(result) { - return ( + const name = result.data.name ?? - result.data.primaryName ?? - null - ); + result.data.primaryName; + + if (!name) { + return null; + } + + if (result.data.nameDetail) { + return `${name} (${result.data.nameDetail})`; + } + + return name; } function getSearchResultImageSource(result) { |