var frame_height_current;	
var autoResizeIFTimer;

function RedirectTo(address)
{
	//window.top.location = address;
	//top.document.location = address;
	document.location = address;
}

function RemoveTag (id) { $(id).remove(); }

function DrawReloadHTML(elementname)
{
  var el = null;
  el = document.getElementById(elementname); 
  if (el != null)
  {
    el.innerHTML = '<img src="/img/loading.gif" style="vertical-align:middle;" alt="loading" />';
  }
}

function ClearDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.innerHTML = "";
  } 
}

function HideDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "hidden";
    el.style.display = "none";
  } 
}

function ShowDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "visible";
    el.style.display = "block";
    
    el.style.left = Math.floor(Math.round((document.documentElement.offsetWidth/2)+document.body.scrollLeft)-parseFloat(el.clientWidth)/2)+'px';
    el.style.top = "100px";
  } 
}

function ShowCenteredDiv(elementname)
{	
  var el = null;
  el = document.getElementById(elementname);
 
  if (el != null)
  {
    el.style.visibility = "visible";
    el.style.display = "block";
    
	var xy = getCenteredElement(el);
    el.style.left = xy[0] + 'px';
    el.style.top = xy[1] + 'px';
  } 
}

function ShowOffsetCenteredDiv(elementname, offsetx, offsety)
{   
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "visible";
    el.style.display = "block";
    
    var xy = getCenteredElement(el);
    el.style.left = offsetx + xy[0] + 'px';
    el.style.top = offsety + xy[1] + 'px';
  } 
}

function IsVisible(elementname)
{
  var el = null;
  el = document.getElementById(elementname); 
  //alert(el.style.visibility); 
  if (el != null && el.style.visibility == 'visible' && el.style.visibility != "") return true;
  
  return false;
}

function findPos(obj) 
{
	var curleft = curtop = 0;

	if (obj.offsetParent) 
	{
		do 
		{
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} 
		while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
}

function ShowDivXY(divpos,elementname,scrollelement)
{
  var el = null;
  var screl = null;
  el = document.getElementById(elementname);
  screl = document.getElementById(scrollelement);
  screlsize = [0,0];
  if (screl)
  {
  	screlsize[0] = screl.scrollLeft;
  	screlsize[1] = screl.scrollTop;
  }
  else
  {
  	screlsize[0] = 0;
  	screlsize[1] = 0;
  }
  divpos = document.getElementById(divpos);
  pos = findPos(divpos);
  //alert(document.getElementById("techTreeOverflow").scrollLeft);
  //pos[1] -= document.getElementById("techTreeOverflow").scrollTop;
  if (el != null && divpos != null)
  {
    el.style.visibility = "visible";   
    el.style.display = "block";
    el.style.left = pos[0]-screlsize[0]+5+'px';
    el.style.top  = pos[1]-screlsize[1]+divpos.clientHeight+5+"px";
  } 
}

function ShowDivXY2(divpos,elementname,offsetx,offsety)
{
  if (offsetx == null) offsetx = 0;
  if (offsety == null) offsety = 0;
  var el = null;
  var screl = null;
  el = document.getElementById(elementname);
  divpos = document.getElementById(divpos);
  pos = findPos(divpos);
  if (el != null && divpos != null)
  {
    el.style.visibility = "visible";   
    el.style.display = "block";
    el.style.left = offsetx + pos[0]+5+'px';
    el.style.top  = offsety + pos[1]+divpos.clientHeight+5+"px";
  } 
}

function CloseDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "hidden";
    el.style.display = "none";
    el.style.position = "absolute";
  } 
}

function OpenDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "visible";
    el.style.display = "block";
    el.style.position = "relative";
  } 
}

function OpenCloseDiv(elementname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
  	if (el.style.visibility != "hidden")
  	{
    	el.style.visibility = "hidden";
	    el.style.display = "none";
    	//el.style.position = "absolute";
  	}
  	else
  	{
	    el.style.visibility = "visible";
	    el.style.display = "block";
    	//el.style.position = "relative";
  	}
  } 
}

function SetOpenCloseImage(img, elementname, openimg, closeimg, imgid)
{
    if (img == null || img == "")
    {
        img = document.getElementById(imgid);
    }
    
	if (img)
	{
		var el = null;
  		el = document.getElementById(elementname);
  		if (el != null)
  		{
  			if (el.style.visibility == "hidden")
  			{
  				img.src = openimg;
  			}
  			else
  			{  			
  				img.src = closeimg;
  			}
		}
	}
}

function SetOnOffImage(img, imgid, onimg, offimg)
{
    if (img == null || img == "")
    {
        img = document.getElementById(imgid);
    }
    
    if (img)
    {
        if (img.src.indexOf(offimg) > 0)
        {
            img.src = onimg;
        }
        else
        {           
            img.src = offimg;
        }
    }
}

