/*****************************************************
 * Common Javascript functions
 *****************************************************/

function np() {
 return void(0)
}

function nw() {
 alert("This is not coded as yet! :)")
}

function openWin(x,width,height) {
 window.open(x,null,"width="+width+",height="+height+",menubar=0,toolbar=0,resizable=0,scrollbars=1");
}

function chkFormPwd() {
 email = $('email')
 var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
 if (!(chkFilter.test(email.value))) {
  alert("Please enter a valid Email");
  return false;
 }
}

function quickJump() {
 quickJumpSec = $F('quickJumpSec')
 switch(quickJumpSec) {
  case "n":
   window.location = 'show.needs.asp';
   break;
  case "o":
   window.location = 'show.offers.asp';
   break;
  case "v":
   window.location = 'show.volunteering.asp';
   break;
 }
}

function getDistricts() {
 new Ajax.Updater('selectDistrict', 'process/get.list.districts.asp', {method: 'post', parameters: {stateId: $F('stateId')}})
}

function getSubCategories() {
 new Ajax.Updater('selectSubCategory', 'process/get.list.subcategories.asp', {method: 'post', parameters: {categoryId: $F('categoryId')}})
}

function getVolSubCategories() {
 new Ajax.Updater('selectSubCategory', 'process/get.list.subcategories.vol.asp', {method: 'post', parameters: {categoryId: $F('categoryId')}})
}

function insertAddress() {
 $('boxAddress').innerHTML = $('boxWait').innerHTML;
 new Ajax.Updater('boxAddress', 'process/get.address.asp')
}

function $RF(el, radioGroup) {
 if($(el).type && $(el).type.toLowerCase() == 'radio') {
  var radioGroup = $(el).name;
  var el = $(el).form;
 } else if ($(el).tagName.toLowerCase() != 'form') {
  return false;
 }
 var checked = $(el).getInputs('radio', radioGroup).find(
  function(re) {return re.checked;}
 );
 return (checked) ? $F(checked) : null;
}

function $CF(el, radioGroup) {
 if($(el).type && $(el).type.toLowerCase() == 'checkbox') {
  var radioGroup = $(el).name;
  var el = $(el).form;
 } else if ($(el).tagName.toLowerCase() != 'form') {
   return false;
 }
 var checked = $(el).getInputs('checkbox', radioGroup).find(
  function(re) {return re.checked;}
 );
 return (checked) ? $F(checked) : null;
}

function numCheck(event) {
 if(navigator.appName != "Microsoft Internet Explorer" ) {
  if( (event.which >= 48 && event.which <= 57) || (event.which == 8 )  || (event.which==0) ) {
   return;
  } else {
   return false;
  }
 } else {
  if( (event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode == 8 ) ) {
   return;
  } else {
   return false;
  }
 }
}

function decCheck(event) {
 if(navigator.appName != "Microsoft Internet Explorer") {
  if ((event.which >= 48 && event.which <= 57) || (event.which == 8 ) || (event.which == 46 )  || (event.which==0)) {
   return;
  } else {
   return false;
  }
  } else {
   if ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode == 8 ) || (event.keyCode == 46 )) {
    return;
   } else {
    return false;
  }
 }
}

function clearValue(field){
 if (field.defaultValue == field.value) field.value = '';
 else if (field.value == '') field.value = field.defaultValue;
}

function chkOfferValue() {
 $('offerValue').value = ''
 if ($F('offerIntent') == 'Donation' || $F('offerIntent') == '') {
  $('offerValue').disable()
 } else {
  $('offerValue').enable()
 }
}

function chkRegOrgType(orgType) {
 if (orgType == 'r') {
  $('boxReg1').show()
  $('boxReg2').hide()
 } else {
  $('boxReg2').show()
  $('boxReg1').hide()
 }
}

