
// deliverySelect
// ajax/order.php
function deliverySelect(i,oid,selectedID,page) {
	if (selectedID == 'NEW') {
		aSend('newDeliverAddressDiv','ajax/deliverynew.php?page='+page);
		open_layer('newDeliverAddress');
	} else {
		if (selectedID != '') {
			aSend('deliverAddressInfo'+i,'ajax/deliveryinformation.php?oid='+oid+'&id='+selectedID+'&page='+page);
			open_layer('deliverAddress'+i);
		}
	}
}


function showImage(layername) {
	// alert(layername);
	document.getElementById('showImageID').src = layername;
	showWindow();
}

// deliveryInformation
// ajax/order.php
function deliveryInformation(oid,id,i) {
	if (id == 'NEW') {
		deliverySelect(i,oid,'NEW','yourorders.php');
	} else {
		new aSend('deliverydiv'+oid,'ajax/deliveryinformation.php?oid='+oid+'&id='+id);
	}
}

// 
// ajax/deliveryinformation.php
function updatedeliveryInformation(oid,id) {
	aSend('deliverydiv'+oid,'ajax/deliveryinformation.php?oid='+oid+'&id='+id+'&changeDelivery');
	// setTimeout("location.href='yourorders.php'", 1000);
}

// unsubscribeOrder
// ajax/order.php
function unsubscribeOrder(oid) {
	if (confirm('Er du sikker på du vil afmelde din ordre?')) {
		aSend('ordrediv'+oid,'ajax/unsubscribeorder.php?oid='+oid);
		// aSend('ordrediv'+oid,'ajax/unsubscribeorder.php?oid='+oid);
		// setTimeout("location.href='yourorders.php'", 100);
	}
}

// changeFrequence
// ajax/order.php
function changeFrequence(oid) {
	aSubmit('ordredivsubmit'+oid,'ajax/changefrequency.php','frequencyform'+oid);
	setTimeout("location.href='yourorders.php'", 100);
}

// Showimage layer
// On all user images
end_opacity = 50; //end opacity, 25 = 25%, 50 = 50%, 100 = 100%, etc.
increase_opacity_by = 4; //how much to increase by each time the timeout ends
timeout = 1; //timeout in milliseconds, 0 = instant fade-out

win = document.getElementById('thewindow');
winbackground = document.getElementById('thewindowbackground');
wincontent = document.getElementById('thewindowcontent');
cur_opacity = 0;

var timer = null;

function showWindow() {
	if(timeout > 0) {
		cur_opacity = 0;
	
		document.getElementById('thewindowbackground').style.opacity = cur_opacity / 100;
		document.getElementById('thewindowbackground').style.filter = "alpha(opacity=" + cur_opacity + ")";
		document.getElementById('thewindow').style.display = 'block';
		document.getElementById('thewindowcontent').style.display = 'none';
	
		timer = setTimeout("increase_opacity()",timeout);
	}
	else {
		document.getElementById('thewindowbackground').style.opacity = end_opacity / 100;
		document.getElementById('thewindowbackground').style.filter = "alpha(opacity=" + end_opacity + ")";
		document.getElementById('thewindow').style.display = 'block';
		document.getElementById('thewindowcontent').style.display = 'block';
	}
}

function increase_opacity() {
	cur_opacity += increase_opacity_by;

	document.getElementById('thewindowbackground').style.opacity = cur_opacity / 100;
	document.getElementById('thewindowbackground').style.filter = "alpha(opacity=" + cur_opacity + ")";
	
	if(cur_opacity < end_opacity) {
		timer = setTimeout("increase_opacity()",timeout);
	}
	else {
		document.getElementById('thewindowcontent').style.display = 'block';
		
	}
}

function hideWindow() {
	document.getElementById('showImageID').src = 'images/ajaxloader.gif';
	document.getElementById('thewindow').style.display = 'none';
}

// div collapse
// functions.php
// Not in use
function collapse(layername) {
	// alert(document.getElementById(layername).style.display);
	if (document.getElementById(layername).style.display='none') {
		document.getElementById(layername).style.display='block';
		document.getElementById(layername).style.height='100%';
		// document.getElementById(layername).style.position='relativ';
		document.getElementById(layername).style.visibility='visible';
	} else {
		// document.getElementById(layername).style.height='10px';
		document.getElementById(layername).style.display='none';
		// document.getElementById(layername).style.position='absolute';
		document.getElementById(layername).style.visibility='hidden';
	}
}

// Charsleft
// tip.php
function charsleft(outputlayername,layername,amount) {

	amountleft = amount-document.getElementById(layername).value.length;
	document.getElementById(outputlayername).innerHTML=amountleft;
}

