﻿function NewPM()
{
	var tmp=document.getElementById('PMConversationID');
	if (tmp)
		tmp.value='';
	tmp=document.getElementById('recipient');
	if (tmp)
	{
		tmp.value='';		
		tmp.readOnly=false;
	}
	tmp=document.getElementById('PMTitle');
	if (tmp)
	{
		tmp.value='';				
		tmp.readOnly=false;
	}
}
function ReplyPM(PMConversationID,Recipient,PMTitle)
{
	var tmp=document.getElementById('PMConversationID');
	if (tmp)
		tmp.value=PMConversationID;
	tmp=document.getElementById('recipient');
	if (tmp)
	{
		tmp.value=Recipient;		
		tmp.readOnly=true;
	}
	tmp=document.getElementById('PMTitle');
	if (tmp)
	{
		tmp.value=PMTitle;				
		tmp.readOnly=true;
	}
}
function BeforeSubmitForm(submitingForm)
{
	if (submitingForm.id == 'LoginForm')
	{
		if (submitingForm.login_username.value == '')
		{
			alert('Hãy điền tên đăng nhập!');
			submitingForm.login_username.focus();
			return false;
		}
		if (submitingForm.login_password.value == '')
		{
			alert('Hãy điền mật khẩu!');
			submitingForm.login_password.focus();
			return false;
		}		
	}
	if (submitingForm.id == 'SearchForm')
	{
		if (submitingForm.SearchFor.value == '')
		{
			alert('Hãy điền thông tin cần tìm kiếm!');
			submitingForm.SearchFor.focus();
			return false;
		}
	}	
	if (submitingForm.id == 'VoteForm')
	{
		var myOption = -1;	
		for (var i=1;i<=submitingForm.VoteParam.length;i++) {
			if (submitingForm.VoteParam[i-1].checked) {
				myOption = i; 
				break;
			}
		}
		if (myOption < 0)
		{
			alert('Xin hãy lựa chọn trước khi gửi!');
			return false;
		}
	}		
	if (submitingForm.id == 'ChatPostingForm')
	{
		if (submitingForm.posting_content.value == '')
		{
			alert('Hãy nhập dữ liệu trước khi gửi!');
			submitingForm.posting_content.focus();
			return false;
		}
		if (submitingForm.posting_content.value.length>3000)
		{
			alert('Bài viết không dài quá 3000 ký tự!');
			submitingForm.posting_content.focus();
			return false;
		}
	}	
	if (submitingForm.id == 'RegisterForm')
	{
		if (submitingForm.alias.value == '')
		{
			alert('Hãy nhập tên truy cập!');
			submitingForm.alias.focus();
			return false;
		}	
		if (submitingForm.alias.value.length>20)
		{
			alert('Tên đăng ký không dài quá 20 ký tự!');
			submitingForm.alias.focus();
			return false;
		}			
		if (submitingForm.password.value == '')
		{
			alert('Hãy nhập mật khẩu!');
			submitingForm.password.focus();
			return false;
		}			
		if (submitingForm.password_confirm.value == '')
		{
			alert('Hãy gõ lại mật khẩu!');
			submitingForm.password_confirm.focus();
			return false;
		}					
		if (submitingForm.password_confirm.value != submitingForm.password.value)
		{
			alert('Mật khẩu gõ lại không đúng!');
			submitingForm.password.focus();
			return false;
		}							
		if (submitingForm.password_confirm.value == '')
		{
			alert('Hãy gõ lại mật khẩu!');
			submitingForm.password_confirm.focus();
			return false;
		}					
		if (!submitingForm.cbAgreed.checked)
		{
			alert('Hãy đọc kỹ nội quy của diễn đàn và click vào checkbox đồng ý trước khi đăng ký!');
			return false;	
		}
	}	
	if (submitingForm.id == 'ProfileForm')
	{
		if (submitingForm.new_password.value != '') 
		{
			if (submitingForm.password.value == '')
			{
				alert('Hãy nhập mật khẩu hiện nay!');
				submitingForm.password.focus();
				return false;
			}
			if (submitingForm.new_password_confirm.value != submitingForm.new_password.value)
			{
				alert('Mật khẩu gõ lại không đúng!');
				submitingForm.new_password.focus();
				return false;
			}										
		}			
	}	
	if ((submitingForm.id == 'RegisterForm') || (submitingForm.id == 'ProfileForm'))
	{
		if (submitingForm.email.value == '')
		{
			alert('Hãy nhập địa chỉ email!');
			submitingForm.email.focus();
			return false;
		}	
		if ((sEmail = CheckEmailAddress(submitingForm.email.value))=='')
		{
			alert('Địa chỉ email không hợp lệ!');
			submitingForm.email.focus();
			return false;
		}
		
		var val = 0;
		for( i = 0; i <submitingForm.uploadfrom.length; i++ )
		{
			if( submitingForm.uploadfrom[i].checked == true )
				val = submitingForm.uploadfrom[i].value;
		}		
		if ((val == '1') && (submitingForm.FromWeb.value == ''))
		{
			alert('Hãy nhập đường dẫn từ Web!');
			submitingForm.FromWeb.focus();
			return false;
		}			
		if ((val == '2') && (submitingForm.FromLocal.value == ''))
		{
			alert('Hãy nhập đường dẫn từ máy của bạn!');
			submitingForm.FromLocal.focus();
			return false;
		}					
	}	
	if ((submitingForm.id == 'GamerProfileForm') || (submitingForm.id == 'GamerRegisterForm'))
	{
		if (submitingForm.GamerName.value == '')
		{
			alert('Hãy nhập họ và tên đầy đủ!');
			submitingForm.GamerName.focus();
			return false;
		}	
		if (submitingForm.IDPaperNo.value == '')
		{
			alert('Hãy nhập số CMND!');
			submitingForm.IDPaperNo.focus();
			return false;
		}	
		if (submitingForm.Address1.value == '')
		{
			alert('Hãy nhập địa chỉ thường trú!');
			submitingForm.Address1.focus();
			return false;
		}	
		if ((submitingForm.Email.value!='') && ((sEmail = CheckEmailAddress(submitingForm.Email.value))==''))
		{
			alert('Địa chỉ email không hợp lệ!');
			submitingForm.Email.focus();
			return false;
		}		
	}		
	if ((submitingForm.id == 'ProfileForm') || (submitingForm.id == 'GamerProfileForm'))
	{
		if (!confirm('Thay đổi?'))
			return false;			
	}	
	if ((submitingForm.id == 'RegisterForm') || (submitingForm.id == 'GamerRegisterForm'))
	{
		if (!confirm('Đăng ký?'))
			return false;					
	}
	if (submitingForm.id == 'NewTopicForm')
	{
		if (submitingForm.topic_name.value == '')
		{
			alert('Hãy nhập Tiêu đề của topic!');
			submitingForm.topic_name.focus();
			return false;
		}	
		if (submitingForm.topic_desc.value == '')
		{
			alert('Hãy nhập Giới thiệu của topic!');
			submitingForm.topic_desc.focus();
			return false;
		}			
		if (!confirm('Mở topic mới?'))
			return false;					
	}	
	if (typeof(GetCrossFormVars) != 'undefined')
		GetCrossFormVars(submitingForm);
	if (typeof(submitingForm.post_btn) != 'undefined')
	{
		submitingForm.post_btn.style.visibility = "hidden";
	}
	return true;
}

