function getCookieVal (offset)

{

  var endstr = document.cookie.indexOf (';', offset);

      if (endstr == -1)

      {

          endstr = document.cookie.length;

      }

  return unescape(document.cookie.substring(offset, endstr));

}



function FixCookieDate (date) {

  var base = new Date(0);

  var skew = base.getTime(); // dawn of (Unix) time - should be 0

  if (skew > 0)

  {

      date.setTime (date.getTime() - skew);

  }

}



function GetCookie (name) {

  var arg = name + '=';

  var alen = arg.length;

  var clen = document.cookie.length;

  var i = 0;

  while (i < clen)

  {

      var j = i + alen;

      if (document.cookie.substring(i, j) == arg)

      {

          return getCookieVal (j);

      }

      i = document.cookie.indexOf(' ', i) + 1;

      if (i == 0)

      {

          break;

      }

  }

  return null;

}



function SetCookie (name,value,expires,path,domain,secure)

{

  document.cookie = name + '=' + escape (value) + ((expires) ? '; expires=' + expires.toGMTString() : '') + ((path) ? '; path=' + path : '') + ((domain) ? '; domain=' + domain : '') + ((secure) ? '; secure' : '');

}



function DeleteCookie (name,path,domain)

{

  if (GetCookie(name))

  {

      document.cookie = name + '=' + ((path) ? '; path=' + path : '') + ((domain) ? '; domain=' + domain : '') + '; expires=Thu, 01-Jan-70 00:00:01 GMT';

  }

}



function cookieValue(tag)



{



  var value = null;

  var myCookie = document.cookie +";";

  var findTag = tag + "=";

  var endPos;



  if (myCookie.length > 0)

  {

     var beginPos = myCookie.indexOf(findTag);

     if (beginPos != -1)

       {

          beginPos = beginPos + findTag.length;

          endPos = myCookie.indexOf(";", beginPos);

          if (endPos == -1)

            endPos = myCookie.length;

          value = unescape(myCookie.substring(beginPos, endPos));

       }

  }

  return value;

}



function link(myType)
{
  if (GetCookie('mktad'))
  {
      document.Form1.adkey.value = cookieValue('mktad');
  }
  else
  {
      document.Form1.adkey.value = '       ';
  }
  document.Form1.type.value = myType;
    if (myType == 2)
  { 
      document.Form1.action = 'https://enroll.pennfoster.com/eng/personal_info.aspx';
  }
  else if (myType == 1)
    { 
	  document.Form1.action = 'http://enroll.pennfoster.com/eng/personal_info.aspx';
    }
  else if (myType == 4)
  {
  	  document.Form1.action = 'http://shop.pennfoster.com/Default.aspx';
  }
document.Form1.submit();
  return false;
}





function redirect(redirectLink)
{
  var adkeyValue = 'RSCS1ZT';
  if (GetCookie('mktad'))
  {
     adkeyValue = cookieValue('mktad');
  }
  var fullLink = redirectLink + '&adkey=' + adkeyValue;
  location.href = fullLink;
  return false;
}

function redirectPennFoster(redirectLink)
{
 
 var srchindx = 0;
  while (srchindx != -1)
    {
    	srchindx = redirectLink.search("&");
  		if (srchindx != -1)
  			{
  				redirectLink = redirectLink.replace("&","%26");
  			}
  }
 
 var adkeyValue = 'RSCS1ZT';
  if (GetCookie('mktad'))
  {
     adkeyValue = cookieValue('mktad');
  }
  var fullLink = 'http://www.pennfoster.edu/urm.php?source=' + adkeyValue + '&url=' + redirectLink;
  location.href = fullLink;
  return false;
}