function chkFormRegister(regType) {
 errMsg = ''
 if (regType == 'o') {
  orgName = $('orgName')
  firstName = $('firstName')
  lastName = $('lastName')
  address1 = $('address1')
  postalCode = $('postalCode')
  stateId = $('stateId')
  districtId = $('districtId')
  email = $('email')
  pwd = $('pwd')
  pwdRetype = $('pwdRetype')
  phone = $('phone')
  if (orgName.value.strip() == "") errMsg += "&nbsp;- Please enter Organization name<br>";
  if ((firstName.value == "First Name") || (firstName.value.strip() == "")) errMsg += "&nbsp;- Please enter First name<br>"
  if ((lastName.value == "Last Name") || (lastName.value.strip() == "")) errMsg += "&nbsp;- Please enter Last name<br>"
  if ((address1.value == "Street Line 1") || (address1.value.strip() == "")) errMsg += "&nbsp;- Please enter Address Line 1<br>"
  if ((postalCode.value == "Postal Code") || (postalCode.value.strip() == "")) errMsg += "&nbsp;- Please enter Postal Code<br>"
  if (stateId.value == "") errMsg += "&nbsp;- Please select State<br>";
  if (districtId.value == "") errMsg += "&nbsp;- Please select District<br>";
  var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
  if (!(chkFilter.test(email.value))) errMsg += "&nbsp;- Please enter a valid Email<br>"
  var chkFilter=/^[\S]+$/
  if ((pwd.value.length < 4) || (!(chkFilter.test(pwd.value)))) errMsg += "&nbsp;- Please enter minimum 4 characters as your password<br>"
  if (pwd.value != pwdRetype.value) errMsg += "&nbsp;- Passwords do not match<br>"
  if ((phone.value == "Landline") || (phone.value.strip() == "")) errMsg += "&nbsp;- Please enter Landline Phone number<br>"
 }

 if (regType == 'v') {
  firstName = $('firstName')
  lastName = $('lastName')
  age = $('age')
  address1 = $('address1')
  postalCode = $('postalCode')
  stateId = $('stateId')
  districtId = $('districtId')
  email = $('email')
  pwd = $('pwd')
  pwdRetype = $('pwdRetype')
  phone = $('phone')
  emerContactName = $('emerContactName')
  emerContactNum = $('emerContactNum')
  if ((firstName.value == "First Name") || (firstName.value.strip() == "")) errMsg += "&nbsp;- Please enter First name<br>"
  if ((lastName.value == "Last Name") || (lastName.value.strip() == "")) errMsg += "&nbsp;- Please enter Last name<br>"
  if (age.value.strip() == "") {
   errMsg += "&nbsp;- Please enter Age<br>"
  } else if ((age.value) < 18) {
    errMsg += "&nbsp;- Minimum Age is 18 to register as Volunteer on the CDRN<br>"
  }
  if ((address1.value == "Street Line 1") || (address1.value.strip() == "")) errMsg += "&nbsp;- Please enter Address Line 1<br>"
  if ((postalCode.value == "Postal Code") || (postalCode.value.strip() == "")) errMsg += "&nbsp;- Please enter Postal Code<br>"
  if (stateId.value == "") errMsg += "&nbsp;- Please select State<br>";
  if (districtId.value == "") errMsg += "&nbsp;- Please select District<br>";
  var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
  if (!(chkFilter.test(email.value))) errMsg += "&nbsp;- Please enter a valid Email<br>"
  var chkFilter=/^[\S]+$/
  if ((pwd.value.length < 4) || (!(chkFilter.test(pwd.value)))) errMsg += "&nbsp;- Please enter minimum 4 characters as your password<br>"
  if (pwd.value != pwdRetype.value) errMsg += "&nbsp;- Passwords do not match<br>"
  if ((phone.value == "Landline") || (phone.value.strip() == "")) errMsg += "&nbsp;- Please enter Landline Phone number<br>"
  if (emerContactName.value.strip() == "") errMsg += "&nbsp;- Please enter Emergency Contact Person<br>"
  if (emerContactNum.value.strip() == "") errMsg += "&nbsp;- Please enter Emergency Contact Number<br>"
 }

 if (errMsg == '') {
  new Ajax.Updater('boxEmailChk', 'process/chk.email.asp', {method: 'post', parameters: {email: email.value}, onComplete:
   function() {
    if ($('boxEmailChk').innerHTML == '') {
     $('formRegister').submit();
    } else {
     $('boxError').innerHTML = 'Following errors were detected in the form. Please correct them before trying again.<br>&nbsp;- This email address is already registered.'
     $('boxError').show();
     $('boxError').scrollTo();
    }
   }
  })
 } else {
  $('boxError').innerHTML = 'Following errors were detected in the form. Please correct them before trying again.<br>' + errMsg;
  $('boxError').show();
  $('boxError').scrollTo();
 }
 return false;
}

