-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
5 lines (5 loc) · 12 KB
/
index.html
1
2
3
4
5
<!doctype html><html ng-app="TubePlates"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><title ng-bind="title">TubePlates</title><!-- for Google --><meta name="description" content="TubePlates is an app to listen to releases listed on
Discogs easily using YouTube"><meta name="application-name" content="TubePlates"><!-- for Facebook --><meta name="og:description" content="TubePlates is an app to listen to releases listed on
Discogs easily using YouTube"><meta name="og:image" content="images/circle.png"><meta id="viewport" name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport"><link rel="stylesheet" href="tubeplates.css"><body><div id="main" ng-cloak="" ng-class="{back: fullscreen}"><div id="playersection" ng-controller="PlayerCtrl"><!-- ngInclude: 'views/player.html' --><div id="header"><div id="left-header"><h2><a href="/">TubePlates</a></h2></div><div id="right-header"><div id="playlist-controls"><button ng-click="prevTrack()" class="nextprev" id="plprev"><span></span></button> <button ng-click="nextTrack()" class="nextprev" id="plnext"><span></span></button> <button ng-click="playlist.clear()" id="clear">Clear</button></div></div></div><div id="player"><youtube-player class="col-md-8" id="youtube" video-id="videoID"></youtube-player><div id="playlist"><p ng-show="playlist.items.length == 0" id="emptytext">Playlist is empty</p><table><tbody ui-sortable="sortableOptions" ng-model="playlist.items"><tr ng-class="{'playing': playlist.playing == $index, 'notfound':item.notfound}" ng-repeat="item in playlist.items"><td class="trackname"><a ng-click="changeTrack($index)">{{item.name}}</a><td>{{item.artist[0].name}}<td ng-click="playlist.removeItem($index)" class="remove-item"><span></span></table></div></div></div><div id="discogs" discogs-section="" ng-class="{fullscreen: fullscreen}" ng-controller="DiscogsCtrl"><!-- ngInclude: 'views/discogs.html' --><div id="cover" ng-show="coverimg"><img ng-src="{{coverimg}}"><div class="img_caption" ng-show="covercaption
&& (current_view == 'label_search' || current_view == 'artist_search')">{{covercaption}}</div></div><div id="search_form"><form ng-submit="search()"><div id="query"><input type="text" ng-model="searchParams.q" autofocus></div><div id="search_category"><select ng-model="searchParams.type" ng-options="c[0].toUpperCase()+c.substring(1)
for c in categories"></select></div></form></div><div id="tab_buttons"><button ng-if="history['search']" type="button" ng-click="prevSearch()" ng-disabled="current_view.indexOf('_search') != -1 && !showAbout()"><span id="searchicon"></span> <span class="tabtitle">{{history['search'].query.substring(0,20)}}</span></button> <button ng-if="history['label']" type="button" ng-disabled="current_view == 'label' && !showAbout()" ng-click="prevLabel()"><span id="labelicon"></span> <span class="tabtitle">{{history['label'].name}}</span></button> <button ng-if="history['artist']" type="button" ng-disabled="current_view == 'artist' && !showAbout()" ng-click="prevArtist()"><span id="artisticon"></span> <span class="tabtitle">{{history['artist'].name.substring(0,20)}}</span></button> <button ng-if="history['release']" type="button" ng-disabled="current_view == 'release' && !showAbout()" ng-click="prevRelease()"><span id="releaseicon"></span> <span class="tabtitle">{{history['release'].name.substr(0,20)}}</span></button></div><!-- ngInclude: 'views/about.html' --><div id="about" ng-show="showAbout()"><p><em>TubePlates</em> is an app to listen to releases listed on <em>Discogs</em> easily using <em>YouTube</em></p><p>This is how it works:</p><ol><li>You use the app to find releases you like (by artist,label or name).</li><li>Each time a playback is requested for a track, the app searches YouTube for it, tries to choose the best result and play it in your browser. If the track isn't found it is skipped and and playback for the next track in the playlist/release is requested.</li></ol><p>Points to consider:</p><ul><li>The YouTube results are estimated and therefore not perfect; don't expect them to be correct at all times.</li><li>It doesn't work on default browsers on mobile OSes(iOS,Android) due to restrictions in their video players but it does seem to work on the <a href="http://www.puffinbrowser.com/download/">Puffin browser</a> which has a free version.</li></ul><a id="github-button" href="https://github.com/tubeplates/tubeplates"><i></i>View on GitHub</a></div><i ng-show="loading()" id="loadingspinner" class=""></i><div style="height:100%" class="alert" ng-show="!showAbout() && no_results()"><strong><p class="text-center">No results!</p></strong></div><span ng-show="!showAbout()"><!-- ngInclude: 'views/discogs-tabs/release_search.html' --><angular-table model="data.release_search.content" ng-show="tabActive('release_search')" resize-events="[fullscreen]"><header-row><header-column class="thumbcol"></header-column><header-column ng-click="sort('year')" class="yearcol"><div>Year</div><sort-arrow name="year"></sort-arrow></header-column><header-column ng-click="sort('catno')" class="catnocol"><div>CATNO</div><sort-arrow name="catno"></sort-arrow></header-column><header-column ng-click="sort('title')" class="titlecol"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_viewRelease($event,row)" ng-class="{selected: row.rowSelected}"><column class="thumbcol" ng-mouseenter="setCoverimg(row.thumb)" ng-mouseleave="setCoverimg()"><img class="thumb" ng-src="{{ row.thumb}}"></column><column class="yearcol">{{ row.year}}</column><column class="catnocol">{{ row.catno }}</column><column>{{ row.title }}</column><column ng-click="t_addToPlaylist($event,row)" class="plbtn"><span></span></column></row></angular-table><!-- ngInclude: 'views/discogs-tabs/artist_search.html' --><angular-table model="data.artist_search.content" resize-events="[fullscreen]" ng-show="tabActive('artist_search')"><header-row><header-column class="thumbcol"></header-column><header-column ng-click="sort('title')" class="titlecol"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_viewArtist($event,row)" ng-class="{selected: row.rowSelected}"><column class="thumbcol" ng-mouseenter="artistInfo(row) && setCoverimg(row.thumb)" ng-mouseleave="setCoverimg()"><img class="thumb" ng-src="{{ row.thumb}}"></column><column>{{ row.title}}</column></row></angular-table><!-- ngInclude: 'views/discogs-tabs/label_search.html' --><angular-table model="data.label_search.content" resize-events="[fullscreen]" ng-show="tabActive('label_search')"><header-row><header-column class="thumbcol" sortable sort-field-name="thumb"></header-column><header-column ng-click="sort('title')" class="titlecol"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_viewLabel($event,row)" ng-class="{selected: row.rowSelected}"><column class="thumbcol" ng-mouseenter="labelInfo(row) && setCoverimg(row.thumb)" ng-mouseleave="setCoverimg()"><img class="thumb" ng-src="{{ row.thumb}}"></column><column>{{ row.title}}</column></row></angular-table><!-- ngInclude: 'views/discogs-tabs/release.html' --><angular-table model="data.release.content" resize-events="[fullscreen]" ng-show="tabActive('release')"><header-row><header-column ng-click="sort('position.sort')" class="trackcol"><div>Track</div><sort-arrow name="position.sort"></sort-arrow></header-column><header-column ng-click="sort('title')"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="sort('artist')"><div>Artist</div><sort-arrow name="artist"></sort-arrow></header-column><header-column ng-show="extraArtists()" ng-click="sort('extraartists')" class="extraartistscol"><div>Extra Artists</div><sort-arrow name="extraartists"></sort-arrow></header-column><header-column ng-show="Duration()" class="durationcol" ng-click="sort('duration')"><div class="time"></div><sort-arrow name="duration"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_playTrack($event,row)" ng-class="{selected: row.rowSelected, notfound: row.notFound}"><column class="trackcol">{{ row.position.display }}</column><column>{{ row.title }}</column><column class="artistcol"><span ng-repeat="artist in row.artists"><a ng-click="$event.stopPropagation()" href="#?artist={{artist.id}}">{{artist.name}}</a> {{$last ? '' : ', '}}</span></column><column class="extraartistscol" ng-show="extraArtists()"><span ng-repeat="artist in row.extraartists"><a ng-click="$event.stopPropagation()" href="#?artist={{artist.id}}">{{artist.name}}</a> {{$last ? '' : ', '}}</span></column><column class="durationcol" ng-show="Duration()">{{ row.duration }}</column><column ng-click="t_addToPlaylist($event,row)" class="plbtn"><span></span></column></row></angular-table><!-- ngInclude: 'views/discogs-tabs/artist.html' --><angular-table model="data.artist.content" resize-events="[fullscreen]" ng-show="tabActive('artist')"><header-row><header-column class="thumbcol"></header-column><header-column ng-click="sort('year')" class="yearcol"><div>Year</div><sort-arrow name="year"></sort-arrow></header-column><header-column ng-click="sort('title')"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="sort('artist')"><div>Artist</div><sort-arrow name="artist"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_viewRelease($event,row)" ng-class="{selected: row.rowSelected}"><column class="thumbcol" ng-mouseenter="setCoverimg(row.thumb)" ng-mouseleave="setCoverimg()"><img class="thumb" ng-src="{{ row.thumb}}"></column><column class="yearcol">{{ row.year}}</column><column>{{ row.title}}</column><column>{{ row.artist}}</column><column ng-click="t_addToPlaylist($event,row)" class="plbtn"><span></span></column></row></angular-table><!-- ngInclude: 'views/discogs-tabs/label.html' --><angular-table model="data.label.content" resize-events="[fullscreen]" ng-show="tabActive('label')"><header-row><header-column class="thumbcol" sortable sort-field-name="thumb"></header-column><header-column ng-click="sort('catno')" class="catnocol"><div>CATNO</div><sort-arrow name="catno"></sort-arrow></header-column><header-column ng-click="sort('year')" class="yearcol"><div>Year</div><sort-arrow name="year"></sort-arrow></header-column><header-column ng-click="sort('title')"><div>Title</div><sort-arrow name="title"></sort-arrow></header-column><header-column ng-click="sort('artist')"><div>Artist</div><sort-arrow name="artist"></sort-arrow></header-column><header-column ng-click="togglefullScreen()" class="fullscreenbtn"><span></span></header-column></header-row><row ng-click="t_viewRelease($event,row)" ng-class="{selected: row.rowSelected}"><column class="thumbcol" ng-mouseenter="setCoverimg(row.thumb)" ng-mouseleave="setCoverimg()"><img class="thumb" ng-src="{{ row.thumb}}"></column><column class="catnocol">{{ row.catno}}</column><column class="yearcol">{{ row.year}}</column><column>{{ row.title}}</column><column>{{ row.artist}}</column><column ng-click="t_addToPlaylist($event,row)" class="plbtn"><span></span></column></row></angular-table></span></div></div><script src="tubeplates.js"></script>