
We can now display as many levels of breadcrumbs as needed, meaning we support folders deeper than 2 levels.
128 lines
7.3 KiB
HTML
Executable file
128 lines
7.3 KiB
HTML
Executable file
<!DOCTYPE HTML>
|
|
<html lang="en" ng-app="JamStash" ng-controller="AppController">
|
|
<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/images/fbpreview.png"/>
|
|
<meta name=viewport content="width=device-width, initial-scale=1">
|
|
<title ng-bind="Page.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"/>
|
|
<!-- build:css(.) styles/vendor.min.css -->
|
|
<!-- bower:css -->
|
|
<link rel="stylesheet" href="bower_components/fancybox/source/jquery.fancybox.css" />
|
|
<!-- endbower -->
|
|
<!-- endbuild -->
|
|
<link href="styles/Style.css" rel="stylesheet" type="text/css" data-name="main" />
|
|
<link href="styles/Mobile.css" rel="stylesheet" type="text/css" data-name="main" />
|
|
<link href="" rel="stylesheet" type="text/css" data-name="theme" />
|
|
<!-- build:css(app) styles/concat.min.css -->
|
|
<link rel="stylesheet" href="player/player.css" />
|
|
<link rel="stylesheet" href="player/repeat-directive/repeat-directive.css" />
|
|
<link rel="stylesheet" href="subsonic/breadcrumbs-directive/breadcrumbs-directive.css" />
|
|
<!-- endbuild -->
|
|
</head>
|
|
<body ui-keypress="{'32 179': 'togglePause($event)', '43 61 187': 'turnVolumeUp($event)', '45 95 189': 'turnVolumeDown($event)'}" ui-keydown="{'right 176': 'nextTrack($event)', 'left 177': 'previousTrack($event)'}">
|
|
<div id="container">
|
|
<div id="header">
|
|
<div id="messages">
|
|
<span ng-attr-id="{{ 'msg_' + $index }}" class="message" ng-repeat="item in Messages track by $index" ng-bind-html="item"></span>
|
|
</div>
|
|
<div id="loading" ng-show="loading.isLoading"></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">
|
|
<a href="" class="button" ng-click="toggleQueue()" title="Pin Queue"><img src="images/arrow_right_gl_8x8.png" /></a>
|
|
</div>
|
|
<div id="nav">
|
|
<ul class="tabs">
|
|
<li><a href="#/library" class="first" id="action_Library" title="Library" ng-class="{'active': isActive('/library')}"><img src="images/headphones_gd_16x14.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>
|
|
<!-- Audio Player -->
|
|
<div class="clear"></div>
|
|
|
|
<div class="clear"></div>
|
|
</div><!-- end #content -->
|
|
<div id="SideBar" ng-include src="'queue/queue.html'" ng-controller="QueueController">
|
|
<!--
|
|
<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>
|
|
<!-- Player -->
|
|
<div ng-include src="'player/player.html'" ng-controller="PlayerController"></div>
|
|
</div> <!-- End container -->
|
|
<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>
|
|
<!-- build:js({.,app}) scripts/vendor.min.js -->
|
|
<!-- bower:js -->
|
|
<script src="bower_components/jquery/jquery.js"></script>
|
|
<script src="bower_components/angular/angular.js"></script>
|
|
<script src="bower_components/angular-route/angular-route.js"></script>
|
|
<script src="bower_components/angular-sanitize/angular-sanitize.js"></script>
|
|
<script src="bower_components/angular-cookies/angular-cookies.js"></script>
|
|
<script src="bower_components/angular-resource/angular-resource.js"></script>
|
|
<script src="bower_components/jquery-ui/ui/jquery-ui.js"></script>
|
|
<script src="bower_components/jplayer/dist/jplayer/jquery.jplayer.js"></script>
|
|
<script src="bower_components/fancybox/source/jquery.fancybox.js"></script>
|
|
<script src="bower_components/notify.js/notify.js"></script>
|
|
<script src="bower_components/jquery.scrollTo/jquery.scrollTo.js"></script>
|
|
<script src="bower_components/jquery-dateFormat/dist/jquery-dateFormat.js"></script>
|
|
<script src="bower_components/angular-locker/dist/angular-locker.min.js"></script>
|
|
<script src="bower_components/angular-ui-utils/keypress.js"></script>
|
|
<script src="bower_components/ng-lodash/build/ng-lodash.js"></script>
|
|
<!-- endbower -->
|
|
<!-- endbuild -->
|
|
<!-- our scripts -->
|
|
<!-- build:js(app) scripts/scripts.min.js -->
|
|
<script src="app.js"></script>
|
|
<script src="settings/settings.js"></script>
|
|
<script src="settings/settings-service.js"></script>
|
|
<script src="common/model-service.js"></script>
|
|
<script src="common/utils-service.js"></script>
|
|
<script src="common/page-service.js"></script>
|
|
<script src="common/loading-service.js"></script>
|
|
<script src="common/notification-service.js"></script>
|
|
<script src="common/persistence-service.js"></script>
|
|
<script src="common/main-controller.js"></script>
|
|
<script src="subsonic/subsonic.js"></script>
|
|
<script src="subsonic/subsonic-service.js"></script>
|
|
<script src="subsonic/breadcrumbs-directive/breadcrumbs-service.js"></script>
|
|
<script src="subsonic/breadcrumbs-directive/breadcrumbs-directive.js"></script>
|
|
<script src="archive/archive.js"></script>
|
|
<script src="archive/archive-service.js"></script>
|
|
<script src="player/player.js"></script>
|
|
<script src="player/player-directive.js"></script>
|
|
<script src="player/player-service.js"></script>
|
|
<script src="player/repeat-directive/repeat-directive.js"></script>
|
|
<script src="queue/queue.js"></script>
|
|
<script src="common/filters.js"></script>
|
|
<script src="common/directives.js"></script>
|
|
<!-- endbuild -->
|
|
</body>
|
|
</html>
|