function chkFormLoginHeader() {
 login = $('loginHeader')
 pwd = $('pwdHeader')

 var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
 if (!(chkFilter.test(login.value))) {
  alert("Please enter your Registered Email ID");
  login.focus();
  return false;
 }

 if (pwd.value == "") {
  alert("Please enter your Password");
  pwd.focus();
  return false;
 }
 new Ajax.Updater('boxLoginHeader', 'process/get.login.asp', {method: 'post', evalScripts: true, parameters: $('formLoginHeader').serialize()})
 return false;
}

function chkFormLogin() {
 login = $('login')
 pwd = $('pwd')

 var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
 if (!(chkFilter.test(login.value))) {
  alert("Please enter your Registered Email ID");
  login.focus();
  return false;
 }

 if (pwd.value == "") {
  alert("Please enter your Password");
  pwd.focus();
  return false;
 }
 new Ajax.Updater('boxLogin', 'process/get.login.asp', {method: 'post', evalScripts: true, parameters: $('formLogin').serialize()})
 return false;
}

function srchList(typ,pageNum) {
 if (pageNum == '') pageNum = 1
 $('boxSearchResults').innerHTML = $('boxWait').innerHTML;
 new Ajax.Updater('boxSearchResults', 'process/search.asp', {method: 'post', evalScripts: true, parameters: $('formSrch').serialize() + '&typ=' + typ + '&pageNum=' + pageNum})
}

function chkFormPost() {
 errMsg = ''
 var chkFilter=/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
 title = $('title')
 orgName = $('orgName')
 email = $('email')
 contactInfo = $('contactInfo')
 if (title.value.strip() == "") errMsg += "&nbsp;- Please enter Title<br>";
 if (orgName.value.strip() == "") errMsg += "&nbsp;- Please enter Organization name<br>";
 if (CKEDITOR.instances.descript.getData() == '') errMsg += "&nbsp;- Please select Description<br>";
 if (!(chkFilter.test(email.value))) errMsg += "&nbsp;- Please enter a valid Email<br>";
 if (contactInfo.value == "") errMsg += "&nbsp;- Please select Contact Info<br>";
 if (errMsg == '') {
  $('formPost').submit();
 } else {
  $('boxError').innerHTML = 'Following errors were detected in the form. Please correct them before trying again.<br>' + errMsg;
  $('boxError').show();
  $('boxError').scrollTo();
 }
 return false;
}

function BreakItUp() {
 //Set the limit for field size.
 var FormLimit = 102399

 //Get the value of the large input object.
 var TempVar = new String
 TempVar = $('descript').value

 //If the length of the object is greater than the limit, break it
 //into multiple objects.
 if (TempVar.length > FormLimit) {
  $('descript').value = TempVar.substr(0, FormLimit)
  TempVar = TempVar.substr(FormLimit)

  while (TempVar.length > 0) {
   var objTEXTAREA = document.createElement("TEXTAREA")
   objTEXTAREA.name = "descript"
   objTEXTAREA.value = TempVar.substr(0, FormLimit)
   document.formPost.appendChild(objTEXTAREA)
   TempVar = TempVar.substr(FormLimit)
  }
 }
}

function goPost(pageNum) {
 if (pageNum == '') pageNum = 1
 window.location = 'show.posts.asp?pageNum=' + pageNum;
}
