
exttypetb[1000] = [1001,1002] ;
exttypetb[1001] = [1000] ;
exttypetb[1015] = [1016,1017] ;
exttypetb[1016] = [1000,1015,1017,5100] ;
exttypetb[1017] = [1016,505] ;
exttypetb[1018] = [1000,1016,1017] ;
exttypetb[2003] = [1016,1017] ;
exttypetb[6000] = [2200,2202,2204] ;
// exttypetb[3000] = [1016,1017] ;

exttypetb['writerlist'] = [1021,1022,1023,1024] ;
exttypetb['calclist'] = [2220,2221,2222,2223] ;
exttypetb['drawlist'] = [650,651,652,653] ;
exttypetb['impresslist'] = [3500,3501,3502,3503] ;
exttypetb['mathlist'] = [2990,2991] ;

exttypetb[500].push(632);
exttypetb[5000].push(1);
exttypetb[5000].push(500);

var IE4 = document.all;
var NN7 = (!IE4 && document.getElementById);
var IE5 = (IE4 && navigator.userAgent.indexOf("Mac") == -1 && (navigator.userAgent.indexOf("MSIE 5") != -1 || navigator.userAgent.indexOf("MSIE 4") != -1));
if (IE4 && navigator.userAgent.indexOf("Opera") != -1) {
	NN7 = true;
	IE4 = false;
}
var safari = (navigator.userAgent.indexOf("Safari") != -1);

function getObject(obj) {
	return (IE4?document.all[obj]:document.getElementById(obj));
}

function checkurl(chaine)
{
 var tomatch0= /\.(7z|3gp|aac|amr|amv|asf|avi|bmp|doc|dv|exe|js|flv|gif|ico|jpg|mid|midi|mkv|mmf|mov|mp4|mpc|mpg|pps|pdf|ps|psd|ra|ram|rm|qcp|tga|tar|tif|tgz|vob|wma|wmv|zip)[\s]*$/i
 if (tomatch0.test(chaine))
 {
 return false; 
 }
 var tomatch= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{2,5}/
 if (tomatch.test(chaine))
 {
 return true;
 }
 else
 {
 return false; 
}
}

function checkurl2(chaine)
{

 var tomatch= /http:\/\/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{2,5}/
 if (tomatch.test(chaine))
 {
 return true;
 }
 else
 {
 return false; 
}
}

function indexByName(obj,valeur) {
	for (var i = 0 ; i < obj.options.length ; i++ ) {	
		if ( obj.options[i].value == valeur ) {
			return i;
		}
	}
	return 0;
}

function testchamps2(formulaire) {
  var fname ;
  var sel = 0 ;
  var extname ;
	var selbox = formulaire.format1 ;

  fname = formulaire.fichier.value ;
  extname = fname.substring( fname.lastIndexOf('.') + 1 , fname.length ).toLowerCase() ;
  if ( intypetb[extname][0] > 0 ) {
  	formulaire.format1.selectedIndex = indexByName(formulaire.format1 ,intypetb[extname][1]) ;
  	if ( intypetb[extname][0] > 1 ) alert( MSG['MULTI-FORMAT'] ) ;
  	sel = 1 ;	
  }	
  if (sel==1)	setoutput(formulaire.format1.value,formulaire.format2) ;
return true ;
}

function checkurlext(formulaire,doc) {
  var fname ;
  var sel = 0 ;
  var extname = '' ;
	var selbox = formulaire.format1 ;
  var google_match = /video\.google/;
  var youtube_match = /youtube\.com\/watch/;
	
  fname = formulaire.urlin.value ;
	if (google_match.test(fname)) {
	extname = 'avi';
	} 
	if (youtube_match.test(fname)) {
	extname = 'flv';
	} 	
	if (extname!='') {} else {
  extname = fname.substring( fname.lastIndexOf('.') + 1 , fname.length ).toLowerCase() ;
	}
	
  if ( intypetb[extname][0] > 0 ) {
  	formulaire.format1.selectedIndex = indexByName(formulaire.format1 ,intypetb[extname][1]) ;
  	if ( intypetb[extname][0] > 1 ) alert( MSG['MULTI-FORMAT'] ) ;
  	sel = 1 ;	
  }	
  if (sel==1)	{
		setoutput(formulaire.format1.value,formulaire.format2) ;
	  setoptions(formulaire.format2,formulaire.option1,formulaire.format1,formulaire,doc);
	}
return true ;
}

