﻿function KamereIzpisInit(cfg)
{
	if(cfg.cloc>'')
	{
		var div1 = document.createElement("div");
		div1.id=cfg.kmrCnt+"_izpis";
		document.getElementById(cfg.kmrCnt).parentNode.insertBefore(div1,document.getElementById(cfg.kmrCnt));
	}
	var div2 = document.createElement("div");
  div2.innerHTML="<H2 class='moduletitle RMapControl'>"+GetDictValue("kmrTitle", cfg.lng)+"</H2><br/>";
  document.getElementById(cfg.kmrCnt).parentNode.insertBefore(div2,document.getElementById(cfg.kmrCnt));
 	document.getElementById(cfg.kmrCnt).innerHTML="<div style='text-align:center'><img src='"+appSettings.iconsRepository+appSettings.loadingImg+"'/></div>";

	cfg.kamere=[];
	window.kmrListCfg=cfg;
	KamereIzpisLoad();
}

function KamereIzpisLoad()
{
	var url=appSettings.proxyUrl + "?method=GET&rproxytype=json&remoteUrl=" + escape(appSettings.camerasUrl+"georss_"+(kmrListCfg.lng=="EN" ? "en" : "si")); //GetDictValue("kmrListUrl", kmrListCfg.lng));
	ServerRequest(url,KamereIzpisLoaded);
}
function KamereIzpisLoaded(result)
{
	var obj=GetEval(result);
	if (obj == null && result != null && window.RMap != null)
		obj=GetEval(getDStr(result));	
	if(obj!=null && obj.feed!=null && obj.feed.entry!=null && obj.feed.entry.length!=null)
	{
		kmrListCfg.feed=obj.feed;
		var cc=appSettings.tblBrdColor;
		var hh=appSettings.tblHdrColor;
		var dt=new Date();
		var regs={};
		var grps={};
		var regsArr=[]
		for(var f=0;f<obj.feed.entry.length; f++)
		{
			var kmr=obj.feed.entry[f];
			var reg=kmr["kazipot_region"];
			var grp=kmr["kazipot_group"];
			if(kmr["kazipot_active"]!=1 || reg==null || reg=="" || grp==null || grp=="" || grps[grp]==1)
				continue;
			grps[grp]=1;
			if(regs[reg]==null)
			{
				regs[reg]={dict:{}, arr:[]};
				regsArr[regsArr.length]=reg;
			}
			if(regs[reg].dict[grp]==null)
			{
				regs[reg].dict[grp]=1;
				regs[reg].arr[regs[reg].arr.length]={name:grp, id:kmr["kazipot_groupId"]};
			}
		}
		s=[];
		s.push(GetDictValue("kmrSubtitle", kmrListCfg.lng)+"<br/><br/>");
		for(var f=0;f<regsArr.length;f++)
		{
			var key=regsArr[f];
			s.push("<a href='#PrometKamere_"+key+"'>"+key+"</a><br/>");
		}
		s.push("<br/><br/>");
		for(var f=0;f<regsArr.length;f++)
		{
			var key=regsArr[f];
			s.push("<a name='PrometKamere_"+key+"'></a>");
			s.push("<table border='0' cellpadding='3' cellspacing='0' style='width:100%;'>");
			s.push("<tr style='background:"+hh+"'>");
			s.push("<td style='border-top:"+cc+" 1px solid; border-bottom:"+cc+" 1px solid; border-left:"+cc+" 1px solid; border-right:"+cc+" 1px solid; text-align:center'><b>"+key+"</b></td>");
			s.push("</tr>");
			
			for(var f2=0;f2<regs[key].arr.length; f2++)
			{
				var grp=regs[key].arr[f2];
				s.push("<tr class='PrometPanelItem'>");
				var id=kmrListCfg.kmrCnt+"_cell_"+key+"_"+f2;
				s.push("<td id='"+id+"' style='text-align:left; vertical-align:top; border-left:"+cc+" 1px solid; border-bottom:"+cc+" 1px solid; border-right:"+cc+" 1px solid'><a href='javascript:KamereCreateImg(&quot;"+grp.id+"&quot;,&quot;"+id+"&quot;)' >"+grp.name+"</a></td>");
				s.push("</tr>");
				grps[kmr["kazipot_group"]]=1;
			}
			s.push("</table><br/>&nbsp;");
		}
	
		document.getElementById(kmrListCfg.kmrCnt).innerHTML=s.join("");
	}
	else
	{
		// TODO WHAT ?
	}
}

function KamereCreateImg(grpId,elmId)
{
	clearInterval(kmrListCfg.interval);
	for(var f=0; f<kmrListCfg.kamere.length; f++)
	{
		var obsEl=document.getElementById(kmrListCfg.kamere[f].id).parentNode.parentNode;
		obsEl.parentNode.removeChild(obsEl);
		obsEl=null;
	}
	kmrListCfg.kamere=[];
	var n=0;
	for(var f=0; f<kmrListCfg.feed.entry.length; f++)
	{
		var kmr=kmrListCfg.feed.entry[f];
		if(kmr["kazipot_groupId"]==grpId)
		{
			var id=kmrListCfg.kmrCnt+"_kamera"+f;
			kmrListCfg.kamere[kmrListCfg.kamere.length]={id:id, link:kmr["link"]}
			var div = document.createElement("div");
			div.style.textAlign="center";
			div.innerHTML=(n==0 ? "<br/>" : "")+kmr["summary"]+"<br/><a style='border:0px' href='"+kmr["link"]+"' target='_blank'><img id='"+id+"' title='"+GetDictValue("newWin", kmrListCfg.lng)+"' style='width:352px; height:288px; border:#000000 1px solid' src='"+kmr["link"]+"?dt="+new Date().toString()+"'></a><br/>&nbsp;";
			document.getElementById(elmId).appendChild(div);
			n++;
		}
	}
	if(n>0)
    document.getElementById(elmId).scrollIntoView();
	if(kmrListCfg.kamere.length>0)
		kmrListCfg.interval=setInterval(KamereRefresh,5000);

}

function KamereRefresh()
{
	for(f=0;f<kmrListCfg.kamere.length;f++)
	{
		var kmr=kmrListCfg.kamere[f];
		document.getElementById(kmr.id).src=kmr.link+"?dt="+new Date().toString();
	}
}
