function IsNotSelected(o){return __C_bolDCombo?o.value:(o.options.selectedIndex<0)}
function IsNotOr1stSelected(o){return __C_bolDCombo?o.value:(o.options.selectedIndex<1)}
function IsChecked(o){return(o.checked)}
function IsEmpty(s){return(s.length==0)}
function IsNum(n){return/^-?\d+\.?\d*$/.test(n)}
function IsDec(n){return/^-?\d{1,18}(\.\d{0,10})?$/.test(n)}
function IsInt(n){return/^-?\d+$/.test(n)}
function IsMilli(n){return/^\d+$/.test(n) && n<1000}
function IsDate(d,m,y){return(IsInt(d)&&IsInt(m)&&IsInt(y))&&!((d<1||d>31||m<1||m>12)||(d==31&&(m==2||m==4||m==6||m==9||m==11))||(d==30&&m==2)||(d==29&&m==2&&(y%4!=0||(y%100==0&&y%400!=0))))}
function IsSQLDate(d){var a = d.split('-');return IsDate(a[2], a[1], a[0]);}
function IsEmail(s){return/^[\w\.-]+\@[\w\.-]+\.\w+$/.test(s)}
function HasLength(s,m,M){return(s.length>=m&&s.length<=M)}
function FirstIsLetter(s){return/^[a-zA-Z]/.test(s)}
function IsAlphaNum(s){return/^\w+$/.test(s)}
function IsUID(s){return/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(s)}
function Warn(o,m){alert(m);o.focus();return false;}
function IsRadioSelected(o){var b=false,i=0;while(o[i]){b=b||o[i].checked;i++}return b}
function getValue(o){var i=0;if(o.value)return o.value;if(typeof o.selectedIndex!='undefined')return o[o.selectedIndex].value;while(o[i]){if(o[i].checked) return o[i].value;i++}}
