function OpenNew(element, title){
	window.open(element, title);
	return false;
}

function CheckReminder(form){
	var errors = "";
	if (form.username_r.value==""){
		errors+= lng['pass_rem_user'] + "\n";
		form.username_r.style.backgroundColor="red";
	}
	if (form.email.value==""){
		errors+= lng['pass_rem_email'] + "\n";
		form.email.style.backgroundColor="red";
	}
	if (errors==""){
		return true;
	}else{
		alert(errors);
		return false;
	}
}

function CheckUserReminder(form){
	var errors = "";
	if (form.password_r.value==""){
		errors+= lng['user_rem_pass'] + "\n";
		form.password_r.style.backgroundColor="red";
	}
	if (form.email.value==""){
		errors+= lng['user_rem_email'] + "\n";
		form.email.style.backgroundColor="red";
	}
	if (errors==""){
		return true;
	}else{
		alert(errors);
		return false;
	}
}

function SignUpCheck(form){
	var errors = "";
	var field = form.signup_email;
	if (field.value==""){
		errors+=lng['reg_email']+"\n";
		field.style.backgroundColor="red";
	}else{
		var test = field.value.match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
		if (test == null){
			errors+=lng['reg_email_invalid']+"\n";
			field.style.backgroundColor="red";
		}
	}
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function RegisterCheck(form){
	var errors = "";
	var fields = form.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }
	if (fields.first.value==""){
		errors+=lng['reg_first']+"\n";
		fields.first.style.backgroundColor="red";
	}
	if (fields.last.value==""){
		errors+=lng['reg_last']+"\n";
		fields.last.style.backgroundColor="red";
	}
	if (fields.username.value==""){
		errors+=lng['reg_username']+"\n";
		fields.username.style.backgroundColor="red";
	}else{
		var test = fields.username.value.match(/^[a-zA-Z0-9]{1,}$/);
		if (test == null){
			errors+=lng['reg_username_chars']+"\n";
			fields.username.style.backgroundColor="red";
		}
	}
	if (fields.email.value==""){
		errors+=lng['reg_email']+"\n";
		fields.email.style.backgroundColor="red";
	}else{
		var test = fields.email.value.match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
		if (test == null){
			errors+=lng['reg_email_invalid']+"\n";
			fields.email.style.backgroundColor="red";
		}
	}
	if (fields.country.value==""){
		errors+=lng['reg_country']+"\n";
		fields.country.style.backgroundColor="red";
	}
	if ((fields.bday.value!="") || (fields.bmonth.value!="") || (fields.byear.value!="")){
		if ((parseInt(fields.bday.value, 10)<1) || (parseInt(fields.bday.value, 10)>31) || (fields.bday.value=="")){
			errors+=lng['reg_bday_day']+"\n";
			fields.bday.style.backgroundColor="red";
		}
		if ((parseInt(fields.bmonth.value, 10)<1) || (parseInt(fields.bmonth.value, 10)>12) || (fields.bmonth.value=="")){
			errors+=lng['reg_bday_month']+"\n";
			fields.bmonth.style.backgroundColor="red";
		}
		var d=new Date();
		if ((parseInt(fields.byear.value, 10)<1900) || (parseInt(fields.byear.value, 10)>d.getFullYear()) || (fields.byear.value=="")){
			errors+=lng['reg_bday_year']+"\n";
			fields.byear.style.backgroundColor="red";
		}
	}
	if (fields.password.value==""){
		errors+=lng['reg_pass']+"\n";
		fields.password.style.backgroundColor="red";
	}
	if (fields.password_ver.value==""){
		errors+=lng['reg_pass_confirm']+"\n";
		fields.password_ver.style.backgroundColor="red";
	}
	if (fields.password.value!=fields.password_ver.value){
		errors+=lng['reg_pass_match']+"\n";
		fields.password.style.backgroundColor="red";
		fields.password_ver.style.backgroundColor="red";
	}else{
		var test = fields.password.value.match(/^.{6,}$/);
		if (test == null){
			errors+=lng['reg_pass_chars']+"\n";
			fields.password.style.backgroundColor="red";
			fields.password_ver.style.backgroundColor="red";
		}
	}
	if (fields.captcha.value==""){
		errors+=lng['reg_captcha']+"\n";
		fields.captcha.style.backgroundColor="red";
	}
	if (fields.site_terms.checked==false){
		errors+=lng['reg_terms']+"\n";
		fields.site_terms.style.backgroundColor="red";
	}
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function PassComplexity(){
	var pass 	= document.getElementById('password').value;
	var lower 	= (pass.match(/[a-z]/))?1:0;
	var upper 	= (pass.match(/[A-Z]/))?1:0;
	var digit 	= (pass.match(/\d/))?1:0;
	var specl 	= (pass.match(/[`~!@#$%^&*()\-_=+,.\\\/<>?\[\]{};':"|]/))?1:0;
	var len 	= (pass.length>=8)?1:0;
	var rate 	= lower+upper+digit+specl+len;
	
	var colors = new Array();
	colors[0] = "#FFFFFF";
	colors[1] = "#FF0033";
	colors[2] = "#FFAA00";
	colors[3] = "#FFFF00";
	colors[4] = "#7FFFD8";
	colors[5] = "#00FF00";
	
	var rates = new Array();
	rates[0] = "";
	rates[1] = "*";
	rates[2] = "**";
	rates[3] = "***";
	rates[4] = "****";
	rates[5] = "*****";
	
	document.getElementById('complex').style.backgroundColor = colors[rate];
	document.getElementById('complex').innerHTML = rates[rate];
}

function UpdateCheck(form){
	var errors = "";
	var fields = form.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }

	if (fields.first.value==""){
		errors+=lng['profile_first']+"\n";
		fields.first.style.backgroundColor="red";
	}
	if (fields.last.value==""){
		errors+=lng['profile_last']+"\n";
		fields.last.style.backgroundColor="red";
	}	
	if (fields.email.value==""){
		errors+=lng['profile_email']+"\n";
		fields.email.style.backgroundColor="red";
	}else{
		var test = fields.email.value.match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
		if (test == null){
			errors+=lng['profile_email_invalid']+"\n";
			fields.email.style.backgroundColor="red";
		}
	}
	if (fields.country.value==""){
		errors+=lng['profile_country']+"\n";
		fields.country.style.backgroundColor="red";
	}
	if ((fields.bday.value!="") || (fields.bmonth.value!="") || (fields.byear.value!="")){
		if ((parseInt(fields.bday.value, 10)<1) || (parseInt(fields.bday.value, 10)>31) || (fields.bday.value=="")){
			errors+=lng['profile_bday_day']+"\n";
			fields.bday.style.backgroundColor="red";
		}
		if ((parseInt(fields.bmonth.value, 10)<1) || (parseInt(fields.bmonth.value, 10)>12) || (fields.bmonth.value=="")){
			errors+=lng['profile_bday_month']+"\n";
			fields.bmonth.style.backgroundColor="red";
		}
		var d=new Date();
		if ((parseInt(fields.byear.value, 10)<1900) || (parseInt(fields.byear.value, 10)>d.getFullYear()) || (fields.byear.value=="")){
			errors+=lng['profile_bday_year']+"\n";
			fields.byear.style.backgroundColor="red";
		}
	}
	if (fields.password.value==""){
		errors+=lng['profile_pass']+"\n";
		fields.password.style.backgroundColor="red";
	}
	if (fields.password_ver.value==""){
		errors+=lng['profile_pass_confirm']+"\n";
		fields.password_ver.style.backgroundColor="red";
	}
	if (fields.password.value!=fields.password_ver.value){
		errors+=lng['profile_pass_match']+"\n";
		fields.password.style.backgroundColor="red";
		fields.password_ver.style.backgroundColor="red";
	}else{
		var test = fields.password.value.match(/^.{6,}$/);
		if (test == null){
			errors+=lng['profile_pass_chars']+"\n";
			fields.password.style.backgroundColor="red";
			fields.password_ver.style.backgroundColor="red";
		}
	}
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function CheckCoupon(form){
	var errors = "";
	var field = form.code;
	if (field.value==""){
		errors+=lng['coupon_code']+"\n";
		field.style.backgroundColor="red";
	}
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function PrepCheck(frm){
	var errors = "";
	var fields = frm.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }
	
	if (fields.quantity.value!=""){
		if ((parseInt(fields.quantity.value) != fields.quantity.value) || (fields.quantity.value<1) || (fields.quantity.value>1000)){
			errors+=lng['prepaid_quant_range']+"\n";
			fields.quantity.style.backgroundColor="red";
		}
	}else{
		errors+=lng['prepaid_quant']+"\n";
		fields.quantity.style.backgroundColor="red";
	}
	
	if (fields.value.value!=""){
		if ((parseInt(fields.value.value) != fields.value.value) || (fields.value.value<1) || (fields.value.value>100)){
			errors+=lng['prepaid_value_range']+"\n";
			fields.value.style.backgroundColor="red";
		}
	}else{
		errors+=lng['prepaid_value']+"\n";
		fields.value.style.backgroundColor="red";
	}
	
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function DepositCheck(frm, type){
	var errors = "";
	var fields = frm.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }
	
	if (type=='prepaid'){
		if (fields.prepaid.value==""){
			errors+=lng['deposit_prepaid']+"\n";
			fields.prepaid.style.backgroundColor="red";
		}
	}else if (type=='credit1'){
		if (fields.first.value==""){
			errors+=lng['deposit_first']+"\n";
			fields.first.style.backgroundColor="red";
		}
		if (fields.last.value==""){
			errors+=lng['deposit_last']+"\n";
			fields.last.style.backgroundColor="red";
		}
		if (fields.phone.value==""){
			errors+=lng['deposit_phone']+"\n";
			fields.phone.style.backgroundColor="red";
		}else{
			var test = fields.phone.value.match(/^\d+$/);
			if (test == null){
				errors+=lng['deposit_phone']+"\n";
				fields.phone.style.backgroundColor="red";
			}
		}
		if (fields.email.value==""){
			errors+=lng['deposit_email']+"\n";
			fields.email.style.backgroundColor="red";
		}else if (fields.email.value!=""){
			var test = fields.email.value.match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
			if (test == null){
				errors+=lng['deposit_email_valid']+"\n";
				fields.email.style.backgroundColor="red";
			}
		}
		if (fields.country.value==""){
			errors+=lng['deposit_country']+"\n";
			fields.country.style.backgroundColor="red";
		}
		if (fields.city.value==""){
			errors+=lng['deposit_city']+"\n";
			fields.city.style.backgroundColor="red";
		}
		if (fields.address.value==""){
			errors+=lng['deposit_address']+"\n";
			fields.address.style.backgroundColor="red";
		}
		if (fields.zipcode.value==""){
			errors+=lng['deposit_zipcode']+"\n";
			fields.zipcode.style.backgroundColor="red";
		}
		if (fields.amount.value==""){
			errors+=lng['deposit_amount']+"\n";
			fields.amount.style.backgroundColor="red";
		}else if (parseFloat(fields.amount.value)<=0){
			errors+=lng['deposit_amount_valid']+"\n";
			fields.amount.style.backgroundColor="red";
		}
	}
	
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function WithdrawCheck(frm, min){
	var errors = "";
	var fields = frm.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }
	
	if (fields.amount.value!=""){
		if (parseFloat(fields.amount.value) < min){
			errors+=lng['withdraw_amount_valid']+min+"\n";
			fields.amount.style.backgroundColor="red";
		}
	}else{
		errors+=lng['withdraw_amount']+"\n";
		fields.amount.style.backgroundColor="red";
	}
	
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function SwitchLanguage(lang){
	var RegEx = new RegExp("[?]");
	var RegT = new RegExp("#$");
	var RegAnchor = new RegExp("[#]");
	var NewLoc = document.location.href;
	var Addition = "";
	if (RegT.test(NewLoc)){
		NewLoc = NewLoc.substr(0, NewLoc.length -1);
	}
	var RegExLang = new RegExp("lang=([1-9].*)");
	if (RegAnchor.test(NewLoc)){
		Addition = NewLoc.substring(NewLoc.lastIndexOf('#'));
		NewLoc = NewLoc.substring(0, NewLoc.lastIndexOf('#'));
	}
	
	if (RegEx.test(NewLoc)){
		if (RegExLang.test(NewLoc)){
			document.location.href = NewLoc.replace(/lang=\d{1,6}/,"lang=" + lang) + Addition;
		}else{
			document.location.href = NewLoc + "&lang=" + lang + Addition;
		}
	}else{
		document.location.href = NewLoc + "?lang=" + lang + Addition;
	}
	return false;
}

function ContactUsCheck(form){
	var errors = "";
	var IntRegExp  = /(^-?\d\d*$)/;
	var fields = form.elements;
	for(var i = 1; i < fields.length; i++){
      	fields.item(i).style.backgroundColor="white";
    }
	
	if (form.first_name.value==""){
		errors+=lng['contact_first']+"\n";
		form.first_name.style.backgroundColor="red";
	}
	if (form.last_name.value==""){
		errors+=lng['contact_last']+"\n";
		form.last_name.style.backgroundColor="red";
	}
	if (form.email.value==""){
		errors+=lng['contact_email']+"\n";
		form.email.style.backgroundColor="red";
	}else if (form.email.value!=""){
		var test = form.email.value.match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
		if (test == null){
		errors+=lng['contact_email_invalid']+"\n";
		form.email.style.backgroundColor="red";
		}
	}
	if (form.notes.value==""){
		errors+=lng['contact_message']+"\n";
		form.notes.style.backgroundColor="red";
	}
	
	if (errors != ""){
		alert(errors);
		return false;
	}else{
		return true;
	}
}

function setFlashSize(newW, newH){
	d = document.getElementById("flash_tickets");
	d.style.width = newW+"px";
	d.style.height = newH+"px";
}

function ResetSearchTransactions(){
	document.getElementById("finance_list").f_created_after.value='';
	document.getElementById("finance_list").f_created_before.value='';
	document.getElementById("finance_list").f_type.value='0';
	document.getElementById("finance_list").submit();
}

var news_start=150;
var news_speed=30;
window.onload=function(){
	NewsInit();
}
window.onunload=function(){
	clearInterval(news_interval);
}
var news_pos=news_start;
function NewsInit(){
	var news=document.getElementById('news_scroll');
	if(!news){
		return;
	}
	news_interval=setInterval('NewsScroll()',news_speed);
	news.onmouseover=function(){
		clearInterval(news_interval);
	}
	news.onmouseout=function(){
		news_interval=setInterval('NewsScroll()',news_speed);
	}
}
function NewsScroll(){
	var news=document.getElementById('news_scroll').getElementsByTagName('ul')[0];
	news.style.top=news_pos+'px';
	if(news_pos<(document.getElementById('news_scroll').getElementsByTagName('ul')[0].offsetHeight*(-1)+news_speed)){
		news_pos=news_start;
	}
	news_pos--;
}

function pay_via(show){
	var Payments = new Array('pay_prepaid', 'pay_gateway1', 'pay_gateway2');
	var i;
	for (i in Payments){
		if (document.getElementById(Payments[i])){
			if (show == Payments[i]){
				document.getElementById(Payments[i]).style.display = 'block';
			}else{
				document.getElementById(Payments[i]).style.display = 'none';
			}
		}
	}
	return false;
}

function ClearField(elem){
	if(!elem._haschanged){
		elem.value='';
	};
	elem._haschanged=true;
}