function setoptions(selformat,seloption,selformat1,formu,doc) {
  var affoptions = 0;
	objopt = getObject("homeoptions");
	objopt.innerHTML='';
	var htmlopt = '';
	if (selformat.value == 5031 ) {
	  htmlopt +='<tr><td><span class=texteOpt>FORMAT</span></td><td><select class=texteOpt name=option1><option value=0 default>320x240 4/3</option><option value=1>320x180 16/9</option></select></td></tr>';		
		affoptions=1;	} 		
	if (selformat.value == 5030) {
	  htmlopt +='<tr><td><span class=texteOpt>FORMAT</span></td><td><select class=texteOpt name=option1><option value=0 default>H264 320x240 4/3 - 768kbit</option><option value=1 >H264 320x180 16/9 - 768kbit</option><option value=2 >MPEG4 480x480 - 2500kbit</option><option value=3 >H264 640x480 - (for TV out)</option></select></td></tr>';		
		affoptions=1;	} 		
	if (selformat.value >= 5000 && selformat.value < 6000  && selformat.value != 5031 && selformat.value != 5020 && selformat.value != 5005 && selformat1.value != 1016) {
	  htmlopt +='<tr><td><span class=texteOpt>Frames/second [4 to 30]</span></td><td><input type=text size=3 class=texteOpt name=v_fps></td></tr>';		
		affoptions=1;	} 	
	if (selformat.value == 500 && selformat1.value>=5000) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_RESIZE_TO']+' [96x96 to 948x576]</span></td><td><span class=texteOpt><input size=3 type=text name=taillex class=texteOpt>x<input size=3 type=text name=tailley class=texteOpt></span></td></tr><tr><td><span class=texteOpt>Frame position</span></td><td><span class=texteOpt><input size=11 class=texteOpt  name=option1 value="00:00:00" type=text> (min:sec:csec)</span></td></tr>';		
		affoptions=1;	} 		
	if (selformat.value == 5001) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_AUDIO_CODEC']+'&nbsp;</span></td><td><select name=v_acodec class=texteOpt><option value=0>AMR </option><option value=1>MP3</option><option selected value=2>AAC</option>&nbsp;</span></td></tr><tr><td><span class=texteOpt>Channels</span></td><td><select name=option2 class=texteOpt><option value=0 default>Mono</option><option value=1>Stereo</option></select></td></tr><tr><td><span class=texteOpt>Video '+MSG['JS_QUALITY']+' [48 to 768 kbps]</span></td><td><input type=text size=3 class=texteOpt name=v_br></td></tr><tr><td><span class=texteOpt>Format</span></td><td><select name=taillex class=texteOpt><option value=1 selected>QCIF PAL 176x144</option><option value=2>SQCIF 128x96</option><option value=4>CIF PAL 352x288</option><option value=5>4CIF PAL 704x576</option></select></td></tr>';		
		affoptions=1;	} 	
	if (selformat.value == 5005) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_RESIZE_TO']+' [96x96 to 948x576]</span></td><td><span class=texteOpt><input size=3 type=text name=taillex class=texteOpt>x<input size=3 type=text name=tailley class=texteOpt></span></td></tr><tr><td><span class=texteOpt>Audio '+MSG['JS_QUALITY']+'&nbsp;</span></td><td><select class=texteOpt name=option2><option value=0  selected>default</option><option value=8>8</option><option value=16>16k</option><option value=24>24k</option><option value=32>32k</option><option value=48>48k</option><option value=64>64k</option><option value=80>80k</option><option value=96>96k</option><option value=112>112k</option><option value=128>128k</option></select></span></td></tr><tr><td><span class=texteOpt>Video '+MSG['JS_QUALITY']+' [48 to 9999 kbps]</span></td><td><input value=default size=8 type=text name=option1 class=texteOpt></td></tr>';	
		affoptions=1;	} 		
	if ( selformat.value == 5008 || selformat.value == 5004 || selformat.value == 5007 || selformat.value == 5000 || selformat.value == 5014 || selformat.value == 5015 ) {
 if (selformat.value==5014) {
		htmlopt += '<tr><td><span class=texteOpt>Target</span></td><td><select name=option3 class=texteOpt><option value=0>no specific target</option><option value=1>SVCD NTSC</option><option value=2>SVCD PAL</option><option value=3>DVD NTSC</option><option value=4>DVD PAL</option></select></td></tr>';		}	
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_RESIZE_TO']+' [96x96 to 948x576]</span></td><td><span class=texteOpt><input size=3 type=text name=taillex class=texteOpt>x<input size=3 type=text name=tailley class=texteOpt></span></td></tr><tr><td><span class=texteOpt>Audio '+MSG['JS_QUALITY']+'&nbsp;</span></td><td><select class=texteOpt name=option2><option value=0  selected>default</option><option value=8>8k</option><option value=16>16k</option><option value=24>24k</option><option value=32>32k</option><option value=48>48k</option><option value=64>64k</option><option value=80>80k</option><option value=96>96k</option><option value=112>112k</option><option value=128>128k</option></select></td></tr><tr><td><span class=texteOpt>Video '+MSG['JS_QUALITY']+' [48 to 9999 kbps]</span></td><td><input value=default size=8 type=text name=option1 class=texteOpt></td></tr>';
		affoptions=1;	} 			
	if (selformat.value == 5002 ) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_RESIZE_TO']+' [96x96 to 948x576]</span></td><td><span class=texteOpt><input size=3 type=text name=taillex class=texteOpt>x<input size=3 type=text name=tailley class=texteOpt></span></td></tr><tr><td><span class=texteOpt>Audio Codec</span></td><td><select name=option5  onchange="if (this.value==1) { form1.option2.disabled=true; } else { form1.option2.disabled=false; }" class=texteOpt><option value=0  checked>MP3</option><option value=1>PCM</option></select></td></tr><tr><td><span class=texteOpt>Audio '+MSG['JS_QUALITY']+'&nbsp;</span></td><td><select class=texteOpt name=option2><option value=0  selected>default</option><option value=8>8k</option><option value=16>16k</option><option value=24>24k</option><option value=32>32k</option><option value=48>48k</option><option value=64>64k</option><option value=80>80k</option><option value=96>96k</option><option value=112>112k</option><option value=128>128k</option></select></span></td></tr><tr><td><span class=texteOpt>Video '+MSG['JS_QUALITY']+' [48 to 9999 kbps]</span></td><td><input value=default size=8 type=text name=option1 class=texteOpt></td></tr><tr><td><span class=texteOpt>Video Codec&nbsp;</span></td><td><select class=texteOpt name=v_acodec><option value=""  selected>default</option><option value=0>MSMPEG4v2</option><option value=1>MPEG4</option><option value=2>MJPEG</option></select></td></tr><tr><td><span class=texteOpt>FOURCC Header&nbsp;</span></td><td><select class=texteOpt name=option3><option value=""  selected>default</option><option value=MP42>MP42</option><option value=DX50>DX50</option><option value=DIVX>DIVX</option><option value=FMP4>FMP4</option><option value=MJPG>MJPG</option></select></td></tr>';	
		affoptions=1;	} 		
	if (( selformat.value >= 500 && selformat.value < 600 ) && (selformat1.value >= 500 && selformat1.value < 600)) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['LARGEUR']+'&nbsp;</span></td><td><input type=text size=7 class=texteOpt name=taillex></td></tr><tr><td><span class=texteOpt>'+MSG['HAUTEUR']+'&nbsp;</span></td><td><input class=texteOpt type=text size=7 name=tailley></td></tr>';		
		affoptions=1;	} 
	if (( selformat.value == 500 || selformat.value == 504 ) && (selformat1.value < 5000)) {
	  htmlopt +='<tr><td><span class=texteOpt>PNG '+MSG['JS_QUALITY']+'&nbsp;</span></td><td><select class=texteOpt name=option1><option>default</option><option value=100>BEST</option><option value=30>3</option><option value=50>5</option><option value=70>7</option><option value=80>8</option><option value=90>9</option></select></td></tr>';
		affoptions = 1;	}
	if ( selformat.value == 502 ) {
	  htmlopt +='<tr><td><span class=texteOpt>'+MSG['JS_COLORS']+'&nbsp;</span></td><td><select class=texteOpt name=option1><option>default</option><option value=256>max</option><option value=2>2</option><option value=4>4</option><option value=8>8</option><option value=16>16</option><option value=32>32</option><option value=64>64</option><option value=128>128</option><option value=256>256</option></select></td></tr>';
		affoptions = 1;	}
	if ( selformat.value > 0 &&  selformat.value < 200 && selformat1.value < 500)  {
    htmlopt+='<tr><td colspan=2><span class=texteOpt><input type=radio checked name=optsplit value=0>'+MSG['JS_AMR_ALL']+'&nbsp;<input type=radio name=optsplit value=2>'+MSG['JS_AMR_SPLIT']+'</span></td></tr>';
		affoptions = 1;	}		
	if (( selformat1.value == 1016 ) || ( selformat1.value == 2003 ) || ( selformat1.value == 1018 ) || ( selformat1.value == 1015 )) {
    htmlopt += '<tr><td><span class=texteOpt>&nbsp;'+MSG['PASSWD']+'&nbsp;</span></td><td><input type=text size=12 class=texteOpt name=passwd></td></tr>';
		affoptions = 1;	}							
	if (( selformat1.value == 1000 ) && ( selformat.value == 1001 ))	{
		 htmlopt += '<tr><td colspan=2><span class=texteOpt><input type=radio checked name=cset value=0>'+MSG['JS_NO_CH_CONV']+'&nbsp;<input type=radio checked name=cset value=1>'+MSG['JS_CH_CONV']+'</span></td></tr>';
	 affoptions = 1;
	}		
	if (affoptions == 0 ) {	objopt.innerHTML='';	} else {
	  objopt.innerHTML='<table cellpadding=2 width=100% cellspacing=0 border=0><tr><td width=100% bgcolor="#dddddd"><span class=texteOpt><font color="#000000"><center>'+MSG['OPT']+'</center></font></td></tr><tr align=left><td width=100% style="border-left:solid 1px #dddddd;border-right:solid 1px #dddddd;border-bottom:solid 1px #dddddd;"><table border=0 cellpadding=2 cellspacing=0 width=100%>'+htmlopt+'</table></td></tr></table>';
}}

