164 lines
11 KiB
HTML
Executable file
164 lines
11 KiB
HTML
Executable file
<!DOCTYPE HTML>
|
|
<html lang="en" ng-app="JamStash">
|
|
<head>
|
|
<meta http-equiv="Content-type" content="text/html; charset=UTF-8">
|
|
<meta name="description" content="HTML5 Audio Streamer for Subsonic, Archive.org browsing and streaming">
|
|
<meta name="keywords" content="Subsonic, Archive.org, Live Music Archive, HTML5 Audio, Music Streaming, Live Music">
|
|
<meta property="og:image" content="http://jamstash.com/beta/images/fbpreview.png"/>
|
|
<title>Jamstash</title>
|
|
<link href="images/favicon_32x32.ico" rel="shortcut icon" />
|
|
<link rel="icon" href="images/favicon_48x48.png" sizes="48x48"/>
|
|
<link rel="icon" href="images/favicon_32x32.png" sizes="32x32"/>
|
|
<link href="style/Style.css" rel="stylesheet" type="text/css" data-name="main" />
|
|
<link href="" rel="stylesheet" type="text/css" data-name="theme" />
|
|
<link href="js/plugins/fancybox/jquery.fancybox.css" rel="stylesheet" type="text/css" />
|
|
<link href="js/plugins/jquery-split-pane.css" rel="stylesheet" />
|
|
<script src="js/plugins/jquery-2.0.3.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/angular.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/angular-route.min.js"></script>
|
|
<script src="js/plugins/angular-sanitize.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/angular-cookies.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/angular-resource.min.js" type="text/javascript"></script>
|
|
<!--
|
|
<script src="js/plugins/angular-ui-router.min.js"></script>
|
|
-->
|
|
<script src="js/plugins/jquery-ui-1.10.3.custom.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/jquery-split-pane.js"></script>
|
|
<script src="js/plugins/fancybox/jquery.fancybox.js" type="text/javascript"></script>
|
|
<script src="js/plugins/jquery.base64.js" type="text/javascript"></script>
|
|
<script src="js/plugins/jquery.dateFormat-1.0.js" type="text/javascript"></script>
|
|
<script src="js/plugins/jquery.scrollTo.min.js" type="text/javascript"></script>
|
|
<script src="js/plugins/UnityShim.js" type="text/javascript"></script>
|
|
<script src="js/plugins/jplayer/jquery.jplayer.js" type="text/javascript"></script>
|
|
<script src="js/plugins/notifyjs/notify.js" type="text/javascript"></script>
|
|
<script src="js/app.js" type="text/javascript"></script>
|
|
<script src="js/service.js" type="text/javascript"></script>
|
|
<script src="js/utils.js" type="text/javascript"></script>
|
|
<script src="js/controllers/main.js" type="text/javascript"></script>
|
|
<script src="js/controllers/settings.js" type="text/javascript"></script>
|
|
<script src="js/controllers/library.js" type="text/javascript"></script>
|
|
<script src="js/controllers/archive.js" type="text/javascript"></script>
|
|
<script src="js/controllers/queue.js"></script>
|
|
<script src="js/player.js" type="text/javascript"></script>
|
|
</head>
|
|
<body ng-controller="AppCtrl">
|
|
<div id="container">
|
|
<div id="header">
|
|
<div id="messages"></div>
|
|
<div id="loading"></div>
|
|
<a id="jslogo" title="Jamstash" class="showQueue" href=""></a>
|
|
<a id="sslogo" target="_blank" ng-show="settings.Server" ng-href="{{settings.Server}}" title="{{settings.Server}}"></a>
|
|
<div id="globalactions">
|
|
|
|
</div>
|
|
<div id="nav">
|
|
<ul class="tabs">
|
|
<li><a href="" class="first showQueue" id="action_Queue" title="Queue" class="active" ng-class="{'active': isActive('/queue')}"><img src="images/play_alt_gd_16x16.png"></a></li>
|
|
<li><a href="#/library" id="action_Library" title="Library" ng-class="{'active': isActive('/library')}"><img src="images/headphones_gd_16x14.png" /></a></li>
|
|
<!--<li><a href="#/playlists" id="action_Playlists" title="Playlists" ng-class="{'active': isActive('/playlists')}"><img src="images/list_gd_16x14.png" /></a></li>-->
|
|
<!--<li><a href="#/podcasts" id="action_Podcasts" title="Podcasts" ng-class="{'active': isActive('/podcasts')}"><img src="images/rss_16x16.png" /></a></li>-->
|
|
<li><a href="#/archive" id="action_Archive" class="" title="Archive.org - Live Music Archive" ng-class="{'active': isActive('/archive')}"><img src="images/archive_gd_16x16.png" /></a></li>
|
|
<li><a href="#/settings" id="action_Settings" class="last" title="Settings" ng-class="{'active': isActive('/settings')}"><img src="images/cog_16x16.png" /></a></li>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div id="content">
|
|
<!-- Main -->
|
|
<div ng-view></div>
|
|
|
|
<div id="SideBar">
|
|
<div id="NowPlaying">
|
|
<div class="header"><img src="images/rss_12x12.png" /> Now Playing</div>
|
|
<div id="NowPlayingList"><span class="user">Loading...</span></div>
|
|
</div>
|
|
<div id="Chat">
|
|
<div class="header"><img src="images/chat_alt_stroke_12x12.png" /> Chat</div>
|
|
<div id="ChatMsgs"></div>
|
|
</div>
|
|
<div class="submit"><img src="images/comment_stroke_gl_12x11.png" /><input type="text" id="ChatMsg" class="chat" title="Hit [Enter] to Post" /></div>
|
|
</div>
|
|
<!-- Audio Player -->
|
|
<div class="clear"></div>
|
|
|
|
<div class="clear"></div>
|
|
</div><!-- end #content -->
|
|
<!-- Player -->
|
|
<div id="player">
|
|
<div id="playercontainer">
|
|
<div id="playerleft" class="floatleft">
|
|
<div class="playeractions floatleft">
|
|
<a class="button" id="PreviousTrack" title="Previous Track" ng-click="previousTrack()"><img src="images/first_24x24.png" /></a>
|
|
<a class="button PlayTrack" title="Play/Pause" ng-click="defaultPlay()"><img src="images/play_24x32.png" /></a>
|
|
<a class="button PauseTrack" title="Play/Pause" style="display: none;"><img src="images/pause_24x32.png" /></a>
|
|
<a class="button" id="NextTrack" title="Next Track" ng-click="nextTrack()"><img src="images/last_24x24.png" /></a>
|
|
</div>
|
|
<div id="songdetails">
|
|
<div id="coverart"><a class="coverartfancy" href="{{playingSong.coverartfull}}"><img ng-src="{{playingSong.coverartthumb}}" src="images/albumdefault_60.jpg" alt="" /></a></div>
|
|
<ul>
|
|
<li class="song" id="{{playingSong.id}}" ng-bind-html="playingSong.name"></li>
|
|
<li class="album" ng-bind-html="playingSong.album"></li>
|
|
<li class="specs" ng-bind-html="playingSong.specs"></li>
|
|
<li id="songdetails_controls">
|
|
<a href="" id="action_Mute" class="mute first" title="Mute"></a>
|
|
<a href="" id="action_UnMute" class="unmute first" title="Unmute" style="display: none;"></a>
|
|
<div class="jp-volume-bar"><div class="jp-volume-bar-value"></div></div><a href="" id="action_VolumeMax" class="volume" title="Max Volume"></a>
|
|
<a href="" class="loop" title="Repeat" ng-click="toggleSetting('Repeat')" ng-class="{'hoverSelected': !settings.Repeat }"></a>
|
|
<a href="" id="action_SaveProgress" class="lock" title="Save Track Position: On" ng-show="settings.SaveTrackPosition"></a>
|
|
<a title="Favorite" href="" ng-class="{'favorite': playingSong.starred, 'rate': !playingSong.starred}" ng-click="updateFavorite(playingSong)" stop-event="click"></a>
|
|
</li>
|
|
</ul>
|
|
<div class="vertshade"></div>
|
|
</div>
|
|
<div id="playdeck_1"></div>
|
|
<div id="playdeck_2"></div>
|
|
<div id="submenu_CurrentPlaylist" class="submenu shadow" style="display: none;">
|
|
<table id="CurrentPlaylistPreviewContainer" class="simplelist songlist">
|
|
<thead></thead>
|
|
<tbody></tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<div class="playeractionssmall"><!--<a href="" class="button" id="action_ToggleSideBar" title="Toggle Side Bar"><img src="images/arrow_right_gl_12x12.png" /></a>--></div>
|
|
<div id="playermiddle">
|
|
<div id="audiocontainer">
|
|
<div class="audiojs" id="audio_wrapper0">
|
|
<div class="scrubber"><div class="progress"></div><div class="loaded"></div></div>
|
|
<div class="time"><em id="played">00:00</em>/<strong id="duration">00:00</strong></div>
|
|
<div class="error-message"></div>
|
|
</div>
|
|
</div>
|
|
<div id="preview"></div>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
</div>
|
|
</div> <!-- End container -->
|
|
<div id="queue">
|
|
<div class="queueactions">
|
|
<!--<a href="" class="button buttonvertical" id="action_QueueToPlaylist" title="Create Playlist From Queue"><img src="images/list_gd_12x11.png" /></a>-->
|
|
<a class="button" id="PreviousTrack" title="Previous Track" ng-click="previousTrack()"><img src="images/first_12x12.png" /></a>
|
|
<a class="button PlayTrack" title="Play/Pause" ng-click="defaultPlay()"><img src="images/play_12x16.png" /></a>
|
|
<a class="button PauseTrack" title="Play/Pause" style="display: none;"><img src="images/pause_12x16.png" /></a>
|
|
<a class="button" id="NextTrack" title="Next Track" ng-click="nextTrack()"><img src="images/last_12x12.png" /></a>
|
|
<a class="button" title="Shuffle Queue" ng-click="queueShuffle()">Shuffle</a>
|
|
<a class="button" id="action_Empty" title="Delete Queue" ng-click="queueEmpty()">Empty</a>
|
|
<a class="button" id="action_DeleteSelected" title="Remove Selected From Queue" ng-click="queueRemoveSelected()">Remove Song(s)</a>
|
|
</div>
|
|
<ul class="simplelist songlist noselect" style="width: 1200px;" ng-if="queue.length > 0">
|
|
<div ng-repeat="song in [queue] track by $index" class="songs" ng-include src="'js/partials/songs.html'" sortable></div>
|
|
</ul>
|
|
</div>
|
|
<script>
|
|
(function (i, s, o, g, r, a, m) {
|
|
i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
|
|
(i[r].q = i[r].q || []).push(arguments)
|
|
}, i[r].l = 1 * new Date(); a = s.createElement(o),
|
|
m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
|
|
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
|
|
|
ga('create', 'UA-40174100-1', 'jamstash.com');
|
|
ga('send', 'pageview');
|
|
|
|
</script>
|
|
</body>
|
|
</html>
|