//
// Copyright © Anygraaf Oy. All rights reserved.
//

var AjaxUrl = "http://kuvakauppa.lehtikuva.fi/edoris";
var Ajax = new AgAjax(AjaxUrl);

function IsEnglish()
{
	var sUrl = location.href;
	var expr = "_e[.&]|_e$";
	re = new RegExp( expr );
	m = re.exec( sUrl );
	if ( m != null )
		return true;
	else
		return false;
}



function MyQuery(template, element, async)
{
	bAsync = false;
	if ( AgIsSet(async) )
		bAsync = async;
	Ajax.Query(Array("tem"), Array(template), bAsync, ProcessQuery, element); 
}

function ArrayQuery(keys, values, element, async)
{
	bAsync = true;
	if ( AgIsSet(async) )
		bAsync = async;
	Ajax.Query(keys, values, bAsync, ProcessQuery, element); 
}

function ProcessQuery(xmlHttp, funcAttributes)
{
	var updateElem = document.getElementById(funcAttributes);
	var agText = xmlHttp.responseText;
	if ( agText.search('ajax:refresh') > -1 ) {
		window.location.reload(true);
	}
	else
 		if ( AgIsSet(updateElem) )
		{
			//alert(updateElem.innerHTML+xmlHttp+xmlHttp.responseText);
			updateElem.innerHTML = xmlHttp.responseText;
		}
}

function CartQuery(keys, values, element, async)
{
	bAsync = true;
	if ( AgIsSet(async) )
		bAsync = async;
	Ajax.Query(keys, values, bAsync, ProcessCartQuery, element); 
}

function ProcessCartQuery(xmlHttp, funcAttributes)
{
	var updateElem = document.getElementById(funcAttributes);
	if ( AgIsSet(updateElem) )
		updateElem.innerHTML = xmlHttp.responseText;
	// here update images...
      if ( IsEnglish() )
       $("#imgPreview li a").infobar( lang="en" ); 
      else
       $("#imgPreview li a").infobar( lang="fi" );
       $("#basket #loginform input").focus(function () {
        $(this).attr("value","");
       });
       $("#imgPreview li a .imagewrapper img").center({
        vertical: true,
        horizontal: true
       }); 
}

function LightboxQuery(template, element, async)
{
	bAsync = false;
	if ( AgIsSet(async) )
		bAsync = async;
	Ajax.Query(Array("tem"), Array(template), bAsync, ProcessLightboxQuery, element); 
}

function ProcessLightboxQuery(xmlHttp, funcAttributes)
{
	var updateElem = document.getElementById(funcAttributes);
	if ( AgIsSet(updateElem) )
		updateElem.innerHTML = xmlHttp.responseText;
	var tempCookie = AgGetCookie('AgActiveBox');
	if ( tempCookie != null ) {
		var bSet = false;
		var elem = document.getElementById('lightboxselect');
		for (var i=0; i<elem.options.length; i++) {
			if ( elem.options[i].value == tempCookie ) {
				bSet = true;
				break;
			}
		}
		if ( bSet )
			elem.value = AgGetCookie('AgActiveBox'); 
	}
}

function UpdateBasket(lang)
{
	if ( AgIsSet(lang) ) 
		CartQuery( Array("tem"), Array("lk_ajaxcart_e"), "basket", false );
	else
		CartQuery( Array("tem"), Array("lk_ajaxcart_f"), "basket", false );
	return false;
}

function AddFormSwitchOption(name,value,type,selected,lang)
{
	var option = document.createElement("option");
	option.innerHTML = name;
	option.value = value;
	option.viewtype = type;
	if ( value == selected )
		option.defaultSelected = option.selected = "selected";
	option.language = lang;
	document.getElementById("formswitch").appendChild(option);
	
}

function SelectDayTo(todate)
{
	document.getElementById("dayto").value = FormatSelectedDate(todate)
}

function SelectDayFrom(todate)
{
	document.getElementById("dayfrom").value = FormatSelectedDate(todate)
}

function FormatSelectedDate(date)
{
	var ret = "";
	
	if(date.getDate() < 10)
		ret += "0";
	ret += String(date.getDate());
	ret += "/";
	if(date.getMonth()+1 < 10)
		ret += "0";
	ret += String(date.getMonth()+1);
	ret += "/";
	ret += String(date.getFullYear());
	return ret;
}

function NormalizeDate(datestr)
{
	var ret = "";
	
	// very simple check
	year = datestr.substr( 6, 4 );
	month = datestr.substr( 3, 2 );
	day = datestr.substr( 0, 2 );
	if ( day != "pp" && day != "dd" )
		ret = year + month + day;
	return ret;
}

