/home/mip/public_html_/old_mip/func-data.php
<?
// This function is an email validation however,this only works completely in non_windows platform
function validate_email($Email){
// Set the form error check to false
$form_errors = array();

//E-Mail address verifications
  // Make Email a required field
  $Email = trim($Email);
    if ($Email == "") {
      $form_errors["required_Email"] = true;
    }
    elseif (!eregi("^([a-zA-Z0-9._-])+@([a-zA-Z0-9._-])+\.([a-zA-Z0-9._-])([a-zA-Z0-9._-])+", $Email)) {
      $form_errors["Email_badformat"] = true;
    }
    // Attempt to resolve the MX host
    else {
      list($user, $domain) = split("@", $Email, 2);
      if (! checkdnsrr($domain, "MX")) {
        $form_errors["Email_badhost"] = true;
      }
    }

// Check if there are any errors
if (count($form_errors)) {
  // If the user left the e-mail field blank
  if ($form_errors["required_Email"]) {
    echo("<font color=\"#ff0000\"><b>Your E-mail Address is required.</b></font>");
  }
  // If the format of the e-mail address is incorrect
  elseif ($form_errors["Email_badformat"]) {
    echo("<font color=\"#ff0000\"><b>Please enter a valid e-mail address.</b></font>");
  }
  // If the mail server of the address the user provided could not be contacted
  elseif ($form_errors["Email_badhost"]) {
    echo("<font color=\"#ff0000\"><b>Your E-mail address did not resolve to a working e-mail server.<br> Please enter a valid e-mail address.</b></font>");
  }
}

}

