// JavaScript Document
dojo.require("dijit.ColorPalette");

function openPrevEditor(){
	dojo.byId('preveditoropener').style.display='none';
	dojo.byId('preveditorcloser').style.display='block';
	dojo.byId('preveditor').style.display='block';
}
function closePrevEditor(){
	dojo.byId('preveditoropener').style.display='block';
	dojo.byId('preveditorcloser').style.display='none';
	dojo.byId('preveditor').style.display='none';
}
function choosePrevEditorPanel(panelid,tabnum){
	var preved = dojo.byId("preveditorform"+panelid);
	var panels = dojo.query(".editorpanel",preved);
	var tabs = dojo.query(".tab",preved);
	for(var i=0;i<panels.length;i++){
		panels[i].style.display = panels[i].id == "preveditorpanel"+panelid+tabnum?"block":"none";
		if(tabs[i].id == "preveditortab"+panelid+tabnum){
			tabs[i].className += " active";
		}else{
			while(tabs[i].className.indexOf("active")!=-1)
				tabs[i].className = tabs[i].className.replace("active","");
		}
	}
}
function showEditorHTML(){
	dojo.byId('preveditorcodehtmllink').style.display='none';
	dojo.byId('preveditorcodehtml').style.display='';
}

function setPrevEditorColor(who,val,nn){
	dojo.byId(who).value = val.substr(nn?0:1).toUpperCase();
	var box = dojo.byId(who+"prev");
	box.style.background = (nn?"#":"")+val.toUpperCase();
}
function showColorPanel(which){
	dojo.byId("backcolorpanel").style.display = 'none';
	dojo.byId("lightcolorpanel").style.display = 'none';
	dojo.byId("frontcolorpanel").style.display = 'none';
	dojo.byId("screencolorpanel").style.display = 'none';
	dojo.byId(which).style.display = 'block';
}
function onPluginCheck(cb){
	dojo.byId(cb.value+"fvars").style.display = cb.checked?'block':'none';
}

var playersData = Array();
function setPrevEditorData(jsurl,url,playerurl,streamerurl,onlyaudio,imgurl,md5id,prevId){
	prevId = prevId==null?'overpreview':prevId;
	playersData[prevId] = {	swobjsurl:jsurl,
							preveditorurl:url,
							filemd5id:md5id,
							mediaplayerurl:playerurl,
							streamer:streamerurl,
							showrevolt:onlyaudio,
							previmageurl:(imgurl!=null?imgurl:"")
						  };
}

function selectWebTemplate(prevId,num){
	var list = dojo.query(".template",dojo.byId('webtemplates'+prevId));
	for(var i=0;i<list.length;i++){
		var template = list[i];
		while(template.className.indexOf("selected")!=-1)
			template.className = template.className.replace("selected","");
		if(i==num){
			template.className += " selected";
			var val = dojo.byId('webtemplate'+prevId+'_'+i).innerHTML;
			dojo.byId('pvfwebtemplate'+prevId).value = val;
		}
	}
}

