mirror of
https://github.com/rembo10/headphones.git
synced 2026-05-19 10:05:30 +01:00
- mb findRelease get additional info incl Date, Formats, Tracks, Rgid etc, pass to searchresults added optional artist to findrelease, if searching by album can now enter album:artist in the search bar, went for this for now as I didn’t want to change the design too much but maybe in the future we could have 2 boxes, artist album and then there’s no need for the dropdown artist, album - base position at search box and persist selected option (uses local storage) when refreshing, useful if entering multiple albums increased the search box size a little - searchresults album results - new fields from mb, fall back to cover art archive rgid url if last.fm not found (should get more results), musicbrainz album icon link, pass mb rgid to addReleaseById to redirect to album page artist results - musicbrainz artist icon - importer addreleaseById - added rgid param to create the album record upfront with status Loading if from searchresults - webserve redirect to album page using rgid from searchresults - album spinner while album is loading
115 lines
4.5 KiB
HTML
115 lines
4.5 KiB
HTML
<%inherit file="base.html" />
|
|
|
|
<%def name="body()">
|
|
<div class="table_wrapper">
|
|
<div id="paddingheader">
|
|
<h1 class="clearfix"><i class="fa fa-search"></i> Search Result</h1>
|
|
</div>
|
|
<table class="display" id="searchresults_table">
|
|
<thead>
|
|
<tr>
|
|
<th id="albumart"></th>
|
|
%if type == 'album':
|
|
<th id="albumname">Album Name</th>
|
|
<th id="artistnamesmall">Artist Name</th>
|
|
<th id="format">Format</th>
|
|
<th id="tracks">Tracks</th>
|
|
<th id="reldate">Date</th>
|
|
<th id="scoresmall">Score</th>
|
|
%else:
|
|
<th id="artistname">Artist Name</th>
|
|
<th id="score">Score</th>
|
|
%endif
|
|
<th id="mb"></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
%if searchresults:
|
|
%for result in searchresults:
|
|
<%
|
|
if result['score'] == 100:
|
|
grade = 'A'
|
|
else:
|
|
grade = 'Z'
|
|
|
|
if type == 'album':
|
|
albuminfo = 'Type: ' + result['rgtype'] + ', Country: ' + result['country']
|
|
caa_group_url = "http://coverartarchive.org/release-group/%s/front-250.jpg" %result['rgid']
|
|
%>
|
|
<tr class="grade${grade}">
|
|
%if type == 'album':
|
|
<td id="albumart" style=" text-align: center; vertical-align: middle;"><div id="artistImg"><img title="${result['albumid']}" class="albumArt" height="50" width="50" onerror="this.src='${caa_group_url}'"></div></td>
|
|
%else:
|
|
<td id="albumart"><div id="artistImg"><img title="${result['id']}" class="albumArt" height="50" width="50"></div></td>
|
|
%endif
|
|
%if type == 'album':
|
|
<td id="albumname"><a href="addReleaseById?rid=${result['albumid']}&rgid=${result['rgid']}" title="${albuminfo}">${result['title']}</a></td>
|
|
<td id="artistnamesmall"><a href="addArtist?artistid=${result['id']}" title="${result['uniquename']}">${result['uniquename']}</a></td>
|
|
<td id="format">${result['formats']}</td>
|
|
<td id="tracks">${result['tracks']}</td>
|
|
<td id="reldate">${result['date']}</td>
|
|
<td id="score"><a href="${result['albumurl']} "title="View on MusicBrainz"><div class="bar"><div class="score" style="width: ${result['score']}px">${result['score']}</div></div></a></td>
|
|
<td id="musicbrainz" style=" text-align: center; line-height: 0; vertical-align: middle;"><a href="${result['albumurl']}"><img src="interfaces/default/images/MusicBrainz_Album_Icon.png" title="View on MusicBrainz" height="20" width="20"></a></td>
|
|
%else:
|
|
<td id="artistname"><a href="addArtist?artistid=${result['id']}" title="${result['uniquename']}">${result['uniquename']}</a></td>
|
|
<td id="score"><a href="${result['url']} "title="View on MusicBrainz"><div class="bar"><div class="score" style="width: ${result['score']}px">${result['score']}</div></div></a></td>
|
|
<td id="musicbrainz" style=" text-align: center; line-height: 0; vertical-align: middle;"><a href="${result['url']}"><img src="interfaces/default/images/MusicBrainz_Artist_Icon.png" title="View on MusicBrainz" height="20" width="20"></a></td>
|
|
%endif
|
|
|
|
</tr>
|
|
%endfor
|
|
%endif
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</%def>
|
|
|
|
<%def name="headIncludes()">
|
|
<link rel="stylesheet" href="interfaces/default/css/data_table.css">
|
|
</%def>
|
|
|
|
<%def name="javascriptIncludes()">
|
|
|
|
<script src="js/libs/jquery.dataTables.min.js"></script>
|
|
|
|
<script>
|
|
function getArt() {
|
|
$("table#searchresults_table tr td#albumart img").each(function(){
|
|
var id = $(this).attr('title');
|
|
var image = $(this);
|
|
if ( !image.hasClass('done') ) {
|
|
image.addClass('done');
|
|
getImageLinks(image,id,"${type}");
|
|
}
|
|
});
|
|
}
|
|
function initThisPage() {
|
|
getArt();
|
|
$('#searchresults_table').dataTable(
|
|
{
|
|
"bDestroy": true,
|
|
"aoColumnDefs": [
|
|
{ 'bSortable': false, 'aTargets': [ 0 ] }
|
|
],
|
|
"oLanguage": {
|
|
"sLengthMenu":"Show _MENU_ results per page",
|
|
"sEmptyTable": "No results",
|
|
"sInfo":"Showing _START_ to _END_ of _TOTAL_ results",
|
|
"sInfoEmpty":"Showing 0 to 0 of 0 results",
|
|
"sInfoFiltered":"(filtered from _MAX_ total results)",
|
|
"sSearch" : ""},
|
|
"iDisplayLength": 25,
|
|
"sPaginationType": "full_numbers",
|
|
"aaSorting": []
|
|
});
|
|
resetFilters("album");
|
|
}
|
|
$(document).ready(function(){
|
|
initThisPage();
|
|
});
|
|
$(window).load(function(){
|
|
initFancybox();
|
|
});
|
|
</script>
|
|
</%def>
|