/************************************************************************ 
  * This function checks the format of an email address. There are five levels of 
  * checking: 
  * 
  * 1 - Basic format checking. Ensures that: 
  *     There is an @ sign with something on the left and something on the right 
  *     To the right of the @ sign, there's at least one dot, with something to the left and right. 
  *     To the right of the last dot is either 2 or 3 letters, or the special case "arpa" 
  * 2 - The above, plus the letters to the right of the last dot are: 
  *     com, net, org, edu, mil, gov, int, arpa or one of the two-letter country codes 
  * 3 - The above, plus attempts to check if there is an MX (Mail eXchange) record for the 
  *     domain name. 
  * 4 - The above, plus attempt to connect to the mail server 
  * 5 - The above, plus check to see if there is a response from the mail server. The third 
  *     argument to this function is optional, and sets the number of times to loop while 
  *     waiting for a response from the mail server. The default is 15000. The actual waiting 
  *     time, of course, depends on such things as the speed of your server. 
  * 
  * Level 1 is bulletproof: if the address fails this level, it's bad. Level 2 is still 
  * pretty solid, but less certain: there could be valid TLDs overlooked when writing 
  * this function, or new ones could be added. Level 3 is even less certain: there are 
  * a number of things that could prevent finding an MX record for a valid address 
  * at any given time. 4 and 5 are even less certain still. Ultimately, the only absolutely 
  * positive way to test an email address is to send something to it. 
  * 
  * The function returns 0 for a valid address, or the level at which it failed, for an 
  * invalid address. 
  * 
  ************************************************************************/ 

  function MailVal($Addr, $Level, $Timeout = 15000) { 

//  Valid Top-Level Domains 
    $gTLDs = "com:net:org:edu:gov:mil:int:arpa:"; 
    $CCs   = "ad:ae:af:ag:ai:al:am:an:ao:aq:ar:as:at:au:aw:az:ba:bb:bd:be:bf:". 
             "bg:bh:bi:bj:bm:bn:bo:br:bs:bt:bv:bw:by:bz:ca:cc:cf:cd:cg:ch:ci:". 
             "ck:cl:cm:cn:co:cr:cs:cu:cv:cx:cy:cz:de:dj:dk:dm:do:dz:ec:ee:eg:". 
             "eh:er:es:et:fi:fj:fk:fm:fo:fr:fx:ga:gb:gd:ge:gf:gh:gi:gl:gm:gn:". 
             "gp:gq:gr:gs:gt:gu:gw:gy:hk:hm:hn:hr:ht:hu:id:ie:il:in:io:iq:ir:". 
             "is:it:jm:jo:jp:ke:kg:kh:ki:km:kn:kp:kr:kw:ky:kz:la:lb:lc:li:lk:". 
             "lr:ls:lt:lu:lv:ly:ma:mc:md:mg:mh:mk:ml:mm:mn:mo:mp:mq:mr:ms:mt:". 
             "mu:mv:mw:mx:my:mz:na:nc:ne:nf:ng:ni:nl:no:np:nr:nt:nu:nz:om:pa:". 
             "pe:pf:pg:ph:pk:pl:pm:pn:pr:pt:pw:py:qa:re:ro:ru:rw:sa:sb:sc:sd:". 
             "se:sg:sh:si:sj:sk:sl:sm:sn:so:sr:st:su:sv:sy:sz:tc:td:tf:tg:th:". 
             "tj:tk:tm:tn:to:tp:tr:tt:tv:tw:tz:ua:ug:uk:um:us:uy:uz:va:vc:ve:". 
             "vg:vi:vn:vu:wf:ws:ye:yt:yu:za:zm:zr:zw:"; 

//  The countries can have their own 'TLDs', e.g. mydomain.com.au 
    $cTLDs = "com:net:org:edu:gov:mil:co:ne:or:ed:go:mi:"; 

    $fail = 0; 

//  Shift the address to lowercase to simplify checking 
    $Addr = strtolower($Addr); 

//  Split the Address into user and domain parts 
    $UD = explode("@", $Addr); 
    if (sizeof($UD) != 2 || !$UD[0]) $fail = 1; 

//  Split the domain part into its Levels 
    $Levels = explode(".", $UD[1]); $sLevels = sizeof($Levels); 
    if ($sLevels < 2) $fail = 1; 

//  Get the TLD, strip off trailing ] } ) > and check the length 
    $tld = $Levels[$sLevels-1]; 
    $tld = ereg_replace("[>)}]$|]$", "", $tld); 
    if (strlen($tld) < 2 || strlen($tld) > 3 && $tld != "arpa") $fail = 1; 

    $Level--; 

//  If the string after the last dot isn't in the generic TLDs or country codes, it's invalid. 
    if ($Level && !$fail) { 
    $Level--; 
    if (!ereg($tld.":", $gTLDs) && !ereg($tld.":", $CCs)) $fail = 2; 
    } 

//  If it's a country code, check for a country TLD; add on the domain name. 
    if ($Level && !$fail) { 
    $cd = $sLevels - 2; $domain = $Levels[$cd].".".$tld; 
    if (ereg($Levels[$cd].":", $cTLDs)) { $cd--; $domain = $Levels[$cd].".".$domain; } 
    } 

//  See if there's an MX record for the domain 
    if ($Level && !$fail) { 
    $Level--; 
    if (!getmxrr($domain, $mxhosts, $weight)) $fail = 3; 
    } 

//  Attempt to connect to port 25 on an MX host 
    if ($Level && !$fail) { 
    $Level--; 
    while (!$sh && list($nul, $mxhost) = each($mxhosts)) 
      $sh = fsockopen($mxhost, 25); 
    if (!$sh) $fail = 4; 
    } 

//  See if anyone answers 
    if ($Level && !$fail) { 
    $Level--; 
    set_socket_blocking($sh, false); 
    $out = ""; $t = 0; 
    while ($t++ < $Timeout && !$out) 
      $out = fgets($sh, 256); 
    if (!ereg("^220", $out)) $fail = 5; 
    } 

    if ($sh) fclose($sh); 

    return $fail; 
  } //MailVal
 

