function checkFields(aForm)
{
var i;
for (i=0; i<aForm.length; i++)
{
if (aForm.elements[i].onchange)
{
if(!aForm.elements[i].onchange())
{return false;}
}
}
return true;
}
var DecSep=',';
var ThSep='.';
function getNumber(S)
{
var Sign;
var SepPos;
var SInt="";
var SDec="";
var DecLen;
var DecWeight;
var i;
if (S.length == 0)
{
return NaN;
}
if (S.substr(0,1) == '-')
{
Sign=-1;
S=S.substr(1);
}
else
{Sign=1}
if ((SepPos=S.indexOf(DecSep)) >= 0)
{
SInt=S.substr(0,SepPos);
SDec=S.substr(SepPos+1);
if (SInt == "")
{SInt="0"}
}
else
{
SInt=S;
SDec="";
}
while ((SepPos=SInt.indexOf(ThSep)) >= 0)
{SInt=SInt.substr(0,SepPos)+SInt.substr(SepPos+1);}
DecLen=SDec.length;
DecWeight=1;
for (i=1;i<=DecLen;i++)
{DecWeight*=10;}
if (DecLen > 0)
{return(Sign*(parseFloat(SInt)+parseFloat(SDec/DecWeight)));}
else
{return(Sign*parseFloat(SInt));}
}
function putNumber(N, DecLen)
{
var Sign="";
var DecWeight;
var SInt="";
var SDec="";
var i;
if (N < 0)
{
Sign="-";
N=-N;
}
else
{Sign=""}
DecWeight=1;
for (i=1;i<=DecLen;i++)
{DecWeight*=10}
N+=0.5/DecWeight;
var SInt=new String(Math.floor(N));
var SDec=new String(Math.floor((N-Math.floor(N))*DecWeight));
if (SInt.indexOf("E") >= 0 ||
SDec.indexOf("E") >= 0)
{return("!#")}
for(var i=SInt.length-3; i>0; i-=3)
{SInt=SInt.substr(0,i)+ThSep+SInt.substr(i);}
while (SDec.length < DecLen)
{SDec='0'+SDec}
if (SDec.length > 0 && DecLen > 0)
{return(Sign+SInt+DecSep+SDec)}
else
{return(Sign+SInt)}
}
function checkNumber(NField, TotLen, DecLen, Min, Max)
{
var SNum;
var Num;
var SepPos;
var i;
if (!DecLen)
{DecLen=0;}
SNum=NField.value;
if ((SepPos=SNum.indexOf("-")) >= 0)
{SNum=SNum.substr(0,SepPos)+SNum.substr(SepPos+1);}
if ((SepPos=SNum.indexOf(DecSep)) >= 0)
{
if (DecLen == 0)
{
alert(NumBadCharMsg + ": '" + DecSep + "'");
NField.focus();
return false;
}
SNum=SNum.substr(0,SepPos)+SNum.substr(SepPos+1);
}
while ((SepPos=SNum.indexOf(ThSep)) >= 0)
{SNum=SNum.substr(0,SepPos)+SNum.substr(SepPos+1);}
if (SNum.length > TotLen)
{
alert(NumLenMsg);
NField.focus();
return false;
}
for (i=0; i<SNum.length; i++)
{
if (SNum.charCodeAt(i) < "0".charCodeAt(0) || SNum.charCodeAt(i) > "9".charCodeAt(0))
{
alert(NumBadCharMsg + "'" + SNum.charAt(i) + "'");
NField.focus();
return false;
}
}
Num=getNumber(NField.value);
if (isNaN(Num) && (!isNaN(Min) || !isNaN(Max)))
{
alert(NumBlankMsg);
NField.focus();
return false;
}
else if (!isNaN(Num))
{
if (!isNaN(Min) && Num < Min)
{
alert(MinMsg + putNumber(Min, DecLen));
NField.focus();
return false;
}
if (!isNaN(Max) && Num > Max)
{
alert(MaxMsg + putNumber(Max, DecLen));
NField.focus();
return false;
}
NField.value=putNumber(Num, DecLen);
}
return true;
}
function checkString(SField, MinLen, MaxLen)
{
if (SField.value.length < MinLen)
{
alert(MinLenMsg + MinLen);
SField.focus();
return false;
}
if (SField.value.length > MaxLen)
{
alert(MaxLenMsg + MaxLen);
SField.focus();
return false;
}
return true;
}
function checkNumeric(NField, MinLen, MaxLen)
{
if (!NField.value.match(/^[0-9]*$/))
{
alert(NumBadCharMsg);
NField.focus();
return false;
}
if (NField.value.length < MinLen)
{
alert(MinLenMsg + MinLen);
NField.focus();
return false;
}
if (NField.value.length > MaxLen)
{
alert(MaxLenMsg + MaxLen);
NField.focus();
return false;
}
return true;
}
function checkDT(DTField, CheckType)
{
var SepPos;
var EndDay, EndMonth;
var Day, Month, Year;
var CurrentYear;
var Today=new Date();
var EndHour,EndMinute;
var Hour, Minute, Secs;
var CheckSecs;
var DateField="";
var TimeField="";
var DTArray=new Array("","");
if ((SepPos=DTField.value.indexOf(' ')) >= 0)
{
DTArray[0]=DTField.value.substr(0,SepPos);
DTArray[1]=DTField.value.substr(SepPos+1);
}
else
{DTArray[0]=DTField.value;}
switch (CheckType)
{
case 'DS':
CheckSecs=1;
case 'DT':
if (DTArray[0] == "" || DTArray[1] == "")
{
alert(DTBlankMsg);
DTField.focus();
return false;
}
DateField=DTArray[0];
TimeField=DTArray[1];
break;
case 'ds':
CheckSecs=1;
case 'dt':
DateField=DTArray[0];
TimeField=DTArray[1];
break;
case 'Ds':
CheckSecs=1;
case 'D':
case 'Dt':
if (DTArray[0] == "")
{
alert(NoDateMsg);
DTField.focus();
return false;
}
case 'd':
DateField=DTArray[0];
TimeField=DTArray[1];
break;
case 'dS':
CheckSecs=1;
case 'dT':
if (DTArray[0] == "")
{
alert(NoTimeMsg);
DTField.focus();
return false;
}
if (DTArray[1] == "")
{TimeField=DTArray[0];}
else
{
DateField=DTArray[0];
TimeField=DTArray[1];
}
break;
case 'S':
CheckSecs=1;
case 'T':
if (DTArray[0] == "")
{
alert(NoTimeMsg);
DTField.focus();
return false;
}
TimeField=DTArray[0];
break;
case 's':
CheckSecs=1;
case 't':
TimeField=DTArray[0];
break;
}
if (DateField != "")
{
if (DateField.indexOf("/") >= 0)
{
EndDay=DateField.indexOf("/");
EndMonth=DateField.indexOf("/",EndDay+1);
if (EndMonth < 0 && DateField.length > EndDay)
{
EndMonth=DateField.length;
}
if (EndDay < 0 || EndMonth < 0)
{
alert(DTFormatMsg);
DTField.focus();
return false;
}
Day=DateField.substring(0,EndDay);
Month=DateField.substring(EndDay+1,EndMonth);
Year=DateField.substring(EndMonth+1,DateField.length);
}
else
{
Day=DateField.substring(0,2);
Month=DateField.substring(2,4);
Year=DateField.substring(4,DateField.length);
}
if (Month < 1 || Month > 12)
{
alert(MonthMsg);
DTField.focus();
return false;
}
else
{
if (Month.length < 2)
{Month='0'+Month;}
}
if (Year.length <= 2)
{
if (Today.getFullYear())
{CurrentYear=""+Today.getFullYear()}
else
{CurrentYear=""+eval("1900 + "+Today.getFullYear())}
Year=CurrentYear.substring(0,4-Year.length)+Year;
}
else
{
Year=Year.substr(0, 4);
}
switch (Month)
{
case '01': case '03': case '05': case '07': case '08': case '10': case '12':
mDay=31;
break;
case '04': case '06': case '09': case '11':
mDay=30;
break;
case '02':
mDay=(parseInt(Year)%4 == 0 && (parseInt(Year)%100 != 0 || parseInt(Year)%400 == 0) ? 29 : 28);
break;
}
if (Day < 1 || Day > mDay)
{
alert(DayMsg+mDay);
DTField.focus();
return false;
}
else
{
if (Day.length < 2)
{Day='0'+Day;}
}
}
if (TimeField != "")
{
if (TimeField.indexOf(":") >= 0)
{
EndHour=TimeField.indexOf(":");
EndMinute=TimeField.indexOf(":", EndHour+1);
if (EndMinute < 0 && TimeField.length > EndHour)
{
EndMinute=TimeField.length;
}
if (EndHour < 0 || EndMinute < 0)
{
alert(TimeFormatMsg);
DTField.focus();
return false;
}
Hour=TimeField.substring(0,EndHour);
Minute=TimeField.substring(EndHour+1,EndMinute);
Secs=TimeField.substring(EndMinute+1,TimeField.length);
}
else
{
Hour=TimeField.substring(0,2);
Minute=TimeField.substring(2,4);
Secs=TimeField.substring(4,TimeField.length);
}
if (Hour < 0 || Hour > 23)
{
alert(HourMsg);
DTField.focus();
return false;
}
else
{
if (Hour.length < 2)
{Hour='0'+Hour;}
}
if (Minute < 0 || Minute > 59)
{
alert(MinuteMsg);
DTField.focus();
return false;
}
else
{
if (Minute.length < 2)
{Minute='0'+Minute;}
if (Minute == '0')
{Minute='00';}
}
if (CheckSecs)
{
if (Secs < 0 || Secs > 59)
{
alert(SecsMsg);
DTField.focus();
return false;
}
else
{
if (Secs.length < 2)
{Secs='0'+Secs;}
if (Secs == '0')
{Secs='00';}
}
}
}
if (DateField != "")
{
DTField.value=Day+"/"+Month+"/"+Year;
if (TimeField != "")
{
if (CheckSecs)
{
DTField.value+=" "+Hour+":"+Minute+":"+Secs;
}
else
{
DTField.value+=" "+Hour+":"+Minute;
}
}
}
else
{
if (TimeField != "")
{
if (CheckSecs)
{
DTField.value=Hour+":"+Minute+":"+Secs;
}
else
{
DTField.value=Hour+":"+Minute;
}
}
}
return true;
}
function checkRadio(aRadio)
{
var checked=false;
if (aRadio.type == 'radio')
{
for (i=0; i<aRadio.form.elements.length; i++)
{
if (aRadio.form.elements.item(i).type == 'radio' &&
aRadio.form.elements.item(i).checked &&
aRadio.form.elements.item(i).name == aRadio.name)
{
checked=true;
break;
}
}
if (!checked)
{
alert(NoCheckedMsg);
aRadio.focus();
}
}
return checked;
}
function checkCBox(aCheck)
{
var checked=false;
if (aCheck.type == "checkbox")
{
for (i=0; i<aCheck.form.elements.length; i++)
{
if (aCheck.form.elements.item(i).type == "checkbox" &&
aCheck.form.elements.item(i).checked &&
aCheck.form.elements.item(i).name == aCheck.name.substr(0, aCheck.name.length-aCheck.value.length)+aCheck.form.elements.item(i).value)
{
checked=true;
break;
}
}
if (!checked)
{
alert(NoCheckedMsg);
aCheck.focus();
}
}
return checked;
}
function checkSelect(aSelect)
{
if (aSelect.selectedIndex <= 0)
{
alert(NoCheckedMsg);
aSelect.focus();
return false;
}
return true;
}
function checkFile(aFile, req)
{
var basenamePos;
if (req && aFile.value == '')
{
alert(FileReqMsg);
aFile.focus();
return false;
}
if (aFile.value.substr(0, 1) == '/')
{
basenamePos=aFile.value.lastIndexOf('/');
}
else if (aFile.value.substr(1, 2) == ':\\' || aFile.value.substr(0, 2) == '\\\\')
{
basenamePos=aFile.value.lastIndexOf('\\');
}
else
{
basenamePos=-1;
}
if (aFile.value.length > 0)
{
if (aFile.value.substr(basenamePos+1).search(/^[a-zA-Z0-9_\-]+\.?[a-zA-Z0-9_]+$/))
{
alert(FileBadCharMsg);
aFile.focus();
return false;
}
switch (aFile.value.toLowerCase().substr(aFile.value.lastIndexOf('.')+1))
{
case "php":
case "php3":
case "phtml":
case "cgi":
case "pl":
alert(FileBadFormatMsg);
aFile.focus();
return false;
break;
}
}
return true;
}
function checkEmail(EField, required)
{
if (EField.value.length == 0 && required)
{
alert(EmailBlankMsg);
EField.focus();
return false;
}
if (!EField.value.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/) && required)
{
alert(EmailBadFormatMsg);
EField.focus();
return false;
}
return true;
}
function checkEmailFormat(EField)
{
if (EField.value.length > 0 && !EField.value.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/))
{
alert(EmailBadFormatMsg);
EField.focus();
return false;
}
return true;
}
function getCF(sur, nam, sex, dt, cod)
{
var monthCods=new Array('A', 'B', 'C', 'D', 'E', 'H', 'L', 'M', 'P', 'R', 'S', 'T');
var str='';
var subStrC=''; var subStrV='';
var DMY=new Array();
sur=sur.replace(/\s/g, "");
subStrC=sur.replace(/[aeiou]/ig, "").substr(0, 3);
if (subStrC.length < 3)
{
subStrV=sur.replace(/[^aeiou]/ig, "").substr(0, 3-subStrC.length);
while (subStrC.length+subStrV.length < 3)
{
subStrV+='X';
}
}
str+=subStrC+subStrV;
nam=nam.replace(/\s/g, "");
subStrC=nam.replace(/[aeiou]/ig, "");
subStrC=(subStrC.length >= 4 ? subStrC.substr(0, 1)+subStrC.substr(2, 2) : subStrC=subStrC.substr(0, 3));
subStrV='';
if (subStrC.length < 3)
{
subStrV=nam.replace(/[^aeiou]/ig, "").substr(0, 3-subStrC.length);
while (subStrC.length+subStrV.length < 3)
{
subStrV+='X';
}
}
str+=subStrC+subStrV;
if (dt.length == 10 && dt.replace(/[^\/]/g, "").length == 2)
{
DMY=dt.split('/');
str+=DMY[2].substr(2);
str+=monthCods[parseInt(DMY[1], 10)-1];
str+=(sex == 'F' || sex == 'f' ? parseInt(DMY[0], 10)+40 : DMY[0]);
}
str+=cod;
return str.toUpperCase();
}
function getDWeight(dStr)
{
var DMY=new Array();
var res='';
if (dStr.length == 10 && dStr.replace(/[^\/]/g, "").length == 2)
{
DMY=dStr.split('/');
res=DMY[2]+DMY[1]+DMY[0];
}
return res;
}
function setCBoxList(aList)
{
if (aList.form)
{
aList.value='';
for (var i=0; i<aList.form.elements.length; i++)
{
if (aList.form.elements.item(i).type == "checkbox" &&
aList.form.elements.item(i).checked && aList.form.elements.item(i).value != '' &&
aList.form.elements.item(i).name == aList.name+'_'+aList.form.elements.item(i).value)
{
aList.value+=','+aList.form.elements.item(i).value;
}
}
}
return true;
}
function setMSelectList(aList)
{
var select=aList.form.elements.namedItem('_'+aList.name);
aList.value='';
for (var i=1; i<select.length; i++)
{
if (select.options[i].selected)
{
aList.value+=','+select.options[i].value;
}
}
return true;
}
function checkAll(aCheck)
{
for (var i=0; i<aCheck.form.elements.length; i++)
{
if (aCheck.form.elements.item(i).type == "checkbox" &&
aCheck.form.elements.item(i).name == aCheck.name.substr(0, aCheck.name.length-aCheck.value.length)+aCheck.form.elements.item(i).value)
{
aCheck.form.elements.item(i).checked=true;
}
}
}
function uncheckAll(aCheck)
{
for (var i=0; i<aCheck.form.elements.length; i++)
{
if (aCheck.form.elements.item(i).type == "checkbox" &&
aCheck.form.elements.item(i).name == aCheck.name.substr(0, aCheck.name.length-aCheck.value.length)+aCheck.form.elements.item(i).value)
{
aCheck.form.elements.item(i).checked=false;
}
}
}
function openWin(URL, name, features)
{
features+=(! features.match(/menubar=/, '') ? ',menubar=yes' : '');
features+=(! features.match(/toolbar=/, '') ? ',toolbar=yes' : '');
var oWin=window.open(URL, name, features);
oWin.focus();
return oWin;
}
function resizeWin(width, height)
{
window.resizeTo(width, height);
}
function removeAllChild(o)
{
var ocs=o.childNodes||o.cildren;
for(var i=0;i<ocs.length;i++)
{
o.removeChild(ocs[i]);
}
}
function getOffset(obj)
{
var l=obj.offsetLeft;
var t=obj.offsetTop;
while (obj.offsetParent)
{
obj=obj.offsetParent;
l+=obj.offsetLeft;
t+=obj.offsetTop;
};
return new Array(l, t);
}
function cloneOffset(reference, target)
{
var offsetVals=getOffset(reference);
target.style.left=offsetVals[0]+'px';
target.style.top=offsetVals[1]+'px';
}
function openImg(imgURL, name, title, features, width, height)
{
features=features.replace(/scrollbars=(yes|no)/, '');
if (width >= window.screen.width-100 || height >= window.screen.height-100)
{
features+=',scrollbars=yes';
features+=',width='+(width >= window.screen.width-100 ? window.screen.width-100 : width);
features+=',height='+(height >= window.screen.height-100 ? window.screen.height-100 : height);
}
else
{
features+=',scrollbars=no';
features+=',width='+width;
features+=',height='+height;
}
var oWin=window.open("", name, features);
oWin.document.open();
oWin.document.write("<html><head><title>"+title+"</title></head><body style=\"margin: 0\">");
switch (imgURL.substr(imgURL.lastIndexOf(".")+1).toLowerCase())
{
case "jpg":
case "gif":
case "png":
oWin.document.write("<img src=\""+imgURL+"\" width=\""+width+"\" height=\""+height+"\" alt=\"" +title+ "\" title=\""+title+"\"/>");
break;
case "swf":
oWin.document.write("<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0\" width=\"1\" height=\"1\" style=\"display: none;\"><param name=\"movie\" value=\"../include/d.swf\" /></object><object type=\"application/x-shockwave-flash\" width=\""+width+"\" height=\""+height+"\" data=\"../include/l.swf?m="+imgURL+"\" title=\""+title+"\"><param name=\"movie\" value=\"../include/l.swf?m="+imgURL+"\" /></object>");
break;
}
oWin.document.write("</body></html>");
oWin.document.write();
oWin.document.close();
oWin.focus();
return oWin;
}
function setCookie(name, value, expSecs, reload)
{
var now=new Date();
var expDate=new Date(now.getTime() + expSecs*1000);
document.cookie=name+"="+escape(value)+"; path=/; expires="+expDate.toGMTString()+";";
if (reload)
{
document.location.reload();
}
}
function mailto(usr, dom, tit, txt)
{
if (tit == '')
{
tit=usr + '@' + dom;
}
if (txt == '')
{
txt=usr + '@' + dom;
}
document.write('<a href="mailto');
document.write(':' + usr + '@');
document.write(dom + '" title="' + tit + '">' + txt + '</a>');
}
function switchDisplayBlock(o)
{
o.style.display=(o.style.display == 'none' ? 'block' : 'none');
return false;
}
