// confirmation box before submitting a "DROP/DELETE/ALTER" query.
function confirmLink(theLink, theSqlQuery)
{
/**
 * Displays a confirmation box before submitting a "DROP/DELETE/ALTER" query.
 * This function is called while clicking links
 *
 * @param   object   the link
 * @param   object   the sql query to submit
 *
 * @return  boolean  whether to run the query or not
 */
    // Confirmation is not required in the configuration file
    // or browser is Opera (crappy js implementation)
    
   	var confirmMsg  = 'Do you really want to delete this';
    
    if (confirmMsg == '' || typeof(window.opera) != 'undefined') {
        return true;
    }

    var is_confirmed = confirm(confirmMsg + ' ' + theSqlQuery + '?');
    if (is_confirmed) {
        theLink.href += '&is_js_confirmed=1';
    }

    return is_confirmed;
} // end of the 'confirmLink()' function



	// empty form element on focus 
	
function clearElement(el) {
   	if (el.defaultValue==el.value) {
   		el.value = "";
   	}
}

function popupform(myform,windowname)
{
if (! window.focus)return true;
window.open('', windowname, 'height=400,width=400,toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars=no');
myform.target=windowname;
return true;
}


var win= null;
function popup(mypage,myname,w,h,scroll){
  var winl = (screen.width-w)/2;
  var wint = (screen.height-h)/2;
  var settings  ='height='+h+',';
      settings +='width='+w+',';
      settings +='top='+wint+',';
      settings +='left='+winl+',';
      settings +='scrollbars='+scroll+',';
      settings +='resizable=yes';
  win=window.open(mypage,myname,settings);
  if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}

function findOpener() {
	document.forms[0].target = opener.top.name;
	document.forms[0].target.reload();
}

function refreshParent() {
	window.opener.location.href = window.opener.location.href;

	if (window.opener.progressWindow) {
		window.opener.progressWindow.close()
	}
	window.close();
}


function disableButton(checkbox,button) {
	//alert("checkbox: " + eval(checkbox) + ", button:" + eval(button));
	var go = 0;
	for (i = 0; i < checkbox.length; i++) {
		if (checkbox[i].checked == true) {
			go = 1;
			//alert("checked");
		}
	}
	if (go == 1) {
		button.disabled = false;
	} else {
		button.disabled = true;
	}
}

function checkForm(formname,fieldname) {

	formErrors = false;

	if (document.formname.fieldname.value.length < 2) {
		formErrors = "You must enter a message when posting.";
	}

	if (formErrors) {
		alert(formErrors);
		return false;
	} else {
		buttonstyle(-1);
		//formObj.preview.disabled = true;
		//formObj.submit.disabled = true;
		return true;
	}
}


// store form values in a cookie
function Get_Cookie(name) {
	var temp="";
	var start = document.cookie.indexOf(name+"=");
	var len = start+name.length+1;
	if ((!start) && (name != document.cookie.substring(0,name.length))) {
   		return null;
	}
	if (start == -1) {
		return null;
	}
	var end = document.cookie.indexOf(";",len);
	if (end == -1) {
		end = document.cookie.length;
	}

	if ((document.cookie.substring(len,end)=="")|| (document.cookie.substring(len,end)=="name")||!document.cookie.substring(len,end)) {
		alert('please register');
	}
	if(name=="imacookie") {
		temp=document.cookie.substring(len,end);
	} else {
		var temp1= document.cookie.substring(len,end);
		document.write(temp1 +" "+temp);
	}
	return unescape(document.cookie.substring(len,end));
}

function setCookie(formname,customerID) {
	var i;
	var formElements = formname.elements;
	var elName;
	document.cookie = "customerID=" + customerID;
	for (i=0; i<6; i++) { 	// '6' here because we only want the first 6 element values
	//for (i=0;i<formElements.length;i++) {
		elName = formElements[i];
		//alert(elName.name + ": " + elName.value);
		document.cookie = elName.name + "=" +escape(elName.value);
	}
}

function saveForm(formname,customerID) {
	var i;
	var formElements = formname.elements;
	var elName;	
	var elStruct = formname.name + "_";
	for (i=0;i<formElements.length;i++) {
		elName = formElements[i];
		elNameStruct = elStruct + elName.name;
		/*
		// debug: alert on the first [i] iterations (listing all of them is too much)
		//if (i<5) {
			alert(elNameStruct + ": " + elName.value);
		//}
		*/ 
		document.cookie = elNameStruct + "=" +escape(elName.value);
	}
	document.cookie = elStruct + "customerID=" + customerID;
}

