var sUSUserName = "User Name" ;
var sUSPassWord  = "Pass Word" ;
var sUSPassWord1 = "Retype Pass Word" ;
var sUSFirstName = "First Name" ;
var sUSLastName = "Last Name" ;
var sTitle = "Title" ;
var sCompanyName = "Company Name" ;
var sUSAddress = "Address" ;
var sCity = "City" ;
var sStateCode = "State Code";
var sCountry = "Country" ;
var sZIPCode = "ZIP Code" ;
var sPhone = "Phone Number" ;
var sFax = "Fax Number" ;
var sEmail = "Email" ;
var sPositive = "Positive Number";
var sSSN = "Social Security Number"
var SSNDelimiters = "- ";
var digits = "0123456789";
var validSSNChars = digits + SSNDelimiters;
var iSSN = " This field must be a 9 digit U.S. social security number (like 123 45 6789). Please re-enter it now."
var digitsInSocialSecurityNumber = 9;
var pSSN = "9 digit U.S. social security number (like 123 45 6789)."

var pEntryPrompt = "Please enter a " ;
var pStateCode = "2 character code (like CA).";
var pZIPCode = "5 digit U.S. ZIP Code (like 94043).";
var pUSPhone = "10 digit U.S. phone number" ;
var pEmail = "valid email address (like name@domain.com)." ;
var errState = false ;
var defaultEmptyOK = false ;


var mPrefix = "You did not enter a value into the "; 
var mSuffix = " field. This is a required field. Please enter it now." ;
var whitespace = " \t\n\r" ;
var iEmail = " must be a valid email address (like name@domain.com). Please re-enter it now."
var iUSPhone = " must be a 10 digit U.S. phone number (like 123-456-7890). Please re-enter.";
var phoneNumberDelimiters = "()- ";
var iZipCode=" Zip field must be a 5 digit U.S. ZIP Code (like 94043). Please re-enter.";
var serverZone=5 // Eastern:5; Central:6; Mountain:7; Western:8; 


function getServerTime() {
	theDate=new Date();
	theDate=theDate.toGMTString();
	theDate=theDate.substring(17,25);
	theHours=theDate.substring(0,2);
	if(theHours.substring(1,2)==":") {
		theHours=theHours.substring(0,1);
	}
	theHours=Math.abs(theHours-serverZone);
	if(theHours>11) {
		theAP="p.m.";
	}
	else {
		theAP="a.m.";
	}
	if(theHours>12) {
		theHours=Math.abs(theHours-12);
	}
	otherTime=theDate.substring(2,8);
	serverTime=(theHours+otherTime+" "+theAP);
	document.clock.face.value=serverTime;
	setTimeout("getServerTime()",1000);
}


function isLetter (c)
{   return ( ((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) )
}

function isDigit (c)
{   return ((c >= "0") && (c <= "9"))
}

function isLetterOrDigit (c)
{   return (isLetter(c) || isDigit(c))
}

function ltrim(argvalue) {

  while (1) {
    if (argvalue.substring(0, 1) != " ")
      break;
    argvalue = argvalue.substring(1, argvalue.length);
  }

  return argvalue;
}

function rtrim(argvalue) {

  while (1) {
    if (argvalue.substring(argvalue.length - 1, argvalue.length) != " ")
      break;
    argvalue = argvalue.substring(0, argvalue.length - 1);
  }

  return argvalue;
}

function trim(argvalue) {
  var tmpstr = ltrim(argvalue);

  return rtrim(tmpstr);

}

function isEmpty(s)
{ 
	
	return ((s == null) || (s.length == 0));
    
}





function isWhitespace (s) {   
   var i;
   if (isEmpty(s)) return true;

   for (i = 0; i < s.length; i++) {   
      var c = s.charAt(i);
      if (whitespace.indexOf(c) == -1) return false;
   }
   return true;
}


function isInteger (s)

{   var i;
 //    stat = true ;
  
    for (i = 0; i < s.length; i++)
    {   // Check that current character is number.
        var c = s.charAt(i);
        if  ((c < "0") || (c > "9"))
           // stat = false ;
          return false ;
        
     }
     return true ;
}

function isPositiveInt(Fld)
 {
   if (isNaN(Fld.value))
      { alert("Please enter only Numeric Value") ;
        Fld.focus() ;
        return false ;
       }
   else
     { if (Fld.value < 0)
        { alert("Please enter only Numeric Value") ;
          Fld.focus() ;  
          return false;
        }
       else
         return true;       
     }
 }      



function promptEntry (s)
{   window.status = pEntryPrompt + s
     return true;
}
function promptEmpty()
  { window.status=' ';
    true ;
}
function warnEmpty (theField, s)
{   alert(mPrefix + s + mSuffix);
	theField.focus();
	
    return false ;
}
function warnInvalid (theField, s)
{   alert(s)
	// theField.focus();
    
    return false ;
}

function stripCharsInBag (s, bag)

{   var i;
    var returnString = "";

    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.

    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }

    return returnString;
}

