/*
	* Mentions légales et de droits réservés
	* En vous connectant à ce site édité et mis en ligne pour le compte de nos clients, vous accédez à un contenu protégé 
	* par la loi, notamment par les dispositions du Code de la propriété intellectuelle.
	* L'éditeur n'autorise qu'un usage strictement personnel des données, informations ou contenus auxquels vous accédez,
	* limité à un enregistrement temporaire sur votre ordinateur aux fins d'affichage sur un seul écran.
	* 
	* Tous les matériaux publiés sur ce site web appartiennent à DBee, ses filiales, ses partenaires et/ou ses clients.
	* Toutes les marques de commerce, marques de service et nom de marques appartiennent à DBee, ses filiales, ses 
	* partenaires et/ou ses clients.
	* A moins qu’autrement spécifié, les matériaux et services publiés sur ce site web sont destinés à votre utilisation
	* personnelle et non commerciale. La modification, la copie, la distribution, la transmission, l’affichage, l’exécution,
	* la reproduction, la publication, la mise sous licence, la création de travaux dérivés, le transfert ou la vente
	* d’informations, de logiciels, de produits ou de services obtenus à partir de ce site web, sont interdites sans l’accord
	* (obtenu au préalable par écrit) de DBee SA.
	* Copyright 2005-2008 DBee SA, 35-37 rue de Paris 92100 Boulogne Billancourt, FRANCE. Tous droits réservés
	*
	* Version:
	* 2.1.1 (27 Janvier 2009)	
	*/var Search=function(){this.mainTag="";this.keyword="";this.results=new Array();this.resultsSubTitle=new Array();this.type="";this.action = "";this.slideOnePage=true;};Search.instance=null;Search.singleton=function(){if(Search.instance==null){Search.instance=new Search();}return Search.instance;};Search.prototype.handleDisplay=function(){if(this.type=="slide"){return "none";}else{return "block";}};Search.prototype.getAction = function(){return this.action;};Search.prototype.setAction = function(action){this.action = action;};Search.prototype.setType=function(){if(document.getElementById("modeSlides").checked&&document.getElementById("modeSubTitles").checked){this.type="mix";}else if(!document.getElementById("modeSlides").checked&&document.getElementById("modeSubTitles").checked){this.type="subtitle";}else if(document.getElementById("modeSlides").checked&& !document.getElementById("modeSubTitles").checked){this.type="slide";}else{this.type="";}};Search.prototype.setTypeForce=function(type){this.type=type;};Search.prototype.setMainTag=function(mainTag){this.mainTag=mainTag;};Search.prototype.getMainTag=function(){return this.mainTag;};Search.prototype.setKeyword=function(keyword){this.keyword=keyword;};Search.prototype.getKeyword=function(){return this.keyword;};Search.prototype.getType=function(){return this.type;};Search.prototype.getThema=function(bl){var aTcEvent,iEventL,sTempTcEvent,sTempNextTcEvent,sTempIdEvent,iSecRef,iSecCible,iSecNextCible;aTcEvent=gSynchros['thema'];iEventL=aTcEvent.length;for(var j=0;j<iEventL;j++){sTempTcEvent=aTcEvent[j][0];if(j+1<iEventL)sTempNextTcEvent=aTcEvent[j+1][0];sTempIdEvent=aTcEvent[j][1];iSecRef=fnTctoSec(bl);iSecCible=fnTctoSec(sTempTcEvent);if(j+1<iEventL)iSecNextCible=fnTctoSec(sTempNextTcEvent);sCondition=(j+1<iEventL)?iSecRef>=iSecCible&&iSecRef<iSecNextCible:iSecRef>=iSecCible;if(sCondition)return sTempIdEvent;}};Search.prototype.getIntervenant=function(bl){var aTcEvent,iEventL,sTempTcEvent,sTempNextTcEvent,sTempIdEvent,iSecRef,iSecCible,iSecNextCible;aTcEvent=gSynchros['intervenant'];iEventL=aTcEvent.length;for(var j=0;j<iEventL;j++){sTempTcEvent=aTcEvent[j][0];if(j+1<iEventL)sTempNextTcEvent=aTcEvent[j+1][0];sTempIdEvent=aTcEvent[j][1];iSecRef=fnTctoSec(bl);iSecCible=fnTctoSec(sTempTcEvent);if(j+1<iEventL)iSecNextCible=fnTctoSec(sTempNextTcEvent);sCondition=(j+1<iEventL)?iSecRef>=iSecCible&&iSecRef<iSecNextCible:iSecRef>=iSecCible;if(sCondition)return sTempIdEvent;}};Search.prototype.fillSlidesResults=function(results,startIndex,endIndex){if(results.length>0){var i=endIndex;if(i>0){while(i--){this.fillSlidesResultsHandler(i,results);}}else{this.fillSlidesResultsHandler(i,results);}return results;}else{var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNotMatchAnyDocs',target_langue));simpleTable.getSearchResultsNoMatch();}};Search.prototype.fillSlidesResultsHandler=function(i,results){var timeCodes=new Array();var themas=new Array();var intervenants=new Array();var intervenantIds=[];var themaIds=[];var k=gSynchros['slide'].length;while(k--){if(gSynchros['slide'][k][1]==results[i]['id']){timeCodes.push(gSynchros['slide'][k][0]);var themaID=searchObj.getThema(gSynchros['slide'][k][0]);themaIds.push(themaID);if(themaID!=undefined)themas.push(thema_vod_titles[themaID][langObj.getCurrentLang()]);else themas.push("");var intervenantID=searchObj.getIntervenant(gSynchros['slide'][k][0]);intervenantIds.push(intervenantID);if(intervenantID!=undefined)intervenants.push(intervenants_nom[intervenantID]+", "+intervenants_fonction[intervenantID][langObj.getCurrentLang()]);else intervenants.push("");}}if(timeCodes.length>0){results[i]['timecode']=timeCodes;}else{results[i]['timecode']=new Array();}if(themas.length>0){results[i]['thema']=themas;results[i]['themaId']=themaIds;}else{results[i]['thema']=new Array();results[i]['themaId']=themaIds;}if(intervenants.length>0){results[i]['intervenant']=intervenants;results[i]['intervenantId']=intervenantIds;}else{results[i]['intervenant']=new Array();results[i]['intervenantId']=intervenantIds;}};Search.prototype.fillSubTitlesResults=function(results,startIndex,endIndex){var i=endIndex;if(i>0){while(i--){if(i==startIndex)break;var k=gSynchros['slide'].length;while(k--){tcSlide=this.ar(gSynchros['slide'][k][0]);if((results[i]["timecodeSec"]>tcSlide||results[i]["timecodeSec"]==tcSlide)){results[i]['id']=gSynchros['slide'][k][1];results[i]['title']=this.getSlideAttribute(gSynchros['slide'][k][1],"title");}else{break;}}}}else{var k=gSynchros['slide'].length;while(k--){tcSlide=this.ar(gSynchros['slide'][k][0]);if((results[i]["timecodeSec"]>tcSlide||results[i]["timecodeSec"]==tcSlide)){results[i]['id']=gSynchros['slide'][k][1];results[i]['title']=this.getSlideAttribute(gSynchros['slide'][k][1],"title");}else{break;}}}return results;};Search.prototype.addSubTitleResults=function(al,context){var bPlayer=bPlayerConstructor.singleton(bPlayerConfiguration);var subtitle=new Array();subtitle['text']=new Array();var j=context.length;while(j--){if(context[j]!=undefined&&context[j].firstChild.data!=null){subtitle['text'][j]=context[j].firstChild.data;}}subtitle['timecode']=this.aU(al.parentNode.attributes[0].nodeValue/1000)+".0";subtitle['timecodeSec']=al.parentNode.attributes[0].nodeValue/1000;this.resultsSubTitle.push(subtitle);};Search.prototype.aU=function(aK){hh=Math.floor(aK/3600);aK=aK-(hh*3600);mm=Math.floor(aK/60);aK=aK-(mm*60);bM=Math.floor(aK);if(hh.toString().length==1)hh="0"+hh;if(mm.toString().length==1)mm="0"+mm;if(bM.toString().length==1)bM="0"+bM;return(hh+':'+mm+':'+bM);};Search.prototype.ar=function(bl){if(!isNaN(bl)){aK=bl;}else if(bl.indexOf(':')){if(bl.indexOf('.')){var aF=bl.split(':');hh=parseInt(eval(aF[0]));mm=parseInt(eval(aF[1]));bK=aF[2].split(".");bM=parseInt(eval(bK[0]));dd=parseInt(eval(bK[1]));aK=hh*3600+mm*60+bM+dd*0.1;}else{}}return(aK);};Search.prototype.addResults=function(al){var slide=new Array();slide['lang']=al.getAttribute('lang');var slideID=al.getAttribute('id');slide['id']=String(slideID.substring(1,slideID.length));//-->
if(al.getAttribute('title')!=""){slide['title']=al.getAttribute('title');}else{slide['title']="";}if(al.firstChild!=null){slide['text']=al.firstChild.nodeValue;}else{slide['text']="";}this.results.push(slide);};Search.prototype.emptyResults=function(){this.results=new Array();};Search.prototype.emptyResultsSubTitle=function(){this.resultsSubTitle=new Array();};Search.prototype.getResults=function(){var savedResults=this.results;return savedResults;};Search.prototype.getResultsSubTitle=function(){var savedResults=this.resultsSubTitle;return savedResults;};Search.prototype.request=function(data,mainTag,keyword){this.emptyResults();var reg=new RegExp("[ ]+","g");this.setMainTag(mainTag);this.setKeyword(keyword.split(reg));if(typeof(data)==="string"){searchDatabase.setData(dBAjax.get('data/xml/search.xml','xml'));data=searchDatabase.getData();}var parents=data.getElementsByTagName('slides');langObj.setCurrentLang(parents[0].getAttribute('lang'));var allSlides=data.getElementsByTagName(this.mainTag);var visibleSlides=new Array();var i=allSlides.length;while(i--){if(allSlides[i].getAttribute('hidden')=="false"){visibleSlides.push(allSlides[i]);}}var i=visibleSlides.length;while(i--){k=0;var j=this.keyword.length;while(j--){var bc=this.keyword[j].toLowerCase();if(visibleSlides[i].getAttribute('title')!=""||visibleSlides[i].firstChild!=null){if(visibleSlides[i].getAttribute('title')!=""){var titleLC=visibleSlides[i].getAttribute('title').toLowerCase();var foundInTitleLC=titleLC.indexOf(bc);}if(visibleSlides[i].firstChild!=null){var textLC=visibleSlides[i].firstChild.nodeValue.toLowerCase();var foundInTextLC=textLC.indexOf(bc);}if(foundInTextLC!= -1||foundInTitleLC!= -1){k++;}}}if(k==this.keyword.length){this.addResults(visibleSlides[i]);}}};Search.prototype.requestSubTitle=function(data,mainTag,keyword){this.emptyResultsSubTitle();var reg=new RegExp("[ ]+","g");this.setMainTag(mainTag);this.setKeyword(keyword.split(reg));if(typeof(data)==="string"){if(typeof(offline)=="undefined"){searchDatabase.setDataSubTitle(dBAjax.get('data/xml/subTitle.smi','xml'));}else if(typeof(offline)=="boolean"){searchDatabase.setDataSubTitle(dBAjax.get('data/xml/subTitle.smi','xml'));}data=searchDatabase.getDataSubTitle();}var parents=data.getElementsByTagName('body');langObj.setCurrentLang("fr");var allSlides=data.getElementsByTagName(this.mainTag);var i=allSlides.length;while(i--){var k=0;var firstCh=allSlides[i].firstChild;var firstChData=allSlides[i].firstChild.data;var j=this.keyword.length;while(j--){if(firstCh!=undefined&&firstChData!=null){var bc=this.keyword[j].toLowerCase();var text=firstChData.toLowerCase();var foundInText=text.indexOf(bc);if(foundInText!= -1){k++;}}}if(k==this.keyword.length){var context=new Array();context.push(allSlides[i-2]);context.push(allSlides[i]);context.push(allSlides[i+2]);this.addSubTitleResults(allSlides[i],context);}}};Search.prototype.requestMix=function(timecode){var resultsFinal=new Array();resultsFinal["text"]=new Array();resultsFinal["tag"]="";var tcSlideSec=this.ar(timecode);var resultsSubTitle=searchObj.getResultsSubTitle();var i=resultsSubTitle.length;var tag=0;while(i--){if(resultsSubTitle[i]["timecodeSec"]==tcSlideSec){resultsFinal["text"]=resultsSubTitle[i]["text"];resultsFinal["tag"]=resultsFinal["text"].length;break;}else if(resultsSubTitle[i]["timecodeSec"]>tcSlideSec){resultsFinal["text"]=resultsSubTitle[i]["text"];resultsFinal["tag"]=resultsFinal["text"].length-1;break;}}return resultsFinal;};Search.prototype.list=function(data,mainTag){var dBAjax=DBAjax.singleton();this.emptyResults();this.setMainTag(mainTag);var tags=data.getElementsByTagName(this.mainTag);var parents=data.getElementsByTagName('slides');langObj.setCurrentLang("fr");var i=tags.length;while(i--){if(tags[i].getAttribute('hidden')=="false"){this.addResults(tags[i]);}}};Search.prototype.getSlideAttribute=function(id,att){searchDatabase=SearchDatabase.singleton();var tags=searchDatabase.getData().getElementsByTagName("slide");var i=tags.length;while(i--){if(tags[i].getAttribute('id')==String("s"+id)){return tags[i].getAttribute(att);}}};Search.prototype.validateSlide=function(){var errors=new Array();var result=true;var searchDatabase=SearchDatabase.singleton();var data=searchDatabase.getData();if(typeof(data)=="object"){if(data.getElementsByTagName('slides').length==0){errors.push("Balise 'slides' n'est pas déclarée");return errors;}if(data.getElementsByTagName("slide").length==0){errors.push("Une balise 'slide' n'est pas déclarée");return errors;}}else{errors.push("Données XML ne sont pas chargées");return errors;}return errors;};Search.prototype.validateSubTitle=function(){var errors=new Array();var result=true;var searchDatabase=SearchDatabase.singleton();var data=searchDatabase.getDataSubTitle();if(typeof(data)=="object"){if(data.getElementsByTagName('body').length==0){errors.push("Balise 'body' n'est pas déclarée");return errors;}if(data.getElementsByTagName("sync").length==0){errors.push("Une balise 'sync' n'est pas déclarée");return errors;}if(data.getElementsByTagName("p").length==0){errors.push("Une balise 'p' n'est pas déclarée");return errors;}}else{errors.push("Données XML ne sont pas chargées");return errors;}return errors;};var searchObj=Search.singleton();