// Filename: validation-rules.js
// Author: Kenson Man
//
// Description: Provide the validation rule for jquery.validate that make sure user input the correct date.

var __dateValidator=function( value, element, param ){
	var params=jQuery.extend({format: 'yyyy-MM-dd', minValue: null, maxValue:null}, param);
	value=value.trim();
	if(value.length > 0){
		var value=Date.parseExact(value, params.format);
		if(value==null)return false;
		if(params.minValue!=null){
			var minValue=Date.parseExact(params.minValue, params.format);
		}
	}
	return true;
};

var __regexValidator=function( value, element, param ){
	var params=jQuery.extend({pattern: '^.*$'});
	if(value.length > 0){
		var regex=new RegExp(params.pattern);
		return regex.test(value);
	}
	return true;
};

var __phoneValidator=function( value, element, param ){
	value=value.trim();
	if(value.length > 0)
		return value.match(/^\+?[0-9 -]+$/);
	return true;
}
		
jQuery.validator.addMethod("validDate", __dateValidator, "請輸入正確日期格式 yyyy-MM-dd");
jQuery.validator.addMethod("phone", __phoneValidator, "Please enter the valid phone number");
jQuery.validator.addMethod("regex", __regexValidator, "Unmatch pattern");