function FormatDate(datestr)
{
	var ret = "";
	
	year = datestr.substr( 0, 4 );
	month = datestr.substr( 4, 2 );
	day = datestr.substr( 6, 2 );
	ret = day + "/" + month + "/" + year;
	return ret;
}

function Language( nLang )
{
	var sUrl = location.href;
	var expr = (nLang == 1) ? "_e[.&]|_e$" : "_f[.&]|_f$";
	var ch1 = (nLang == 1) ? 'e' : 'f';
	var ch2 = (nLang == 1) ? 'f' : 'e';
	
	re = new RegExp( expr );
	m = re.exec( sUrl );
	if ( m != null ) {
		i = m.index + 1;
		if ( sUrl.charAt(i) == ch1 )
			sUrl = sUrl.substring( 0, i ) + ch2 + sUrl.substring( i + 1, sUrl.length );
	}
	location.href = sUrl;
}

function UncheckAll() {
	$("#searchresult input:checkbox").attr("checked", "");
}

function toLightbox(templ,src) {
   var imgName;
   var myValue = '';
   var inputs = document.getElementById('searchresult').getElementsByTagName('input');
   var elem = document.getElementById('lightboxselect');
   if ( elem )
      myValue = elem.value;
   for(var i=0; i<inputs.length; i++)
   {
	if(inputs[i].type.toLowerCase() == "checkbox" && inputs[i].checked)
	{
		var imgId = inputs[i].id.substr(3);
		ArrayQuery(Array('tem','id','source','target'),Array(templ,imgId,src,myValue),'',false);
	}
   }
   /*$("#searchresult input:checkbox[checked]").each( function() {
       imgName = $(this).parent().find("img").attr("name");
       elem = document.getElementById('lightboxselect');
       if ( elem )
           myValue = elem.value;
      ArrayQuery(Array('tem','id','source','target'),Array(templ,imgName,src,myValue),'',true);
   });*/
} 

function delLightbox(templ, src) {
 var imgName;
 var myValue = "";
 var myIds = "";

 $("#searchresult input:checkbox[checked]").each( function() {
   imgName = $(this).parent().find("img").attr("name");
   myIds += imgName + ",";
   elem = document.getElementById('lightboxselect');
   if ( elem )
     myValue = elem.value;
 });
 if ( myIds != "" ) {
   // take away last comma
   myIds = myIds.substr( 0, myIds.length - 1 );
   ArrayQuery( Array('tem','id','source','target'), Array(templ,myIds,src,myValue), '', false);
 }
}

function toBasket(templ) {
   var inputs = document.getElementById('searchresult').getElementsByTagName('input');
   for(var i=0; i<inputs.length; i++)
   {
	if(inputs[i].type.toLowerCase() == "checkbox" && inputs[i].checked)
	{
		var imgId = inputs[i].id.substr(3);
		CartQuery(Array('tem','id'),Array(templ,imgId),'basket',false);
	}
   }
	/*var imgName;
	$("#searchresult input:checkbox[checked]").each( function() { 
		imgName = $(this).parent().find("img").attr("name");
		CartQuery(Array('tem','id'),Array(templ,imgName),'basket');
	});*/
}
  
function OneChecked() {
  var ret = false;

  $("#searchresult input:checkbox[checked]").each( function() {
    ret = true;
  });
  return ret;  
}

function AgSetCookie(name, value, days, path, domain, secure) 
{
 var expires = -1;
 if ( typeof days == "number" ) {
  var d = new Date();
  if ( days > 0 ) {
   d.setTime(d.getTime()+(days*24*60*60*1000));
   expires = d.toGMTString();
  }
  else if ( days == 0 ) {
   d.setTime(d.getTime()+(1*24*60*60*1000));
   d.setHours( 0, 0, 0 ,0 );
   expires = d.toGMTString();
  }
 }
 value = escape(value);
 document.cookie = name + "=" + value + ";"
  + (expires != -1 ? " expires=" + expires + ";" : "")
  + (path ? "path=" + path : "")
  + (domain ? "; domain=" + domain : "")
  + (secure ? "; secure" : "");
}


function AgGetCookie(name) 
{
 var idx = document.cookie.indexOf(name+'=');
 if(idx == -1) { return null; }
 value = document.cookie.substring(idx+name.length+1);
 var end = value.indexOf(';');
 if(end == -1) { end = value.length; }
 value = value.substring(0, end);
 value = unescape(value);
 return value;
}

function AgGetActiveLightbox()
{
  var value = 0;
  var activeBox = document.getElementById('lightboxselect');
  if ( AgIsSet(activeBox) )
    value = activeBox.value;
  return value;
}