function updatePrevCodes(prevId,showpreview){
	prevId==null?'overpreview':prevId
	var previewer = dojo.byId(prevId);
	
	var fwidth 			= parseInt(dojo.byId("pvfwidth"+prevId).value);
	var fheight 		= parseInt(dojo.byId("pvfheight"+prevId).value);
	var fskin 			= dojo.byId("pvfskin"+prevId).value;
	var flogo 			= dojo.byId("pvflogo"+prevId).value;
	var fcontrolbar		= dojo.byId("pvfcontrolbar"+prevId).value;
	var fplaylist		= dojo.byId("pvfplaylist"+prevId).value;
	var fplaylistsize	= parseInt(dojo.byId("pvfplaylistsize"+prevId).value);
	var ficons			= dojo.byId("pvficons"+prevId).checked;
	
	var fcolorback		= dojo.byId("backcolor"+prevId).value;
	var fcolorfront		= dojo.byId("frontcolor"+prevId).value;
	var fcolorlight		= dojo.byId("lightcolor"+prevId).value;
	var fcolorscreen	= dojo.byId("screencolor"+prevId).value;
	var falpha			= parseInt(dojo.byId("screenalpha"+prevId).value);
	
	var fautostart		= dojo.byId("pvfautostart"+prevId).checked;
	var fmute			= dojo.byId("pvfmute"+prevId).checked;
	var fquality		= dojo.byId("pvfquality"+prevId).checked;
	var fresizing		= dojo.byId("pvfresizing"+prevId).checked;
	var fstretching		= dojo.byId("pvfstretching"+prevId).value;
	var frepeat			= dojo.byId("pvfrepeat"+prevId).value;
	var fshuffle		= dojo.byId("pvfshuffle"+prevId).checked;
	var fvolume			= parseInt(dojo.byId("pvfvolume"+prevId).value);
	
	var fplugins		= "";
	var fpluginsvars	= Array();
	var pluginslist = dojo.query("input.plugins",previewer);
	for(var i=0;i<pluginslist.length;i++){
		if(pluginslist[i].checked){
			var pval = pluginslist[i].value;
			fplugins += (fplugins==""?"":",")+pval;
			var pfvars = dojo.query("input",pval+"fvars");
			for(var j=0;j<pfvars.length;j++){
				if(pfvars[j].value!=""){
					fpluginsvars.push({varname:pval+"."+pfvars[j].id,value:pfvars[j].value});
				}
			}
		}
	}
	var prevfvars = {};
	var prevparams = {};
	var jscode = "";
	//jscode += "	var cplayer = new SWFObject(\""+playersData[prevId].mediaplayerurl+"\",\"jwply\",\""+fwidth+"\",\""+fheight+"\",\"10\");";
	jscode += " prevparams = {";
	jscode += "	allowfullscreen:true,";
	jscode += "	allowScriptAccess:\"always\",";
	jscode += " allowNetworking:\"all\"";
	jscode += " };";
	jscode += " prevfvars = {";
	if(playersData[prevId].streamer!="")
		jscode += "	streamer:\""+playersData[prevId].streamer+"\",";
	if(fplugins!="")
		jscode += "	plugins:\""+fplugins+"\",";
	if(fpluginsvars.length>0){
		for(i=0;i<fpluginsvars.length;i++){
			jscode += "	\""+fpluginsvars[i].varname+"\":\""+fpluginsvars[i].value+"\",";
		}
	}
	if(playersData[prevId].previmageurl!="")
		jscode += "	image:\""+playersData[prevId].previmageurl+"\",";
	
	//VARS
	if(fskin!="")				jscode += " skin:\""+fskin+"\",";
	if(flogo!="")				jscode += " logo:\""+flogo+"\",";
	if(fcontrolbar!="bottom")	jscode += " controlbar:\""+fcontrolbar+"\",";
	if(fplaylist!="none")		jscode += " playlist:\""+fplaylist+"\",";
	if(fplaylistsize!=0)		jscode += " playlistsize:\""+fplaylistsize+"\",";
	if(!ficons)					jscode += " icons:false,";
	
	if(fcolorback!="")		jscode += " backcolor:\""+fcolorback+"\",";
	if(fcolorfront!="")		jscode += " frontcolor:\""+fcolorfront+"\",";
	if(fcolorlight!="")		jscode += " lightcolor:\""+fcolorlight+"\",";
	if(fcolorscreen!="")	jscode += " screencolor:\""+fcolorscreen+"\",";
	if(falpha!=100 && !isNaN(falpha))			jscode += " screenalpha:\""+falpha+"\",";
	
	if(fautostart)		jscode += " autostart:true,";
	if(fmute)			jscode += " mute:true,";
	if(!fquality)		jscode += " quality:false,";
	if(!fresizing)		jscode += " resizing:false,";
	if(fstretching)		jscode += " stretching:\""+fstretching+"\",";
	if(frepeat)			jscode += " repeat:\""+frepeat+"\",";
	if(fshuffle)		jscode += " shuffle:true,";
	if(fvolume!=80)		jscode += " volume:\""+fvolume+"\",";
	
	jscode += "	file:\""+playersData[prevId].preveditorurl+"\"";
	jscode += "};";
	
	var embedcode = "";
	eval(jscode);
	retObj = swfobject.getEmbed(playersData[prevId].mediaplayerurl, fwidth,fheight,"9.0.0","expressInstall.swf", prevfvars, prevparams);
	console.log(prevfvars,prevparams);
	embedcode = retObj;
	while(embedcode.indexOf("\n")!=-1){
		embedcode = embedcode.replace("\n","");
	}
	//dojo.byId("preveditorcodejs"+prevId).value = jscode;
	dojo.byId("preveditorcodehtml"+prevId).value = embedcode;
	
	if(showpreview){
		showBlackPanel(.9,true);
		var container = dojo.byId('overcontentshigh');
		container.style.display='';
		var str = "<div id=\"overplayerpreview\" style=\"width:"+fwidth+"px;\"><div id=\"overplayerpreviewswf\"></div></div>";
		str += "<div class=\"overplayerpreviewcloser\" onclick=\"closeOverContents();\">CERRAR</div>";
		container.innerHTML = str;
		//eval("cplayer.write(\"overplayerpreview\");");
		eval(jscode);
		swfobject.embedSWF(playersData[prevId].mediaplayerurl, "overplayerpreviewswf", fwidth, fheight, "9.0.0","expressInstall.swf", prevfvars, prevparams);
	}
	//dojo.byId("previewshow"+prevId).style.width=(fwidth+2)+"px";
	//eval(innercode);
}

function savePlayerProps(prevId){
	prevId==null?'overpreview':prevId
	var previewer = dojo.byId(prevId);
	updatePrevCodes(prevId);
	dojo.byId('savingeditor'+prevId).style.display = 'block';
	var url = oxoadmindir+"mediamanager/media.props.save.php";
	var form = dojo.byId('preveditorform'+prevId);
	dojo.xhrPost({
		url: url,
		form:form,
		load: function(responseObject, ioArgs){
				if(responseObject==null){ this.error(); return; }
				dojo.byId('savingeditor'+prevId).style.display = 'none';
				if(responseObject.success){
				}else{
				}
				fixBlackPanel();
				fixOverContents();
				return responseObject;
			},
		error: function(response, ioArgs){
			console.log("ERROR SAVING PROPS",response, ioArgs);
			return response;
		},
		handleAs: "json"
	});
}