function reformat (s)

{   var arg;
    var sPos = 0;
    var resultString = "";

    for (var i = 1; i < reformat.arguments.length; i++) {
       arg = reformat.arguments[i];
       if (i % 2 == 1) resultString += arg;
       else {
           resultString += s.substring(sPos, sPos + arg);
           sPos += arg;
       }
    }
    return resultString;
}


function isSSN (s)
{   if (isEmpty(s)) 
       if (isSSN.arguments.length == 1) return false;
       else return (isSSN.arguments[1] == true);
    return (isInteger(s) && s.length == digitsInSocialSecurityNumber)
}
function reformatSSN (SSN)
{   return (reformat (SSN, "", 3, "-", 2, "-", 4))
}

function checkSSN (theField)
{   if ((isEmpty(theField.value))) return true;
    else
    {  var normalizedSSN = stripCharsInBag(theField.value, SSNDelimiters)
       //alert(normalizedSSN);
       if (!isSSN(normalizedSSN )) 
          return warnInvalid (theField, iSSN);
       else 
       {  // if you don't want to reformats as 123-456-7890, comment next line out
         // theField.value = reformatSSN(normalizedSSN)
          theField.value=normalizedSSN
          return true;
       }
    }
}

function checkUSPhone (theField, fldName)
{   
     var s = stripCharsInBag(theField.value, phoneNumberDelimiters)
     //s = theField.value ;
     // fldName = 'Pm Phone number '
       if (isEmpty(s)) 
          { alert("Phone number cannot be empty");
            return false ;
           }
	 else if ((s.length !=10) || (!isInteger(s)))
         {
		   warnInvalid(theField,fldName + iUSPhone);
		   return false;
		 }
       else 
       {  // if you don't want to reformat as (123) 456-789, comment next line out
         // theField.value = reformatUSPhone(s)
            theField.value = s ;
          return true ;
       }
    
} 



function reformatUSPhone (USPhone)
{   return (reformat (USPhone, "(", 3, ") ", 3, "-", 4))
}

// if empty allowed like fax etc.

function chkPHONE(Fld,fldName)
 {  
    if (isEmpty(Fld))
         return true ;
    else     
       { if  (!(checkUSPhone(Fld,fldName)))
           { // warnInvalid(Fld,iUSPhone);
             return false;
           }  
         else
           return true ;
       }
  }         

  
        
function warnNotMatch(theField)
  { alert("Both password fields must match");
    theField.focus();
    theField.select();
    return false ; 
  }
  
function checkEmail(myEmail,msg)
 { 
  
  myString = myEmail.value ;
  if (!isEmail(myString))
    { warnInvalid(myEmail,msg + iEmail);
      return  false ;
    } 
   else
       return  true ;
    
 }  

