/************************ image loading controls ************************/

/* 
used by: newcontent.php editcontent.php
purpose: uploads images
*/
function uploadImage(formname,elementname,elementvalue) {
  document.forms[formname].elements[elementname].value = elementvalue;
  document.forms[formname].submit();
}

/* 
used by: newcontent.php editcontent.php
purpose: remove images
*/
function removeImage(formname,elementname,elementvalue,index) {
  document.forms[formname].elements[elementname].value = elementvalue;
  document.forms[formname].elements['ImageIndex'].value = index;
  document.forms[formname].submit();
}

/************************ windows controls ************************/

var miniwindow
var currentwindowurl = "";

/*
used by: newcontent.php, editcontent.php
purpose: opens a window for preview
*/
function openwindow(htmlpage,winx,winy) {
  if (!miniwindow || miniwindow.closed || (currentwindowurl != htmlpage)) {
	var wininit = "width=" + winx + ",height=" + winy + ",scrollbars=yes,resizable=yes";
    miniwindow = window.open(htmlpage,'miniwindow',wininit);
  } 
  currentwindowurl = htmlpage;
  miniwindow.focus();
}

/*
used by: newcontent.php, editcontent.php
purpose: closes all windows created by parent
*/
function closewindow() {
  if (miniwindow) {
    if (!(miniwindow.closed)) miniwindow.close();
  }
}

/* 
used by: submission.php
purpose: checks if required fields are filled.
*/
function validateContent(myform) {
	var contitle = myform.elements["Con_Title"].value.length;
	var catid = myform.elements["Cat_ID"].selectedIndex;
	var email = myform.elements["Con_XText4"].value;
	var zipcode = myform.elements["Con_XText8"].value;

	if (!contitle || catid <= 0) {
		alert("All required fields must be filled.");
		return false;
	}
    
	if (email.length == 0) {
      alert("Email address is required.");   
	  return false;
    } else {
	  valid = false;
	  for (i=0;i<email.length;i++) {
	    if (email.substr(i,1) != " ")
		  valid = true;
	  }
	  if (!valid) {
		alert("Email address is required.");
		return false;
      }
	}

    if (!isInteger(zipcode)) {
      alert("Invalid zip code. Zip code must be a 5 digit number.");   
	  return false;
    }

	accept = window.confirm("Please check that the information you have provided is correct before submitting it in for processing.\nPlease remember to check if you would like to mark this item as free.\nDo you wish to submit your classifed ad now?");
    if (accept == true)
	  return true;
    else
	  return false;
}

function validateClassifiedSelection(myform,size) {
  var valid=false; 
  if (size <= 1) { 
    if (myform.elements['subcat[]'].checked) valid=true;
  } else { 
    for (i=0; i < myform.elements['subcat[]'].length; i++) { 
	  if (myform.elements['subcat[]'][i].checked) valid=true;
    }
  } 
  if (!valid) {
    alert("A category must be selected.");
  }
  return valid;
}

/*
function is used to validate Integer fields
*/
function isInteger(inputVal) { 
  if (inputVal != "") { 
    inputStr = inputVal.toString(); 
	for (var i = 0; i < inputStr.length; i++) { 
	  var oneChar = inputStr.charAt(i); 
	  if (i == 0 && oneChar == "-") { 
	    return false; 
	  } 
	  if (oneChar < "0" || oneChar > "9") { 
	    return false; 
	  } 
	} 
  } 
  return true; 
}

// function is used in email section
function validateEmailUs(myform) {
  var valid = true;
  var emailsubject = myform.elements["emailsubject"].value;
  var emailaddress = myform.elements["emailaddress"].value;
  if (emailsubject.length == 0 || emailaddress.length == 0) {
	alert("All required fields must be filled.");
    valid = false;
  }
  return valid;
}
