client/player/src/js/LdtPlayer.js
author wakimd
Fri, 22 Oct 2010 18:14:30 +0200
changeset 1 eb9188f2ee4f
permissions -rw-r--r--
first commit
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     1
/* 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     2
 * 	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     3
 *	Copyright 2010 Institut de recherche et d'innovation 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     4
 *	contributor(s) : Samuel Huron 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     5
 *	 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     6
 *	contact@iri.centrepompidou.fr
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     7
 *	http://www.iri.centrepompidou.fr 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     8
 *	 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
     9
 *	This software is a computer program whose purpose is to show and add annotations on a video .
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    10
 *	This software is governed by the CeCILL-C license under French law and
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    11
 *	abiding by the rules of distribution of free software. You can  use, 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    12
 *	modify and/ or redistribute the software under the terms of the CeCILL-C
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    13
 *	license as circulated by CEA, CNRS and INRIA at the following URL
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    14
 *	"http://www.cecill.info". 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    15
 *	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    16
 *	The fact that you are presently reading this means that you have had
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    17
 *	knowledge of the CeCILL-C license and that you accept its terms.
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    18
*/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    19
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    20
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    21
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    22
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    23
if(window.__IriSP === undefined ){ var __IriSP={};}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    24
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    25
// Player Configuration  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    26
__IriSP.config = {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    27
		metadata:{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    28
			format:'cinelab',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    29
			src:'http://exp.iri.centrepompidou.fr/franceculture/franceculture/ldt/cljson/id/ef4dcc2e-8d3b-11df-8a24-00145ea4a2be',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    30
			load:'jsonp'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    31
		},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    32
		gui:{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    33
			width:650,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    34
			height:0,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    35
			mode:'radio',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    36
			container:'LdtPlayer',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    37
			debug:false, 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    38
			css:'../src/css/LdtPlayer.css'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    39
		},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    40
		player:{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    41
			type:'jwplayer',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    42
			src:'../res/swf/player.swf'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    43
		},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    44
		module:null
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    45
	};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    46
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    47
__IriSP.lib = {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    48
			jQuery:"http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    49
			jQueryUI:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    50
			jQueryToolTip:"http://cdn.jquerytools.org/1.2.4/all/jquery.tools.min.js",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    51
			swfObject:"http://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    52
			cssjQueryUI:"http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    53
		};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    54
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    55
// Player Variable
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    56
__IriSP.LdtShareTool = ""+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    57
"\n<a onclick=\"__IriSP.MyApiPlayer.share('delicious');\" title='partager avec delicious'><span class='share shareDelicious'>&nbsp;</span></a>"+		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    58
"\n<a onclick=\"__IriSP.MyApiPlayer.share('facebook');\" title='partager avec facebook'> <span class='share shareFacebook'>&nbsp;</span></a>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    59
"\n<a onclick=\"__IriSP.MyApiPlayer.share('twitter');\" title='partager avec twitter'>  <span class='share shareTwitter'>&nbsp;</span></a>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    60
"\n<a onclick=\"__IriSP.MyApiPlayer.share('myspace');\" title='partager avec Myspace'>  <span class='share shareMySpace'>&nbsp;</span></a>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    61
"\n<a onclick=\"__IriSP.MyApiPlayer.share('jamespot');\" title='partager avec JamesPot'>  <span class='share shareJamesPot'>&nbsp;</span></a>";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    62
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    63
// Official instance - to refactor ?
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    64
__IriSP.MyLdt 		= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    65
__IriSP.MyTags 		= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    66
__IriSP.MyApiPlayer	= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    67
__IriSP.player		= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    68
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    69
// genral var (old code) - to refactor 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    70
__IriSP.Durration		= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    71
__IriSP.playerLdtWidth= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    72
__IriSP.playerLdtHeight= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    73
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    74
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    75
 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    76
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    77
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    78
__IriSP.init = function (config){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    79
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    80
		__IriSP.config 			 = config;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    81
		var metadataSrc 		 = __IriSP.config.metadata.src;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    82
		var guiContainer		 = __IriSP.config.gui.container;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    83
		var guiMode				 = __IriSP.config.gui.mode;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    84
		var guiLdtShareTool		 = __IriSP.LdtShareTool;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    85
		// Localize jQuery variable
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    86
		__IriSP.jQuery = null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    87
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    88
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    89
		/******** Load jQuery if not present *********/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    90
		if (window.jQuery === undefined || window.jQuery.fn.jquery !== '1.4.2') {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    91
			var script_tag = document.createElement('script');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    92
			script_tag.setAttribute("type","text/javascript");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    93
			script_tag.setAttribute("src",__IriSP.lib.jQuery);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    94
				//"http://cdn.jquerytools.org/1.2.4/full/jquery.tools.min.js");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    95
			script_tag.onload = scriptLibHandler;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    96
			script_tag.onreadystatechange = function () { // Same thing but for IE
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    97
				if (this.readyState == 'complete' || this.readyState == 'loaded') {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    98
					scriptLibHandler();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
    99
					
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   100
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   101
			};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   102
			// Try to find the head, otherwise default to the documentElement
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   103
			(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_tag);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   104
		} else {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   105
			// The jQuery version on the window is the one we want to use
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   106
			 __IriSP.jQuery = window.jQuery;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   107
			scriptLibHandler();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   108
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   109
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   110
		/******** Called once jQuery has loaded ******/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   111
		function scriptLibHandler() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   112
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   113
			var script_jqUi_tooltip = document.createElement('script');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   114
			script_jqUi_tooltip.setAttribute("type","text/javascript");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   115
			script_jqUi_tooltip.setAttribute("src",__IriSP.lib.jQueryToolTip);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   116
			script_jqUi_tooltip.onload = scriptLoadHandler;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   117
			script_jqUi_tooltip.onreadystatechange = function () { // Same thing but for IE
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   118
				if (this.readyState == 'complete' || this.readyState == 'loaded') {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   119
					scriptLoadHandler("jquery.tools.min.js loded");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   120
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   121
			};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   122
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   123
			var script_swfObj = document.createElement('script');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   124
			script_swfObj.setAttribute("type","text/javascript");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   125
			script_swfObj.setAttribute("src",__IriSP.lib.swfObject);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   126
			script_swfObj.onload = scriptLoadHandler;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   127
			script_swfObj.onreadystatechange = function () { // Same thing but for IE
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   128
				if (this.readyState == 'complete' || this.readyState == 'loaded') {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   129
					scriptLoadHandler("swfobject.js loded");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   130
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   131
			};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   132
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   133
			var script_jqUi = document.createElement('script');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   134
			script_jqUi.setAttribute("type","text/javascript");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   135
			script_jqUi.setAttribute("src",__IriSP.lib.jQueryUI);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   136
			script_jqUi.onload = scriptLoadHandler;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   137
			script_jqUi.onreadystatechange = function () { // Same thing but for IE
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   138
				if (this.readyState == 'complete' || this.readyState == 'loaded') {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   139
					scriptLoadHandler("jquery-ui.min.js loded");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   140
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   141
			};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   142
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   143
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   144
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   145
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   146
			(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_jqUi_tooltip);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   147
			(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_jqUi);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   148
			(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_swfObj);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   149
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   150
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   151
		};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   152
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   153
		/******** Called once all lib are loaded ******/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   154
		var loadLib = 0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   155
		function scriptLoadHandler(Mylib) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   156
			//alert(Mylib);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   157
			loadLib +=1;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   158
			if(loadLib===3){ 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   159
				main(); 			  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   160
			}else {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   161
				// __IriSP.jQuery('#'+__IriSP.config.gui.container).html("Loading library ...");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   162
			}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   163
		};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   164
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   165
		/******** Our main function ********/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   166
		function main() { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   167
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   168
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   169
			//  Make __IriSP.jQuery and restore window.jQuery 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   170
			__IriSP.jQuery = window.jQuery.noConflict(true);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   171
			// Call MY Jquery
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   172
			__IriSP.jQuery(document).ready(function($) { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   173
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   174
				/******* Load CSS *******/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   175
				var css_link_jquery = __IriSP.jQuery("<link>", { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   176
					rel: "stylesheet", 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   177
					type: "text/css", 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   178
					href: __IriSP.lib.cssjQueryUI,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   179
					'class': "dynamic_css"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   180
				});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   181
				var css_link_custom = __IriSP.jQuery("<link>", { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   182
					rel: "stylesheet", 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   183
					type: "text/css", 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   184
					href: __IriSP.config.gui.css,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   185
					'class': "dynamic_css"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   186
				});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   187
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   188
				css_link_jquery.appendTo('head');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   189
				css_link_custom.appendTo('head');   
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   190
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   191
				// to see dynamicly loaded css on IE
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   192
				if ($.browser.msie) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   193
					$('.dynamic_css').clone().appendTo('head');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   194
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   195
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   196
				//__IriSP.trace("main","ready createMyHtml");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   197
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   198
				__IriSP.createMyHtml();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   199
				//__IriSP.trace("main","end createMyHtml");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   200
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   201
				/******* Load Metadata *******/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   202
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   203
				__IriSP.jQuery.ajax({
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   204
					  dataType: 'jsonp',
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   205
					  url:metadataSrc,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   206
					  success : function(json){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   207
					  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   208
							__IriSP.trace("ajax","success");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   209
							
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   210
							// START PARSING ----------------------- 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   211
							if(json === ""){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   212
								alert("ERREUR DE CHARGEMENT JSON");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   213
							} else {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   214
							  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   215
							  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   216
								// # CREATE MEDIA  							//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   217
								// # JUSTE ONE PLAYER FOR THE MOMENT		//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   218
								//__IriSP.jQuery("<div></div>").appendTo("#output");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   219
								var MyMedia = new  __IriSP.Media(
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   220
																	json.medias[0].id,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   221
																	json.medias[0].href,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   222
																	json.medias[0]['meta']['dc:duration'],
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   223
																	json.medias[0]['dc:title'],
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   224
																	json.medias[0]['dc:description']);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   225
								
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   226
								__IriSP.trace("__IriSP.MyApiPlayer",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   227
																	__IriSP.config.gui.width+"   "
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   228
																	+ __IriSP.config.gui.height + " "
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   229
																	+ json.medias[0].href + " "
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   230
																	+ json.medias[0]['meta']['dc:duration'] + " "
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   231
																	+ json.medias[0]['meta']['item']['value']);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   232
								
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   233
								// Create APIplayer
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   234
								__IriSP.MyApiPlayer = new __IriSP.APIplayer(
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   235
																	__IriSP.config.gui.width,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   236
																	__IriSP.config.gui.height,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   237
																	json.medias[0].href,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   238
																	json.medias[0]['meta']['dc:duration'],
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   239
																	json.medias[0]['meta']['item']['value']);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   240
							
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   241
								// # CREATE THE FIRST LINE  				//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   242
								__IriSP.trace("__IriSP.init.main","__IriSP.Ligne");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   243
								__IriSP.MyLdt = new __IriSP.Ligne (
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   244
																	json['annotation-types'][0].id,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   245
																	json['annotation-types'][0]['dc:title'],
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   246
																	json['annotation-types'][0]['dc:description'],
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   247
																	json.medias[0]['meta']['dc:duration']);			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   248
								
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   249
								// CREATE THE TAG CLOUD 					//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   250
								__IriSP.trace("__IriSP.init.main","__IriSP.Tags");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   251
								__IriSP.MyTags =  new __IriSP.Tags (json.tags);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   252
							
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   253
								// CREATE THE ANNOTATIONS  				    //
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   254
								// JUSTE FOR THE FIRST TYPE   			 	//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   255
								__IriSP.jQuery.each(json.annotations, function(i,item) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   256
									if (item.meta['id-ref'] == __IriSP.MyLdt.id) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   257
										//__IriSP.trace("__IriSP.init.main","__IriSP.MyLdt.addAnnotation");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   258
										__IriSP.MyLdt.addAnnotation(
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   259
													item.id,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   260
													item.begin,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   261
													item.end,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   262
													item.media,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   263
													item.content.title,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   264
													item.content.description,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   265
													item.content.color,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   266
													item.tags);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   267
									}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   268
										//MyTags.addAnnotation(item);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   269
								});	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   270
								__IriSP.jQuery.each(json.lists, function(i,item) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   271
									__IriSP.trace("lists","");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   272
								});	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   273
								__IriSP.jQuery.each(json.views, function(i,item) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   274
									__IriSP.trace("views","");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   275
								});	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   276
							}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   277
							// END PARSING ----------------------- //  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   278
						
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   279
										
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   280
					},error : function(data){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   281
						  alert("ERROR : "+data);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   282
					}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   283
				  });	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   284
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   285
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   286
			});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   287
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   288
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   289
};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   290
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   291
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   292
__IriSP.createMyHtml = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   293
		var width = __IriSP.config.gui.width;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   294
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   295
		// AUDIO  */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   296
		// PB dans le html : ; 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   297
		__IriSP.jQuery(  "<div id='Ldt-Root'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   298
			"	<div id='Ldt-PlaceHolder'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   299
			"		<a href='http://www.adobe.com/go/getflashplayer'>Get flash</a> to see this player	\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   300
			"	</div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   301
			"	<div id='Ldt-controler' class='demo'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   302
			"		<div class='Ldt-Control1' >\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   303
			"			<button id='ldt-CtrlPlay' onclick='__IriSP.MyApiPlayer.play()'>Lecture / Pause </button>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   304
			"			<button id='ldt-CtrlNext' onclick='__IriSP.MyLdt.nextAnnotation()'>Suivant</button>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   305
			"		</div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   306
			"		<div id='Ldt-Annotations' class='ui-slider'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   307
			"			<div id='slider-range-min'></div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   308
			"	</div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   309
			"		<div class='Ldt-Control2'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   310
			"			<button id='ldt-CtrlLink'> Partager </button>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   311
			"			<button id='ldt-CtrlSound' onclick='__IriSP.MyApiPlayer.mute()'>Sound</button>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   312
			"		</div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   313
			"  <div class='cleaner'>&nbsp\;</div> \n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   314
			"  <div id='Ldt-Show-Arrow-container'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   315
			"  	<div id='Ldt-Show-Arrow'> </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   316
			"  </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   317
			"</div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   318
			"<div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   319
			" <div id='ldt-Show'> </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   320
			"	<div id='Ldt-ShowAnnotation-audio' class='demo' >\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   321
			"		<div id='Ldt-SaTitle'></div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   322
			"		<div id='Ldt-SaDescription'></div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   323
			" 		<div class='cleaner'><!--&nbsp\;--></div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   324
			" </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   325
			" <div id='Ldt-SaKeyword'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   326
			" <div id='Ldt-SaKeywordText'>  </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   327
			" <div class='cleaner'></div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   328
			" <div id='Ldt-SaShareTools'>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   329
			" \n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   330
			" "+__IriSP.LdtShareTool+"\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   331
			" \n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   332
			"  </div>\n"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   333
			" <div class='cleaner'></div>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   334
			"</div>  "+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   335
			//"<div id='Ldt-Tags'> Mots clefs : </div>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   336
			"</div>"+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   337
			"<div id='Ldt-output'></div>").appendTo("#"+__IriSP.config.gui.container);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   338
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   339
		__IriSP.trace("__IriSP.createHtml","end");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   340
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   341
		__IriSP.jQuery("#Ldt-Annotations").width(width-(75*2));
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   342
		__IriSP.jQuery("#Ldt-Show-Arrow-container").width(width-(75*2));
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   343
		__IriSP.jQuery("#Ldt-ShowAnnotation-audio").width(width-10);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   344
		__IriSP.jQuery("#Ldt-ShowAnnotation-video").width(width-10);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   345
		__IriSP.jQuery("#Ldt-SaKeyword").width(width-10);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   346
		__IriSP.jQuery("#Ldt-controler").width(width-10);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   347
		__IriSP.jQuery("#Ldt-Control").attr("z-index","100");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   348
		__IriSP.jQuery("#Ldt-controler").hide();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   349
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   350
		__IriSP.jQuery("<div id='Ldt-load-container'><div id='Ldt-loader'>&nbsp;</div> Chargement... </div>").appendTo("#Ldt-ShowAnnotation-audio");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   351
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   352
		if(__IriSP.config.gui.mode=='radio'){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   353
			__IriSP.jQuery("#Ldt-load-container").attr("width",__IriSP.config.gui.width);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   354
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   355
		// Show or not the output
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   356
		if(__IriSP.config.gui.debug===true){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   357
			__IriSP.jQuery("#Ldt-output").show();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   358
		} else {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   359
			__IriSP.jQuery("#Ldt-output").hide();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   360
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   361
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   362
};
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   363
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   364
__IriSP.Media = function (id,url,duration,title,description){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   365
		this.id 		 	= id;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   366
		this.url 		= url;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   367
		this.title 		= title;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   368
		this.description = description;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   369
		this.duration 	= duration;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   370
		this.lignes 	  	= new Array();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   371
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   372
		__IriSP.trace("__IriSP.Media","Media ID : "+id);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   373
		__IriSP.trace("__IriSP.Media","Media URL : "+url);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   374
		__IriSP.trace("__IriSP.Media","Media title : "+title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   375
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   376
__IriSP.Media.prototype.createPlayerMedia = function (width,height,MyStreamer,MySwfPath){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   377
		__IriSP.MyApiPlayer = new __IriSP.APIplayer(width,height,this.url,this.duration,MyStreamer,MySwfPath);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   378
		//createPlayer(width,height,this.url,this.duration,MyStreamer,MySwfPath);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   379
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   380
__IriSP.Media.prototype.getMediaDuration = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   381
		return (this.duration);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   382
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   383
__IriSP.Media.prototype.getMediaTitle = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   384
		return (this.title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   385
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   386
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   387
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   388
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   389
/* 	INTERFACE : SLIDER ( CONTROL BAR ) | BUTTON ()   */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   390
__IriSP.createInterface = function(width,height,duration){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   391
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   392
		__IriSP.jQuery("#Ldt-controler").show();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   393
		//__IriSP.jQuery("#Ldt-Root").css('display','visible');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   394
		__IriSP.trace("__IriSP.createInterface",width+","+height+","+duration+",");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   395
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   396
		 __IriSP.jQuery("#Ldt-ShowAnnotation").click(function () { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   397
			 //__IriSP.jQuery(this).slideUp(); 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   398
		});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   399
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   400
		var LdtpPlayerY = __IriSP.jQuery("#Ldt-PlaceHolder").attr("top");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   401
		var LdtpPlayerX = __IriSP.jQuery("#Ldt-PlaceHolder").attr("left");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   402
		__IriSP.jQuery("#slider-range-min").slider({ //range: "min",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   403
			value: 0,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   404
			min: 1,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   405
			max: duration/1000,//1:54:52.66 = 3600+3240+
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   406
			step: 0.1,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   407
			slide: function(event, ui) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   408
				
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   409
				//__IriSP.jQuery("#amount").val(ui.value+" s");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   410
				//player.sendEvent('SEEK', ui.value)
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   411
				__IriSP.MyApiPlayer.seek(ui.value);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   412
				//changePageUrlOffset(ui.value);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   413
				//player.sendEvent('PAUSE')
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   414
			}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   415
		});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   416
		__IriSP.trace("__IriSP.createInterface","ICI");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   417
		__IriSP.jQuery("#amount").val(__IriSP.jQuery("#slider-range-min").slider("value")+" s");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   418
		__IriSP.jQuery(".Ldt-Control1 button:first").button({
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   419
			icons: {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   420
				primary: 'ui-icon-play'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   421
			},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   422
			text: false
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   423
		}).next().button({
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   424
			icons: {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   425
				primary: 'ui-icon-seek-next'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   426
			},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   427
			 text: false
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   428
		});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   429
		__IriSP.jQuery(".Ldt-Control2 button:first").button({
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   430
			icons: {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   431
				primary: 'ui-icon-transferthick-e-w'//,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   432
				//secondary: 'ui-icon-volume-off'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   433
			},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   434
			text: false
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   435
		}).next().button({
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   436
			icons: {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   437
				primary: 'ui-icon-volume-on'
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   438
			},
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   439
			 text: false
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   440
		});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   441
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   442
		// /!\ PB A MODIFIER 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   443
		//__IriSP.MyTags.draw();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   444
		__IriSP.trace("__IriSP.createInterface","ICI2");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   445
		__IriSP.jQuery("#ldt-CtrlPlay").attr("style","background-color:#CD21C24;");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   446
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   447
		__IriSP.jQuery("#Ldt-load-container").hide();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   448
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   449
		if(__IriSP.config.gui.mode=="radio" & __IriSP.jQuery.browser.msie!=true){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   450
			__IriSP.jQuery("#Ldtplayer1").attr("height","0");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   451
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   452
		__IriSP.trace("__IriSP.createInterface","3");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   453
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   454
		__IriSP.trace("__IriSP.createInterface","END");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   455
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   456
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   457
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   458
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   459
/*  API player - work in progress ... need refactoring of code */ 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   460
__IriSP.APIplayer = function (width,height,url,duration,streamerPath,MySwfPath){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   461
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   462
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   463
		this.player 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   464
		this.hashchangeUpdate 	= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   465
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   466
		this.width				= width;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   467
		this.height				= height;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   468
		this.url				= url;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   469
		this.duration			= duration;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   470
		this.streamerPath		= streamerPath;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   471
		this.MySwfPath			= MySwfPath;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   472
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   473
		__IriSP.MyApiPlayer		= this;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   474
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   475
		__IriSP.createPlayer(width,height,this.url,this.duration,this.streamerPath,this.MySwfPath);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   476
		__IriSP.trace("__IriSP.APIplayer","__IriSP.createPlayer");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   477
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   478
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   479
__IriSP.APIplayer.prototype.ready = function(player){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   480
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   481
	//__IriSP.trace("__IriSP.APIplayer.prototype.APIpReady"," __IriSP.createInterface");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   482
	__IriSP.createInterface(this.width,this.height,this.duration);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   483
	__IriSP.trace("__IriSP.APIplayer.prototype.APIpReady","END  __IriSP.createInterface");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   484
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   485
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   486
	// hashchange EVENT
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   487
	if (window.addEventListener){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   488
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   489
	// pour FIREFOX  hashchange EVENT
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   490
		window.addEventListener("hashchange", function() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   491
		  var url = window.location.href;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   492
		  var time = __IriSP.retrieveTimeFragment(url);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   493
		  __IriSP.trace("__IriSP.APIplayer.prototype.ready",time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   494
		  if(__IriSP.MyApiPlayer.hashchangeUpdate==null){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   495
			__IriSP.MyApiPlayer.seek(time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   496
		  }else{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   497
			__IriSP.MyApiPlayer.hashchangeUpdate=null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   498
		  }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   499
		}, false);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   500
	 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   501
	} 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   502
	else if (window.attachEvent){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   503
	// FOR IE hashchange EVENT
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   504
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   505
		window.attachEvent("onhashchange", function() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   506
		  __IriSP.trace("hashchange",time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   507
		  var url = window.location.href;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   508
		  var time = __IriSP.retrieveTimeFragment(url);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   509
		  if(__IriSP.MyApiPlayer.hashchangeUpdate==null){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   510
			__IriSP.MyApiPlayer.seek(time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   511
		  }else{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   512
			__IriSP.MyApiPlayer.hashchangeUpdate=null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   513
		  }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   514
		}, false);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   515
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   516
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   517
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   518
__IriSP.APIplayer.prototype.pause = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   519
	this.hashchangeUpdate = true;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   520
	__IriSP.player.sendEvent('PAUSE');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   521
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   522
__IriSP.APIplayer.prototype.play  = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   523
	this.hashchangeUpdate = true;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   524
	__IriSP.player.sendEvent('PLAY');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   525
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   526
__IriSP.APIplayer.prototype.mute  = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   527
	__IriSP.player.sendEvent('MUTE');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   528
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   529
__IriSP.APIplayer.prototype.share = function(network){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   530
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   531
	var MyMessage = "Je regarde :";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   532
	var MyURLNow = window.location.href;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   533
	var shareURL;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   534
	//alert(network+" : "+MyURLNow);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   535
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   536
	if(network == "facebook"){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   537
			shareURL = "http://www.facebook.com/share.php?u=";			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   538
		}else if(network == "twitter"){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   539
			shareURL  = "http://twitter.com/home?status="+MyMessage;	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   540
		}else if(network == "myspace"){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   541
			shareURL ="http://www.myspace.com/Modules/PostTo/Pages/?u=";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   542
		}else if(network == "delicious"){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   543
			shareURL = "http://delicious.com/save?url=";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   544
		}else if(network == "JameSpot"){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   545
			shareURL = "http://www.jamespot.com/?action=spotit&u=";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   546
			//alert(network+" non actif pour l'instant : "+MyURLNow);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   547
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   548
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   549
	window.location.href = shareURL+encodeURIComponent(MyURLNow);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   550
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   551
__IriSP.APIplayer.prototype.seek  = function (time){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   552
	__IriSP.player.sendEvent('SEEK', time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   553
	this.changePageUrlOffset(time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   554
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   555
__IriSP.APIplayer.prototype.update = function (time){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   556
	this.hashchangeUpdate = true;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   557
	__IriSP.player.sendEvent('SEEK', time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   558
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   559
__IriSP.APIplayer.prototype.changePageUrlOffset = function (time) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   560
	//alert(time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   561
  __IriSP.trace("__IriSP.APIplayer.prototype.changePageUrlOffset","CHANGE URL "+time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   562
  window.location.hash = "#t=" + time;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   563
  window.location.href =  window.location.href;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   564
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   565
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   566
/* MEDIA FRAGMENT FUNCTION */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   567
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   568
__IriSP.jumpToTimeoffset = function (form) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   569
	var time = form.time.value;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   570
	__IriSP.MyApiPlayer.changePageUrlOffset(time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   571
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   572
__IriSP.retrieveTimeFragment = function (url) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   573
  var pageoffset = 0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   574
  var offsettime = 0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   575
  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   576
  if (url.split("#")[1] != null) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   577
	pageoffset = url.split("#")[1];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   578
		if (pageoffset.substring(2) != null) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   579
			offsettime = pageoffset.substring(2);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   580
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   581
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   582
	return offsettime;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   583
}  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   584
__IriSP.ignoreTimeFragment = function(url){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   585
 if (url.split("#")[1] != null) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   586
	var pageurl= url.split("#")[0];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   587
 }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   588
 return pageurl;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   589
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   590
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   591
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   592
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   593
/* CODE SPECIAL JW PLAYER  creation + listener */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   594
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   595
__IriSP.currentPosition 	= 0; 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   596
__IriSP.currentVolume   	= 50; 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   597
__IriSP.player 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   598
__IriSP.startPosition 	= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   599
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   600
__IriSP.createPlayer = function (width,height,url,duration,streamerPath,MySwfPath) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   601
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   602
	__IriSP.trace("__IriSP.createPlayer","start");			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   603
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   604
	__IriSP.myUrlFragment = url.split(streamerPath);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   605
	var file = __IriSP.myUrlFragment[1];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   606
	var streamer = streamerPath;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   607
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   608
	var flashvars = {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   609
		streamer:streamer,
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   610
		file:file, 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   611
		live:"true",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   612
		autostart:"true",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   613
		controlbar:"none",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   614
		playerready:"__IriSP.playerReady"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   615
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   616
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   617
	var params = {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   618
		allowfullscreen:"true", 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   619
		allowscriptaccess:"always",
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   620
		wmode:"transparent"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   621
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   622
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   623
	var attributes = {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   624
		id:"Ldtplayer1",  
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   625
		name:"Ldtplayer1"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   626
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   627
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   628
	__IriSP.trace("__IriSP.createPlayer","SWFOBJECT src:"+__IriSP.config.player.src+" " +width+" "+height);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   629
	swfobject.embedSWF(__IriSP.config.player.src, "Ldt-PlaceHolder", width, height, "9.0.115", false, flashvars, params, attributes);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   630
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   631
	// need a methode to 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   632
	// re execute if this swf call does'nt work 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   633
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   634
__IriSP.playerReady  = function (thePlayer) {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   635
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   636
	//__IriSP.trace("__IriSP.playerReady","PLAYER READY !!!!!!!!!!!!");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   637
	__IriSP.player = window.document[thePlayer.id];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   638
	//__IriSP.trace("__IriSP.playerReady","API CALL "+__IriSP.player);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   639
	__IriSP.MyApiPlayer.ready(__IriSP.player);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   640
	//__IriSP.trace("__IriSP.playerReady","API CALL END ");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   641
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   642
	var url = document.location.href;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   643
	var time = __IriSP.retrieveTimeFragment(url);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   644
	//__IriSP.trace("__IriSP.playerReady"," "+url+" "+time );
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   645
	__IriSP.startPosition = time;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   646
	//__IriSP.trace("__IriSP.playerReady"," LISTENER LAUCHER");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   647
	__IriSP.addListeners();	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   648
	//__IriSP.trace("__IriSP.playerReady"," LISTENER END");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   649
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   650
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   651
__IriSP.addListeners = function () {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   652
	if (__IriSP.player) { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   653
		__IriSP.trace("__IriSP.addListeners","ADD  Listener ");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   654
		__IriSP.player.addModelListener("TIME", "__IriSP.positionListener");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   655
		__IriSP.player.addControllerListener("VOLUME", "__IriSP.volumeListener");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   656
		__IriSP.player.addModelListener('STATE', '__IriSP.stateMonitor');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   657
	} else {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   658
		__IriSP.setTimeout("addListeners()",100);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   659
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   660
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   661
	// et changer les boutons
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   662
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   663
__IriSP.stateMonitor = function (obj) { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   664
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   665
	 if(obj.newstate == 'PAUSED')
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   666
    {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   667
		__IriSP.trace("__IriSP.stateMonitor","PAUSE");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   668
		__IriSP.MyApiPlayer.changePageUrlOffset(__IriSP.currentPosition);			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   669
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   670
	} else if (obj.newstate == 'PLAYING'){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   671
		// une fois la video prete a lire  la déplacer au bon timecode 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   672
		if(__IriSP.startPosition!=null){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   673
			__IriSP.MyApiPlayer.update(__IriSP.startPosition);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   674
			__IriSP.startPosition = null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   675
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   676
	} else if (obj.newstate == 'BUFFERING'){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   677
		__IriSP.trace("__IriSP.stateMonitor","BUFFERING : ");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   678
		//changePageUrlOffset(currentPosition);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   679
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   680
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   681
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   682
__IriSP.positionListener = function(obj) { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   683
	//__IriSP.trace("__IriSP.positionListener",obj.position);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   684
	__IriSP.currentPosition = obj.position; 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   685
	var tmp = document.getElementById("posit");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   686
	if (tmp) { tmp.innerHTML = "position: " + __IriSP.currentPosition; }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   687
	__IriSP.jQuery("#slider-range-min").slider("value", obj.position);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   688
	__IriSP.jQuery("#amount").val(obj.position+" s");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   689
	// afficher annotation 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   690
	__IriSP.MyLdt.checkTime(__IriSP.currentPosition);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   691
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   692
__IriSP.volumeListener   = function (obj) { 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   693
	__IriSP.currentVolume = obj.percentage; 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   694
	var tmp = document.getElementById("vol");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   695
	if (tmp) { tmp.innerHTML = "volume: " + __IriSP.currentVolume; }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   696
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   697
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   698
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   699
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   700
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   701
/* 	UTIL */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   702
// code from http://stackoverflow.com/questions/822452/strip-html-from-text-javascript
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   703
__IriSP.stripHtml = function(s){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   704
	return s.replace(/\\&/g, '&amp;').replace(/\\</g, '&lt;').replace(/\\>/g, '&gt;').replace(/\\t/g, '&nbsp;&nbsp;&nbsp;').replace(/\\n/g, '<br />').replace(/'/g, '&#39;').replace(/"/g, '&quot;');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   705
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   706
// conversion de couleur Decimal vers HexaDecimal || 000 si fff 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   707
__IriSP.DEC_HEXA_COLOR = function (dec){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   708
	 var hexa='0123456789ABCDEF',hex='';
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   709
	 var tmp;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   710
	 while (dec>15){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   711
		  tmp = dec-(Math.floor(dec/16))*16;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   712
		  hex = hexa.charAt(tmp)+hex;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   713
		  dec = Math.floor(dec/16);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   714
	 }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   715
	 hex = hexa.charAt(dec)+hex;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   716
	 if (hex == "FFCC00"){ hex="";/* by default color of Ldt annotation */ }
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   717
	 return(hex);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   718
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   719
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   720
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   721
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   722
/* CLASS Ligne (annotationType) 	*/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   723
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   724
__IriSP.LDTligne 	= null;		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   725
__IriSP.Ligne = function (id,title,description,duration){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   726
	this.id 		 = id;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   727
	this.title 		 = title;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   728
	this.description = description;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   729
	//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   730
	this.annotations = new Array();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   731
	this.duration = duration;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   732
	__IriSP.LDTligne = this;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   733
	__IriSP.trace("__IriSP.Ligne","CREATE "+__IriSP.LDTligne);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   734
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   735
__IriSP.Ligne.prototype.addAnnotation = function (id,begin,end,media,title,description,color,tags){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   736
	var myAnnotation = new __IriSP.Annotation(id,begin,end,media,title,description,color,tags,this.duration);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   737
	this.annotations.push(myAnnotation);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   738
	//__IriSP.trace("__IriSP.Ligne.prototype.addAnnotation  ","add annotation "+title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   739
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   740
__IriSP.Ligne.prototype.onClickLigneAnnotation = function(id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   741
	//changePageUrlOffset(currentPosition);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   742
	//player.sendEvent('SEEK', this.start);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   743
	//__IriSP.trace("SEEK",this.start);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   744
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   745
__IriSP.Ligne.prototype.searchLigneAnnotation = function(id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   746
	/*for (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   747
	}*/
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   748
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   749
__IriSP.Ligne.prototype.listAnnotations = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   750
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   751
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   752
__IriSP.Ligne.prototype.nextAnnotation = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   753
	var annotationCibleNumber = this.numAnnotation(this.annotationOldRead)+1;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   754
	var annotationCible = this.annotations[annotationCibleNumber];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   755
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   756
	if(annotationCibleNumber<this.annotations.length-1){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   757
		annotationCible.begin
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   758
		__IriSP.player .sendEvent('SEEK', annotationCible.begin/1000);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   759
		__IriSP.trace("LIGNE  ","| next = "+annotationCibleNumber+" - "+this.annotations.length+" | seek :"+annotationCible.begin/1000);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   760
	}else{
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   761
		__IriSP.player .sendEvent('SEEK', this.annotations[0].begin/1000);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   762
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   763
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   764
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   765
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   766
__IriSP.Ligne.prototype.numAnnotation = function (annotationCible){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   767
	for (var i=0; i < this.annotations.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   768
		if(annotationCible == this.annotations[i]){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   769
			return i;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   770
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   771
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   772
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   773
__IriSP.Ligne.prototype.checkTime = function(time){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   774
	var annotationTempo = -1;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   775
	//__IriSP.trace("__IriSP.Ligne.prototype.checkTimeLigne",time);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   776
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   777
	for (var i=0; i < this.annotations.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   778
		var annotationTempo = this.annotations[i];	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   779
		if (time>annotationTempo.begin/1000 && time<annotationTempo.end/1000){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   780
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   781
				// different form the previous
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   782
				if(annotationTempo!=this.annotationOldRead){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   783
					this.annotationOldRead = annotationTempo;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   784
					//__IriSP.trace("Check : ","annotation ici : "+i+" title "+annotationTempo.title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   785
					//__IriSP.jQuery('#Ldt-ShowAnnotation').slideUp();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   786
					//http://api.jquery.com/delay/  -> 1.4
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   787
					//__IriSP.jQuery("#Ldt-SaTitle").delay(100).text(annotationTempo.title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   788
					//__IriSP.jQuery("#Ldt-SaDescription").delay(100).text(annotationTempo.description);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   789
					//__IriSP.jQuery('#Ldt-ShowAnnotation').delay(100).slideDown();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   790
					//__IriSP.trace("__IriSP.Ligne.prototype.checkTimeLigne",annotationTempo.title+" "+annotationTempo.description );
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   791
					__IriSP.jQuery("#Ldt-SaTitle").text(annotationTempo.title);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   792
					__IriSP.jQuery("#Ldt-SaDescription").text(annotationTempo.description);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   793
					
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   794
					__IriSP.jQuery("#Ldt-SaDescription").text(annotationTempo.description);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   795
					__IriSP.jQuery("#Ldt-SaKeywordText").html("Mots clefs : "+annotationTempo.htmlTags);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   796
					
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   797
					//__IriSP.jQuery('#Ldt-ShowAnnotation').slideDown();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   798
					var startPourcent 	= annotationTempo.timeToPourcent((annotationTempo.begin*1+(annotationTempo.end*1-annotationTempo.begin*1)/2),annotationTempo.duration*1); 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   799
					__IriSP.jQuery("#Ldt-Show-Arrow").animate({left:startPourcent+'%'},1000);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   800
					//alert(startPourcent);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   801
					var tempolinkurl  =  __IriSP.ignoreTimeFragment(window.location.href)+"#t="+(this.annotations[i].begin/1000);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   802
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   803
			break;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   804
		} 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   805
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   806
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   807
	// si il y en a pas : retractation du volet 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   808
	if( annotationTempo == -1){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   809
		if(annotationTempo!=this.annotationOldRead){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   810
			__IriSP.trace("Check : ","pas d'annotation ici ");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   811
			__IriSP.jQuery('#Ldt-ShowAnnotation').slideUp();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   812
			this.annotationOldRead = annotationTempo;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   813
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   814
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   815
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   816
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   817
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   818
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   819
/* CLASS Annotation */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   820
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   821
__IriSP.Annotation = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   822
	var id 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   823
	var begin 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   824
	var end 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   825
	var media 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   826
	var description	= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   827
	var title 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   828
	var color 			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   829
	var tags			= null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   830
	__IriSP.trace("annotation ","r�ussi")
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   831
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   832
__IriSP.Annotation = function(id,begin,end,media,title,description,color,tags,duration){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   833
	this.id 			= id;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   834
	this.begin 			= begin;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   835
	this.end 			= end;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   836
	this.media 			= media;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   837
	this.description 	= description;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   838
	this.title 			= title;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   839
	this.color 			= color;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   840
	this.tags			= tags;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   841
	this.htmlTags		= "";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   842
	this.duration		= duration;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   843
	// draw it 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   844
	this.draw();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   845
	this.drawTags();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   846
	//
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   847
	__IriSP.trace("Annotation created : ",id);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   848
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   849
__IriSP.Annotation.prototype.draw = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   850
	//alert (this.duration);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   851
	var startPourcent 	= this.timeToPourcent(this.begin,this.duration); // temps du media 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   852
	var endPourcent 	= this.timeToPourcent(this.end,this.duration)-startPourcent;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   853
	var titleForDiv		= this.title.substr(0,55);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   854
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   855
	__IriSP.jQueryAnnotationTemplate = "<div title='"+__IriSP.stripHtml(titleForDiv)+"' id='"+this.id+"'  class='ui-slider-range ui-slider-range-min ui-widget-header iri-chapter' width='100%' style=\"left:"+startPourcent+"%; width:"+endPourcent+"%; padding-top:15px; border-left:solid 1px #aaaaaa; border-right:solid 1px #aaaaaa; background:#"+__IriSP.DEC_HEXA_COLOR(this.color)+";\" onClick=\"__IriSP.MyApiPlayer.seek('"+Math.round(this.begin/1000)+"');__IriSP.jQuery('#Ldt-ShowAnnotation').slideDown();\"    ></div> ";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   856
	//alert(this.color+" : "+DEC_HEXA_COLOR(this.color));
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   857
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   858
	__IriSP.jQuerytoolTipTemplate = "<div class='Ldt-tooltip'>"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   859
						+"<div class='title'>"+__IriSP.stripHtml(this.title)+"</div>"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   860
						+"<div class='time'>"+this.begin+" : "+this.end+"</div>"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   861
						+"<div class='description'>"+__IriSP.stripHtml(this.description)+"</div>"
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   862
						+"</div>";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   863
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   864
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   865
	__IriSP.jQuery("<div>"+__IriSP.jQueryAnnotationTemplate+"</div>").appendTo("#Ldt-Annotations");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   866
	// TOOLTIP BUG ! 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   867
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   868
	__IriSP.jQuery("#"+this.id).tooltip({ effect: 'slide'});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   869
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   870
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   871
	__IriSP.jQuery("#"+this.id).fadeTo(0,0.3);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   872
	__IriSP.jQuery("#"+this.id).mouseover(function() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   873
		__IriSP.jQuery("#"+this.id).animate({opacity: 0.6}, 5)
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   874
	}).mouseout(function(){		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   875
		__IriSP.jQuery("#"+this.id).animate({opacity: 0.3}, 5)
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   876
	});
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   877
	__IriSP.trace("__IriSP.Annotation.prototype.draw","ADD ANOTATION : "+this.begin+" "+this.end+" "+__IriSP.stripHtml(this.title)+" | "+startPourcent+" | "+endPourcent+" | duration = "+this.duration);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   878
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   879
}	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   880
__IriSP.Annotation.prototype.drawTags = function(){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   881
	var KeywordPattern = '<a href=\"\"> '+' </a>';
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   882
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   883
	//__IriSP.trace(" !? Tags : ",this.tags);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   884
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   885
	if (this.tags!=undefined){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   886
		for (var i = 0; i < this.tags.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   887
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   888
			//this.htmlTags += '<span onclick=\"ShowTag('+this.tags[i]['id-ref']+');\"  > '+MyTags.getTitle(this.tags[i]['id-ref'])+' </span>'+" , ";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   889
			this.htmlTags += '<span> '+__IriSP.MyTags.getTitle(this.tags[i]['id-ref'])+' </span>'+" , ";
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   890
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   891
		}		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   892
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   893
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   894
__IriSP.Annotation.prototype.tootTipAnnotation = function() {
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   895
	// 1 chercher le div correspondant
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   896
	// 2 y mettre les information
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   897
	return this.color + ' ' + this.type + ' apple';
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   898
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   899
__IriSP.Annotation.prototype.onRollOverAnnotation = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   900
	this.tootTip();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   901
}		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   902
__IriSP.Annotation.prototype.timeToPourcent = function(time,timetotal){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   903
	return (parseInt(Math.round(time/timetotal*100)));
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   904
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   905
 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   906
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   907
/* CLASS Tags */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   908
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   909
__IriSP.Tags = function(object){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   910
	this.myTags 	=	object;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   911
	this.htmlTags 	= 	null;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   912
	this.weigthMax 	= 	0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   913
	//this.mySegments  = 	new array();
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   914
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   915
__IriSP.Tags.prototype.addAnnotation = function (annotation){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   916
	for (var i = 0; i < this.myTags.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   917
		this.myTags[i].mySegments = new Array(); 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   918
		if (annotation.tags!=null){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   919
			for (var j = 0; j < annotation.tags.length; ++j){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   920
				if (this.myTags[i]['id'] == annotation.tags[j]['id-ref']){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   921
					this.myTags[i].mySegments.push([annotation.begin,annotation.end,annotation.id]);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   922
					var weigthTempo = this.myTags[i].mySegments.length
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   923
					var tempo = this.myTags[i].mySegments[weigthTempo-1];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   924
					//__IriSP.trace ("__IriSP.Tags.prototype.addAnnotation ","  "+this.myTags[i]['meta']['dc:title']+" "+this.myTags[i]['id']+" : "+tempo[0]+" - "+tempo[1]);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   925
					
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   926
					if (this.weigthMax < weigthTempo ){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   927
						this.weigthMax = weigthTempo;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   928
					}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   929
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   930
			}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   931
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   932
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   933
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   934
__IriSP.Tags.prototype.getTitle = function (id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   935
	for (var i = 0; i < this.myTags.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   936
		if(this.myTags[i]['id']==id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   937
			return(this.myTags[i]['meta']['dc:title']);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   938
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   939
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   940
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   941
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   942
__IriSP.Tags.prototype.draw = function (){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   943
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   944
	__IriSP.trace("__IriSP.Tags.prototype.draw"," !!! WELL START " );
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   945
	for (var i = 0; i < this.myTags.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   946
		__IriSP.trace("__IriSP.Tags.prototype.draw"," ADD Tags : "+this.myTags[i]['id']);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   947
		if(this.myTags[i]['id']!=null){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   948
		this.htmlTags += '<span onclick=\"MyTags.show( \''+this.myTags[i]['id']
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   949
						+'\');\" style=\"font-size:'  +((this.myTags[i].mySegments.length/this.weigthMax*10)+8)
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   950
						+'px;\" alt=\"'+this.myTags[i].mySegments.length
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   951
						+'\"> '+this.myTags[i]['meta']['dc:title']+' </span>'+' , ';
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   952
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   953
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   954
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   955
	__IriSP.jQuery('#Ldt-Tags').html(this.htmlTags);
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   956
	__IriSP.trace("__IriSP.Tags.prototype.draw"," !!!!  END WMAX= "+this.weigthMax );
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   957
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   958
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   959
__IriSP.Tags.prototype.show = function (id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   960
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   961
	var timeStartOffsetA	=	100000000000000000000;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   962
	var timeStartOffsetB	=	100000000000000000000;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   963
	var timeEndOffsetA		=	0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   964
	var timeEndOffsetB		=	0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   965
	var timeStartID;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   966
	var timeEndID;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   967
	var WidthPourCent;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   968
	var leftPourCent;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   969
	var timeStartOffset;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   970
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   971
	// case 1 : seul segment 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   972
	// case 2 : 2 ou X segments 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   973
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   974
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   975
	for (var i = 0; i < this.myTags.length; ++i){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   976
		if (this.myTags[i]['id']==id){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   977
			__IriSP.trace("######### TAG DRAWing : "," END" );		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   978
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   979
			for (var j = 0; j < this.myTags[i].mySegments.length; ++j){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   980
				if(timeStartOffset> this.myTags[i].mySegments[j][0]){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   981
					timeStartOffsetA = this.myTags[i].mySegments[j][0];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   982
					timeStartOffsetB = this.myTags[i].mySegments[j][1];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   983
					timeStartID		 = this.myTags[i].mySegments[j][2]
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   984
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   985
				if(timeStartOffset> this.myTags[i].mySegments[j][0]){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   986
					timeEndOffsetA  = this.myTags[i].mySegments[j][0];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   987
					timeEndOffsetB  = this.myTags[i].mySegments[j][1];
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   988
					timeEndID		= this.myTags[i].mySegments[j][2]
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   989
				}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   990
			}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   991
			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   992
		}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   993
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   994
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   995
	// -------------------------------------------------
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   996
	// 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   997
	// -------------------------------------------------
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   998
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
   999
	leftPourCent 	= __IriSP.timeToPourcent((timeStartOffsetA*1+(timeStartOffsetB-timeStartOffsetA)/2),__IriSP.MyLdt.duration); 
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1000
	WidthPourCent	= __IriSP.timeToPourcent((timeEndOffsetA*1+(timeEndOffsetB-timeEndOffsetA)/2),__IriSP.MyLdt.duration)-leftPourCent; 			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1001
	//WidthPourCent	= timeToPourcent((timeEndOffsetA*1+(timeEndOffsetB-timeEndOffsetA)/2),MyLdt.duration)-startPourcent; 			
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1002
	__IriSP.jQuery("#Ldt-Show-Tags").css('left',leftPourCent+'%');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1003
	__IriSP.jQuery("#Ldt-Show-Tags").css('width',WidthPourCent+'%');
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1004
	// like arrow script
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1005
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1006
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1007
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1008
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1009
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1010
		
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1011
/* CLASS TRACE */
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1012
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1013
__IriSP.traceNum=0;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1014
__IriSP.trace = function(msg,value){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1015
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1016
	if(__IriSP.config.gui.debug===true){
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1017
		__IriSP.traceNum += 1;
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1018
		__IriSP.jQuery("<div>"+__IriSP.traceNum+" - "+msg+" : "+value+"</div>").appendTo("#Ldt-output");
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1019
	}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1020
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1021
}
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1022
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1023
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1024
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1025
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1026
	
eb9188f2ee4f first commit
wakimd
parents:
diff changeset
  1027