﻿function IsNum(s) {
	if(s.length==0) return true;
	if(!isNaN(parseFloat(s))) return true;
	return false;
}

function IsEmail(str) {
	if(str.length==0) return true;
	var filter=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
	if(filter.test(str)) return true;
	return false;
}

function IsDate(sDate) {
	if(sDate.length==0) return true;
	var filter=/^\d{1,4}-\d{1,2}-\d{1,2}$/;
	if(!(filter.test(sDate))) return false;
	var aMonthDays = [31,28,31,30,31,30,31,31,30,31,30,31];
	var aDate = sDate.toString().split("-");
	var y, m, d;
	y = parseInt(aDate[0],10);
	m = parseInt(aDate[1],10);
	d = parseInt(aDate[2],10);
	if(y<1800 || y>2200) return false;
	if(m<1 || m>12) return false;
	if(((y%4==0)&&(y%100!=0)) || (y%400==0)) aMonthDays[1]=29;
	if(d<1 || d>aMonthDays[m-1]) return false;
	return true;
}

function SetCookie(name, value, expires, path, domain, secure) {
	var curCookie = name + "=" + escape(value) +
		((expires) ? "; expires=" + expires.toGMTString() : "") +
		((path) ? "; path=" + path : "") +
		((domain) ? "; domain=" + domain : "") +
		((secure) ? "; secure" : "");
	document.cookie = curCookie
}

function GetCookie(name) {
	var prefix = name + "="
	var cookieStartIndex = document.cookie.indexOf(prefix)
	if (cookieStartIndex == -1) return null
	var cookieEndIndex = document.cookie.indexOf(";", cookieStartIndex + prefix.length)
	if (cookieEndIndex == -1) cookieEndIndex = document.cookie.length
	return unescape(document.cookie.substring(cookieStartIndex + prefix.length, cookieEndIndex))
}

function DelCookie(name) {
	var expdate = new Date();
	expdate.setTime(expdate.getDate() - 1);
	SetCookie(name, "", expdate);
}

function FixDate(date) {
	var base = new Date(0)
	var skew = base.getTime()
	if (skew > 0)
		date.setTime(date.getTime() - skew)
}