// Shows a loader image
// Used for when loading a ajax script
function loader(layername) {
	// alert(layername);
	if (document.getElementById(layername)) document.getElementById(layername).innerHTML = '<div style=\'width: 100%; text-align: center;\'><br><img src=\'images/ajaxloader.gif\' alt=\'\' border=\'0\'></div><br>'
}
	
// ur
function clockupdate(cdate) {
	if (document.getElementById('clock')) document.getElementById('clock').innerHTML=cdate;
}

var dayarray=new Array("Sunday","Monday","TIRSDAG","ONSDAG","TORSDAG","FREDAG","LØRDAG")
var montharray=new Array("januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december")
function getthedate(){
	var mydate=new Date()
	var year=mydate.getYear()
	if (year < 1000)
	year+=1900
	var day=mydate.getDay()
	var month=mydate.getMonth()
	var daym=mydate.getDate()
	if (daym<10)
	daym="0"+daym
	var hours=mydate.getHours()
	var minutes=mydate.getMinutes()
	var seconds=mydate.getSeconds()
	var dn=""
	if (hours>=12)
	dn=""
	if (hours>24){
	hours=hours-12
	}
	if (hours==0)
	hours=0
	if (minutes<=9)
	minutes="0"+minutes
	if (seconds<=9)
	seconds="0"+seconds

	// month = (month+1);
	var cdate=daym+" "+montharray[month]+" "+year+" "+hours+":"+minutes+":"+seconds+" "+dn; // dayarray[day]+" "+
	clockupdate(cdate);

}

if (!document.all) setInterval("getthedate()",1000);

function goforit(){
	setInterval("getthedate()",1000);
}

// Countdown to notification layer
function startCountdown(){
       if((g_iCount - 1) >= 0){
               g_iCount = g_iCount - 1;
               document.getElementById("numberCountdown").innerHTML = g_iCount;
               setTimeout('startCountdown()',1000);
       }
}

// Close notification layer
function closelayer() {
	var g_iCount = new Number();
	var g_iCount = 4;
	opacity('notificationarea', 100, 0, 500);
	setTimeout("document.getElementById('notificationarea').style.display='none'", 200);
}

// Count given array
function countarray(arrayname) {
    var i=0;
	while(document.getElementById(arrayname+i)!==null){ 
		layername = arrayname+''+i;
		if (document.getElementById(layername)) i++;
		// if (i > 1) alert(document.getElementById('testval').value);
	}
	return i;
}

// Count selected
function countselectedarray() {
    var i=0;
	var j=0;
    while(document.getElementById('item'+i)!=null){ 
        if (document.getElementById('item'+i).checked==true) {
			j++; 
		}
        i++;
    }
	return j;
}

// Delete selected
// acount.php
function checkselected(arg1,arg2){
	// If any selected do this
	var newArg1 = arg1.replace("[AMOUNT]", countselectedarray('item'));

	if (countselectedarray('item') > 0) {
		question = confirm(newArg1);
		if (question != "0"){
			return true ;
		} else {
			return false ;
		}
	} else {
		alert(arg2);
		return false ;
	}
}

// Select all
// newaccount.php
function select_all(checkboxID) {
	if (document.getElementById('launch').checked === true) {
		state = true;
	} else {
		state = false;
	}
    var i=0; 
    while(document.getElementById(checkboxID+i)!==null){ 
        document.getElementById(checkboxID+i).checked=state; 
        i++; 
    } 
}

// Copy data
// signupstep2.php
function copydata() {
	if (document.getElementById('tempholder').value === "") {
		document.getElementById('deliveryname').value = document.getElementById('name').value;
		document.getElementById('deliveryaddress').value = document.getElementById('address').value;
		document.getElementById('deliveryzip').value = document.getElementById('zip').value;
		document.getElementById('deliverycity').value = document.getElementById('city').value;
		document.getElementById('deliveryphone').value = document.getElementById('phone').value;
		// document.getElementById('deliveryemail').value = document.getElementById('email').value;
		zipCheck();
		document.getElementById('tempholder').value='1';
	} else {
		document.getElementById('deliveryname').value = '';
		document.getElementById('deliveryaddress').value = '';
		document.getElementById('deliveryzip').value = '';
		document.getElementById('deliverycity').value = '';
		document.getElementById('deliveryphone').value = '';
		// document.getElementById('deliveryemail').value = '';
		
		document.getElementById('tempholder').value='';
	}
}