function isEmail(myString) 
{  
   var newString = myString.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..{2,2}))$)\b/gi);
   if (myString.indexOf('\'') > 0)
    return false;
   if (!newString) 
     return false ;
   else {
      return true ;
   }
}
 

    
//function isEmail (s)
//{   if (isEmpty(s) || isWhitespace(s)) return false;
  //  var i = 1;
  //  var sLength = s.value.length;
   // var s1 = s.value ;
   // while ((i < sLength) && (s1.charAt(i) != "@"))
   // { i++;
   // }
   // if ((i >= sLength) || (s1.charAt(i) != "@")) return false;
   // else i += 2;

  //  while ((i < sLength) && (s1.charAt(i) != "."))
  //  { i++
  //  }

   
  //  if ((i >= sLength - 1) || (s1.charAt(i) != ".")) return false;
 //   else return true;
//}


 
function validNameCheck(Fld,FldName)
{var vld = true ;
 for (i = 0; i < Fld.value.length; i++)
   {  
        var c = Fld.value.charAt(i);
              
        if ((i == 0) && (!(isLetter(c) )))
           vld = false ;
        else   
          if ((!(isLetterOrDigit(c))) &&  (c != "_"))
             vld = false ;
                   
    }
   if (vld==false)
      alert(FldName + " must begin with a letter and \nmay consist letters,numbers or underscore. ");
   return vld ;
 
 }
 
 function equalorNot(fld1, fld2)
  { 
   if (trim(fld1.value) != trim(fld2.value))
      return false ;
   else return true;
  }
 
 function validPassword(pwd,sUSPassword,pwd1)
 {  if (pwd.value != pwd1.value)																										
	     {  warnNotMatch(pwd)
	        return false ;
	      }  
	else 
	   { if (!(validUsername(pwd,sUSPassword)))
	        return false ;  
	     else 
   	   	    return true ;
   	    }   
       	
}  
function validUsername(Fld,FldName)
 {
  
  if (Fld.value.length < 5) 
    { alert (FldName + " must contain minmium 5 characters and \n must begin with an alphabet and \n may contain alphabets, digits and underscore only. ");
      return false ;
      }
  else
    return validNameCheck(Fld,FldName) ;
     
    
 }
 
function regisZipCode(s)
 {  alert("zip");
     if (isEmpty(s)) 
        return true;
     else
      { if  (isInteger(s.value) && (s.value.length == 5))
          return true ;
       else
         return warnInvalid(s,iZipCode);
          
      }
 } 
function checkZipCode(s)
 { 
     if (isEmpty(s)) 
        return true;
     else
      { if  (isInteger(s.value) && (s.value.length == 5))
          return true ;
       else
         return warnInvalid(s,iZipCode);
          
      }
 }
     
function checkrequired(which) {

var pass=true;
//if (document.images) {
for (i=0;i<which.length;i++) {
var tempobj=which.elements[i];
if (tempobj.name.substring(0,8)=="required") {
if (((tempobj.type=="text"||tempobj.type=="textarea" || tempobj.type=="password")&& trim(tempobj.value) =='')||(tempobj.type.toString().charAt(0)=="s"&&
tempobj.selectedIndex==0)) {
pass=false;
break;
        }
      }
   }
//}
if (!pass) {
shortFieldName=tempobj.name.substring(8,30).toUpperCase();
alert("Please make sure the "+shortFieldName+" field was properly completed.");
return false;
}
else
return true;
}


