﻿function CheckTextValidation(textObject) {
	// checking the validation
	var Validation = textObject.attr('a_validation');
	if (Validation && Validation != '' && Validation != 'none') {
		switch (Validation) {
			case 'Required':
				CheckTextBox_Required(textObject);
				break;
			case 'Number':
				CheckTextBox_Number(textObject);
				break;
			case 'Email':
				CheckTextBox_Email(textObject);
				break;
		}
	}
}


/*TEXT BOX Validation*/
function CheckTextBox_Required(textObject) {
	var TextData = textObject.val();
	var FieldLabel = textObject.attr('a_FieldLabel');
	var MessageObject = $('#VM_' + textObject.attr('id'));
	if (MessageObject) {
		MessageObject.html('');
	}
	if (TextData == '' || TextData == ' ') {
		textObject.addClass('ControlError');
		IsFormValid = false;
		if (MessageObject) {
			MessageObject.html('لطفا ' + FieldLabel + ' را وارد نمایید.');
		}
	}
	else {
		textObject.addClass('ControlOk');
	}
}

/*
	IS NUMBER
*/
function CheckTextBox_Number(textObject) {

	var TextData = textObject.val();
	var objRegExp = /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/;
	var FieldLabel = textObject.attr('a_FieldLabel');
	var MessageObject = $('#VM_' + textObject.attr('id'));
	if (MessageObject) {
		MessageObject.html('');
	}
	
	if (!objRegExp.test(TextData)) {
		textObject.addClass('ControlError');
		IsFormValid = false;
		if (MessageObject) {
			MessageObject.html(FieldLabel + ' باید به صورت عددی وارد شود.');
		}
	}
	else {
		textObject.addClass('ControlOk');
	}
}

/*
IS Email
*/
function CheckTextBox_Email(textObject) {

	var TextData = textObject.val();
	var objRegExp = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
	var FieldLabel = textObject.attr('a_FieldLabel');
	var MessageObject = $('#VM_' + textObject.attr('id'));
	if (MessageObject) {
		MessageObject.html('');
	}

	if (TextData == '' || !objRegExp.test(TextData)) {
		textObject.addClass('ControlError');
		IsFormValid = false;
		if (MessageObject) {
			MessageObject.html('لطفا ' + FieldLabel + ' را صحیح وارد کنید.');
		}
	}
	else {
		textObject.addClass('ControlOk');
	}
}



// DROP DOWN
function CheckDropDownValidation(DropDownObject) {
	var DropVal = DropDownObject.val();
	var FieldLabel = DropDownObject.attr('a_FieldLabel');
	var thisID = DropDownObject.attr('id').split('|')[0];
	var MessageObject = $('#VM_' + thisID);
	if (MessageObject) {
		MessageObject.html('');
	}
	if (DropVal != '-1') {
		DropDownObject.addClass('ControlOk');
	}
	else {
		IsFormValid = false;
		DropDownObject.addClass('ControlError');
		if (MessageObject) {
			MessageObject.html('لطفا ' + FieldLabel + ' را مشخص نمایید.');
		}
	}
}


// CheckBox
function CheckCheckBoxValidation(CheckBoxObject) {
	var Validation = CheckBoxObject.attr('a_validation');
	if (Validation == 'Required') { 
		// FUTURE: PUT REQUIRED CODE HERE
	}

	if (Validation == 'CheckBoxMultiRequired') {
		// first get all checkboxes with this one name.
		var CheckName = CheckBoxObject.attr('name');
		var AllCheckBoxes = $("input[name='" + CheckName + "'][type='checkbox']");
		var OneChecked = false;
		var MessageObject = $('#VM_' + CheckName);
		if (MessageObject) {
			MessageObject.html('');
		}
		for (var itemNum = 0; itemNum < AllCheckBoxes.length; itemNum++) {
			if ($(AllCheckBoxes[itemNum]).attr('checked') == true || $(AllCheckBoxes[itemNum]).attr('checked') == 'true') {
				OneChecked = true;
			}
		}


		if (!OneChecked) {
			IsFormValid = false;
			if (MessageObject) {
				MessageObject.html('لطفا ' + CheckBoxObject.attr('a_FieldLabel') + ' را مشخص نمایید.');
			}
		}
	}
}