function CheckEmailAddress(Email)
{
	Email = Trim(Email);

	while (Email != '')
	{
		c = Email.charAt(0);	
		if (c==' ' || c=='<' || c==39 || c==':' || c=='.')
		{
			Email = Email.substr(1);
		}
		else
		{
			break;
		}
	}

	i = Email.indexOf('>');
	if (i==-1)
	{
		while (Email != '')
		{
			c = Email.charAt(Email.length - 1);
			if (c==' ' || c==39 || c=='.')
			{
				Email = Email.substr(0, Email.length - 1);
			}
			else
			{
				break;
			}
		}
	}
	else
	{
		Email = Email.substr(0, i);
	}

	if (Email.length > 96)
		return '';

	i = Email.lastIndexOf('@');
	j = Email.lastIndexOf('.');
	if (i < j)
		i = j;

	switch (Email.length - i - 1)
	{
	case 2:
		break;
	case 3:
		switch (Email.substr(i))
		{
		case '.com':
		case '.net':
		case '.org':
		case '.edu':
		case '.mil':
		case '.gov':
		case '.biz':
		case '.pro':
		case '.int':
			break;
		default:
			return '';
		}
		break;
	default:
		switch (Email.substr(i))
		{
		case '.name':
		case '.info':
			break;
		default:
			return '';
		}
		break;
	}

	Email = Email.toLowerCase();

	if (Email == '')
		return '';

	if (Email.indexOf(' ') != -1)
		return '';

	if (Email.indexOf('..') != -1)
		return '';

	if (Email.indexOf('.@') != -1)
		return '';

	if (Email.indexOf('@.') != -1)
		return '';

	if (Email.indexOf(':') != -1)
		return '';

	for (i=0; i < Email.length; i++)
	{
		c = Email.charAt(i);

		if (c >= '0' && c <= '9')
			continue;
		
		if (c >= 'a' && c <= 'z')
			continue;
		
		if ('`~!#$%^&*-_+=?/\\|@.'.indexOf(c) != -1)
			continue;

		return '';
	}

	if ((i=Email.indexOf('@'))==-1)
		return '';

	if (Email.substr(i + 1).indexOf('@')!=-1)
		return '';

	if (Email.charAt(0)=='.' || Email.charAt(Email.length - 1)=='.')
		return '';

	return Email;
}
function Trim(iStr)
{
	while (iStr.charCodeAt(0) <= 32)
	{
		iStr=iStr.substr(1);
	}

	while (iStr.charCodeAt(iStr.length - 1) <= 32)
	{
		iStr=iStr.substr(0, iStr.length - 1);
	}

	return iStr;
}

