| 1 | {% extends "telemeta/base.html" %} |
|---|
| 2 | {% load telemeta_utils %} |
|---|
| 3 | {% load i18n %} |
|---|
| 4 | |
|---|
| 5 | {% block head_title %}{% trans "Item" %} : {% if item.title %}{{ item.title }}{% else %}{{ item.public_id}}{% endif %} - {{ block.super }}{% endblock %} |
|---|
| 6 | |
|---|
| 7 | {% block stylesheets %} |
|---|
| 8 | {{ block.super }} |
|---|
| 9 | <link rel="stylesheet" type="text/css" href="{% url telemeta-timeside "skins/lab/style.css" %}" /> |
|---|
| 10 | <link rel="stylesheet" type="text/css" href="{% url telemeta-css "player.css" %}" /> |
|---|
| 11 | {% endblock %} |
|---|
| 12 | |
|---|
| 13 | {% block extra_javascript %} |
|---|
| 14 | {% if item %} |
|---|
| 15 | |
|---|
| 16 | {% if item.file %} |
|---|
| 17 | {% if public_access or perms.telemeta.can_play_all_items %} |
|---|
| 18 | <script src="{% url telemeta-timeside "js/libs/soundmanager2-nodebug-jsmin.js" %}" type="text/javascript"></script> |
|---|
| 19 | <script src="{% url telemeta-timeside "js/timeside.js" %}" type="text/javascript"></script> |
|---|
| 20 | {% endif %} |
|---|
| 21 | {% endif %} |
|---|
| 22 | |
|---|
| 23 | <script src="{% url telemeta-js "popupdiv-min.js" %}" type="text/javascript"></script> |
|---|
| 24 | <script src="{% url telemeta-js "playlist.js" %}" type="text/javascript"></script> |
|---|
| 25 | |
|---|
| 26 | {% if item.file %} |
|---|
| 27 | {% if public_access or perms.telemeta.can_play_all_items %} |
|---|
| 28 | <script src="{% url telemeta-js "playerLoader.js" %}" type="text/javascript"></script> |
|---|
| 29 | <script src="{% url telemeta-js "divmarker.js" %}" type="text/javascript"></script> |
|---|
| 30 | {% endif %} |
|---|
| 31 | {% endif %} |
|---|
| 32 | |
|---|
| 33 | <script type="text/javascript"> |
|---|
| 34 | {% if item.file %} |
|---|
| 35 | {% if public_access or perms.telemeta.can_play_all_items %} |
|---|
| 36 | //initializing soundManager default properties |
|---|
| 37 | soundManager.flashVersion = 9; |
|---|
| 38 | soundManager.url = "{% url telemeta-timeside "swf/" %}"; |
|---|
| 39 | soundManager.debugMode = false; |
|---|
| 40 | soundManager.allowPolling = true; |
|---|
| 41 | soundManager.useHTML5Audio = true; |
|---|
| 42 | soundManager.preferFlash = true; |
|---|
| 43 | |
|---|
| 44 | //initializing the visualizers to be passed to the player |
|---|
| 45 | var visualizers = {}; |
|---|
| 46 | {% for v in visualizers %} |
|---|
| 47 | visualizers["{{v.name}}"] = "{% url telemeta-item-visualize item.public_id,v.id,"WIDTH","HEIGHT" %}"; |
|---|
| 48 | {% endfor %} |
|---|
| 49 | {% if user.is_superuser %} |
|---|
| 50 | loadPlayer('{% url telemeta-item-analyze-xml item.public_id %}', |
|---|
| 51 | "{% url telemeta-item-export item.public_id,"mp3" %}", undefined, '{{item.id}}', visualizers, |
|---|
| 52 | CURRENT_USER_NAME, //undefined if !user.is_authenticated |
|---|
| 53 | true); //true because superuser |
|---|
| 54 | {% else %} |
|---|
| 55 | loadPlayer('{% url telemeta-item-analyze-xml item.public_id %}', |
|---|
| 56 | "{% url telemeta-item-export item.public_id,"mp3" %}", undefined, '{{item.id}}', visualizers, |
|---|
| 57 | CURRENT_USER_NAME, //undefined if !user.is_authenticated |
|---|
| 58 | false); //false because not superuser |
|---|
| 59 | {% endif %} |
|---|
| 60 | {% endif %} |
|---|
| 61 | {% endif %} |
|---|
| 62 | //playlists: |
|---|
| 63 | {% if user.is_authenticated %} |
|---|
| 64 | {% for playlist in playlists %} |
|---|
| 65 | playlistUtils.addPlaylist('{{ playlist.playlist.title }}','{{playlist.playlist.public_id}}'); |
|---|
| 66 | {% endfor %} |
|---|
| 67 | jQuery(window).ready(function(){ |
|---|
| 68 | var anchor = jQuery('#_add_to_playlist'); |
|---|
| 69 | if(anchor.length){ |
|---|
| 70 | anchor.unbind('click').click(function(){ |
|---|
| 71 | playlistUtils.showAddResourceToPlaylist(anchor,'item','{{item.id}}',gettrans('item added to the selected playlist')); |
|---|
| 72 | return false; |
|---|
| 73 | }); |
|---|
| 74 | } |
|---|
| 75 | }); |
|---|
| 76 | {% endif %} |
|---|
| 77 | </script> |
|---|
| 78 | |
|---|
| 79 | {% if "video" in mime_type %} |
|---|
| 80 | <link href="http://vjs.zencdn.net/c/video-js.css" rel="stylesheet"> |
|---|
| 81 | <script src="http://vjs.zencdn.net/c/video.js"></script> |
|---|
| 82 | {% endif %} |
|---|
| 83 | |
|---|
| 84 | {% endif %} |
|---|
| 85 | {% endblock %} |
|---|
| 86 | |
|---|
| 87 | {% if item %} |
|---|
| 88 | |
|---|
| 89 | {% block title %} |
|---|
| 90 | <img src="{% url telemeta-images "item.png" %}" alt="item" style="vertical-align:middle" /> |
|---|
| 91 | Item : <a href="{% url telemeta-item-detail item.public_id %}">{{ item }}</a> |
|---|
| 92 | {% endblock %} |
|---|
| 93 | |
|---|
| 94 | {% block title_buttons %} |
|---|
| 95 | <div class="fixedWidthAsPlayer"> |
|---|
| 96 | {% if user.is_authenticated and perms.telemeta.change_mediaitem %} |
|---|
| 97 | <a href="{% url telemeta-item-edit item.public_id %}" class="component_icon button icon_edit">{% trans "Edit" %}</a> |
|---|
| 98 | <a href="{% url telemeta-item-copy item.public_id %}" class="component_icon button icon_copy">{% trans "Copy" %}</a> |
|---|
| 99 | {% endif %} |
|---|
| 100 | {% if user.is_authenticated %} |
|---|
| 101 | <a id="_add_to_playlist" href='#' class="component_icon button icon_add_to_playlist">{% trans "Add to playlist" %}</a> |
|---|
| 102 | {% endif %} |
|---|
| 103 | <a href="{% url telemeta-item-detail previous %}" class="component_icon button icon_previous">{% trans "Previous" %}</a> |
|---|
| 104 | <a href="{% url telemeta-item-detail next %}" class="component_icon button icon_next">{% trans "Next" %}</a> |
|---|
| 105 | <a href="{% url telemeta-item-dublincore item.public_id %}" class="component_icon button icon_dublin_core">Dublin Core</a> |
|---|
| 106 | </div> |
|---|
| 107 | {% endblock %} |
|---|
| 108 | |
|---|
| 109 | {% block content %} |
|---|
| 110 | <div class="{% if item.file %}{% if public_access or perms.telemeta.can_play_all_items %}with-rightcol{% endif %}{% endif %}"> |
|---|
| 111 | {% if item.file %} |
|---|
| 112 | |
|---|
| 113 | |
|---|
| 114 | {% if public_access or perms.telemeta.can_play_all_items %} |
|---|
| 115 | <div id="player_maximized" class="ts-skin-lab"> |
|---|
| 116 | <a href="#" class="toggle">Minimize</a> |
|---|
| 117 | <a href="#" class="embed_player_frame"></></a> |
|---|
| 118 | <div class="wazing"></div> |
|---|
| 119 | </div> |
|---|
| 120 | <div id="rightcol"> |
|---|
| 121 | <div id="player_minimized" class="ts-skin-lab"> |
|---|
| 122 | <a href="#" class="toggle">Maximize</a> |
|---|
| 123 | <a href="#" class="embed_player_frame"></></a> |
|---|
| 124 | <div class="wazing"></div> |
|---|
| 125 | <div id="player" class="ts-player"> |
|---|
| 126 | </div> |
|---|
| 127 | </div> |
|---|
| 128 | |
|---|
| 129 | {% if "video" in mime_type %} |
|---|
| 130 | <div> |
|---|
| 131 | <video id="my_video_1" class="video-js vjs-default-skin" width="362" height="240" controls preload="auto" data-setup="{}"> |
|---|
| 132 | <!-- Hello Chrome and Firefox (and Opera?) --> |
|---|
| 133 | <source src="{% url telemeta-item-export item.public_id mime_type|mime_to_ext %}" type="{{ mime_type }}" /> |
|---|
| 134 | </video> |
|---|
| 135 | <div id="videotime"></div> |
|---|
| 136 | </div> |
|---|
| 137 | <script> |
|---|
| 138 | (function(){ |
|---|
| 139 | var v = document.getElementsByTagName('video')[0] |
|---|
| 140 | var t = document.getElementById('videotime'); |
|---|
| 141 | v.addEventListener('timeupdate',function(event){ |
|---|
| 142 | t.innerHTML = v.currentTime; |
|---|
| 143 | },false); |
|---|
| 144 | })(); |
|---|
| 145 | </script> |
|---|
| 146 | {% endif %} |
|---|
| 147 | |
|---|
| 148 | <!-- </div> --> |
|---|
| 149 | <div id="tabs_container"> |
|---|
| 150 | <!-- this div will be hidden when everything is fully loaded--> |
|---|
| 151 | <span id="loading_span" href="#"><img style="vertical-align:middle" alt="wait" src="{% url telemeta-images "wait.gif" %}" /> |
|---|
| 152 | <span id="loading_span_text">Loading...</span></span> |
|---|
| 153 | <a id="tab_analysis" style="display:none" class ="tab" href="#">{% trans "Analysis" %}</a><!-- |
|---|
| 154 | do not let space here as it appears in the document!!!!! |
|---|
| 155 | --><a id="tab_markers" style="display:none" class="tab" href="#">{% trans "Markers" %}</a> |
|---|
| 156 | </div> |
|---|
| 157 | |
|---|
| 158 | <div class="markers" id="markers_div_id"></div> |
|---|
| 159 | |
|---|
| 160 | <div class="analyzer" id="analyzer_div_id"> |
|---|
| 161 | <table width="100%"> |
|---|
| 162 | <tr class="analyzer-title"> |
|---|
| 163 | <td>{% trans "Property" %}</td> |
|---|
| 164 | <td>{% trans "Value" %}</td> |
|---|
| 165 | <td>{% trans "Unit" %}</td> |
|---|
| 166 | </tr> |
|---|
| 167 | </table> |
|---|
| 168 | </div> |
|---|
| 169 | <!--</div>--> |
|---|
| 170 | |
|---|
| 171 | {% if audio_export_enabled or perms.telemeta.can_download_all_items or user.is_superuser %} |
|---|
| 172 | <div class="exporter"> |
|---|
| 173 | <p><img src="{% url telemeta-images "download.png" %}" alt="download" style="vertical-align:middle" /> {% trans "Download:" %} |
|---|
| 174 | {% for format in export_formats %} |
|---|
| 175 | <a href="{% url telemeta-item-export item.public_id,format.extension %}"> |
|---|
| 176 | <img src="images/{{ format.extension }}.png" style="vertical-align:middle" alt="{{ format.extension }}" /></a> |
|---|
| 177 | {% endfor %}</p> |
|---|
| 178 | </div> |
|---|
| 179 | {% endif %} |
|---|
| 180 | |
|---|
| 181 | </div> |
|---|
| 182 | {% endif %} |
|---|
| 183 | {% endif %} |
|---|
| 184 | |
|---|
| 185 | {% block infos %} |
|---|
| 186 | <div class="infos"> |
|---|
| 187 | {% block general_info %} |
|---|
| 188 | <dl class="listing"> |
|---|
| 189 | {% dl_field item "title" placeholder %} |
|---|
| 190 | {% dl_field item "alt_title" %} |
|---|
| 191 | {% dl_field item "collector" placeholder %} |
|---|
| 192 | <dt>{% field_label item "collection" %}</dt> |
|---|
| 193 | <dd><a href="{% url telemeta-collection-detail item.collection.public_id %}">{{ item.collection }}</a></dd> |
|---|
| 194 | <dt>{% trans "Recording date" %}</dt> |
|---|
| 195 | |
|---|
| 196 | <dd>{% if item.recorded_from_date %}{{ item.recorded_from_date }}{% endif %}{% if item.recorded_from_date and item.recorded_to_date%} - {% endif %}{% if item.recorded_to_date %}{{ item.recorded_to_date}}{% endif %}</dd> |
|---|
| 197 | |
|---|
| 198 | {% if last_revision %} |
|---|
| 199 | <dt>{% trans "Last modification" %}</dt> |
|---|
| 200 | <dd>{{ last_revision.time }} {% if user.is_authenticated %}(<a href="{% url telemeta-profile-detail last_revision.user.username %}">{{last_revision.user.username}}</a>){% endif %}</dd> |
|---|
| 201 | {% endif %} |
|---|
| 202 | |
|---|
| 203 | </dl> |
|---|
| 204 | {% endblock general_info %} |
|---|
| 205 | </div> |
|---|
| 206 | <div class="extraInfos"> |
|---|
| 207 | {% block geoethnic_data %} |
|---|
| 208 | <div> |
|---|
| 209 | <h4><a href="#">{% trans "Geographic and cultural informations" %}</a></h4> |
|---|
| 210 | <dl class="listing"> |
|---|
| 211 | <dt>{% trans "Location" %}</dt> |
|---|
| 212 | <dd>{% if item.location %}{{ item.location.fullnames|join:"<br/>" }}{% endif %}</dd> |
|---|
| 213 | {% dl_field item "location_comment" %} |
|---|
| 214 | {% dl_field item "cultural_area" %} |
|---|
| 215 | {% dl_field item "language" %} |
|---|
| 216 | {% if item.language_iso %} |
|---|
| 217 | <dt>{% trans "Language ISO" %}</dt> |
|---|
| 218 | <dd>{{ item.language_iso.name|to_utf8 }}</dd> |
|---|
| 219 | {% endif %} |
|---|
| 220 | {% dl_field item "ethnic_group" placeholder %} |
|---|
| 221 | <dt>{% trans "Ethnographic context" %}</dt> |
|---|
| 222 | <dd>{{ item.context_comment|html_line_break|safe }}</dd> |
|---|
| 223 | {% dl_field item "keywords" join with ", " %} |
|---|
| 224 | </dl> |
|---|
| 225 | </div> |
|---|
| 226 | {% endblock geoethnic_data %} |
|---|
| 227 | </div> |
|---|
| 228 | |
|---|
| 229 | <div class="extraInfos"> |
|---|
| 230 | {% block musical_data %} |
|---|
| 231 | <div> |
|---|
| 232 | <h4><a href="#">{% trans "Musical informations" %}</a></h4> |
|---|
| 233 | <dl class="listing"> |
|---|
| 234 | {% dl_field item "vernacular_style" %} |
|---|
| 235 | {% dl_field item "generic_style" %} |
|---|
| 236 | {% dl_field item "author" %} |
|---|
| 237 | </dl> |
|---|
| 238 | {% if item.performances %} |
|---|
| 239 | <div class="instruments"> |
|---|
| 240 | <table class="instruments"> |
|---|
| 241 | <thead> |
|---|
| 242 | <tr> |
|---|
| 243 | <td>{% field_label "MediaItemPerformance" "instruments_num" %}</td> |
|---|
| 244 | <td>{% field_label "MediaItemPerformance" "instrument" %}</td> |
|---|
| 245 | <td>{% field_label "MediaItemPerformance" "alias" %}</td> |
|---|
| 246 | <td>{% field_label "MediaItemPerformance" "musicians" %}</td> |
|---|
| 247 | </tr> |
|---|
| 248 | </thead> |
|---|
| 249 | <tbody> |
|---|
| 250 | {% for performance in item.performances.all %} |
|---|
| 251 | <tr> |
|---|
| 252 | <td>{{ performance.instruments_num }}</td> |
|---|
| 253 | <td>{{ performance.instrument|default:"" }}</td> |
|---|
| 254 | <td>{{ performance.alias|default:"" }}</td> |
|---|
| 255 | <td>{{ performance.musicians }}</td> |
|---|
| 256 | </tr> |
|---|
| 257 | {% endfor %} |
|---|
| 258 | </tbody> |
|---|
| 259 | </table> |
|---|
| 260 | </div> |
|---|
| 261 | {% endif %} |
|---|
| 262 | </div> |
|---|
| 263 | {% endblock musical_data %} |
|---|
| 264 | </div> |
|---|
| 265 | |
|---|
| 266 | <div class="extraInfos"> |
|---|
| 267 | {% block general_data %} |
|---|
| 268 | <div> |
|---|
| 269 | <h4><a href="#">{% trans "General informations" %}</a></h4> |
|---|
| 270 | <dl class="listing"> |
|---|
| 271 | <dt>{% trans "Remarks" %}</dt> |
|---|
| 272 | <dd>{{ item.comment|html_line_break|safe }}</dd> |
|---|
| 273 | {% dl_field item "collector_selection" %} |
|---|
| 274 | </dl> |
|---|
| 275 | </div> |
|---|
| 276 | {% endblock general_data %} |
|---|
| 277 | </div> |
|---|
| 278 | <div class="extraInfos"> |
|---|
| 279 | {% block archive_data %} |
|---|
| 280 | <div> |
|---|
| 281 | <h4><a href="#">{% trans "Archiving data" %}</a></h4> |
|---|
| 282 | <dl class="listing"> |
|---|
| 283 | {% dl_field item "code" %} |
|---|
| 284 | {% dl_field item "old_code" %} |
|---|
| 285 | {% dl_field item "track" %} |
|---|
| 286 | {% dl_field item "creator_reference" %} |
|---|
| 287 | <dt>{% trans "Published references" %}</dt> |
|---|
| 288 | <dd>{{ item.external_references|html_line_break|safe }}</dd> |
|---|
| 289 | {% dl_field item "public_access_label" %} |
|---|
| 290 | </dl> |
|---|
| 291 | </div> |
|---|
| 292 | {% endblock archive_data %} |
|---|
| 293 | </div> |
|---|
| 294 | <div class="extraInfos"> |
|---|
| 295 | {% block technical_data %} |
|---|
| 296 | <div> |
|---|
| 297 | <h4><a href="#">{% trans "Technical data" %}</a></h4> |
|---|
| 298 | <div> |
|---|
| 299 | <dl class="listing"> |
|---|
| 300 | <dt>{% trans "Media type" %}</dt><dd>{% trans mime_type|mime_to_media_type %}</dd> |
|---|
| 301 | {% dl_field item "approx_duration" %} |
|---|
| 302 | |
|---|
| 303 | {% if physical_format %} |
|---|
| 304 | {% dl_field physical_format "original_code" %} |
|---|
| 305 | {% dl_field physical_format "tape_number" %} |
|---|
| 306 | {% dl_field physical_format "status" %} |
|---|
| 307 | {% dl_field physical_format "conservation_state" %} |
|---|
| 308 | {% dl_field physical_format "tape_length" %} |
|---|
| 309 | {% dl_field physical_format "tape_width" %} |
|---|
| 310 | {% dl_field physical_format "tape_speed" %} |
|---|
| 311 | {% dl_field physical_format "tape_vendor" %} |
|---|
| 312 | {% dl_field physical_format "tape_thickness" %} |
|---|
| 313 | {% dl_field physical_format "tape_diameter" %} |
|---|
| 314 | {% dl_field physical_format "tape_reference" %} |
|---|
| 315 | <dt>{% trans "Remarks" %}</dt> |
|---|
| 316 | <dd>{{ physical_format.comments|html_line_break|safe }}</dd> |
|---|
| 317 | {% endif %} |
|---|
| 318 | </dl> |
|---|
| 319 | |
|---|
| 320 | </div> |
|---|
| 321 | </div> |
|---|
| 322 | {% endblock technical_data %} |
|---|
| 323 | </div> |
|---|
| 324 | {% endblock infos %} |
|---|
| 325 | </div> <!-- with-rightcol --> |
|---|
| 326 | |
|---|
| 327 | {% if related_media %} |
|---|
| 328 | <div class="extraInfos"> |
|---|
| 329 | {% block related %} |
|---|
| 330 | {% include "telemeta/inc/mediaitem_related.html" %} |
|---|
| 331 | {% endblock related %} |
|---|
| 332 | </div> |
|---|
| 333 | {% endif %} |
|---|
| 334 | |
|---|
| 335 | {% endblock %} |
|---|
| 336 | |
|---|
| 337 | {% block delete %} |
|---|
| 338 | {% if user.is_authenticated and perms.telemeta.delete_mediaitem %} |
|---|
| 339 | <a href="#" onclick="if(confirm(gettrans('delete the item permanently?'))){window.location.href='{% url telemeta-item-delete item.public_id %}';};return false;" |
|---|
| 340 | class="component_icon button icon_delete" style="float:right;margin-top:0.5em;margin-bottom:1em">{% trans "Delete" %}</a> |
|---|
| 341 | {% endif %} |
|---|
| 342 | {% endblock %} |
|---|
| 343 | |
|---|
| 344 | {% else %} |
|---|
| 345 | <p>No such item</p> |
|---|
| 346 | {% endif %} |
|---|