From: riccardo Date: Mon, 16 May 2011 12:15:04 +0000 (+0200) Subject: cleanup part3 X-Git-Tag: 1.1~185 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=ad4548cf1aa556fe7300f5384cea6961fe45ce46;p=telemeta.git cleanup part3 --- diff --git a/telemeta/htdocs/css/telemeta.css b/telemeta/htdocs/css/telemeta.css index 55c98e28..c7dd9f0d 100644 --- a/telemeta/htdocs/css/telemeta.css +++ b/telemeta/htdocs/css/telemeta.css @@ -433,7 +433,7 @@ form.login .submit { #menu { background-color: #6a0307 ; font: normal verdana,'Bitstream Vera Sans',helvetica,arial,sans-serif; - padding: 0em 0em 9px 0em; + padding: 0em 0em 2px 0em; border-bottom: .5em solid #6a0307; border-top: .75em solid #6a0307; } diff --git a/telemeta/htdocs/js/playerLoader.js b/telemeta/htdocs/js/playerLoader.js deleted file mode 100644 index 346393f7..00000000 --- a/telemeta/htdocs/js/playerLoader.js +++ /dev/null @@ -1,242 +0,0 @@ -/** - * TimeSide - Web Audio Components - * Copyright (c) 2011 Parisson - * Author: Riccardo Zaccarelli and Olivier Guilyardi - * License: GNU General Public License version 2.0 - */ - -/** - * Class for loading a player. Requires a div#player, jQuery and all timeside javascript (player.js, markermap.js etcetera) - */ - -var player; //global player variable - -function togglePlayerMaximization() { - consolelog('entered togglePlayerMaximization'); - var view = $('#player'); - $('#player_maximized, #player_minimized').css('display', 'none'); - var ctr; - var dynamicResize = false; - if (view.parents('#player_maximized').length) { - ctr = $('#player_minimized').append(view); - } else { - ctr = $('#player_maximized').append(view); - dynamicResize = true; - } - ctr.css({ - opacity: 0, - display: 'block' - }); - var p = player; - if (p){ - p.resize(); - } - ctr.animate({ - opacity: 1 - }, 100); - if (p){ - p.setDynamicResize(dynamicResize); - } -} - - - -function loadPlayer(analizerUrl, soundUrl, itemId, visualizers, currentUserName){ - var $J = jQuery; - var playerDiv = $J('#player'); - if (!playerDiv.length){ - //playerError('div #player does not exists'); - //DO NOT RAISE ANY ERROR, JUST RETURN - return; - } - - if(!(analizerUrl)){ - playerError('invalid analyzer url'); - return; - } - - if(!(soundUrl)){ - playerError('invalid sound url'); - return; - } - - - //consolelog('till here all ok1'); - var msgElm = $J('#loading_span_text'); //element to show messages - //consolelog('till here all ok2'); - if(msgElm){ - msgElm.html('Loading analyzer...'); - } - - var tableBody = $J('#analyzer_div_id').find('table').find('tbody:last'); - - //function to be executed when the analyzer has fully loaded (ie, a duration is provided) - function load_player(soundUrl, durationInMsec, itemId, visualizers, currentUserName) { - var sound = soundManager.createSound({ - id: 'sound', - autoLoad: false, - url: soundUrl - }); - - loadScripts('/timeside/src/',['rulermarker.js','markermap.js', 'player.js', 'ruler.js','divmarker.js'], function() { - - - var p = new Player(jQuery('#player'), sound, durationInMsec, itemId, visualizers, currentUserName); - consolelog('initialized player'); - p._setupInterface(); - - player = p; - - $J('#player_maximized .toggle, #player_minimized .toggle').click(function() { - togglePlayerMaximization(); - this.blur(); - return false; - }); - }); - }; - - $J.ajax({ - url: analizerUrl, //'analyze/xml', - dataType: 'xml', - success: function(data){ - //populatetable - $J.each($J(data).find('data'),function(index,element){ - var elm = $J(element); - tableBody.append(''+elm.attr('name')+''+elm.attr('value')+'' - +elm.attr('unit')+''); - }); - //loaded analizer, loading player - if(msgElm){ - msgElm.html('Loading player...'); - } - var duration = $J(data).find('#duration').attr('value'); - duration = duration.split(":"); - consolelog('analyzer loaded, duration: '+duration); - //format duration - var pin = parseInt; - var pfl = parseFloat; - var timeInMSecs=pin(duration[0])*3600+pin(duration[1])*60+pfl(duration[2]); - timeInMSecs = Math.round(timeInMSecs*1000); - load_player(soundUrl, timeInMSecs, itemId, visualizers, currentUserName); - }, - error:function(){ - playerError('Error loading analyzer'); - //""); - } - }); -} - - - -//function loadPlayer(analizerUrl, soundUrl, itemId, visualizers, currentUserName){ -// -// if(!(analizerUrl) || !(soundUrl)){ -// return; -// } -// -// var $J = jQuery; -// //consolelog('till here all ok1'); -// var msgElm = $J('#loading_span_text'); //element to show messages -// //consolelog('till here all ok2'); -// if(msgElm){ -// msgElm.html('Loading analyzer...'); -// } -// var url = urlNormalized(); -// var tableBody = $J('#analyzer_div_id').find('table').find('tbody:last'); -// var load_player = this.load_player; -// $J.ajax({ -// url: analizerUrl, //'analyze/xml', -// dataType: 'xml', -// success: function(data){ -// //populatetable -// $J.each($J(data).find('data'),function(index,element){ -// var elm = $J(element); -// tableBody.append(''+elm.attr('name')+''+elm.attr('value')+'' -// +elm.attr('unit')+''); -// }); -// //loaded analizer, loading player -// if(msgElm){ -// msgElm.html('Loading player...'); -// } -// var duration = $J(data).find('#duration').attr('value'); -// duration = duration.split(":"); -// consolelog('analyzer loaded, duration: '+duration); -// //format duration -// var pin = parseInt; -// var pfl = parseFloat; -// var timeInMSecs=pin(duration[0])*3600+pin(duration[1])*60+pfl(duration[2]); -// timeInMSecs = Math.round(timeInMSecs*1000); -// load_player(soundUrl, timeInMSecs, itemId, visualizers, currentUserName); -// }, -// error:function(){ -// playerError('Error loading analyzer'); -// //""); -// } -// }); -//} -// -// -////loads a player WAITING for the sound identified by soundUrl to be FULLY LOADED!!!! -//function load_player(soundUrl, durationInMsecs, itemId, visualizers, currentUserName) { -// consolelog('PlayerLoader.load_player: '+soundUrl+' '+durationInMsecs); -// var load_player2 = this.load_player2; -// -// //this variable can be changed to load a sound immediately or not -// var loadImmediately = true; -// if(durationInMsecs){ -// loadImmediately = false; -// } -// var sound = soundManager.createSound({ -// id: 'sound', -// autoLoad: loadImmediately, -// url: soundUrl, -// onload: function() { //formerly was: whileloading -// //PROBLEM/BUG: on chrome and firefox whileloading is the same as onload, -// //ie it is not called at regular interval but when the whole file has loaded -// if(loadImmediately){ -// consolelog('entering while loading setting up---------------'+this.bytesLoaded+' of '+this.bytesTotal); -// loadImmediately=false; -// load_player2(this, this.duration, itemId, visualizers, currentUserName); -// } -// } -// }); -// if(!loadImmediately){ -// //TODO: remove this code is only temporary here!!!!!!!!!!!!!!!!!!!!1 -// loadScripts('/timeside/src/',['rulermarker.js', //'markerlist.js', -// 'markermap.js', 'player.js', 'ruler.js','divmarker.js'], function(){ -// load_player2(sound,durationInMsecs,itemId, visualizers, currentUserName); -// }); -// } -// -//} -////NOTE: the duration must be present. Loaded from xmlanalyzer (see above) -//function load_player2(sound, durationInMsec, itemId, visualizers, currentUserName) { -// -// if (!$('#player').length){ -// return; -// } -// consolelog("entered load_player2"); -// -// //TODO: what are we doing here???? -//// $('.ts-wave a img').insertAfter('.ts-wave a'); -//// $('.ts-wave a').remove(); -// -// var p = new Player(jQuery('#player'), sound, durationInMsec, itemId, visualizers, currentUserName); -// consolelog('initialized player'); -// p._setupInterface(); -// //p.loadMarkers(); -// -// player = p; -// -//// var change_visualizer_click = change_visualizer_clicked; -//// $('#visualizer_id').change(change_visualizer_click); -// //$('#visualizer_id_form').submit(change_visualizer_clicked); -// -// $('#player_maximized .toggle, #player_minimized .toggle').click(function() { -// togglePlayerMaximization(); -// this.blur(); -// return false; -// }); -// -// -//} diff --git a/telemeta/htdocs/js/playlist.js b/telemeta/htdocs/js/playlist.js new file mode 100644 index 00000000..ecf774aa --- /dev/null +++ b/telemeta/htdocs/js/playlist.js @@ -0,0 +1,144 @@ +/** + * TimeSide - Web Audio Components + * Copyright (c) 2011 Parisson + * Author: Riccardo Zaccarelli + * License: GNU General Public License version 2.0 + */ + +/** + * Class for managing playlists in telemeta. + * Requires jQuery and PopupDiv + */ + +//default PopupDiv properties for playlists (mainly for css appearence) +PopupDiv.popupClass = 'control component'; +PopupDiv.popupCss = { + 'border':'1px solid #999', + 'padding':'1ex' +}; +PopupDiv.okButtonTitle = 'Ok'; +PopupDiv.okButtonClass = 'component_icon button icon_ok'; +PopupDiv.closeButtonTitle = ''; +PopupDiv.closeButtonClass = 'markersdivDelete'; +PopupDiv.defaultCloseOperation = 'remove'; +PopupDiv.focusable = true; +PopupDiv.listItemClass = "component_icon list_item icon_playlist"; + +var playlistUtils = { + playlists : [], + + addPlaylist: function(name, id){ + //this.playlists[name]=id; + this.playlists.push({ + 'name':name, + 'id':id + }); + }, + + showAdd: function(anchorElement){ + + var t = gettrans('title'); + var d = gettrans('description'); + var dd = {}; + dd[t]=''; + dd[d]=''; + var playlist = this; + new PopupDiv({ + 'content':dd, + invoker:anchorElement, + showOk:true, + onOk:function(data){ + if(!data[t] && !data[d]){ + return; + } + //convert language + playlist.add({ + 'title':data[t], + 'description':data[d] + }); + } + }).show(); + + }, + + + add : function(dictionary){ + + if(dictionary.public_id===undefined){ + dictionary.public_id = uniqid(); //defined in application.js + } + if(dictionary.user===undefined){ + dictionary.user = CURRENT_USER_NAME; + } + + json([dictionary],'telemeta.add_playlist',function(){ + window.location.reload(); + }); + + + }, + remove: function(id){ + json([id],'telemeta.del_playlist',function(){ + window.location.reload(); + }); + }, + + removeResource: function(id){ + json([id],'telemeta.del_playlist_resource',function(){ + window.location.reload(); + }); + }, + + + /*shows the popup for adding a resource to a playlist*/ + showAddResourceToPlaylist: function(anchorElement,resourceType,objectId, optionalOkMessage){ + var ar = []; + var playlists = this.playlists; + for(var i=0; i< playlists.length; i++){ + ar.push(playlists[i].name); + } + if(!ar.length){ + return; + } + var addFcn = this.addResourceToPlaylist; + new PopupDiv({ + invoker:anchorElement, + content: ar, + onOk:function(data){ + var val = data.selIndex; + consolelog(data); + var callbackok = undefined; + if(optionalOkMessage){ + callbackok = function(){ + var p =new PopupDiv({ + content : "
"+optionalOkMessage+"
", + focusable: false + + }); + p.bind('show', function(){ + this.closeLater(1500); //this refers to p + }); + p.show(); + } + } + addFcn(playlists[val].id,resourceType,objectId,callbackok); + } + }).show(); + + }, + + //resourceType can be: 'collection', 'item', 'marker' + //addResource RENAME TODO!!!! + addResourceToPlaylist: function(playlistId,resourceType,objectId, callbackOnSuccess,callbackOnError){ + consolelog(playlistId) + var send = { + 'public_id':uniqid(), + 'resource_type':resourceType, + 'resource_id':objectId + }; + json([playlistId,send],'telemeta.add_playlist_resource',callbackOnSuccess,callbackOnError); + } + + +} + diff --git a/telemeta/htdocs/timeside/src/playerLoader.js b/telemeta/htdocs/timeside/src/playerLoader.js new file mode 100644 index 00000000..346393f7 --- /dev/null +++ b/telemeta/htdocs/timeside/src/playerLoader.js @@ -0,0 +1,242 @@ +/** + * TimeSide - Web Audio Components + * Copyright (c) 2011 Parisson + * Author: Riccardo Zaccarelli and Olivier Guilyardi + * License: GNU General Public License version 2.0 + */ + +/** + * Class for loading a player. Requires a div#player, jQuery and all timeside javascript (player.js, markermap.js etcetera) + */ + +var player; //global player variable + +function togglePlayerMaximization() { + consolelog('entered togglePlayerMaximization'); + var view = $('#player'); + $('#player_maximized, #player_minimized').css('display', 'none'); + var ctr; + var dynamicResize = false; + if (view.parents('#player_maximized').length) { + ctr = $('#player_minimized').append(view); + } else { + ctr = $('#player_maximized').append(view); + dynamicResize = true; + } + ctr.css({ + opacity: 0, + display: 'block' + }); + var p = player; + if (p){ + p.resize(); + } + ctr.animate({ + opacity: 1 + }, 100); + if (p){ + p.setDynamicResize(dynamicResize); + } +} + + + +function loadPlayer(analizerUrl, soundUrl, itemId, visualizers, currentUserName){ + var $J = jQuery; + var playerDiv = $J('#player'); + if (!playerDiv.length){ + //playerError('div #player does not exists'); + //DO NOT RAISE ANY ERROR, JUST RETURN + return; + } + + if(!(analizerUrl)){ + playerError('invalid analyzer url'); + return; + } + + if(!(soundUrl)){ + playerError('invalid sound url'); + return; + } + + + //consolelog('till here all ok1'); + var msgElm = $J('#loading_span_text'); //element to show messages + //consolelog('till here all ok2'); + if(msgElm){ + msgElm.html('Loading analyzer...'); + } + + var tableBody = $J('#analyzer_div_id').find('table').find('tbody:last'); + + //function to be executed when the analyzer has fully loaded (ie, a duration is provided) + function load_player(soundUrl, durationInMsec, itemId, visualizers, currentUserName) { + var sound = soundManager.createSound({ + id: 'sound', + autoLoad: false, + url: soundUrl + }); + + loadScripts('/timeside/src/',['rulermarker.js','markermap.js', 'player.js', 'ruler.js','divmarker.js'], function() { + + + var p = new Player(jQuery('#player'), sound, durationInMsec, itemId, visualizers, currentUserName); + consolelog('initialized player'); + p._setupInterface(); + + player = p; + + $J('#player_maximized .toggle, #player_minimized .toggle').click(function() { + togglePlayerMaximization(); + this.blur(); + return false; + }); + }); + }; + + $J.ajax({ + url: analizerUrl, //'analyze/xml', + dataType: 'xml', + success: function(data){ + //populatetable + $J.each($J(data).find('data'),function(index,element){ + var elm = $J(element); + tableBody.append(''+elm.attr('name')+''+elm.attr('value')+'' + +elm.attr('unit')+''); + }); + //loaded analizer, loading player + if(msgElm){ + msgElm.html('Loading player...'); + } + var duration = $J(data).find('#duration').attr('value'); + duration = duration.split(":"); + consolelog('analyzer loaded, duration: '+duration); + //format duration + var pin = parseInt; + var pfl = parseFloat; + var timeInMSecs=pin(duration[0])*3600+pin(duration[1])*60+pfl(duration[2]); + timeInMSecs = Math.round(timeInMSecs*1000); + load_player(soundUrl, timeInMSecs, itemId, visualizers, currentUserName); + }, + error:function(){ + playerError('Error loading analyzer'); + //""); + } + }); +} + + + +//function loadPlayer(analizerUrl, soundUrl, itemId, visualizers, currentUserName){ +// +// if(!(analizerUrl) || !(soundUrl)){ +// return; +// } +// +// var $J = jQuery; +// //consolelog('till here all ok1'); +// var msgElm = $J('#loading_span_text'); //element to show messages +// //consolelog('till here all ok2'); +// if(msgElm){ +// msgElm.html('Loading analyzer...'); +// } +// var url = urlNormalized(); +// var tableBody = $J('#analyzer_div_id').find('table').find('tbody:last'); +// var load_player = this.load_player; +// $J.ajax({ +// url: analizerUrl, //'analyze/xml', +// dataType: 'xml', +// success: function(data){ +// //populatetable +// $J.each($J(data).find('data'),function(index,element){ +// var elm = $J(element); +// tableBody.append(''+elm.attr('name')+''+elm.attr('value')+'' +// +elm.attr('unit')+''); +// }); +// //loaded analizer, loading player +// if(msgElm){ +// msgElm.html('Loading player...'); +// } +// var duration = $J(data).find('#duration').attr('value'); +// duration = duration.split(":"); +// consolelog('analyzer loaded, duration: '+duration); +// //format duration +// var pin = parseInt; +// var pfl = parseFloat; +// var timeInMSecs=pin(duration[0])*3600+pin(duration[1])*60+pfl(duration[2]); +// timeInMSecs = Math.round(timeInMSecs*1000); +// load_player(soundUrl, timeInMSecs, itemId, visualizers, currentUserName); +// }, +// error:function(){ +// playerError('Error loading analyzer'); +// //""); +// } +// }); +//} +// +// +////loads a player WAITING for the sound identified by soundUrl to be FULLY LOADED!!!! +//function load_player(soundUrl, durationInMsecs, itemId, visualizers, currentUserName) { +// consolelog('PlayerLoader.load_player: '+soundUrl+' '+durationInMsecs); +// var load_player2 = this.load_player2; +// +// //this variable can be changed to load a sound immediately or not +// var loadImmediately = true; +// if(durationInMsecs){ +// loadImmediately = false; +// } +// var sound = soundManager.createSound({ +// id: 'sound', +// autoLoad: loadImmediately, +// url: soundUrl, +// onload: function() { //formerly was: whileloading +// //PROBLEM/BUG: on chrome and firefox whileloading is the same as onload, +// //ie it is not called at regular interval but when the whole file has loaded +// if(loadImmediately){ +// consolelog('entering while loading setting up---------------'+this.bytesLoaded+' of '+this.bytesTotal); +// loadImmediately=false; +// load_player2(this, this.duration, itemId, visualizers, currentUserName); +// } +// } +// }); +// if(!loadImmediately){ +// //TODO: remove this code is only temporary here!!!!!!!!!!!!!!!!!!!!1 +// loadScripts('/timeside/src/',['rulermarker.js', //'markerlist.js', +// 'markermap.js', 'player.js', 'ruler.js','divmarker.js'], function(){ +// load_player2(sound,durationInMsecs,itemId, visualizers, currentUserName); +// }); +// } +// +//} +////NOTE: the duration must be present. Loaded from xmlanalyzer (see above) +//function load_player2(sound, durationInMsec, itemId, visualizers, currentUserName) { +// +// if (!$('#player').length){ +// return; +// } +// consolelog("entered load_player2"); +// +// //TODO: what are we doing here???? +//// $('.ts-wave a img').insertAfter('.ts-wave a'); +//// $('.ts-wave a').remove(); +// +// var p = new Player(jQuery('#player'), sound, durationInMsec, itemId, visualizers, currentUserName); +// consolelog('initialized player'); +// p._setupInterface(); +// //p.loadMarkers(); +// +// player = p; +// +//// var change_visualizer_click = change_visualizer_clicked; +//// $('#visualizer_id').change(change_visualizer_click); +// //$('#visualizer_id_form').submit(change_visualizer_clicked); +// +// $('#player_maximized .toggle, #player_minimized .toggle').click(function() { +// togglePlayerMaximization(); +// this.blur(); +// return false; +// }); +// +// +//} diff --git a/telemeta/htdocs/timeside/src/playlist.js b/telemeta/htdocs/timeside/src/playlist.js deleted file mode 100644 index ecf774aa..00000000 --- a/telemeta/htdocs/timeside/src/playlist.js +++ /dev/null @@ -1,144 +0,0 @@ -/** - * TimeSide - Web Audio Components - * Copyright (c) 2011 Parisson - * Author: Riccardo Zaccarelli - * License: GNU General Public License version 2.0 - */ - -/** - * Class for managing playlists in telemeta. - * Requires jQuery and PopupDiv - */ - -//default PopupDiv properties for playlists (mainly for css appearence) -PopupDiv.popupClass = 'control component'; -PopupDiv.popupCss = { - 'border':'1px solid #999', - 'padding':'1ex' -}; -PopupDiv.okButtonTitle = 'Ok'; -PopupDiv.okButtonClass = 'component_icon button icon_ok'; -PopupDiv.closeButtonTitle = ''; -PopupDiv.closeButtonClass = 'markersdivDelete'; -PopupDiv.defaultCloseOperation = 'remove'; -PopupDiv.focusable = true; -PopupDiv.listItemClass = "component_icon list_item icon_playlist"; - -var playlistUtils = { - playlists : [], - - addPlaylist: function(name, id){ - //this.playlists[name]=id; - this.playlists.push({ - 'name':name, - 'id':id - }); - }, - - showAdd: function(anchorElement){ - - var t = gettrans('title'); - var d = gettrans('description'); - var dd = {}; - dd[t]=''; - dd[d]=''; - var playlist = this; - new PopupDiv({ - 'content':dd, - invoker:anchorElement, - showOk:true, - onOk:function(data){ - if(!data[t] && !data[d]){ - return; - } - //convert language - playlist.add({ - 'title':data[t], - 'description':data[d] - }); - } - }).show(); - - }, - - - add : function(dictionary){ - - if(dictionary.public_id===undefined){ - dictionary.public_id = uniqid(); //defined in application.js - } - if(dictionary.user===undefined){ - dictionary.user = CURRENT_USER_NAME; - } - - json([dictionary],'telemeta.add_playlist',function(){ - window.location.reload(); - }); - - - }, - remove: function(id){ - json([id],'telemeta.del_playlist',function(){ - window.location.reload(); - }); - }, - - removeResource: function(id){ - json([id],'telemeta.del_playlist_resource',function(){ - window.location.reload(); - }); - }, - - - /*shows the popup for adding a resource to a playlist*/ - showAddResourceToPlaylist: function(anchorElement,resourceType,objectId, optionalOkMessage){ - var ar = []; - var playlists = this.playlists; - for(var i=0; i< playlists.length; i++){ - ar.push(playlists[i].name); - } - if(!ar.length){ - return; - } - var addFcn = this.addResourceToPlaylist; - new PopupDiv({ - invoker:anchorElement, - content: ar, - onOk:function(data){ - var val = data.selIndex; - consolelog(data); - var callbackok = undefined; - if(optionalOkMessage){ - callbackok = function(){ - var p =new PopupDiv({ - content : "
"+optionalOkMessage+"
", - focusable: false - - }); - p.bind('show', function(){ - this.closeLater(1500); //this refers to p - }); - p.show(); - } - } - addFcn(playlists[val].id,resourceType,objectId,callbackok); - } - }).show(); - - }, - - //resourceType can be: 'collection', 'item', 'marker' - //addResource RENAME TODO!!!! - addResourceToPlaylist: function(playlistId,resourceType,objectId, callbackOnSuccess,callbackOnError){ - consolelog(playlistId) - var send = { - 'public_id':uniqid(), - 'resource_type':resourceType, - 'resource_id':objectId - }; - json([playlistId,send],'telemeta.add_playlist_resource',callbackOnSuccess,callbackOnError); - } - - -} - diff --git a/telemeta/templates/telemeta_default/home.html b/telemeta/templates/telemeta_default/home.html index 99c1c999..d8141f5f 100644 --- a/telemeta/templates/telemeta_default/home.html +++ b/telemeta/templates/telemeta_default/home.html @@ -4,7 +4,7 @@ {% block extra_javascript %} - + - +