function valid_email($address)
{
  // check an email address is possibly valid
  if (ereg("^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$", $address))
    return true;
  else 
    return false;
}

 function JS_CheckRequired($myform,$textarray,$displayname="0",$email="0",$email2="0"){
 					if($displayname=="0")$displayname=$textarray;

?>
      
      <SCRIPT LANGUAGE="JavaScript1.2">
      function PHP_hasValue(obj, obj_type)
          {
          if (obj_type == "TEXT" || obj_type == "PASSWORD" || obj_type == "RADIO")	{
          	if (obj.value.length == 0)
            		return false;
          	else 
            		return true;   	
      					}
      	}
      function CheckRequired(){
      	
      	<?		for ($i=0;$i< count($textarray);$i++){  ?>
                if  (!PHP_hasValue(<?echo$myform?>.<?echo$textarray[$i]?>, "TEXT" )){
      									alert("Notice: <?echo$displayname[$i]?> is a required field.");
        								<?echo$myform?>.<?echo$textarray[$i]?>.focus();
                        return false;
      									}		
      									
        <?	}		?>
				<?if(!$email=="0"){?>
									if (isEmail(<?echo$myform?>.<?echo$email?>.value) == false) {
                      alert("Please enter your valid email address.");
                      <?echo$myform?>.<?echo$email?>.focus();
                      return false;
          }			
				<?}?>      				
				<?if(!$email2=="0"){?>
									if (isEmail(<?echo$myform?>.<?echo$email2?>.value) == false) {
                      alert("Please enter your friend's valid email address.");
                      <?echo$myform?>.<?echo$email2?>.focus();
                      return false;
          }			
				<?}?>
                return true;
      }
      	
      </script>
			
			
      <script type="text/javascript" language="JavaScript1.2"><!--
      function isEmail(string) {
          if (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
              return true;
          else
              return false;
      }      
      //--></script>
<?}





 function JS_CheckDate($myform,$m,$d,$y){
?>
      <script language="JavaScript"><!--
          function y2k(number) { return (number < 1000) ? number + 1900 : number; }

          function isDate (day,month,year) {
          // checks if date passed is valid
          // will accept dates in following format:
          // isDate(dd,mm,ccyy), or
          // isDate(dd,mm) - which defaults to the current year, or
          // isDate(dd) - which defaults to the current month and year.
          // Note, if passed the month must be between 1 and 12, and the
          // year in ccyy format.
              var today = new Date();
              year = ((!year) ? y2k(today.getYear()):year);
              month = ((!month) ? today.getMonth():month-1);
              if (!day) return false
              var test = new Date(year,month,day);
              if ( (y2k(test.getYear()) == year) &&
                   (month == test.getMonth()) &&
                   (day == test.getDate()) )
					alert(day + month + year);
                  return true;
              else
                  return false
          }
          
					//--></script>		
			
			
      <SCRIPT LANGUAGE="JavaScript1.2">
      function CheckDate(){
			      				      	
      	<?		for ($i=0;$i< count($d);$i++){  ?>
                if  (isDate(<?=$myform?>.<?=$d[$i]?>.value,<?=$myform?>.<?=$m[$i]?>.value,<?=$myform?>.<?=$y[$i]?>.value)){
      									alert("Notice: Invalid Date :"+addprincipal.Month1.value+"/"+addprincipal.Day1.value+"/"+addprincipal.Year1.value);
                        return false;
      									}		
      									
          <?	}		?>
      				
                return true;
      }
      	
      </script>
<?
}
?>
<SCRIPT LANGUAGE="javascript">

   		function copy()

   		{

			document.thisonly.address2.value = document.thisonly.address1.value;

			document.thisonly.city_town2.value = document.thisonly.city_town1.value;
      
			document.thisonly.postal_code2.value = document.thisonly.postal_code1.value;
			
			document.thisonly.region_id2.value = document.thisonly.region_id1.value;
			
			}


			function view_resume(m) {
			var m
			window.open ('report_applicant.php?m=+m+', 'view_resume', 
			config='height=565, width=500, toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=yes, directories=no, status=no, copyhistory=no')

			}

</SCRIPT> 
<?
function JS_Style($myform,$field){
?>
<SCRIPT LANGUAGE="javascript">
function stylemethod (style) 
  {         
			
       var x = prompt ("Enter your text for the style:" + style, "")
        
       if (x){
                
							if (style == "bold") { x = x.bold() }     
     	        if (style == "italics") { x = x.italics() }
     	        if (style == "strike") { x = x.strike() }
     	        if (style == "fixed") { x = x.fixed() }
	        		if (style == "sub") { x = x.sub() }
     	        if (style == "sup") { x = x.sup() }
              if (style == "bullet") { x = "<li>"+x+"" } 
							
							<?echo$myform?>.<?echo$field?>.value=<?echo$myform?>.<?echo$field?>.value + x + " "
             // document.forms["job"].elements["job_desc"].value=document.forms["job"].elements["job_desc"].value + x + " "
							<?echo$myform?>.<?echo$field?>.focus();
       }

}
// no more hiding -->
</SCRIPT>
<?
}
?>

<SCRIPT LANGUAGE="javascript">
function  js_poll(thispoll)
{

  window.open('report_pollsurvey.php','newwinpoll','width=350,height=350,menubar=no,scrollbars=no,status=no');
  return true;

}
</script>