function regis_checkrequired(which) {
var errField = new Array() ;
errField["USERNAME"] = "User name" ;
errField["PASSWORD"] = "Password" ;
errField["FIRSTNAME"] = "First name" ;
errField["LASTNAME"] = "Last name" ;
errField["TITLE"] = "Title" ;
errField["ORGANIZATION"] = "Organization" ;
errField["STREETADDRESS"] = "Street Address" ;
errField["CITY"] = "City" ;
errField["STATE"] = "State" ;
errField["ZIP"] = "Zip" ; errField["PHONE"] = "Phone" ; errField["EMAIL"] = "E-mail" ; 
errField["TSCYCLEDATE"] ="Timesheet cycle date" ;
errField["TSCYCLETYPE"] = "Timesheet cycle type" ;
errField["NUMEMPL"] = "Number of employees" ;
var pass=true;
//if (document.images) {
for (i=0;i<which.length;i++) {
var tempobj=which.elements[i];
if (tempobj.name.substring(0,8)=="required") {
if (((tempobj.type=="text"||tempobj.type=="textarea" || tempobj.type=="password")&& trim(tempobj.value) =='')||(tempobj.type.toString().charAt(0)=="s"&&
tempobj.selectedIndex==0)) {
pass=false;
break;
        }
      }
   }
//}
if (!pass) {
shortFieldName=tempobj.name.substring(8,30).toUpperCase();
for (fld in errField)
 { if (fld == shortFieldName)
     alert("Please make sure the "+errField[fld]+" field was properly completed.");
  }
return false;
}
else
return true;
}




function isValidDate(dateStr)

   {
          // Checks for the following valid date formats:
          // MM/DD/YY   MM/DD/YYYY   MM-DD-YY   MM-DD-YYYY

         var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{4})$/; // requires 4 digit year

         var matchArray = dateStr.match(datePat); // is the format ok?
       if (matchArray == null)
        {
           alert(dateStr + " Date is not in a valid format.")
           return false;
         }
       month = matchArray[1]; // parse date into variables
       day = matchArray[3];
       year = matchArray[4];
       if (month < 1 || month > 12) 
        { // check month range
          alert("Month must be between 1 and 12.");
          return false;
        }
       if (day < 1 || day > 31)
        {
          alert("Day must be between 1 and 31.");
          return false;
        }
       if ((month==4 || month==6 || month==9 || month==11) && day==31) 
        {
           alert("Month "+month+" doesn't have 31 days!")
           return false;
        }
       if (month == 2)
         { // check for february 29th
           var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
           if (day>29 || (day==29 && !isleap))
            {
               alert("February " + year + " doesn't have " + day + " days!");
               return false;
            }
         }
      return true;
   }
   
   
function isCorrectDate(Dt)
 { if (isValidDate(Dt.value))
     return true ;
   else
     
     return false ;
 }
 
function notearlythan1970(d1)
{
   date1 = new Date("January 01, 1970");
   date2 = new Date(d1.value);
   //alert(date1.getDate() + " " + date1.getMonth() + " " + date1.getYear());
   var diff = date2.getTime() - date1.getTime()  ;
   // < 0 means before 1970 
   if (diff < 0) 
    { alert("Personnel start date cannot be eariler than January,1970. re-enter.");
      d1.focus() ;
      return false;
     } 
   else 
     return true;
} 
function checkdatesDiff(d1,d2)
 {
   date1 = new Date();
   date2 = new Date();
   diff  = new Date();
	
   
   if (isValidDate(d1.value))
    { // Validates first date 
      date1temp = new Date(d1.value);
      date1.setTime(date1temp.getTime());
    }
   else 
     return false; // otherwise exits

   if (isValidDate(d2.value))
     { // Validates second date 
       date2temp = new Date(d2.value);
       date2.setTime(date2temp.getTime());
      }
   else 
     return false; // otherwise exits

// sets difference date to difference of first date and second date



//diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

   var diff = date1.getTime() - date2.getTime()  ;
   
   if (diff >= 0)  
      return true ;                  // posi
   else
    { alert("Finish date must be a later than start date. re-enter.");
      //d1.focus();
      return false;    // nega
    }
  
}  


function returndatesDiff(d1,d2)
 {
   date1 = new Date();
   date2 = new Date();
   diff  = new Date();
	
   
   if (isValidDate(d1.value))
    { // Validates first date 
      date1temp = new Date(d1.value);
      date1.setTime(date1temp.getTime());
    }
   else 
     return false; // otherwise exits

   if (isValidDate(d2.value))
     { // Validates second date 
       date2temp = new Date(d2.value);
       date2.setTime(date2temp.getTime());
      }
   else 
     return false; // otherwise exits

// sets difference date to difference of first date and second date



//diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

   var diff = date1.getTime() - date2.getTime()  ;
   
   
   return diff ;                  // posi
   
}  

