//////////////////////
//  INTERVAL CHECK
////////////////////////
dojo.require("dojo.dnd.Mover");
dojo.require("dojo.dnd.Moveable");
dojo.require("dojo.dnd.move");

var checkServerInterval = 10000;
var quickCheckServerInterval = 4000;

function checkServer(){
	//m2 = new dojo.dnd.Moveable("overpreview", {handle: "previewtitle"});
	dojo.xhrGet({
		url: "server.check.php",
		load: function(responseObject, ioArgs){
				if(responseObject==null){ this.error(); return; }
				if(responseObject.loggued){
					showMsgPopup(responseObject);
					setTimeout(checkServer,responseObject.activeenc.active?quickCheckServerInterval:checkServerInterval);
				}
				return responseObject;
			},
		error: function(response, ioArgs){
			console.log("ERROR LOADING INTERVAL CHECK");
			console.log(response, ioArgs);
			setTimeout(checkServer,checkServerInterval);
			return response;
		},
		handleAs: "json"
	});
}
setTimeout(checkServer,1000);

var mpuhide;
var notifadded=false;
function showMsgPopup(ret){
	if(ret.newmedia!=null){
		var notlist = dojo.byId('notificationslist');
		if(!notifadded){ notlist.innerHTML=""; notifadded=true; }
		dojo.byId('notificationsalert').style.display = "block";
		if(ret.newmedia.length>0){
			nmlist = notlist.innerHTML;
			nmlist += "<div class=\"title\">New media</div>";
			for(var i=0;i<ret.newmedia.length;i++){
				var media = ret.newmedia[i];
				nmlist += "<div class=\"mediaitem "+(i%2==0?"par":"impar")+"\" onclick=\"showMediaPreview('"+media.linkid+"');\">";
				nmlist += "<div class=\"uicon "+media.type+"\"></div>";
				nmlist += "<div class=\"data file\">"+media.name+"</div>";
				//nmlist += "<div class=\"data time\">"+media.date+"</div>";
				nmlist += "<div style=\"clear:both;\"></div>";
				nmlist += "</div>";
			}
			nmlist += "<div style=\"clear:both; margin-bottom:5px;\"></div>";
			notlist.innerHTML = nmlist;
		}
	}
	if(ret.usersonline!=null){
		var useronph = dojo.byId("usersonlinelist");
		if(useronph) useronph.innerHTML = "";
		var userc  = dojo.byId("usersonlinecount");
		var userc2 = dojo.byId("usersonlinecount2");
		if(userc) userc.innerHTML = "("+ret.usersonline.length+")";
		if(userc2) userc2.innerHTML = "("+ret.usersonline.length+")";
		if(ret.usersonline.length>0){
			userslist = "";
			for(var i=0;i<ret.usersonline.length;i++){
				var usr = ret.usersonline[i];
				userslist += "<div class=\"useritem\">";
				userslist += "<div class=\"uicon "+usr.type+"\"></div>";
				userslist += "<div class=\"data username\">"+usr.user+" ("+usr.ip+")</div>";
				userslist += "<div class=\"data time\">"+usr.online+"</div>";
				if(usr.state!="IDLE"){
					userslist += "<div class=\"data "+usr.state.toLowerCase()+"\">";
					userslist += usr.statedata.file+"<br />";
					userslist += usr.statedata.per!=null?usr.statedata.per:"";
					userslist += usr.statedata.uploaded!=null?usr.statedata.uploaded:"";
					userslist += " &raquo; "+usr.statedata.speed;
					userslist += "</div>";
				}
				userslist += "</div>";
			}
			if(useronph) useronph.innerHTML = userslist;
		}else{
			if(useronph) useronph.innerHTML = "No Users";
		}
	}
	/*var stper = dojo.byId("statusper");
	var stper2 = dojo.byId("statusper2");
	var stbar = dojo.byId("statusbarph");
	var stbar2 = dojo.byId("statusbarph2");
	var stdo = dojo.byId("statusdone");
	var stpali = dojo.byId("statuspanellist");
	if(ret.activeenc!=null){
		if(stper) stper.style.display = ret.activeenc.active?"block":"none";
		if(stper2) stper2.style.display = ret.activeenc.active?"block":"none";
		if(stbar) stbar.style.display = ret.activeenc.active?"block":"none";
		if(stbar2) stbar2.style.display = ret.activeenc.active?"block":"none";
		if(stdo) stdo.style.display = ret.activeenc.active?"none":"block";
		encdata = "";
		if(ret.activeenc.active){
			var per = ret.activeenc.per+"%";
			stper.innerHTML = per;
			stper2.innerHTML = per;
			var stbarp = dojo.byId("statusbarpro");
			var stbarp2 = dojo.byId("statusbarpro2");
			if(stbarp) stbarp.style.width = per;
			if(stbarp2) stbarp2.style.width = per;
			
			var enc = ret.activeenc;
			encdata += "<div class=\"statusitem\">";
			encdata += "<div class=\"data time\">"+enc.starttime+"</div>";
			encdata += "<div class=\"data file\">Archivo: "+enc.file+"</div>";
			encdata += "<div class=\"data time\">Tipo: "+enc.type+"</div>";
			encdata += "<div class=\"data time\">Duraci&oacute;n: "+enc.duration+"</div>";
			encdata += "<div class=\"data time\">Formato de salida: "+enc.outputformat+"</div>";
			encdata += "<div class=\"data time\">Uploader: "+enc.uploadedby+"</div>";
			encdata += "<div class=\"data time\">Tiempo transcurrido: "+enc.elapsedtime+"</div>";
			encdata += "<div class=\"data time\">Tiempo estimado: "+enc.estimatedtime+"</div>";
			encdata += "</div>";
			if(stpali) stpali.innerHTML = encdata;
		}else{
			var enc = ret.activeenc;
			encdata += "<div class=\"statusitem\">";
			encdata += "<div class=\"data title\">Last file encoded</div>";
			encdata += "<div class=\"data file\">Archivo: "+enc.file+"</div>";
			encdata += "<div class=\"data type\">Tipo: "+enc.type+"</div>";
			if(enc.linkid!="")
				encdata += "<div class=\"data view\" onclick=\"showMediaPreview('"+enc.linkid+"');\">Ver media</div>";
			encdata += "</div>";
			if(stpali) stpali.innerHTML = encdata;
			if(stdo) stdo.innerHTML = "File "+enc.file+" encoded";
		}
	}else{
			if(stdo) stdo.style.display = "block";
			if(stdo) stdo.innerHTML = "No encoding data";
			if(stpali) stpali.innerHTML = "No encoding data";
			if(stper) stper.innerHTML = stper2.innerHTML = "";
	}*/
}
function hideMsgPopup(){
	var msgpopup = dojo.byId("msgpopup");
	var popupmsg = dojo.byId("popupmsg");
	var anim = dojo.fadeOut({node: msgpopup,duration: 300});
	anim.play();
	mpuhide = setTimeout(function(){msgpopup.style.display='none';popupmsg.innerHTML = "";},300);
}