function redirectCollege(domain, redirectLink)
{
  var setDomain = 'www.pennfoster.edu';
  if (domain == 1)
  {
  	setDomain = 'www.pennfostercollege.edu';  
  }
  else if (domain == 2)
  {
  	setDomain = 'www.pennfostercollegeintl.com';
  }
  else if (domain == 3)
  {
  	setDomain = 'www.pennfostercollegeonline.com';
  }
  else if (domain == 4)
  {
  	setDomain = 'www.pennfosteronline.com';
  }
  else if (domain == 5)
  {
  	setDomain = 'www.pennfoster.edu';
  }
  var adkeyValue = 'RAAS1ZT';
  if (GetCookie('mktad'))
  {
     adkeyValue = cookieValue('mktad');
  }
  
  var fullLink = 'http://' + setDomain + '/urm.php?source=' + adkeyValue + '&url=' + redirectLink;
  location.href = fullLink;
  return false;
}












/* ------------------ Start Country Dropdown adkey tracking ----------------------*/

function openDir(form) {
if ( form.dir.options[form.dir.selectedIndex].value.indexOf('http://www.icslearn.ca/') >= 0)
{
  if (GetCookie('mktad'))
  {
     var adkeyValue = cookieValue('mktad');
  	 var fullLink = 'http://www.icslearn.ca/urm.php?source=' + adkeyValue + '&url=' + form.dir.options[form.dir.selectedIndex].value ;
     location.href = fullLink;
  	 return false;
  }
}

else if (form.dir.options[form.dir.selectedIndex].value.indexOf('http://www.pennfoster.edu/') >= 0)
{
  if (GetCookie('mktad'))
  {
     var adkeyValue = cookieValue('mktad');
     var fullLink = 'http://www.pennfoster.edu/urm.php?source=' + adkeyValue + '&url=' + form.dir.options[form.dir.selectedIndex].value;
     location.href = fullLink;
  	 return false;
  }


}

else if (form.dir.options[form.dir.selectedIndex].value.indexOf('http://www.pennfosterglobal.com/') >= 0)
{
  if (GetCookie('mktad'))
  {
     var adkeyValue = cookieValue('mktad');
  	 var fullLink = 'http://www.pennfosterglobal.com/urm.php?source=' + adkeyValue + '&url=' + form.dir.options[form.dir.selectedIndex].value;
  	 location.href = fullLink;
  	 return false;
  }
}
window.location =(form.dir.options[form.dir.selectedIndex].value);
}

/* ------------------ End Country Dropdown adkey tracking ----------------------*/


/* Start Michelle's Form Validation */

function nospchar(field)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (!is_ie){
		var temp = field.value.replace(/[^0-9 A-Za-z]/g, "");	
		field.value = temp;
		return true;
	}
	else {
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9 A-Za-z]/g, "");			
			field.value = temp;
			return true;
		}
	}
}

function nospchar2(field)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (!is_ie){
		var temp = field.value.replace(/[^0-9 A-Za-z \# \\ \/ \( \) \, \. \[ \{ \] \}\; \: \& \- \_]/g, "");	
		field.value = temp;
		return true;
	}
	else {
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9 A-Za-z \# \\ \/ \( \) \, \. \[ \{ \] \}\; \: \& \- \_]/g, "");			
			field.value = temp;
			return true;
		}
	}
}

function formatPhoneUS(field)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (!is_ie){
		var temp = field.value.replace(/[^0-9]/g, "");
		var cursor = temp.length;

		temp = temp.replace(/^(\d{0,3})(\d{0,3})(\d{0,4})(\d*)/, "($1)$2-$3 x $4");

		if (cursor < 11)
				temp = temp.replace(/\s*x\s*$/, "");
		if (cursor < 7)
				temp = temp.replace(/\-\s*$/, "");
		if (cursor < 3)
				temp = temp.replace(/\)\s*$/, "");
		if (! cursor)
				temp = "";
		if (temp.length > 13)
				temp = temp.substring(0,13);

		field.value = temp;
		return true;
	}
	else {
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9]/g, "");
			var cursor = temp.length;

			temp = temp.replace(/^(\d{0,3})(\d{0,3})(\d{0,4})(\d*)/, "($1)$2-$3 x $4");

			if (cursor < 11)
					temp = temp.replace(/\s*x\s*$/, "");
			if (cursor < 7)
					temp = temp.replace(/\-\s*$/, "");
			if (cursor < 3)
					temp = temp.replace(/\)\s*$/, "");
			if (! cursor)
					temp = "";
			if (temp.length > 13)
					temp = temp.substring(0,13);

			field.value = temp;
			return true;
		}
	}
}