// Check to see if the delivery zipcode is in the allowed scope
// signupstep2.php
function zipCheck() {
	var amountFound=0;
	// alert(document.getElementById('deliveryzip').value);
	for (i=0;i<zipCodesStart.length;i++)
	{
		document.write=zipCodesStart[i];
		if (document.getElementById('deliveryzip').value >= zipCodesStart[i] &&	document.getElementById('deliveryzip').value <= zipCodesEnd[i])
		{
			amountFound = amountFound+1;
		}
	}

	if (amountFound == 0) {
		alert('Vi levere ikke til dette postnummer!');
		document.getElementById('deliveryzip').value = '';
	}
}


// Ajax
function ajax() {
	var xmlHttp;
	try { xmlHttp=new XMLHttpRequest(); }
	
	catch (e) {
	  try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); }
	  catch (e) {
	    try { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); }
	    catch (e) {
	      alert("Your browser does not support AJAX!");
	      return false;
	    }
	  }
	}
	return xmlHttp;
}
function ajaxGet(url,xmlHttp,type,typeid) {
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	if (type=='compile') { window.onload=new aSend('content','compiledone.php?mpeid='+typeid,'');
	} else if (type=='preview') { window.onload=new aSend('content','previewdone.php?tid='+typeid,''); }
}

function fillByName(name,cnt)
{
var tgt=document.getElementById(name);
tgt.innerHTML=cnt;
}

function aSend(name,url,type,typeid) {
	// setting loader image
	loader(name);
	
	// alert(name);
	// Checking if login is set
	// new aSend('login','ajax/loginscript.php');
	
	var self=this;
	this.result;
	this.targetName=name;
	this.xmlHttp=ajax();
	this.xmlHttp.onreadystatechange=function() {
		if(self.xmlHttp.readyState==4) {
			self.result=self.xmlHttp.responseText;
			fillByName(self.targetName,self.result);

		}
	}
	var payload=url;
	// alert(payload);
	ajaxGet(payload ,this.xmlHttp,type,typeid);
}


function aSubmit(name,url,id) {
	var form=document.getElementById(id);
	var r;
	var firste=true;
	// alert(id);
	for(var i=0;i < form.length;i++) {
		// if (form.elements[i].type) alert(form.elements[i].type.toLowerCase());
		switch(form.elements[i].type.toLowerCase()) {
			case "textarea":
				if(firste)  r=""; else r+="&"; 
				firste=false;
				r+=form.elements[i].name + "=" + nl2br(form.elements[i].value);
				// r+=form.elements[i].name + "=" + form.elements[i].innerHTML;
				break;
			case "text":
			case "hidden":
			case "select-one":
			case "password":
				if(firste)  r=""; else r+="&"; 
				firste=false;
				r+=form.elements[i].name + "=" + form.elements[i].value;
				break;
			case "radio":
				if(form.elements[i].checked){
					if(firste)  r=""; else r+="&"; 
					firste=false;
					r+=form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value);
				}
				break;
			case "checkbox":
				if(form.elements[i].checked){
					if(firste)  r=""; else r+="&"; 
					firste=false;
					r+=form.elements[i].name + "=" + encodeURIComponent(form.elements[i].value);
				}
				break;
			default:
			}
		}
	// alert(url+'?'+r);
	new aSend(name,url+'?'+r);
	return false;
}





// Openlayer
// newaccount.php, ajax/order.php
function open_layer(layername) {
	var g_iCount = new Number();
	var g_iCount = 4;
	new opacity(layername, 0, 100, 500);
	if (layername == 'keylayer') document.getElementById(layername).style.zIndex = 5;
	document.getElementById(layername).style.top = (parseInt(document.getElementById('MouseXl').value)-100);
	// document.getElementById(layername).style.left = (parseInt(document.getElementById('MouseYl').value)+140);
	document.getElementById(layername).style.left = '45%';
	e=document.getElementById(layername);
	setTimeout("e.style.display = 'block'", 50);
}


function close_layer(layername) {
	var g_iCount = new Number();
	var g_iCount = 4;
	opacity(layername, 100, 0, 500);
	e = document.getElementById(layername);
	setTimeout("e.style.display='none'", 200);
}

function trackmousecoordinates(f) {
// var e = window.event;
	var posx = 0;
	var posy = 0;
	if (!f) var f = window.event;
	if (f.pageX || f.pageY) {
		posx = f.pageX;
		posy = f.pageY;
	}
	else if (f.clientX || f.clientY) {
		posx = f.clientX + document.body.scrollLeft
			+ document.documentElement.scrollLeft;
		posy = f.clientY + document.body.scrollTop
			+ document.documentElement.scrollTop;
	}
    document.getElementById('MouseXl').value = posy
    document.getElementById('MouseYl').value = posx
	// posx and posy contain the mouse position relative to the document
	// Do something with this information
}

	
	
