

/////////////////////////////////////////
//	LIBRARY FUNCTIONS
/////////////////////////////////////////

function ExplodePostReturn(datashuffle) {
	var spl = datashuffle.split("|");
	flaginfo = spl[0];
	errinfo = spl[1];
}

function ToggleDiv(panelname, showpanel) {
	if(showpanel==1) var disp = "block"; else var disp = "none";
	if(document.getElementById && document.getElementById(panelname)) {
		document.getElementById(panelname).style.display = disp;
	} else if (document.all && document.all(panelname)) {
		document.all(panelname).style.display = disp;
	}
	return;
}

function ToggleParentDiv(panelname, showpanel) {
	if(showpanel==1) var disp = "block"; else var disp = "none";
	if(parent.document.getElementById && parent.document.getElementById(panelname)) {
		parent.document.getElementById(panelname).style.display = disp;
	} else if (parent.document.all && parent.document.all(panelname)) {
		parent.document.all(panelname).style.display = disp;
	}
	return;
}

function GetDivStatus(panelname) {
	var currstate = 0;
	if(document.getElementById && document.getElementById(panelname)) {
		if(document.getElementById(panelname).style.display=="block") currstate = 1
	} else if (document.all && document.all(panelname)) {
		if(document.all(panelname).style.display=="block") currstate = 1
	}
	return(currstate);
}

function GetParentDivStatus(panelname) {
	var currstate = 0;
	if(parent.document.getElementById && parent.document.getElementById(panelname)) {
		if(parent.document.getElementById(panelname).style.display=="block") currstate = 1
	} else if (parent.document.all && parent.document.all(panelname)) {
		if(parent.document.all(panelname).style.display=="block") currstate = 1
	}
	return(currstate);
}

function SetDivHTML(panelname, panelhtml) {
	if(document.getElementById && document.getElementById(panelname)) {
		document.getElementById(panelname).innerHTML = panelhtml;
	} else if (document.all && document.all(panelname)) {
		document.all(panelname).innerHTML = panelhtml;
	}
	return;
}

function SetParentDivHTML(panelname, panelhtml) {
	if(parent.document.getElementById && parent.document.getElementById(panelname)) {
		parent.document.getElementById(panelname).innerHTML = panelhtml;
	} else if (parent.document.all && parent.document.all(panelname)) {
		parent.document.all(panelname).innerHTML = panelhtml;
	}
	return;
}

function SetValue(fieldname, fieldval) {
	if(parent.document.getElementById && parent.document.getElementById(fieldname)) {
		parent.document.getElementById(fieldname).value = fieldval;
	} else if (parent.document.all && parent.document.all(fieldname)) {
		parent.document.all(fieldname).value = fieldval;
	}
	return;
}

function SetSource(fieldname, sourceval) {
	if(parent.document.getElementById && parent.document.getElementById(fieldname)) {
		parent.document.getElementById(fieldname).src = sourceval;
	} else if (parent.document.all && parent.document.all(fieldname)) {
		parent.document.all(fieldname).src = sourceval;
	}
	return;
}

function SetCheckbox(fieldname, fieldval) {
	if(fieldval==GetValue(fieldname)) fieldval = true; else fieldval = false;
	if(document.getElementById && document.getElementById(fieldname)) {
		document.getElementById(fieldname).checked = fieldval;
	} else if (document.all && document.all(fieldname)) {
		document.all(fieldname).checked = fieldval;
	}
	return;
}

function GetValue(fieldname) {
	var fieldval = "";
	if(document.getElementById && document.getElementById(fieldname)) {
		fieldval = document.getElementById(fieldname).value;
	} else if (document.all && document.all(fieldname)) {
		fieldval = document.all(fieldname).value;
	}
	return(fieldval);
}

function GetCheckbox(fieldname) {
	var res = "";
	if(document.getElementById && document.getElementById(fieldname)) {
		if(document.getElementById(fieldname).checked==true) res = GetValue(fieldname);
	} else if (document.all && document.all(fieldname)) {
		if(document.all(fieldname).checked==true) res = GetValue(fieldname);
	}
	return(res);
}