function chkFinishDate(dt1,dt2)
{ if (isEmpty(dt1))
    return true ;
  else
     return (checkdatesDiff(dt1,dt2))  ;
}     

function chkFinishDate1(dt1,dt2,msg)
{ if ((isEmpty(dt2)) || (isEmpty(dt1)))
    return true ;
  else
     return (checkdatesDiff1(dt1,dt2,msg))  ;
}     

function checkdatesDiff1(d1,d2,msg)
 {
   date1 = new Date();
   date2 = new Date();
   diff  = new Date();
   //alert(d1);	
   if (isValidDate(d1.value))
    { // Validates first date 
      date1temp = new Date(d1.value);
      date1.setTime(date1temp.getTime());
    }
   else 
     return false; // otherwise exits

   if (isValidDate(d2.value))
     { // Validates second date 
       date2temp = new Date(d2.value);
       date2.setTime(date2temp.getTime());
      }
   else 
     return false; // otherwise exits

// sets difference date to difference of first date and second date

//diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

   var diff = date1.getTime() - date2.getTime()  ;
   
   if (diff >= 0)  
      return true ;                  // posi
   else
    { alert(msg);
      //d2.focus();
      return false;    // nega
    }
  
} 
function checkdatesDiff2(d1,d2,msg)
 {
   date1 = new Date();
   date2 = new Date();
   diff  = new Date();

   if (isValidDate(d1.value) && isValidDate(d2.value))
    { // Validates first date 
      date1temp = new Date(d1.value);
      date1.setTime(date1temp.getTime());
      date2temp = new Date(d2.value);
      date2.setTime(date2temp.getTime());
    }
   else 
     return false; // otherwise exits

   

// sets difference date to difference of first date and second date

 

   var diff = date1.getTime() - date2.getTime()  ;
   if (diff > 0)  
      return true ;                  // posi
   else
    { alert(msg);
      return false;    // nega
    }
  
} 

function chkFinishDate2(dt1,dt2,msg)
{ if ((isEmpty(dt2)) || (isEmpty(dt1)))
    return true ;
  else
     return (checkdatesDiff2(dt1,dt2,msg))  ;
     dt1.focus();
}     

function checkdatesDiff3(d1,d2,msg)
 {
   date1 = new Date();
   date2 = new Date();
   diff  = new Date();
   	
   //alert(d1);	
   if((d1.value=="f_----")||(d1.value=="----"))
   {
   	date1.setTime(new Date());
   	date1.setYear(date1.getYear()+10);
   }   else if (isValidDate(d1.value))
    { // Validates first date 
      date1temp = new Date(d1.value);
      date1.setTime(date1temp.getTime());
    }
   else 
     return false; // otherwise exits
     
    if((d2.value=="f_----")||(d2.value=="----"))
    {
    	date2.setTime(new Date());
    	date2.setYear(date1.getYear()+10);
   
    }	
   else if (isValidDate(d2.value))
     { // Validates second date 
       date2temp = new Date(d2.value);
       date2.setTime(date2temp.getTime());
      }
   else 
     return false; // otherwise exits

// sets difference date to difference of first date and second date

//diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

   var diff = date1.getTime() - date2.getTime()  ;
   
   if (diff >= 0)  
      return true ;                  // posi
   else
    { alert(msg);
      //d2.focus();
      return false;    // nega
    }
  
} 


function checkField(pwd,msg,len)
 { 
   if (isWhitespace(pwd))
    { warnEmpty(pwd,msg);
      return false;
     }
   else
    {if (pwd.value==" ")
       { alert(" can't be blank");
         pwd.focus();
	    return false;
	    }
	else    
     if (parseInt(pwd.value.length) > len)
      { 
        alert(msg + " can't be more than " + len + " characters");
        return false;
     }
     else
      return true;
   }   
}

 



 