function GetMousePos(e) 
{
	if (document.layers)
	{
		xMousePos = e.pageX;
		yMousePos = e.pageY;
	} 
	else if (document.all) 
	{
		xMousePos = window.event.x + document.body.scrollLeft + document.documentElement.scrollLeft;
		yMousePos = window.event.y + document.body.scrollTop + document.documentElement.scrollTop;
	} 
	else if (document.getElementById) 
	{
		xMousePos = e.pageX;
		yMousePos = e.pageY;
	}
	return [xMousePos, yMousePos];
}

function disabletext(e)
{
	return false;
}

function ShowPlanetRenameDiv(elementname, pid, pname)
{
  var el = null;
  el = document.getElementById(elementname);
  if (el != null)
  {
    el.style.visibility = "visible";
    el.style.display = "block";
    //el.style.left = Math.floor(Math.round((document.documentElement.offsetWidth/2)+document.body.scrollLeft)-parseFloat(el.clientWidth)/2)+'px';
    //el.style.top = Math.floor(Math.round((document.documentElement.offsetHeight/3)+document.body.scrollTop)-parseFloat(el.clientHeight)/2)+'px';
    
	var xy = getCenteredElement(el);
    el.style.left = xy[0] + 'px';
    el.style.top = xy[1] + 'px';
    
    var id = document.getElementById("pid");
    if (id) id.value = pid;
    
    id = null;
    id = document.getElementById("newname");
    if (id) id.value = pname;
  } 
}

function ShowPlanetRenameDiv2(elementname, pid, pname, prefix)
{
  $(elementname).dialog('option', 'title', pname );
  $(elementname).dialog('open');
  
  var id = document.getElementById("pprefix");
  if (id) id.value = prefix;
    
  id = null;
  var id = document.getElementById("pid");
  if (id) id.value = pid;
    
  id = null;
  id = document.getElementById("pnewname");
  if (id) id.value = pname;
}

function ClosePlanetRenameDiv2(elementname)
{
  $(elementname).dialog('close');
}

function ShowSystemRenameDiv2(elementname, sid, sname, prefix)
{
  $(elementname).dialog('option', 'title', sname );
  $(elementname).dialog('open');
  
  var id = document.getElementById("sprefix");
  if (id) id.value = prefix;
    
  id = null;
  var id = document.getElementById("sid");
  if (id) id.value = sid;
    
  id = null;
  id = document.getElementById("snewname");
  if (id) id.value = sname;
}

function CloseSystemRenameDiv2(elementname)
{
  $(elementname).dialog('close');
}


function getCenterXY(offsetScroll)
{
	var centerX = Math.round(document.documentElement.offsetWidth/2);
	var centerY = Math.round(document.documentElement.offsetHeight/3);
	if(!offsetScroll)
	{
		return [centerX, centerY];
	}
	else
	{
		var scrollX = document.documentElement.scrollLeft || document.body.scrollLeft || 0;
		var scrollY = document.documentElement.scrollTop || document.body.scrollTop || 0;
		return[centerX + scrollX, centerY + scrollY];
	}
}

function getCenteredElement(el)
{
	var xy = getCenterXY(true);
    xy[0] = Math.floor(Math.round(xy[0] - parseFloat(el.clientWidth)/2));
    xy[1] = Math.floor(Math.round(xy[1] - parseFloat(el.clientHeight)/2));
    
    return xy;	
}

function setFormValue(input, value)
{
	var el = document.getElementById(input);
	if (el)
	{
		el.value = value;
	}
}

function ShowScreenThumb()
{
	if (timer) clearTimeout(timer);
	
	var img = document.getElementById("screenThumbID");
	if (img)
	{
		screensThumbs.current++;
		if (screensThumbs.current > screensThumbs.last) screensThumbs.current = screensThumbs.first;
		
		img.src="/img/screens/"+screensThumbs.current+".jpg";
		timer = setTimeout(ShowScreenThumb, 5000);
	}
}

var timerHandler;
var timerSeconds;
var timerElement;
var timerTimeInterval;
var timerNextTurn; // in milliseconds

function startTimer(elname, seconds, timeinterval)
{
    var uDate=new Date(); // user`s local date
    timerNextTurn=uDate.getTime()+seconds*1000; // time is in milliseconds
	
	timerSeconds = seconds;
	timerElement = elname;
	timerTimeInterval = timeinterval;
	
	setTimer();
}

function setTimer()
{
    var el = document.getElementById(timerElement);
    if (el)
    {
        if (timerHandler)
        {
            clearTimeout(timerHandler);
        }

        var uDate=new Date(); // user`s local date
        var cTime=uDate.getTime();
        if(cTime>timerNextTurn) // over timer
        {
         timerNextTurn=timerNextTurn+timerTimeInterval*1000; // set new timepoint
        }
        // show remaining time
        var timerDelta=parseInt((timerNextTurn-cTime)/1000);
        
        var sec=timerDelta%60;
        if (sec < 10) sec = "0"+sec;
        el.innerHTML = parseInt(timerDelta/60)+':'+sec;
        timerHandler = setTimeout("setTimer()", 1000);
    }	
}

function openWindow(url, width, height)
{
	var w = window.open(url, 'voteing_window','scrollbars=1,resizable=1,width='+width+',height='+height);
}