function init(catid)
{
	optionTest = true;
	lgth = document.forms[1].subcat_id.options.length - 1;
	document.forms[1].subcat_id.options[lgth] = null;
	if (document.forms[1].subcat_id.options[lgth]) {
		optionTest = false;
	}
	populate(catid);
}


function populate(catid) {
	if (!optionTest) return;
	//var formname = getElementById();
	var box = document.forms[1].cat_id;
	var number = box.options[box.selectedIndex].value;
	if (!number) return;
	if (store[number]) {
		var list = store[number];
		var box2 = document.forms[1].subcat_id;
		box2.options.length = 0;
		for(i=0;i<list.length;i+=2) {
			box2.options[i/2] = new Option(list[i],list[i+1]);
			if (box2.options[i/2].value==catid) {
				box2.options[i/2].selected = true;
			}
		}
	} else {  // no subdirs in this category: clear the listbox
		var box2 = document.forms[1].subcat_id;
		box2.options.length = 0;
	}
}

function scrollToSelected(fieldname,id) {
	//document.forms[0].fieldname.selectedIndex = id;
	fieldname.selectedIndex = id;
}

function moveOptions(selectObj, direction){
  if(selectObj.selectedIndex != -1)
  {
	if(direction < 0)
	{
	  for(i = 0; i < selectObj.options.length; i++)
	  {
		swapValue = (i == 0 || selectObj.options[i + direction].selected) ? null : selectObj.options[i + direction].value;
		swapText = (i == 0 || selectObj.options[i + direction].selected) ? null : selectObj.options[i + direction].text;
		if(selectObj.options[i].selected && swapValue != null && swapText != null)
		{
		  thisValue = selectObj.options[i].value;
		  thisText = selectObj.options[i].text;
		  selectObj.options[i].value = swapValue;
		  selectObj.options[i].text = swapText;
		  selectObj.options[i + direction].value = thisValue;
		  selectObj.options[i + direction].text = thisText;
		  selectObj.options[i].selected = false;
		  selectObj.options[i + direction].selected = true;
		}
	  }
	}
	else
	{
	  for(i = selectObj.options.length - 1; i >= 0; i--)
	  {
		swapValue = (i == selectObj.options.length - 1 || selectObj.options[i + direction].selected) ? null : selectObj.options[i + direction].value;
		swapText = (i == selectObj.options.length - 1 || selectObj.options[i + direction].selected) ? null : selectObj.options[i + direction].text;
		if(selectObj.options[i].selected && swapValue != null && swapText != null)
		{
		  thisValue = selectObj.options[i].value;
		  thisText = selectObj.options[i].text;
		  selectObj.options[i].value = swapValue;
		  selectObj.options[i].text = swapText;
		  selectObj.options[i + direction].value = thisValue;
		  selectObj.options[i + direction].text = thisText;
		  selectObj.options[i].selected = false;
		  selectObj.options[i + direction].selected = true;
		}
	  }
	}
  }
}

function selectAll(selectObj) {
	if(selectObj.options.length)
		for(i = 0; i < selectObj.options.length; i++)
  			selectObj.options[i].selected = true;
	return false;
}


function myOnSubmitEventHandler() {
	try {
		if(typeof(document.getElementById('wysiwyg').EscapeUnicode) == 'undefined') {
			throw "Error"
		} else {
			document.getElementById('wysiwyg').EscapeUnicode = true;
			document.getElementById('rich_text').value = document.getElementById('wysiwyg').value;
		}			
	}
	catch(er) {
		document.getElementById('rich_text').value = document.getElementById('alternate1').value;
	}
}

/*
startList=function() {
	if (document.all&&document.getElementById) {
		navRoot = document.getElementById("nav");
		for (i=0; i<navRoot.childNodes.length; i++) {
			node = navRoot.childNodes[i];
			if (node.nodeName=="LI") {
				node.onmouseover=function() {
					this.className+=" over";
  				}
  				node.onmouseout=function() {
  					this.className=this.className.replace(" over", "");
   				}
   			}
  		}
 	}
}
*/

function NewPage() {
	if(!document.getElementsByTagName ) { return; }
	var anchors = document.getElementsByTagName( "a" );
	for( var loop = 0; loop < anchors.length; loop++ ) {
		var anchor = anchors[ loop ];
		if( anchor.getAttribute( "href" ) && anchor.getAttribute( "rel" ) == "external" ) {
			anchor.target = "_blank";
		}
	}
} 