function validationCheckingTime(frm)
 { if ((finalTime(frm) == true) && checkSize(frm.eComments,"Empl.Comments" , 350) && checkSize(frm.iWork,"Work done",50))
    { 
    // alert (frm.resultTime.value + " " + frm.InTime.value + frm.OutTime.value) ;
    // frm.eComments.value = encodeComment(frm.eComments);
   //  frm.iWork.value = encodeComment(frm.iWork);
     return true;
     }
    else
      return false ;
 }  




  
function finalTime(frm)
{ 
  var val, resHours, resMins, resTime ;
  StartTime = new Date();
  EndTime   = new Date() ;
  StartTime.setHours(frm.inHrs.value);
  StartTime.setMinutes(frm.inMinutes.value);
   
  EndTime.setHours(frm.outHrs.value);
  EndTime.setMinutes(frm.outMinutes.value);
  if ((frm.inHrs.value == 0) &&(frm.inMinutes.value == 0) && (frm.outHrs.value == 0) && (frm.outMinutes.value == 0))
   { alert("Please select In and Out Timings ");
     return false ;
    } 
  else 
   if (EndTime.getTime() < StartTime.getTime())
   { alert("In-Time  can't be later than Out-Time");
     return false ;
    }
   else
    {     
		var hrs1= StartTime.getHours(), hrs2= EndTime.getHours()   ;
		var min1 = StartTime.getMinutes() ,min2 =EndTime.getMinutes()  ;
                 if (min2 < min1)
			{ resMins = (60 + min2)- min1 ;
			  resHours = hrs2 - (hrs1 + 1) ; 
			}
		else
			{ resMins = min2 - min1 ;
			  resHours = hrs2 - hrs1 ;
			} 
        resTime = resHours + (resMins/100);
        if (resTime == 0)  
         { alert("Both In-Time and Out-Time cann't be the same");   
           return false ;
           }
        else
         {   
             frm.resultTime.value = resTime ;
             frm.InTime.value = hrs1 + (min1/100) ;
             frm.OutTime.value = hrs2 + (min2/100) ;
             return true ;
          }   
    }
  
  } 


function IsNumeric(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var blnResult = true;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }

function winpop(loc)
{
		
hvar='width=300,height=200,resizable=no,screenX=0,screenY=0,left=0,top=0,status,scrollbars=yes';
		
wnd = window.open(loc,"cart",'width=300,height=200,resizable=no');
}

function winpop1(loc)
{
		
hvar='width=400,height=300,resizable=yes,screenX=0,screenY=0,left=0,top=0,status,scrollbars=yes';
		
wnd = window.open(loc,"cart",'width=400,height=300,resizable=no,scrollbars=yes');
}


 function IsPhoneNumber(num1,num2,num3,flag)
 {
 if (flag==0) 
 	str="phone";
 else str="fax";
 if(IsNumeric(num1)&&IsNumeric(num2)&&IsNumeric(num3))
 {
  if(num1<3)
  	{
  	alert("Please enter proper "+ str +" number" )
  	return false;
  	}
  else if(num2<3)
  	{alert("Please enter proper "+ str +" number" )
       	 return false;
  	}
  else if(num1<4)
	{ 
 	alert("Please enter proper "+ str +" number" )
 	return false;
  	}
  else return true;
 }else{
 	alert("Please enter numeric phone number")
 	return false;
  	}
 
 }
 
 function validateLogin(form) {
    if ((isEmpty(form.Username.value )) || (isWhitespace(form.Username.value ))) {
 //   if (form.Username.value == "") {
 //      if (form.Password.value == "") {
       if ((isEmpty(form.Password.value )) || (isWhitespace(form.Password.value ))) {
          alert("Please enter both your Userame and Password")
          return false
       }
       alert("Please enter your Userame")
       return false
    }
 
    if ((isEmpty(form.Password.value )) || (isWhitespace(form.Password.value ))) {
 //   if (form.Password.value == "") {
       alert("Please enter your Password")
       return false
    }
    return true
 }

 
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}