/*
	* 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 SearchService=function(){this.results=new Array();this.condition=false;this.nbElements=5;};SearchService.instance=null;SearchService.singleton=function(){if(SearchService.instance==null){SearchService.instance=new SearchService();}return SearchService.instance;};SearchService.prototype.setResults=function(results){this.results=results;this.condition=true;};SearchService.prototype.getResults=function(){return this.results;};SearchService.prototype.getPlage=function(pageIndex){var plage=new Array();var startIndex=(pageIndex-1)*this.nbElements;var endIndex=startIndex+this.nbElements;var counter=0;var m=endIndex;while(m--){if(m==startIndex)break;if(typeof(this.results[m])=="object")counter++;}var realEndIndex=startIndex+counter;plage["startIndex"]=startIndex;plage["realEndIndex"]=realEndIndex;return plage;};SearchService.prototype.displayAllMixResults=function(pageIndex){document.getElementById("ajaxLoaderPageDisplayContainer").style.display="block";this.clearResultsMain();var plage=this.getPlage(pageIndex);this.results=searchObj.fillSlidesResults(this.results,plage["startIndex"],plage["realEndIndex"]);var i=plage["realEndIndex"];var tmp=new Array();if(i>0){while(i--){tmp.push(this.results[i]);}}var k=tmp.length;if(k>0){while(k--){var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchResults();}}else{var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchResults();}document.getElementById("ajaxLoaderPageDisplayContainer").style.display="none";};SearchService.prototype.displayMixResults=function(results,timecode){this.hideMixResults(timecode);var simpleTable=new SimpleTable('div_'+dBJS.convertTCtoStr(String(timecode)),results);simpleTable.getSearchMixResults();};SearchService.prototype.hideMixResults=function(timecode){var i="";var theBody=document.getElementById('div_'+dBJS.convertTCtoStr(String(timecode)));if(theBody.childNodes.length>0){var searchResultsContainerLen=theBody.childNodes.length;}var i=searchResultsContainerLen;while(i--){theBody.removeChild(theBody.childNodes[i]);}};SearchService.prototype.displaySlidesResults=function(pageIndex){document.getElementById("ajaxLoaderPageDisplayContainer").style.display="block";this.clearResultsMain();var plage=this.getPlage(pageIndex);searchObj=Search.singleton();if(searchObj.slideOnePage==true){plage["startIndex"]=0;plage["realEndIndex"]=this.results.length;}this.results=searchObj.fillSlidesResults(this.results,plage["startIndex"],plage["realEndIndex"]);var i=plage["realEndIndex"];var tmp = new Array;if (Search.singleton().getAction() == "searchByOption_Action"){if (i > 0){while(i--){tmp.push(this.results[i]);}}}else{tmp = this.results;}var k=tmp.length;if(k>0){while(k--){var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchResults();}}else{var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchResults();}document.getElementById("ajaxLoaderPageDisplayContainer").style.display="none";};SearchService.prototype.displaySubTitleResults=function(pageIndex){document.getElementById("ajaxLoaderPageDisplayContainer").style.display="block";this.clearResultsMain();var plage=this.getPlage(pageIndex);this.results=searchObj.fillSubTitlesResults(this.results,plage["startIndex"],plage["realEndIndex"]);var i=plage["realEndIndex"];var tmp=new Array();if(i>0){while(i--){tmp.push(this.results[i]);}}var k=tmp.length;if(k>0){while(k--){var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchSubTitleResults();}}else{var simpleTable=new SimpleTable('searchResultsContainer',tmp[k]);simpleTable.getSearchSubTitleResults();}document.getElementById("ajaxLoaderPageDisplayContainer").style.display="none";};SearchService.prototype.setPagesSlides=function(){this.clearResults();var pages="";if(this.results.length>0){searchObj=Search.singleton();if(searchObj.slideOnePage==false){document.getElementById("listPagesContainer").style.display="block";document.getElementById("searchPagesContainer").style.display="block";var nbPages=Math.round(this.results.length/this.nbElements);var i=1;while(i<nbPages+1){pages+='<a href="#" onclick="searchService.displaySlidesResults('+i+');">'+i+'</a> ';i++;}document.getElementById("searchPages").innerHTML=pages;}else{document.getElementById("listPagesContainer").style.display="none";}this.displaySlidesResults(1);}else{var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNotMatchAnyDocs',target_langue));simpleTable.getSearchResultsNoMatch();}};SearchService.prototype.setPagesSubTitles=function(){this.clearResults();var pages="";if(this.results.length>0){if(this.results.length>1){document.getElementById("listPagesContainer").style.display="block";document.getElementById("searchPagesContainer").style.display="block";var nbPages=Math.round(this.results.length/this.nbElements);var i=1;while(i<nbPages+1){pages+='<a href="#" onclick="searchService.displaySubTitleResults('+i+');">'+i+'</a> ';i++;}document.getElementById("searchPages").innerHTML=pages;}this.displaySubTitleResults(1);}else{var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNotMatchAnyDocs',target_langue));simpleTable.getSearchResultsNoMatch();}};SearchService.prototype.setPagesMix=function(){this.clearResults();var pages="";if(this.results.length>0){if(this.results.length>1){document.getElementById("listPagesContainer").style.display="block";document.getElementById("searchPagesContainer").style.display="block";var nbPages=Math.round(this.results.length/this.nbElements);var i=1;while(i<nbPages+1){pages+='<a href="#" onclick="searchService.displayAllMixResults('+i+');">'+i+'</a> ';i++;}document.getElementById("searchPages").innerHTML=pages;}this.displayAllMixResults(1);}else{var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNotMatchAnyDocs',target_langue));simpleTable.getSearchResultsNoMatch();}};SearchService.prototype.clearResults=function(){var theBody=document.getElementById('listPagesContainer');theBody.style.display="none";var theBody=document.getElementById('searchPages');theBody.innerHTML="&nbsp;";var theBody=document.getElementById('searchResultsContainer');if(theBody.childNodes.length>0){var searchResultsContainerLen=theBody.childNodes.length;}var i=searchResultsContainerLen;while(i--){theBody.removeChild(theBody.childNodes[i]);}};SearchService.prototype.clearResultsMain=function(){var theBody=document.getElementById('searchResultsContainer');if(theBody.childNodes.length>0){var searchResultsContainerLen=theBody.childNodes.length;}var i=searchResultsContainerLen;while(i--){theBody.removeChild(theBody.childNodes[i]);}};SearchService.prototype.zoomIn=function(id){var contentZoom='<img src="slide/Diapositive'+id+'.gif" width="440px" height="330px" />';var contentThumbnail='<img src="vignettes/Diapositive'+id+'.gif" />';var contentZoomOut='<img src="../img/loupe-off.gif" />';dBJS.show('zoomWindowContainer');dBJS.show('thumbnailWindowContainer');dBJS.show('zoomOutWindowContainer');document.getElementById('zoomWindowContainer').innerHTML=contentZoom;document.getElementById('thumbnailWindowContainer').innerHTML=contentThumbnail;document.getElementById('zoomOutWindowContainer').innerHTML=contentZoomOut;};SearchService.prototype.zoomOut=function(id){dBJS.hide('zoomOutWindowContainer');dBJS.hide('zoomWindowContainer');dBJS.hide('thumbnailWindowContainer');};SearchService.prototype.tabSlideShow=function(){dBJS.hide('searchWindowContainer');dBJS.hide('zoomWindowContainer');dBJS.hide('zoomOutWindowContainer');dBJS.hide('thumbnailWindowContainer');dBJS.show('slidesDIV');};SearchService.prototype.tabSearch=function(){dBJS.hide('slidesDIV');dBJS.hide('zoomWindowContainer');dBJS.hide('zoomOutWindowContainer');dBJS.hide('thumbnailWindowContainer');dBJS.show('searchWindowContainer');};SearchService.prototype.handleNoKeywowrd=function(){Search.singleton().setAction("searchAll_Action");document.getElementById("searchPagesContainer").style.display="none";this.clearResults();var errors=searchObj.validateSlide();var len=errors.length;searchObj.list(searchDatabase.getData(),'slide');searchService.setResults(searchObj.getResults());searchService.setPagesSlides();};SearchService.prototype.handle=function(){Search.singleton().setAction("searchByOption_Action");if(document.getElementById('searchKeyword').value==""){this.clearResults();var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNoKeyword',target_langue));simpleTable.getSearchResultsNoMatch();return;}if(searchObj.getType()==""){this.clearResults();var simpleTable=new SimpleTable('searchResultsContainer',langObj.getWord('searchNoOptions',target_langue));simpleTable.getSearchResultsNoMatch();return;}if(document.getElementById('searchKeyword').value!=""){document.getElementById("searchPagesContainer").style.display="none";this.clearResults();switch(searchObj.getType()){case "slide":var errors=searchObj.validateSlide();var len=errors.length;if(len==0){searchObj.request(searchDatabase.getData(),'slide',document.getElementById('searchKeyword').value);searchService.setResults(searchObj.getResults());searchService.setPagesSlides();}else{while(len--)alert(errors[len]);}break;case "subtitle":var errors=searchObj.validateSubTitle();var len=errors.length;if(len==0){searchObj.requestSubTitle(searchDatabase.getDataSubTitle(),'p',document.getElementById('searchKeyword').value);searchService.setResults(searchObj.getResultsSubTitle());searchService.setPagesSubTitles();}else{while(len--)alert(errors[len]);}break;case "mix":var errors=searchObj.validateSubTitle();var len=errors.length;if(len==0){searchObj.requestSubTitle(searchDatabase.getDataSubTitle(),'p',document.getElementById('searchKeyword').value);searchService.setResults(searchObj.getResultsSubTitle());var subTitleResults=searchService.getResults();searchObj.request(searchDatabase.getData(),'slide',document.getElementById('searchKeyword').value);searchService.setResults(searchObj.getResults());var slideResults=searchService.getResults();var slideResultsFilled=searchObj.fillSlidesResults(slideResults,0,slideResults.length);searchService.setPagesMix();}else{while(len--)alert(errors[len]);}break;}document.getElementById("ajaxLoaderContainer").style.display="none";}};SearchService.prototype.init=function(){var searchObj=Search.singleton();var dBAjax=DBAjax.singleton();var dataSearch=dBAjax.get('data/xml/search.xml','xml');if(typeof(dataSearch)=="object"){var searchService=SearchService.singleton();searchDatabase.setData(dataSearch);searchObj.list(searchDatabase.getData(),'slide');searchService.setResults(searchObj.getResults());}else{alert("Fichier 'search.xml' n'existe pas");}if(typeof(offline)=="undefined"){var dataSubTitle=dBAjax.get('data/xml/subTitle.php','xml');}else if(typeof(offline)=="boolean"){var dataSubTitle=dBAjax.get('data/xml/subTitle.smi','xml');}if(typeof(dataSubTitle)=="object"){document.getElementById("searchModeSubTitle").style.display="block";document.getElementById("searchModeSlides").style.display="block";var searchService=SearchService.singleton();searchDatabase.setDataSubTitle(dataSubTitle);}else{alert("Fichier 'subTitle.php' n'existe pas");}searchObj.setType();};var searchService=SearchService.singleton();