function getSelectedRadio(buttonGroup) {
   // returns the array number of the selected radio button or -1 if no button is selected
   if(buttonGroup) {
   if (buttonGroup[0]) { // if the button group is an array (one button is not an array)
      for (var i=0; i<buttonGroup.length; i++) {
         if (buttonGroup[i].checked) {
            return i
         }
      }
   } else {
      if (buttonGroup.checked) { return 0; } // if the one button is checked, return zero
   }
   }
   // if we get to this point, no radio button is selected
   return -1;
}

function getSelectedRadioValue(buttonGroup) {
   // returns the value of the selected radio button or "" if no button is selected
   var i = getSelectedRadio(buttonGroup);
   if (i == -1) {
      return "";
   } else {
      if (buttonGroup[i]) { // Make sure the button group is an array (not just one button)
         return buttonGroup[i].value;
      } else { // The button group is just the one button, and it is checked
         return buttonGroup.value;
      }
   }
}

function setRadio(buttonGroup, itm) {
   // returns the array number of the selected radio button or -1 if no button is selected
   if(buttonGroup) {
   if (buttonGroup[0]) { // if the button group is an array (one button is not an array)
      for (var i=0; i<buttonGroup.length; i++) {
         if (buttonGroup[i].value==itm) buttonGroup[i].checked = true;
      }
   } else {
      if (buttonGroup.checked) { return 0; } // if the one button is checked, return zero
   }
   }
   // if we get to this point, no radio button is selected
   return -1;
}

function GetSelectedOptions(objname) {
	var spitback = "";
	if(document.getElementById && document.getElementById(objname)) {
		for(var i=0; i<document.getElementById(objname).options.length; i++) {
			if (document.getElementById(objname).options[i].selected && document.getElementById(objname).options[i].value!="") spitback = spitback + document.getElementById(objname).options[i].value + "_";
		}
	} else if (document.all && document.all(objname)) {
		for(var i=0; i<document.all(objname).options.length; i++) {
			if (document.all(objname).options[i].selected && document.all(objname).options[i].value!="") spitback = spitback + document.all(objname).options[i].value + "_";
		}
	}
	return(spitback);
}

function SetClass(panelname, classname) {
	if(document.getElementById && document.getElementById(panelname)) {
		var fieldval = document.getElementById(panelname).className = classname;
	} else if (document.all && document.all(panelname)) {
		var fieldval = document.all(panelname).className = classname;
	}
}

function SetCSSStyle(panelname, cssattr, cssval) {
	if(document.getElementById && document.getElementById(panelname)) {
		eval("document.getElementById(panelname).style." + cssattr + " = '" + cssval + "'");
	} else if (document.all && document.all(panelname)) {
		eval("document.all(panelname).style." + cssattr + " = '" + cssval + "'");
	}
}

function GetCSSStyle(panelname, cssattr) {
	if(document.getElementById && document.getElementById(panelname)) {
		var ret = eval("document.getElementById('" + panelname + "').style." + cssattr);
	} else if (document.all && document.all(panelname)) {
		var ret = eval("document.all('" + panelname + "').style." + cssattr);
	}
	return(ret);
}

function AddSelectBox(seltype, divname, nameid, optstring, valstring, functioncall) {
	var o = document.getElementById(divname);
	var txtSel = document.createElement("select");
	txtSel.setAttribute("name",nameid);
	txtSel.setAttribute("id",nameid);
	o.appendChild(txtSel);
	if(optstring!="") {
		var objOption
		var jnk1 = optstring.split("|");
		var jnk2 = valstring.split("|");
		for(x=0;x<=jnk1.length-1;x++) {
			objOption = document.createElement("option");
			objOption.text = jnk1[x];
			objOption.value = jnk2[x];
			txtSel.options.add(objOption);
		}
	}
	if(functioncall!="") eval("txtSel.onchange = function() {" + functioncall + "}");
	return;
}