// Fade out div
// http://brainerror.net/scripts/javascript/blendtrans/
function shiftOpacity(id, millisec) {
    //if an element is invisible, make it visible, else make it ivisible
    if(document.getElementById(id).style.opacity == 0) {
        opacity(id, 0, 100, millisec);
    } else {
        opacity(id, 100, 0, millisec);
    }
}

function opacity(id, opacStart, opacEnd, millisec) {
    //speed for each frame
    var speed = Math.round(millisec / 100);
    var timer = 0;

    //determine the direction for the blending, if start and end are the same nothing happens
    if(opacStart > opacEnd) {
        for(i = opacStart; i >= opacEnd; i--) {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    } else if(opacStart < opacEnd) {
        for(i = opacStart; i <= opacEnd; i++)
            {
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
            timer++;
        }
    }
}

//change the opacity for different browsers
function changeOpac(opacity, id) {
    var object = document.getElementById(id).style;
    object.opacity = (opacity / 100);
    object.MozOpacity = (opacity / 100);
    object.KhtmlOpacity = (opacity / 100);
    object.filter = "alpha(opacity=" + opacity + ")";
}



//*****************************************************************************
// Do not remove this notice.
//
// Copyright 2001 by Mike Hall.
// See http://www.brainjar.com for terms of use.
//*****************************************************************************

// Determine browser and version.

function Browser() {

  var ua, s, i;

  this.isIE    = false;
  this.isNS    = false;
  this.version = null;

  ua = navigator.userAgent;

  s = "MSIE";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isIE = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  // Treat any other "Gecko" browser as NS 6.1.

  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = 6.1;
    return;
  }
}

var browser = new Browser();

// Global object to hold drag information.

var dragObj = new Object();
dragObj.zIndex = 0;

function dragStart(event, id) {

  var el;
  var x, y;

  // If an element id was given, find it. Otherwise use the element being
  // clicked on.

  if (id)
    dragObj.elNode = document.getElementById(id);
  else {
    if (browser.isIE)
      dragObj.elNode = window.event.srcElement;
    if (browser.isNS)
      dragObj.elNode = event.target;

    // If this is a text node, use its parent element.

    if (dragObj.elNode.nodeType == 3)
      dragObj.elNode = dragObj.elNode.parentNode;
  }

  // Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

  // Save starting positions of cursor and element.

  dragObj.cursorStartX = x;
  dragObj.cursorStartY = y;
  dragObj.elStartLeft  = x-100; // left
  dragObj.elStartTop   = y-20; // top

  if (isNaN(dragObj.elStartLeft)) dragObj.elStartLeft = 0;
  if (isNaN(dragObj.elStartTop))  dragObj.elStartTop  = 0;

  // Update element's z-index.

  dragObj.elNode.style.zIndex = ++dragObj.zIndex;

  // Capture mousemove and mouseup events on the page.

  if (browser.isIE) {
    document.attachEvent("onmousemove", dragGo);
    document.attachEvent("onmouseup",   dragStop);
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS) {
    document.addEventListener("mousemove", dragGo,   true);
    document.addEventListener("mouseup",   dragStop, true);
    event.preventDefault();
  }
}

function dragGo(event) {

  var x, y;

  // Get cursor position with respect to the page.

  if (browser.isIE) {
    x = window.event.clientX + document.documentElement.scrollLeft
      + document.body.scrollLeft;
    y = window.event.clientY + document.documentElement.scrollTop
      + document.body.scrollTop;
  }
  if (browser.isNS) {
    x = event.clientX + window.scrollX;
    y = event.clientY + window.scrollY;
  }

  // Move drag element by the same amount the cursor has moved.

  dragObj.elNode.style.left = (dragObj.elStartLeft + x - dragObj.cursorStartX) + "px";
  dragObj.elNode.style.top  = (dragObj.elStartTop  + y - dragObj.cursorStartY) + "px";

  if (browser.isIE) {
    window.event.cancelBubble = true;
    window.event.returnValue = false;
  }
  if (browser.isNS)
    event.preventDefault();
}

function dragStop(event) {

  // Stop capturing mousemove and mouseup events.

  if (browser.isIE) {
    document.detachEvent("onmousemove", dragGo);
    document.detachEvent("onmouseup",   dragStop);
  }
  if (browser.isNS) {
    document.removeEventListener("mousemove", dragGo,   true);
    document.removeEventListener("mouseup",   dragStop, true);
  }
}