function formatZipUS(field)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (is_ie){
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9]/g, "");
			var cursor = temp.length;

			temp = temp.replace(/^(\d{0,5})(\d*)/, "$1-$2");

			if (cursor < 6)
					temp = temp.replace(/\-\s*$/, "");
			if (! cursor)
					temp = "";

			if (temp.length > 5)
					temp = temp.substring(0,5);

			field.value = temp;
			return true;
		}
	}
	else {
		var temp = field.value.replace(/[^0-9]/g, "");
		var cursor = temp.length;

		temp = temp.replace(/^(\d{0,5})(\d*)/, "$1-$2");

		if (cursor < 6)
				temp = temp.replace(/\-\s*$/, "");
		if (! cursor)
				temp = "";

		if (temp.length > 5)
				temp = temp.substring(0,5);

		field.value = temp;
		return true;
	}
}
		
function formatCity(field,objEvent)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);
	var iKeyCode, strKey;

	if (is_ie) {
	iKeyCode = objEvent.keyCode;
	} else {
	iKeyCode = objEvent.which;
	}

	if (iKeyCode == 36) {
		field.value = "";
	}

	if (is_ie){
		if (iKeyCode != 9 && iKeyCode != 16){
			var temp = field.value.replace(/[^A-Z, a-z]/g, "");
			var cursor = temp.length;
			field.value = temp;
			return true;
		}
	}
	else {
		var temp = field.value.replace(/[^A-Z, a-z]/g, "");
		var cursor = temp.length;
		field.value = temp;
		return true;
	}
}

function formatZipCA(field)
{			
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (is_ie) {
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9A-Za-z]/g, "");
			var cursor = temp.length;
			var entry = temp.substring(cursor-1,cursor);
			if (cursor/2 == Math.floor(cursor/2)) {
				entry = entry.replace(/[^0-9]/g, "");
				}
			else {
				entry = entry.replace(/[^A-Za-z]/g, "");
				}
			temp = temp.substring(0,cursor-1) + entry;
			cursor = temp.length;
			if (cursor < 3) {
					temp = temp;
					}
			else {
					temp = temp.substring(0,3) + ' ' + temp.substring(3,cursor);
					}
			if (! cursor)
					temp = "";
			if (temp.length > 7)
					temp = temp.substring(0,7);
			field.value = temp.toUpperCase();
			return true;
		}
	}
	else {
		var temp = field.value.replace(/[^0-9A-Za-z]/g, "");
		var cursor = temp.length;
		var entry = temp.substring(cursor-1,cursor);
		if (cursor/2 == Math.floor(cursor/2)) {
			entry = entry.replace(/[^0-9]/g, "");
			}
		else {
			entry = entry.replace(/[^A-Za-z]/g, "");
			}
		temp = temp.substring(0,cursor-1) + entry;
		cursor = temp.length;
		if (cursor < 3) {
				temp = temp;
				}
		else {
				temp = temp.substring(0,3) + ' ' + temp.substring(3,cursor);
				}
		if (! cursor)
				temp = "";
		if (temp.length > 7)
				temp = temp.substring(0,7);
		field.value = temp.toUpperCase();
		return true;
	}
}

function formatPhone(field)
{
	var agt=navigator.userAgent.toLowerCase();
	var is_ie   = (agt.indexOf("msie") != -1);

	if (is_ie) {
		if (window.event.keyCode != 9 && window.event.keyCode != 16){
			var temp = field.value.replace(/[^0-9\s\(\)\-]/g, "");
			field.value = temp;
			return true;
		}
	}
	else {
		var temp = field.value.replace(/[^0-9\s\(\)\-]/g, "");
		field.value = temp;
		return true;
	}
}

/* End Michelle's Form Valication */