function ShowMainDialog(content)
{
    $("#main_dialog_content").html(content);
    $("#main_dialog").dialog('open');
}

function ShowRallyPointDialog(elementname)
{
  //$(elementname).dialog('option', 'title', pname );
  $(elementname).dialog('open');
  /*
  var id = document.getElementById("pid");
  if (id) id.value = pid;
    
  id = null;
  id = document.getElementById("pnewname");
  if (id) id.value = pname;
  */
}

function CloseRallyPointDialog(elementname, imgid, imgsrc, title)
{
  $(elementname).dialog('close');
  
  //alert($(imgid).attr("src") + " " + imgsrc);
  $(imgid).attr("src", imgsrc);
  $(imgid).attr("title", title);
}

function SetInputValue(element, evalue)
{
    $(element).val(evalue);
}

function ShowProductsDialog(elementname, infoelement, vararray)
{
  $(elementname).dialog('open');
  xajax_ServicesProductsModule_ShowProductsPopUp(elementname, infoelement, vararray);
}

function CloseProductsDialog(elementname)
{
  $(elementname).dialog('close');
}

function AdsCallBackVK(data, element)
{
    var str = "<table cellpadding='0' cellspacing='5'><tr>";
    $.each(data.ads, function(i, item) 
    {
    	
        str = str
            + "<td class='ttop'>"
            + "<table class='w250 bordergrey padding5'><tr>"
            + "<td class='ttop' >"
            + "<a href='" + item.link + "' target='_blank' "
            + "onclick='_gaq.push([\"_trackPageview\", \"/ads/ads.fishsticks.com.ua/vk/"
            + item.link // was ID
            + "/\"]);' "
            + "class='decorationnone' >"
            + "<img class='rpadding5' border='0' src='" + item.photo + "' alt='' align='left' width='60' height='60' />"
            + "</a>"
            + "</td><td class='ttop'>"
            + "<div style='height: 60px; overflow: hidden;'>"
            + "<a href='" + item.link + "' target='_blank' "
            + "onclick='_gaq.push([\"_trackPageview\", \"/ads/ads.fishsticks.com.ua/vk/"
            + item.link // was ID
            + "/\"]);' "
            + "class='decorationnone' >"
            + "<span class='size12 bold white'>" + item.name + "</span><br />"
            + "<span class='size12 lightgrey'>" + item.description + "</span>"
            + "</a>"
            + "</div>"
            + "</td>"
            + "</tr></table>";      
            + "</td>"   
               
    });
    $(element).append(str);
    $(element).append("</tr></table>");    
}

function ChangeAutoBuildImage(imgid, imgsrc, title)
{    
    $(imgid).attr("src", imgsrc);
    $(imgid).attr("title", title);
}

function StartAutoResize(dqh_prodzone)
{
	//alert("StartAutoResize " + prodzone);	
	if (autoResizeIFTimer) clearTimeout(autoResizeIFTimer);
	autoResizeIFTimer = setTimeout("AutoResizeIF('"+dqh_prodzone.toString()+"')", 250 );
}

function AutoResizeIF(dqh_prodzone)
{	
	//alert("AutoResizeIF " + dqh_prodzone.toSource());
	if (autoResizeIFTimer) clearTimeout(autoResizeIFTimer);	
	ResizeIFrame(dqh_prodzone);
	autoResizeIFTimer = setTimeout("AutoResizeIF('"+dqh_prodzone.toString()+"')", 250 );
}

function ResizeIFrame(dqh_prodzone)
{
    if (dqh_prodzone == "VK")
    {
        var resizeHeight = $("#mainContiner").height();
        if (frame_height_current != resizeHeight) 
        {
        	if (resizeHeight < 800) resizeHeight = 800;
        	//if (resizeHeight > 4000) resizeHeight = 4000;
            frame_height_current = resizeHeight;
        	VK.callMethod('resizeWindow', 827, frame_height_current);
        }
    }
    
    if (dqh_prodzone == "OK")
    {
    	if (FAPI.initialized)
    	{
	    	var resizeHeight = $('#mainContiner').height();
	        if (frame_height_current != resizeHeight) 
	        {
	        	if (resizeHeight < 800) resizeHeight = 800;
	        	//if (resizeHeight > 3000) resizeHeight = 3000;
	        	frame_height_current = resizeHeight;
	       		FAPI.UI.setWindowSize(760, frame_height_current);
	        }    
    	}
    }
    
    if (dqh_prodzone == "FB")
    {
    	var resizeHeight = $('#mainContiner').height();
        if (frame_height_current != resizeHeight) 
        {
        	if (resizeHeight < 800) resizeHeight = 800;
        	//if (resizeHeight > 3000) resizeHeight = 3000;
        	frame_height_current = resizeHeight;
        	try 
        	{
        		FB.Canvas.setSize({ width: 760, height: frame_height_current });
        	}
        	catch (err) {}
        }    
    } 
    
    //$("#tmp").html("|||" + frame_height_current);
}

function ShowErrorDialog(content)
{
	$("#main_error_dialog_content").html(content);
	$("#main_error_dialog").dialog("open");
}

function setTryToolTip()
{
	
}

