// Text-sizing function
function textSize(action) {
	switch (action) {
		case "larger": {
			if (currentTextSize < 4) {
				currentTextSize++;
				setActiveStyleSheet(styleTitles[currentTextSize]);
			}
			break;
		}
		case "smaller": {
			if (currentTextSize > 0) {
				currentTextSize--;
				setActiveStyleSheet(styleTitles[currentTextSize]);
			}
			break;
		}
	}
}

// Style-switching code from A List Apart
// http://www.alistapart.com/articles/alternate/
function setActiveStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) {
	  	a.disabled = false;
		currentTextSize = i;
	  }
    }
  }
  // Reset vertical position of autocomplete
  autocompleteDiv.style.top = (findPosY(searchInput)+autocompleteDivPositions[currentTextSize]) + "px";
}

function setPrintStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) {
	  	a.disabled = false;
		currentTextSize = i;
	  }
    }
  }
}


function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}


// Functions to get position of object
// From http://www.quirksmode.org/js/findpos.html
function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	} else if (obj.x) {
		curleft += obj.x;
	}
	return curleft;
}
function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	} else if (obj.y) {
		curtop += obj.y;
	}
	return curtop;
}

// Window onload/onunload
window.onload = function(e) {
	// Includes style switching and assistive search code
	var cookie = readCookie("style");
	var title = cookie ? cookie : getPreferredStyleSheet();
	// Set references to any elements (needs to be onload so DOM is present)
	searchInput = document.getElementById("input_searchterm");
	autocompleteDiv = document.getElementById("autocomplete");
	HideDiv("autocomplete");
	//searchInput.focus();
	// Set vertical position of autocomplete
	autocompleteDiv.style.top = (findPosY(searchInput)+autocompleteDivPositions[currentTextSize]) + "px";
	// Set autocomplete attribute
	searchInput.setAttribute("autocomplete", "off");
	// Style switching init
	if (title.length<=4) title = "Default text";
	setActiveStyleSheet(title);
}
window.onunload = function(e) {
  var title = getActiveStyleSheet();
  if (title != "Printer2")
  {
	createCookie("style", title, 365);
  }
}

// Global initialisation
var searchInput, autocompleteDiv, req;
var styleTitles = new Array("Smallest text", "Default text", "Larger text", "Very large text", "Largest text");
var autocompleteDivPositions = new Array(15,17,20,25,30);
var currentTextSize = 1;

function jCheck(){
document.location = "search.asp?assist=1&amp;ns=1";
}


var today = new Date();
var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000); // plus 28 days

function setCookie(name, value) { // use: setCookie("name", value);
	if (value != null && value != "")
	document.cookie=name + "=" + escape(value) + "; expires=" + expiry.toGMTString();
	document.cookie= document.cookie; // update document.cookie
}

function CreateCookie(){
setCookie ("jsTest", "jsactive");
}


function AssistiveSearch(param){
setCookie ("assistSearch", param);
}


function getCookie(name)
{
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1)
    {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    }
    else
    {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1)
    {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}


function clearRadios()
{

document.donationform.amount25.checked=false;
document.donationform.amount50.checked=false;
document.donationform.amount85.checked=false;
document.donationform.amount100.checked=false;
document.donationform.amount250.checked=false;
document.donationform.amount500.checked=false;
document.donationform.amount1000.checked=false;

}

function updateItem(s, id,prod)
{
	if(document.form1['quantity' + id].value>0)
	{
		document.location = 'basket.asp?step='+s+'&basket_item_id='+id+'&updateme=1&prodid='+prod+'&quantity='+document.form1['quantity' + id].value;
	}
	else
	{
		alert('Please enter a value of 1 or more. Use the delete to remove an item');
		document.form1['quantity' + id].focus();
	}
}