function settypeoutput(ctrl,numtype) {
	var pos = ctrl.length ;
	var outype ;
	for (var cpt = 0 ; cpt < exttypetb[numtype].length ; cpt++, pos++) {
		 outype = exttypetb[numtype][cpt] ;
	   ctrl.options[pos] = new Option( outtypetb[outype] , outype ) ;
	}
}

function settypeoutput2(ctrl,numtype,vindex,format3) {
	var pos = ctrl.length ;
	var outype ;
	var deja ; 
	for (var cpt = 0 ; cpt < exttypetb[numtype].length ; cpt++) {
		 outype = exttypetb[numtype][cpt] ;
		 
		 deja = 0;
		 if (outype == vindex) deja = 1;
		 
		 for (var i = 0; i < ctrl.options.length; i++) {
			value2 = ctrl.options[i].value.split('A');
		 	if (value2[0] == outype) { deja = 1; }
		 }
		 
		 if (deja==0)
	   { ctrl.options[pos] = new Option( outtypetb[outype], outype+'A'+format3 ) ; pos++; }
	}
}

function setoofin(ctrl, vindex, intype, outlist) {
	var pos = ctrl.length ;
	var a = 0;
	for (var cpt = 0 ; cpt < exttypetb[intype].length ; cpt++) {
		 if ( exttypetb[intype][cpt] == vindex ) {
		 		for (var cof = 0 ; cof < exttypetb[outlist].length ; cof++, pos++ ) {
				    a = 1;
		 				var outype = exttypetb[outlist][cof] ;
	   				ctrl.options[pos] = new Option( outtypetb[outype], outype ) ;
				}
		 }
	}
	return a;
}

