﻿///////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Hàm kiểm tra trường bắt buộc phải nhập
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
function ValidateRequiredFields(frm, arr)
{
	for (i = 0; i < arr.length; i++)
	{
		var e = frm.elements[arr[i]];
		if (e.value.length <= 0)
			return false;
	}	
	return true;
}

function ValidateCheckBoxes(ckb, msg1, msg2)
{
	var count = 0;
	for (i = 0; i < ckb.length; i++)
	{
		if (ckb[i].checked)
			count++;
	}
	if(count == 0)
	{
		if (ckb.checked)
			count++;
	}
	if (count == 0)
	{
		alert(msg1);
		return false;
	}
	else
		return confirm(msg2);
}

function ValidateRegular(source, reg)
{
	value = source.value;
	if (value.length == 0)
		return true;
	var rx = new RegExp(reg);
	var matches = rx.exec(value);
    return (matches != null && value == matches[0]);
}


function ValidateEmail(source)
{
	if  (!ValidateRegular(source, "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}

function ValidatePhone(source)
{
	if (!ValidateRegular(source, "((\\(\\d{3}\\) ?)|(\\d{3}-))?\\d{3}-\\d{4}"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}

function IsInteger(source)
{
	if (!ValidateRegular(source, "\\d*"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}

function ValidateURL(source)
{
	if (!ValidateRegular(source, "((\\(\\d{3}\\) ?)|(\\d{3}-))?\\d{3}-\\d{4}"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}

function ValidateWebsite(source)
{
	if (!ValidateRegular(source, "(http://)?([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}

/*************************************************************************\
CheckCardNumber(form)
function called when users click the "check" button.
\*************************************************************************/
/*************************************************************************\
boolean isNum(String argvalue)
return true if argvalue contains only numeric characters,
else return false.
\*************************************************************************/
function isNum(argvalue) 
{
	argvalue = argvalue.toString();

	if (argvalue.length == 0)
	return false;

	for (var n = 0; n < argvalue.length; n++)
		if (argvalue.substring(n, n+1) < "0" || argvalue.substring(n, n+1) > "9")
			return false;
	return true;
}

//////////////////////////////////////
//ECSlMedia, Inc Script code
////////////////////////////////////
/////////////////////////////////////////////////////////////////
//This function is check require field for a textbox
///////////////////////////////////////////////////////////
function ECSlCheckRequireField(object,strMesssage){
	if(object.value.length == 0){
		object.focus();
		return strMesssage;
		
	}
	else{
		return "";
	}
}
////////////////////////////////////////////////////////////////////////
//This function is check for compare 2 control
///////////////////////////////////////////////////////////////////////
function ECSlCheckCompareField(objControl1,objControl2,strMessage){
	if(objControl1.value != objControl2.value){
		objControl2.focus()
		return strMessage;
	}
	else{
		return "";
	}
}
///////////////////////////////////////////////////
//This function is check email but it only return a message
////////////////////////////////////////////////////////
function ECSlCheckEmail(object,strMessage){
	if(object.value.length > 0){
		if(ValidateEmail(object)){
			return "";
		}
		else
		{
			object.focus();
			return strMessage
		}
	}
	else{
		return "";
	}
}
///////////////////////////////////////////////////
//This function is check zipcode but it only return a message
////////////////////////////////////////////////////////
function ECSlValidateZipCode(source)
{
	if (!ValidateRegular(source, "\\d{5}(-\\d{4})?"))
	{
		source.select();
		source.focus();
		return false;
	}
	return true;
}
///////////////////////////////////////////////////
//This function is check website but it only return a message
////////////////////////////////////////////////////////
function ECSlValidateWebsite(object, strMessage)
{
	if(object.value.length > 0){
		if(ValidateWebsite(object)){
			return "";
		}
		else
		{
			return strMessage
			object.focus();
		}
	}
	else{
		return "";
	}
}
function ECSlValidateDomainName(object, strMessage)
{
	if(object.value.length > 0){
		if(ValidateDomainName(object)){
			return "";
		}
		else
		{
			return strMessage
			object.focus();
		}
	}
	else{
		return "";
	}
}


/////////////////////////////////////////////////////////
function ECSlCheckPhone(object,strMessage){
	if(object.value.length > 0){
		if(ValidatePhone(object)){
			return "";
		}
		else
		{
			return strMessage
			object.focus();
		}
	}
	else{
		return "";
	}
}
/////////////////////////////////////////////////////////////////////
function ECSlCheckZipCode(object,strMessage){
	if(object.value.length > 0){
		if(ECSlValidateZipCode(object)){
			return "";
		}
		else
		{
			object.focus();
			return strMessage;
			
		}
	}
	else{
		return "";
	}
}
//////////////////////////////////////////////////////////////////
function ECSlCheckCombo(object,strMessage){
	if(object.selectedIndex == 0){
		return strMessage
		object.focus();
	}
	else{
		return "";
	}
}
//////////////////////////////////////////////////////////////////
function ECSlCheckListBox(object,strMessage){
	if(object.length == 0){
		return strMessage
		object.focus();
	}
	else{
		return "";
	}
}
function ECSl2CheckListBox(object1, object2, strMessage)
{
	if((ECSlCheckListBox(object1, strMessage).length > 0) && (ECSlCheckListBox(object2, strMessage).length > 0))
	{
		return strMessage;
	}
	else{
		return "";
	}
}

///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////

function checkFileType(objControl,strMessage,strFileType ){
	if(objControl.value == "")
	{
		return "";
	}
	else{
		if(checkFile(objControl.value, strFileType))
		{
			return "";
		}
		else
		{
			objControl.select();
			objControl.focus();
			return strMessage;
		}
	}
}

////////////////////////////////////////////////////////////////////////
//This function is check for require file
///////////////////////////////////////////////////////////////////////
function checkFile(strValue, strFileType)
	{
		var strExtension = strValue.substr((strValue.lastIndexOf(".") + 1), strValue.length);
		var arrExtension = strFileType.split(",");
		var bFound = false;
		for(var i = 0; i < arrExtension.length;i++)
		{
			if(strExtension == arrExtension[i])
			{
				bFound = true;
			}
		}
		return bFound;
	}
/////////////////////////////////////////////////////////////
// End of  code
///////////////////////////////////////////////////////

function enableControl(target)
{
	target.readOnly = false;
	target.className = "NormalTextBox";
}

function disableControl(target)
{
	target.readOnly = true;
	target.className = "NormalTextBox";
}
function checkUpdateClick()
{
	if(eval(document.frmMain.hUpdateClick.value) == 1)
	{
		document.frmMain.hUpdateClick.value = 0;
		return true;
	}
	else
	{
		return false;
	}
}
function updateClick()
				{
					document.frmMain.hUpdateClick.value = 1;
				}


			
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Check All function
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function checkAll(target)
{
	for (i = 0; i < document.frmMain.elements.length; i++)
	{	
		e = document.frmMain.elements[i];
		if (e.name == "ckSelect")
		{
			e.checked = target.checked;
		}
	}
}
function ShowPicture(urlImage, iWidth, iHeight)
{
					
	var iNewWidth, iNewHeight; 
		iNewWidth = parseInt(iWidth,10) + 22;
		iNewHeight = parseInt(iHeight,10) + 50;
	var url = "view_image.aspx?img=" + urlImage;
	window.open(url,"ShowPicture","toolbar=no,scrollbars=yes,resizable=yes,width=" +iNewWidth + ",height=" + iNewHeight);
}
function ShowUrl(url)
{
				
		var iWidth, iHeight; 
		iWidth = 300;
		iHeight = 250;
		window.open(url,"ShowPicture","toolbar=no,scrollbars=yes,resizable=yes,width=" +iWidth + ",height=" + iHeight);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function openEditor(formName, ImageFolder, strUrl)
{
	//	content = showModalDialog(strUrl,"",'dialogWidth:668px; dialogHeight:434px;help:0;status:0;resizeable:1;');
	//	target.value = content; + 
	strUrl = strUrl + "?form=" + formName + "&folder=" + ImageFolder;
	window.open(strUrl,'AQContextHelp','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=680,height=400').focus();
}

function checkMemberLogin(strReturnUrl)
{
	var objUsername = document.getElementById('txtLoginUserName');
	var objPassword = document.getElementById('txtLoginPassword');
	var strAlert = "";
	strAlert = strAlert + ECSlCheckRequireField(objUsername, "Please enter your username!\n");
	strAlert = strAlert + ECSlCheckRequireField(objPassword, "Please enter your password!\n");
	if(strAlert != "")
	{
		alert(strAlert);
		return false;
	}
	else
	{
		document.frmMain.action = "login.aspx?returnUrl=" + strReturnUrl;
		return true;
	}
}	
function openPollWindow(PollID)
{
	var answer = "";
	var frmMain = document.PollForm;
	for (i = 0; i < frmMain.elements.length; i++)
	{	
		e = frmMain.elements[i];
		if (e.name == "Poll" + PollID && e.checked == true)
		{
			answer = answer + "&answer=" +  e.value;
		}
	}
	//alert(answer);
	pollWindow = window.open('poll_result.aspx?pid=' + PollID + answer,'AQContextHelp','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=300,height=300').focus();
}
function viewPollWindow(PollID)
{
	var answer = "";
	pollWindow = window.open('poll_result.aspx?pid=' + PollID + answer,'AQContextHelp','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=300,height=300').focus();
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function tS(){ x=new Date(); x.setTime(x.getTime()); return x; } 
function lZ(x){ return (x>9)?x:'0'+x; }
function tH(x){ ap=(x>11)?'pm':'am'; if(x==0){ x=12; } return (x>12)?x-=12:x; } 
function fY(x){ return (x<500)?x+1900:x; } 
function dT(){ if(fr==0){ fr=1; document.write('<font size=1 face=verdana font color=#000000><span id="tP">'+eval(oT)+'</span></font>'); } tP.innerText=eval(oT); setTimeout('dT()',1000); } 
//var dN=new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat'),mN=new Array('/1','/2','/3','/4','/5','/6','/7','/8','/9','/10','/11','/12'),ap,fr=0,oT="dN[tS().getDay()]+' - '+'' +' '+tS().getDate()+mN[tS().getMonth()]+'/'+fY(tS().getYear())+' '+'-'+' '+tH(tS().getHours())+':'+lZ(tS().getMinutes())+':'+lZ(tS().getSeconds())+ap";		