function AddInputField(fieldtype, divname, nameid, attrstring, valstring, functioncall) {
	var o = document.getElementById(divname);
	var txtFld = document.createElement(fieldtype);
	txtFld.setAttribute("name",nameid);
	txtFld.setAttribute("id",nameid);
	if(attrstring!="") {
		var jnk1 = attrstring.split("|");
		var jnk2 = valstring.split("|");
		for(x=0;x<=jnk1.length-1;x++) {
			txtFld.setAttribute(jnk1[x], jnk2[x]);
		}
	}
	if(functioncall!="") eval("txtFld.onchange = function() {" + functioncall + "}");
	o.appendChild(txtFld);
	return;
}


function AddTableRow(tableid, rowarr, rownumber) {
	if(document.all){
		var table = document.all[tableid] 
		var row = table.insertRow();
		row.value = 0;
		for(i=0;i<rowarr.length;i++) {
			var cell = row.insertCell();
			cell.innerHTML= rowarr[i];
		}
	} else {
		var table = document.getElementById(tableid);
		var row = table.insertRow(rownumber);
		row.value = 0;
		for(i=0;i<rowarr.length;i++) {
			var cell = row.insertCell(i);
			cell.innerHTML= rowarr[i];
		}
	}
}

function AddNewTableRow(tableid, carray, cproperties, rproperties, rnumber) {
		// sample implementation
		// var carray = "<b>Image #" + imgentered + "</b>:" + "|||" + "<input type=\"file\" size=\"15\" name=artfile" + imgentered + ">" + "|||" + "Align:" + "|||" + "<select name=artalign" + imgentered + "><option value=1>left<option value=3>center<option value=2>right</select>";
		// var cproperties = "align|right|valign|top" + "|||_|||" + "align|right|valign|top" + "|||_";
		// var rproperties = "bgcolor|#CCCCCC|||valign|top";
		// AddNewTableRow("ImageTable", carray, cproperties, rproperties, 12);

	var carray = carray.split("|||");
	var cproperties = cproperties.split("|||");
	var rproperties = rproperties.split("|||");
	//	add the row
	if(document.all){
		var table = document.all[tableid];
		var row = table.insertRow();
	} else {
		var table = document.getElementById(tableid);
		var row = table.insertRow(rnumber);
	}
	//	set the row properties
	for(x=0; x<rproperties.length; x++) {
		var jnk = rproperties[x].split("|");
		for(x=0; x<jnk.length; x=x+2) {
			row.setAttribute(jnk[x], jnk[x+1]);
		}
	}
	//	now add each cell and its properties
	for(i=0; i<carray.length; i++) {
		var cell = row.insertCell(i);
		var jnk = cproperties[i].split("|");
		for(x=0; x<jnk.length; x=x+2) {
			cell.setAttribute(jnk[x], jnk[x+1]);
		}
		cell.innerHTML = carray[i];
	}
}

function setOpacity(obj, opc) {
	obj.style.filter = 'alpha(opacity=' + (opc*100) + ')';
	obj.style.MozOpacity = opc;
	obj.style.KhtmlOpacity = opc;
	obj.style.opacity = opc;
}

function DoFade(objname, drct, curropc, toduration, timernumber) {
	if(drct=="+") curropc = parseFloat(curropc) + .1; else curropc = parseFloat(curropc) - .1;
	document.getElementById(objname).style.filter = 'alpha(opacity=' + (curropc*100) + ')';
	document.getElementById(objname).style.MozOpacity = curropc;
	document.getElementById(objname).style.KhtmlOpacity = curropc;
	document.getElementById(objname).style.opacity = curropc;
	if((drct=="+" && curropc<1) || (drct=="-" && curropc>0)) {
		if(timernumber==1) GalleryTimer1  = setTimeout("DoFade('" + objname + "', '" + drct + "', " + curropc + ", " + toduration + ", " + timernumber + ")", toduration);
		if(timernumber==2) GalleryTimer2 = setTimeout("DoFade('" + objname + "', '" + drct + "', " + curropc + ", " + toduration + ", " + timernumber + ")", toduration);
		if(timernumber==3) GalleryTimer3 = setTimeout("DoFade('" + objname + "', '" + drct + "', " + curropc + ", " + toduration + ", " + timernumber + ")", toduration);
	}
}

function isdefined(variable) {
	return (typeof(variable) == "undefined")?  false: true;
}




