Daniel@0
|
1 {% set embedCss = false %}
|
Daniel@0
|
2 {% set embedJs = false %}
|
Daniel@0
|
3 {% set lang = app.request.locale|split('_')[0] %}
|
Daniel@0
|
4 {# {% spaceless_and_one_line %}#}
|
Daniel@0
|
5 {% spaceless %}
|
Daniel@0
|
6 <!doctype html>
|
Daniel@0
|
7 <!--[if (lte IE 9) ]> <html lang="{{ lang }}" class="lteie9 nojs"> <![endif]-->
|
Daniel@0
|
8 <!--[if (gt IE 9)|!(IE)]><!--><html lang="{{ lang }}" class="nojs"><!--<![endif]-->
|
Daniel@0
|
9 <head>
|
Daniel@0
|
10 <meta charset="UTF-8">
|
Daniel@0
|
11 <meta http-equiv="X-UA-Compatible" content="IE=edge" /> {# stuff for ie #}
|
Daniel@0
|
12 <meta name="viewport" content="width=1230{#, initial-scale=1#}"> {# Attempt to fix page width on iphones #}
|
Daniel@0
|
13 {% stylesheets output='all.css' filter="less,?uglifycss" combine=true
|
Daniel@0
|
14 '@DMLVendorAssetsBundle/Resources/assets/meyerweb/reset.css'
|
Daniel@0
|
15 '@DMLVendorAssetsBundle/Resources/assets/jquery.ui/1.11.0/jquery.ui.min.css'
|
Daniel@0
|
16 '@DMLMainVisBundle/Resources/assets/legal.less'
|
Daniel@0
|
17 '@DMLMainVisBundle/Resources/assets/jquery.ui.less'
|
Daniel@0
|
18 '@DMLMainVisBundle/Resources/assets/fonts/OpenSans.less'
|
Daniel@0
|
19 '@DMLMainVisBundle/Resources/assets/page.less'
|
Daniel@0
|
20 '@DMLMainVisBundle/Resources/assets/bem-blocks/*.less'
|
Daniel@0
|
21 '@DMLMainVisBundle/Resources/assets/bem-blocks/*/*.less'
|
Daniel@0
|
22 %}
|
Daniel@0
|
23 {% if embedCss %}
|
Daniel@0
|
24 <style type="text/css">{{ render(asset_url) }}</style>
|
Daniel@0
|
25 {% else %}
|
Daniel@0
|
26 <link rel="stylesheet" href="{{ asset_url }}" type="text/css" media="all" />
|
Daniel@0
|
27 {% endif %}
|
Daniel@0
|
28 {% endstylesheets %}
|
Daniel@0
|
29 {% if (enableJasmine) %}
|
Daniel@0
|
30 {% stylesheets output='testing.css' filter="less,uglifycss" combine=true
|
Daniel@0
|
31 '@DMLVendorAssetsBundle/Resources/assets/jasmine/2.1.3/lib/jasmine-2.1.3/jasmine.css'
|
Daniel@0
|
32 %}
|
Daniel@0
|
33 {% if embedCss %}
|
Daniel@0
|
34 <style type="text/css">{{ render(asset_url) }}</style>
|
Daniel@0
|
35 {% else %}
|
Daniel@0
|
36 <link rel="stylesheet" href="{{ asset_url }}" type="text/css" media="all" />
|
Daniel@0
|
37 {% endif %}
|
Daniel@0
|
38 {% endstylesheets %}
|
Daniel@0
|
39 {% endif %}
|
Daniel@0
|
40 <title>{{ project.shortTitle }} VIS – a tool for analysing large music collections</title>
|
Daniel@0
|
41 {# http://www.favicon-generator.org/ #}
|
Daniel@0
|
42 <link rel="apple-touch-icon" sizes="57x57" href="./$/favicons/apple-icon-57x57.png">
|
Daniel@0
|
43 <link rel="apple-touch-icon" sizes="60x60" href="./$/favicons/apple-icon-60x60.png">
|
Daniel@0
|
44 <link rel="apple-touch-icon" sizes="72x72" href="./$/favicons/apple-icon-72x72.png">
|
Daniel@0
|
45 <link rel="apple-touch-icon" sizes="76x76" href="./$/favicons/apple-icon-76x76.png">
|
Daniel@0
|
46 <link rel="apple-touch-icon" sizes="114x114" href="./$/favicons/apple-icon-114x114.png">
|
Daniel@0
|
47 <link rel="apple-touch-icon" sizes="120x120" href="./$/favicons/apple-icon-120x120.png">
|
Daniel@0
|
48 <link rel="apple-touch-icon" sizes="144x144" href="./$/favicons/apple-icon-144x144.png">
|
Daniel@0
|
49 <link rel="apple-touch-icon" sizes="152x152" href="./$/favicons/apple-icon-152x152.png">
|
Daniel@0
|
50 <link rel="apple-touch-icon" sizes="180x180" href="./$/favicons/apple-icon-180x180.png">
|
Daniel@0
|
51 <link rel="icon" type="image/png" sizes="192x192" href="./$/favicons/android-icon-192x192.png">
|
Daniel@0
|
52 <link rel="icon" type="image/png" sizes="32x32" href="./$/favicons/favicon-32x32.png">
|
Daniel@0
|
53 <link rel="icon" type="image/png" sizes="96x96" href="./$/favicons/favicon-96x96.png">
|
Daniel@0
|
54 <link rel="icon" type="image/png" sizes="16x16" href="./$/favicons/favicon-16x16.png">
|
Daniel@0
|
55 <link rel="manifest" href="./$/favicons/manifest.json">
|
Daniel@0
|
56 <meta name="msapplication-TileColor" content="#ffffff">
|
Daniel@0
|
57 <meta name="msapplication-TileImage" content="./$/favicons/ms-icon-144x144.png">
|
Daniel@0
|
58 <meta name="theme-color" content="#ffffff">
|
Daniel@0
|
59 <link rel="shortcut icon" type="image/x-icon" href="./favicon.ico" />
|
Daniel@0
|
60 <link rel="icon" type="image/x-icon" href="./favicon.ico" sizes="16x16">
|
Daniel@0
|
61 {# add special css classes for IE #}
|
Daniel@0
|
62 <script type="text/javascript">document.documentElement.className = document.documentElement.className.replace("nojs", "js"); if(Function("/*@cc_on return 10===document.documentMode@*/")()){document.documentElement.className += " ie ie10";}; if(!!navigator.userAgent.match(/Trident.*rv[ :]*11\./)){document.documentElement.className += " ie ie11";}</script>
|
Daniel@0
|
63 </head>
|
Daniel@0
|
64
|
Daniel@0
|
65 <body>
|
Daniel@0
|
66 <div class="app">
|
Daniel@0
|
67 <div class="app__main-menu main-menu">
|
Daniel@0
|
68 <div class="main-menu__bar main-menu-bar">
|
Daniel@0
|
69 <div class="main-menu-bar__logo">{{ project.shortTitle }} VIS</div>
|
Daniel@0
|
70 <ul class="main-menu-bar__items main-menu-bar__items_block_help">
|
Daniel@0
|
71 <li class="main-menu-bar__item main-menu-bar__item_action_help"><a>what is this?</a></li>
|
Daniel@0
|
72 </ul>
|
Daniel@0
|
73 <ul class="main-menu-bar__items main-menu-bar__items_block_undoredo">
|
Daniel@0
|
74 <li class="main-menu-bar__item main-menu-bar__item_action_undo"><a>undo</a></li>
|
Daniel@0
|
75 <li class="main-menu-bar__item main-menu-bar__item_action_redo"><a>redo</a></li>
|
Daniel@0
|
76 </ul>
|
Daniel@0
|
77 <ul class="main-menu-bar__items main-menu-bar__items_block_misc">
|
Daniel@0
|
78 <li class="main-menu-bar__item main-menu-bar__item_action_share"><a href="#">share this state</a></li>
|
Daniel@0
|
79 <li class="main-menu-bar__item main-menu-bar__item_action_bookmarks main-menu-bar__item_location_last"><a href="#">save or reopen a state</a></li>
|
Daniel@0
|
80 {#<li class="main-menu-bar__item main-menu-bar__item_action_downloads main-menu-bar__item_location_last"><a href="#">data downloads</a></li>#}
|
Daniel@0
|
81 <li class="main-menu-bar__item main-menu-bar__item_action_change-mode">
|
Daniel@0
|
82 <a class="main-menu-bar__item-a_mode_2recordings" href="#">music recordings</a>
|
Daniel@0
|
83 <a class="main-menu-bar__item-a_mode_2collections" href="#">music collections</a>
|
Daniel@0
|
84 </li>
|
Daniel@0
|
85 </ul>
|
Daniel@0
|
86 </div>
|
Daniel@0
|
87 </div>
|
Daniel@0
|
88 <div class="app__main-region main-region">
|
Daniel@0
|
89 <div class="main-region__config-grid config-grid">
|
Daniel@0
|
90 <div class="config-grid__header"></div>
|
Daniel@0
|
91 <div class="config-grid__panel config-grid-panel config-grid-panel_dimension_entity">
|
Daniel@0
|
92 <div class="config-grid-panel__background"></div>
|
Daniel@0
|
93 <div class="config-grid-panel__commands">
|
Daniel@0
|
94 {#<div class="config-grid-panel__command-group config-grid-panel__command-group_type_previous-next">
|
Daniel@0
|
95 <div class="config-grid-panel__command config-grid-panel__command_action_previous"><i></i></div>
|
Daniel@0
|
96 <div class="config-grid-panel__command config-grid-panel__command_action_next"><i></i></div>
|
Daniel@0
|
97 </div>#}
|
Daniel@0
|
98 <div class="config-grid-panel__command-group config-grid-panel__command-group_type_clone-delete">
|
Daniel@0
|
99 <div class="config-grid-panel__command config-grid-panel__command_action_clone"><i></i></div>
|
Daniel@0
|
100 <div class="config-grid-panel__command config-grid-panel__command_action_delete"><i></i></div>
|
Daniel@0
|
101 </div>
|
Daniel@0
|
102 <div class="config-grid-panel__command-group config-grid-panel__command-group_type_discard-apply">
|
Daniel@0
|
103 <div class="config-grid-panel__command config-grid-panel__command_action_discard"><i></i></div>
|
Daniel@0
|
104 <div class="config-grid-panel__command config-grid-panel__command_action_apply"><i></i></div>
|
Daniel@0
|
105 </div>
|
Daniel@0
|
106 </div>
|
Daniel@0
|
107 </div>
|
Daniel@0
|
108 <div class="config-grid__panel config-grid-panel config-grid-panel_dimension_view">
|
Daniel@0
|
109 <div class="config-grid-panel__background"></div>
|
Daniel@0
|
110 <div class="config-grid-panel__commands">
|
Daniel@0
|
111 {#<div class="config-grid-panel__command-group config-grid-panel__command-group_type_previous-next">
|
Daniel@0
|
112 <div class="config-grid-panel__command config-grid-panel__command_action_previous"><i></i></div>
|
Daniel@0
|
113 <div class="config-grid-panel__command config-grid-panel__command_action_next"><i></i></div>
|
Daniel@0
|
114 </div>#}
|
Daniel@0
|
115 <div class="config-grid-panel__command-group config-grid-panel__command-group_type_clone-delete">
|
Daniel@0
|
116 <div class="config-grid-panel__command config-grid-panel__command_action_clone"><i></i></div>
|
Daniel@0
|
117 <div class="config-grid-panel__command config-grid-panel__command_action_delete"><i></i></div>
|
Daniel@0
|
118 </div>
|
Daniel@0
|
119 <div class="config-grid-panel__command-group config-grid-panel__command-group_type_discard-apply">
|
Daniel@0
|
120 <div class="config-grid-panel__command config-grid-panel__command_action_discard"><i></i></div>
|
Daniel@0
|
121 <div class="config-grid-panel__command config-grid-panel__command_action_apply"><i></i></div>
|
Daniel@0
|
122 </div>
|
Daniel@0
|
123 </div>
|
Daniel@0
|
124 </div>
|
Daniel@0
|
125 <div class="config-grid-cells">
|
Daniel@0
|
126 </div>
|
Daniel@0
|
127 <div class="config-grid__utils">
|
Daniel@0
|
128 <div class="config-grid__loader"></div>
|
Daniel@0
|
129 <noscript class="config-grid__loading-error config-grid__loading-error_type_noscript">{{ project.shortTitle }} visualisations cannot be drawn without javascript. Please <a href="http://www.enable-javascript.com/" target="_blank">enable it</a> in the browser settings.</noscript>
|
Daniel@0
|
130 <div class="config-grid__loading-error config-grid__loading-error_type_old-ie">The browser you are using is too old to draw interactive visualisations. Please <a href="http://windows.microsoft.com/en-gb/internet-explorer/download-ie" target="_blank">update Internet Explorer</a> or download an alternative browser <span style="white-space: nowrap;">(e.g. <a href="https://www.google.com/chrome/browser/desktop/" target="_blank">Chrome</a> or <a href="https://www.mozilla.org/en-GB/firefox/new/" target="_blank">Firefox</a>).</span></div>
|
Daniel@0
|
131 </div>
|
Daniel@0
|
132 </div>
|
Daniel@0
|
133 </div>
|
Daniel@0
|
134 <div class="app__notifications">
|
Daniel@0
|
135 </div>
|
Daniel@0
|
136 <div class="app__help">
|
Daniel@0
|
137 </div>
|
Daniel@0
|
138 <div class="collections-vis__config-panel collections-vis__config-panel_type_collections">
|
Daniel@0
|
139 </div>
|
Daniel@0
|
140 <div class="collections-vis__config-panel collections-vis__config-panel_type_perspectives">
|
Daniel@0
|
141 </div>
|
Daniel@0
|
142 </div>
|
Daniel@0
|
143 {# emulate quicker load on first launch #}
|
Daniel@0
|
144 <script type="text/javascript">if (localStorage && !localStorage.getItem("dml..latest-visit") && document.getElementsByClassName) {document.getElementsByClassName("config-grid")[0].className += " config-grid_type_collection";}</script>
|
Daniel@0
|
145 {% if (enableJasmine) %}<div class="jasmine"></div>{% endif %}
|
Daniel@0
|
146 {# <noscript class="p-gageovis__bad-browser">{{ 'badbrowser' | trans | raw }}</noscript>#}
|
Daniel@0
|
147 {% javascripts output='vendor.js' filter="?uglifyjs2"
|
Daniel@0
|
148 '@DMLVendorAssetsBundle/Resources/assets/jquery/2.1.1/jquery.min.js'
|
Daniel@0
|
149 '@DMLVendorAssetsBundle/Resources/assets/jquery.bemhelpers/2.1.3-modif/jquery.bemhelpers.js'
|
Daniel@0
|
150 '@DMLVendorAssetsBundle/Resources/assets/jquery.sticky-kit/1.0.4/jquery.sticky-kit.min.js'
|
Daniel@0
|
151 '@DMLVendorAssetsBundle/Resources/assets/jquery.hotkeys/0.8/jquery.hotkeys.js'
|
Daniel@0
|
152 '@DMLVendorAssetsBundle/Resources/assets/jquery.mousewheel/3.1.12/jquery.mousewheel.min.js'
|
Daniel@0
|
153 '@DMLVendorAssetsBundle/Resources/assets/jquery.textrange/1.3.0/jquery.textrange.js'
|
Daniel@0
|
154 '@DMLVendorAssetsBundle/Resources/assets/jquery.preventMacBackScroll/modif/jquery.preventMacBackScroll.js'
|
Daniel@0
|
155 '@DMLVendorAssetsBundle/Resources/assets/jquery.jplayer/2.9.2/jquery.jplayer.js'
|
Daniel@0
|
156
|
Daniel@0
|
157 '@DMLVendorAssetsBundle/Resources/assets/jquery.ui/1.11.0/jquery.ui.min.js'
|
Daniel@0
|
158 '@DMLVendorAssetsBundle/Resources/assets/scrollfix/0.1/scrollfix.js'
|
Daniel@0
|
159 '@DMLVendorAssetsBundle/Resources/assets/jquery.scroll-to/dev/jquery.scroll-to.js'
|
Daniel@0
|
160
|
Daniel@0
|
161 '@DMLVendorAssetsBundle/Resources/assets/js-logger/0.9.14/js-logger.js'
|
Daniel@0
|
162 '@DMLVendorAssetsBundle/Resources/assets/underscore/1.8.2/underscore-min.js'
|
Daniel@0
|
163 '@DMLVendorAssetsBundle/Resources/assets/underscore.string/2.3.3/underscore.string.min.js'
|
Daniel@0
|
164 '@DMLVendorAssetsBundle/Resources/assets/backbone/1.1.2_modif/backbone.js'
|
Daniel@0
|
165 '@DMLVendorAssetsBundle/Resources/assets/backbone.marionette/2.3.2/backbone.marionette.min.js'
|
Daniel@0
|
166 '@DMLVendorAssetsBundle/Resources/assets/backbone.marionette/dev/TemplateCache.loadTemplate_fixed.js'
|
Daniel@0
|
167
|
Daniel@0
|
168 '@DMLVendorAssetsBundle/Resources/assets/vega/2.2.6/d3.min.js'
|
Daniel@0
|
169 '@DMLVendorAssetsBundle/Resources/assets/vega/2.2.6/d3.geo-projection.min.js'
|
Daniel@0
|
170 '@DMLVendorAssetsBundle/Resources/assets/vega/2.2.6/topojson.js'
|
Daniel@0
|
171 '@DMLVendorAssetsBundle/Resources/assets/vega/2.2.6/d3.layout.cloud.js'
|
Daniel@0
|
172 '@DMLVendorAssetsBundle/Resources/assets/vega/2.2.6/vega.js'
|
Daniel@0
|
173
|
Daniel@0
|
174 %}
|
Daniel@0
|
175 {% if embedJs %}<script type="text/javascript">{{ render(asset_url) }}</script>{% else %}<script type="text/javascript" src="{{ asset_url }}"></script>{% endif %}
|
Daniel@0
|
176 {% endjavascripts %}
|
Daniel@0
|
177
|
Daniel@0
|
178 {# % javascripts output='vendor_ui.js' filter="?uglifyjs2" combine=true
|
Daniel@0
|
179 %}
|
Daniel@0
|
180 {% if embedJs %}<script type="text/javascript">{{ render(asset_url) }}</script>{% else %}<script type="text/javascript" src="{{ asset_url }}"></script>{% endif %}
|
Daniel@0
|
181 {% endjavascripts %}
|
Daniel@0
|
182
|
Daniel@0
|
183 {% javascripts output='vendor_backbone.js' filter="?uglifyjs2" combine=true
|
Daniel@0
|
184 %}
|
Daniel@0
|
185 {% if embedJs %}<script type="text/javascript">{{ render(asset_url) }}</script>{% else %}<script type="text/javascript" src="{{ asset_url }}"></script>{% endif %}
|
Daniel@0
|
186 {% endjavascripts %#}
|
Daniel@0
|
187
|
Daniel@0
|
188 {% javascripts output='app.js' filter="?uglifyjs2"
|
Daniel@0
|
189
|
Daniel@0
|
190 '@DMLMainVisBundle/Resources/assets/legal.js'
|
Daniel@0
|
191
|
Daniel@0
|
192 '@DMLMainVisBundle/Resources/assets/lib/jquery.eventsugar/jquery.eventsugar.js'
|
Daniel@0
|
193 '@DMLMainVisBundle/Resources/assets/lib/jquery.ui/combobox.js'
|
Daniel@0
|
194 '@DMLMainVisBundle/Resources/assets/lib/underscore.mixins/underscore.isEventAnAttemptToOpenANewTab.js'
|
Daniel@0
|
195 '@DMLMainVisBundle/Resources/assets/lib/underscore.mixins/underscore.isSimpleObject.js'
|
Daniel@0
|
196 '@DMLMainVisBundle/Resources/assets/lib/underscore.mixins/underscore.uniqueId.js'
|
Daniel@0
|
197 '@DMLMainVisBundle/Resources/assets/lib/vega/vega.expr.centroid.js'
|
Daniel@0
|
198 '@DMLMainVisBundle/Resources/assets/lib/vega/vega.filter.centroid.js'
|
Daniel@0
|
199
|
Daniel@0
|
200 '@DMLMainVisBundle/Resources/assets/marionette/*.js'
|
Daniel@0
|
201 '@DMLMainVisBundle/Resources/assets/marionette/*/*.js'
|
Daniel@0
|
202 '@DMLMainVisBundle/Resources/assets/marionette/*/*/*.js'
|
Daniel@0
|
203 '@DMLMainVisBundle/Resources/assets/marionette/*/*/*/*.js'
|
Daniel@0
|
204 %}
|
Daniel@0
|
205 {% if embedJs %}<script type="text/javascript">{{ render(asset_url) }}</script>{% else %}<script type="text/javascript" src="{{ asset_url }}"></script>{% endif %}
|
Daniel@0
|
206 {% endjavascripts %}
|
Daniel@0
|
207
|
Daniel@0
|
208 {#
|
Daniel@0
|
209
|
Daniel@0
|
210 %}
|
Daniel@0
|
211 #}
|
Daniel@0
|
212 {#
|
Daniel@0
|
213
|
Daniel@0
|
214 #}
|
Daniel@0
|
215 {#
|
Daniel@0
|
216 <script type="text/javascript">$(function(){setTimeout(function() { App.start({musicLibrary: {{ musicLibrary | json_encode | raw }} {% if (app.debug) %}, enableJasmine: {{ enableJasmine ? "true" : "false" }}{% endif %}})}, 100);});</script>
|
Daniel@0
|
217 #}
|
Daniel@0
|
218 <script type="text/javascript">$(window).load(function(){App.start({musicLibrary: {{ musicLibrary | json_encode | raw }} {% if (app.debug) %}, enableJasmine: {{ enableJasmine ? "true" : "false" }}{% endif %}});});</script>
|
Daniel@0
|
219
|
Daniel@0
|
220 {% if (enableJasmine) %}
|
Daniel@0
|
221 {% javascripts output='testing.js' filter="?uglifyjs2"
|
Daniel@0
|
222 '@DMLVendorAssetsBundle/Resources/assets/jasmine/2.1.3/lib/jasmine-2.1.3/jasmine.js'
|
Daniel@0
|
223 '@DMLVendorAssetsBundle/Resources/assets/jasmine/2.1.3/lib/jasmine-2.1.3/jasmine-html_modif.js'
|
Daniel@0
|
224
|
Daniel@0
|
225 '@DMLMainVisBundle/Resources/assets/jasmine/boot.js'
|
Daniel@0
|
226 '@DMLMainVisBundle/Resources/assets/jasmine/helpers.js'
|
Daniel@0
|
227 '@DMLMainVisBundle/Resources/assets/jasmine/*/*.js'
|
Daniel@0
|
228 '@DMLMainVisBundle/Resources/assets/jasmine/*/*/*.js'
|
Daniel@0
|
229 '@DMLMainVisBundle/Resources/assets/jasmine/*/*/*/*.js'
|
Daniel@0
|
230 %}
|
Daniel@0
|
231 {% if embedJs %}
|
Daniel@0
|
232 <script type="text/javascript">{{ render(asset_url) }}</script>
|
Daniel@0
|
233 {% else %}
|
Daniel@0
|
234 <script type="text/javascript" src="{{ asset_url }}"></script>
|
Daniel@0
|
235 {% endif %}
|
Daniel@0
|
236 {% endjavascripts %}
|
Daniel@0
|
237 {% endif %}
|
Daniel@0
|
238 {% include 'DMLMainVisBundle:Components/templates:_.html.twig' %}
|
Daniel@0
|
239 {% include 'KachkaevCountersBundle::counters.html.twig' %}
|
Daniel@0
|
240 </body>
|
Daniel@0
|
241 </html>
|
Daniel@0
|
242 {#
|
Daniel@0
|
243 <script type="template/html" id="vis_pc__hint">
|
Daniel@0
|
244 <div class="vis__hint vis_pc__hint">Frequency corresponds to opacity (50.0 → 100%).<% if (hasCyclic) { %> Cyclic sequences (those that have the same chord more than once) are in blue.<% } %></div>
|
Daniel@0
|
245 </script>
|
Daniel@0
|
246 #}
|
Daniel@0
|
247 {% endspaceless %}
|
Daniel@0
|
248
|
Daniel@0
|
249 <!-- The front-end of DML VIS was designed and developed by Alexander Kachkaev, giCente, City University London (2015) --> |