function CheckAndFormatInteger(tb)
{
	var OK = false;
	try
	{
		var exp = new RegExp("^\\s*[-\\+]?\\d+\\s*$");
		if (tb.value.match(exp) != null) 
		{
			var tmp = parseInt(tb.value,10);			
			if (!isNaN(tmp))
			{
				tb.value = tmp.toString();
				OK = true;
			}

		}
	}
	catch (exception)
	{
	}
	if (!OK)
	{
		alert('Số không đúng định dạng!');
		return false;
	}
	return true;
}

function CheckBeforeSubmitBetting()
{
	var obj = document.getElementById('BetAmount');
	if (obj.value.length==0)
	{
		alert('Hãy điền số điểm đặt cược!');
		return false;
	}
	if (!CheckAndFormatInteger(obj))
		return false;
	return true;
}

function SubmitBetting(URL)
{
	var obj = document.getElementById('BetAmount');
	URL = URL + '&BetAmount=' + obj.value;

	vWH = 160;
	vWW = 330;
	vWN = 'Feedback';
	winDef = 'status=no,resizable=no,scrollbars=no,toolbar=no,location=no,fullscreen=no,titlebar=yes,height='.concat(vWH).concat(',').concat('width=').concat(vWW).concat(',');
	winDef = winDef.concat('top=').concat((screen.height - vWH)/2).concat(',');
	winDef = winDef.concat('left=').concat((screen.width - vWW)/2);
	newwin = open(URL, vWN, winDef);
	
}

function SubmitScoreBetting(URL)
{
	var obj = document.getElementById('BetAmount');
	URL = URL + '&BetAmount=' + obj.value;

	obj = document.getElementById('spBetScore');
	URL = URL + '&Extra=' + obj.innerHTML;
	obj = document.getElementById('spBetOdd');
	URL = URL + '&Params=' + obj.innerHTML;

	vWH = 160;
	vWW = 330;
	vWN = 'Feedback';
	winDef = 'status=no,resizable=no,scrollbars=no,toolbar=no,location=no,fullscreen=no,titlebar=yes,height='.concat(vWH).concat(',').concat('width=').concat(vWW).concat(',');
	winDef = winDef.concat('top=').concat((screen.height - vWH)/2).concat(',');
	winDef = winDef.concat('left=').concat((screen.width - vWW)/2);
	newwin = open(URL, vWN, winDef);
	
}
