// JavaScript Document<script type="text/javascript"/>
//Function that will turn off all widgets except the ones that should be active
//Assumptions: 
 //1.The form where checkboxes are located is called 'form1'
 //2. Each checkbox has an id=ckCATEGORY so the park checkbox's id is 'ckpark'
 //3. Body tag has in it the onload=(toggle()) attribute
function toggle()
{
  var x = '<%=request("category")%>';
  if (x != '')
  {
    togglevisible('locations',0);
    togglevisible('<%=request("category")%>',1);
	
      for (i = 0; i < document.getElementById('form1').elements.length; i++) document.getElementById('form1').elements[i].checked = false ;
    
    document.getElementById('ck<%=request("category")%>').checked = "checked";
  }
  togglevisible('labels',1);
}


function hilite(imgid,gifname)
{
	document.getElementById(imgid).src="symbols/" + gifname + ".gif";
	document.getElementById(imgid).width="35";
	document.getElementById(imgid).height="35";
}

function delite(imgid,gifname)
{
	document.getElementById(imgid).src="symbols/" + gifname + ".gif";
	document.getElementById(imgid).width="15";
	document.getElementById(imgid).height="15";
}
function togglevisible(classid, enabled) {
  	if (enabled)
	{
		setStyleByClass("li", classid, "display","block",1);
	}
	else
	{
		setStyleByClass("li", classid, "display","none",1);
		
	}
}
//// setStyleByClass: given an element type and a class selector,
// style property and value, apply the style.
// args:
//  t - type of tag to check for (e.g., SPAN)
//  c - class name
//  p - CSS property
//  v - value
var ie = (document.all) ? true : false;

function setStyleByClass(t,c,p,v){
	var elements;
	if(t == '*') {
		// '*' not supported by IE/Win 5.5 and below
		elements = (ie) ? document.all : document.getElementsByTagName('*');
	} else {
		elements = document.getElementsByTagName(t);
	}
	for(var i = 0; i < elements.length; i++){
		var node = elements.item(i);
		for(var j = 0; j < node.attributes.length; j++) {
			if(node.attributes.item(j).nodeName == 'class') {
				if(node.attributes.item(j).nodeValue == c) {
					eval('node.style.' + p + " = '" +v + "'");
				}
			}
		}
	}
}

// getStyleByClass: given an element type, a class selector and a property,
// return the value of the property for that element type.
// args:
//  t - element type
//  c - class identifier
//  p - CSS property
function getStyleByClass(t, c, p) {
	// first loop over elements, because if they've been modified they
	// will contain style data more recent than that in the stylesheet
	var elements;
	if(t == '*') {
		// '*' not supported by IE/Win 5.5 and below
		elements = (ie) ? document.all : document.getElementsByTagName('*');
	} else {
		elements = document.getElementsByTagName(t);
	}
	for(var i = 0; i < elements.length; i++){
		var node = elements.item(i);
		for(var j = 0; j < node.attributes.length; j++) {
			if(node.attributes.item(j).nodeName == 'class') {
				if(node.attributes.item(j).nodeValue == c) {
					var theStyle = eval('node.style.' + p);
					if((theStyle != "") && (theStyle != null)) {
						return theStyle;
					}
				}
			}
		}		
	}
	// if we got here it's because we didn't find anything
	// try styleSheets
	var sheets = document.styleSheets;
	if(sheets.length > 0) {
		// loop over each sheet
		for(var x = 0; x < sheets.length; x++) {
			// grab stylesheet rules
			var rules = sheets[x].cssRules;
			if(rules.length > 0) {
				// check each rule
				for(var y = 0; y < rules.length; y++) {
					var z = rules[y].style;
					// selectorText broken in NS 6/Mozilla: see
					// http://bugzilla.mozilla.org/show_bug.cgi?id=51944
					ugly_selectorText_workaround();
					if(allStyleRules) {
						if((allStyleRules[y] == c) ||
						   (allStyleRules[y] == (t + "." + c))) {
							return z[p];
						}			
					} else {
						// use the native selectorText and style stuff
						if(((z[p] != "") && (z[p] != null)) &&
						   ((rules[y].selectorText == c) ||
						    (rules[y].selectorText == (t + "." + c)))) {
							return z[p];
						}
					}
				}
			}
		}
	}

	return null;
}