function format1change(form1,document) {
	if ( form1.format1.value == 1012 ) {
		 form1.inputmode[0].checked = true ;
		 form1.format1.disabled=true ;
		 printurlbox() ;
	}
	setoutput(form1.format1.value,form1.format2) ;
	setoptions(form1.format2,form1.option1,form1.format1,form1,document) ;
}

function format1change2(form1,document) {
	if ( form1.format1.value == 1012 ) {
		 form1.inputmode[0].checked = true ;
		 printurlbox() ;
	}
	setoutput(form1.format1.value,form1.format2) ;
	setoptions(form1.format2,form1.option1,form1.format1,form1,document) ;
}


function setoutput(vindex,csel2) {
					
	csel2.options.length = 0 ;
	if ( vindex < 200 ) { 
		settypeoutput( csel2 , 100 ) ;
		settypeoutput( csel2 , 199 ) ;
	}
	if ( vindex > 200 && vindex < 300 ) { 
	  settypeoutput( csel2 , 100 ) ;
		settypeoutput( csel2 , 199 ) ;
		settypeoutput( csel2 , 200 ) ;
	}
	if ( vindex >= 500 && vindex < 600 ) {
		settypeoutput( csel2 , 500 ) ;
	}
	if ( vindex >= 600 && vindex < 620  ) {
		settypeoutput( csel2 , 600 ) ;
		settypeoutput( csel2 , 500 ) ;
	}
	if ( vindex >= 1000 ) {
		 if ( exttypetb[vindex] ) settypeoutput( csel2 , vindex ) ;
	}
	if ( 	vindex == 1012 || vindex == 1013  ) settypeoutput( csel2 , 500 ) ;

	if ( vindex >= 4000 && vindex < 5000 ) {
		 settypeoutput( csel2 , 4000 ) ;
	}
	if ( vindex >= 5000 && vindex < 5090 ) settypeoutput( csel2 , 5000 ) ;

	if ( vindex > 1020 && vindex < 1025) settypeoutput( csel2 , 'offoutwriter' ) ;
	if ( vindex > 2219 && vindex < 2224) settypeoutput( csel2 , 'offoutcalc' ) ;
	if ( vindex > 649  && vindex < 654 ) settypeoutput( csel2 , 'offoutdraw' ) ;
	if ( vindex > 3499 && vindex < 3504) settypeoutput( csel2 , 'offoutimpress' ) ;
	if ( vindex > 2989 && vindex < 2992) settypeoutput( csel2 , 'offoutmath' ) ;
	
	if (setoofin(csel2, vindex, 'offinwriter' , 'writerlist' )) {	
	 	settypeoutput2( csel2 , 'offoutwriter', vindex, 1021) ;
	}
	if (setoofin(csel2, vindex, 'offincalc' , 'calclist' )) {
	 	settypeoutput2( csel2 , 'offoutcalc', vindex, 2220) ;
	}
	if (setoofin(csel2, vindex, 'offindraw' , 'drawlist' )) { 
		settypeoutput2( csel2 , 'offoutdraw', vindex, 650) ;
	}
	if (setoofin(csel2, vindex, 'offinimpress' , 'impresslist' )) {
		settypeoutput2( csel2 , 'offoutimpress', vindex, 3500) ;
	}
	if (setoofin(csel2, vindex, 'offinmath' , 'mathlist' )) {
	settypeoutput2( csel2 , 'offoutmath', vindex, 2990) ;
	}
}

function printurlbox2() {
  objfile = getObject("homefile");
	objfile.innerHTML='<input type="text" onChange="checkurlext(form1,document)" class=urlin name="urlin" value="http://" size=39 />';
}

function urlmode2(formu) 
{
	printurlbox2() ;
	formu.format1.selectedIndex=indexByName(formu.format1,1012) ;
	setoutput(1012,formu.format2);
	setoptions(formu.format2,formu.option1,formu.format1,formu,document);	
}

function filemode(formu) 
{
  objfile = getObject("homefile");
	objfile.innerHTML='<input onChange="testchamps2(document.form1);setoptions(form1.format2,form1.option1,form1.format1,form1,document)" class=btFile size=32 type=file name="fichier" enctype="multipart/form-data"/>';
	formu.format1.selectedIndex=0;
  formu.format1.disabled=false;

}