function Outer(addy, form, pattern, patID) {
if (addy.checked) {
form.OuterPattern.value = pattern;
document.getElementById('outer').src="http://www.debrisdesign.com/images/" + patID + ".jpg";
}
else {
form.OuterPattern.value = ' ';
document.getElementById('outer').src="http://www.debrisdesign.com/dress/texture.gif";
}
}
function Inner(addy, form, pattern,patID) {
if (addy.checked) {
form.InnerPattern.value = pattern;
document.getElementById('inner').src="http://www.debrisdesign.com/images/" + patID + ".jpg";
}
else {
form.InnerPattern.value = ' ';
document.getElementById('inner').src="http://www.debrisdesign.com/dress/texture.gif";
}
}
function Flap(addy, form, pattern, patID) {
if (addy.checked) {
form.FlapPattern.value = pattern;
document.getElementById('flap').src="http://www.debrisdesign.com/images/" + patID + ".jpg";
}
else {
form.FlapPattern.value = ' ';
document.getElementById('flap').src="http://www.debrisdesign.com/dress/texture.gif";
}
}

function Side(addy, form, pattern,patID) {
if (addy.checked) {
form.SidePattern.value = pattern;
document.getElementById('side').src="http://www.debrisdesign.com/images/" + patID + ".jpg";
}
else {
form.SidePattern.value = ' ';
document.getElementById('side').src="http://www.debrisdesign.com/dress/texture.gif";
}
}

function Loop(addy, form, pattern,patID) {
if (addy.checked) {
form.LoopPattern.value = pattern;
document.getElementById('loop').src="http://www.debrisdesign.com/images/" + patID + ".jpg";
}
else {
form.LoopPattern.value = ' ';
document.getElementById('loop').src="http://www.debrisdesign.com/dress/texture.gif";
}
}

function PageQuery(q) {
	if(q.length > 1) this.q = q.substring(1, q.length);
	else this.q = null;
	this.keyValuePairs = new Array();
	if(q) {
		for(var i=0; i < this.q.split("&").length; i++) {
			this.keyValuePairs[i] = this.q.split("&")[i];
		}
	}
	this.getKeyValuePairs = function() { return this.keyValuePairs; }
	this.getValue = function(s) {
		for(var j=0; j < this.keyValuePairs.length; j++) {
			if(this.keyValuePairs[j].split("=")[0] == s)
				return this.keyValuePairs[j].split("=")[1];
		}
		return false;
	}
	this.getParameters = function() {
		var a = new Array(this.getLength());
		for(var j=0; j < this.keyValuePairs.length; j++) {
			a[j] = this.keyValuePairs[j].split("=")[0];
		}
		return a;
	}
	this.getLength = function() { return this.keyValuePairs.length; }	
}
function queryString(key){
var page = new PageQuery(window.location.search); 
return unescape(page.getValue(key)); 
}
function selectPatterns(key){
	if(queryString(key)=='false')
		{
		//
		}else{
		var a = new Array();
		a = queryString(key).split(",")
		document.choose.OuterPattern.value = a[0];
		document.choose.InnerPattern.value = a[1];
		document.choose.LoopPattern.value = a[2];
		document.choose.FlapPattern.value = a[3];
	}
}

function selectPatIDs(key){
	if(queryString(key)=='false')
		{
		//
		}else{
		var a = new Array();
		a = queryString(key).split(",")
		document.getElementById('outer').src="http://www.debrisdesign.com/images/" + a[0] + ".jpg";
		document.getElementById('inner').src="http://www.debrisdesign.com/images/" + a[1] + ".jpg";
		document.getElementById('loop').src="http://www.debrisdesign.com/images/" + a[2] + ".jpg";
		document.getElementById('flap').src="http://www.debrisdesign.com/images/" + a[3] + ".jpg";
	}
}

