/* JavaScript Document */
var loading = new Array();

var section = document.location.href.replace(/^.*(&|\?)section=([^&]*).*$/g, '$2');
var module  = document.location.href.replace(/^.*(&|\?)module=([^&]*).*$/g, '$2');


Object.toQueryString = function(source){
	var queryString = [];
	for (var property in source) if(source[property]!='') queryString.push(encodeURIComponent(property)+'='+encodeURIComponent(source[property]));
	return queryString.join('&');
};

//loading.push('addStandardClass()');
function addStandardClass(parent)
{
	parent = parent ? parent+' ' : '';
	var list = $$(parent+'input');
	for(var i=0; i<list.length; i++) {
		var input = list[i];
		var type = input.getProperty('type') ? input.getProperty('type') : 'text';
		input.addClass('input_'+type);	
	}
}

function goto(idx, force)
{
	var cur = parseInt($('offset').value);
	var last = $('offset').options[$('offset').options.length-1].value;
	switch(idx) {
			case 'first': 
				idx = 1;
				break;
			case 'previous': 
				idx = cur==1 ? 1 : cur-1;
				break;
			case 'last': 
				idx = last;
				break;
			case 'next': 
				idx = cur==last ? cur :  cur+1;
				break;
			default:
				idx = Math.min(Math.max(idx, 1), last);
	}
	if(cur!=idx || force) {
		if($('searchform')) $('searchform').reset();
		if($('offset')) $('offset').value = idx;
		loadList();	
	}
}

function loadList()
{
	var query1 = $('searchform') ? '&'+$('searchform').toQueryString() : '';
	var query2 = $('sortform')   ? '&'+$('sortform').toQueryString()   : '';
	var query3 = $('listform')   ? '&'+$('listform').toQueryString()   : '';
	var url = document.location.href.replace(/&cmd=[^&]*/, '').replace(/#.*/, '')+'&cmd=list'+query1+query2+query3;
	new ajax(url, {update:'listdiv'}).request();
}

function saveToCookie(obj)
{
	var name = $pick($(obj).getProperty('id'), $(obj).getProperty('name'));
	var path = section + '/' + module + '/' + name;
	Cookie.set(encodeURI(path), $(obj).value, {});
}

function printTo(port, content)
{
	switch(port) {
		case 'prn':
			$each($(document.body).getChildren(), function(el){el.addClass('hidden');});
			printdiv = $(content).clone();
			printdiv.setStyles({
								height: Window.getSize().size.y+'px',
								background: '#FFFFFF',
								margin: '0',
								padding: '0'
						 		});
			printdiv.injectInside(document.body);
			printdiv.id="printdiv";
			var tdiv = new Element('div');
			tdiv.id = 'tdiv';			
			$each($$('#printdiv .noprint'), function(el){
				el.remove();
			});	
			
			$each($$('#printdiv .title'), function(el){
				el.setStyle('margin', '0 0 10px 0');
			});
			
			tdiv.setHTML('<div style="margin:20px; " class="noprint"><input type="button" value="Return" onclick="printTo(\'return\')"></div>');
			tdiv.injectBefore(printdiv.getFirst());
			setTimeout('window.print()', 10);
			break;	

		case 'return':
			$each(document.body.getChildren(), function(el){el.removeClass('hidden');});
			printdiv.remove();
			break;
	}
}

function openNewWindow(url, w, h)
{
	w = (w==null) ? 600 : w;
	h = (h==null) ? 450 : h;
	var target = url.test(/^index\.php.*/i) ? 'popup' : '_blank';
	var aWindow = makePopup(url, target, w, h, 'yes', 'yes');
}

function makePopup(pageURL, pageName, w, h, pageScroll, pageCenter)
{
	if(pageCenter == 'no')	{
		LeftPosition = 10;
		TopPosition = 10;
	} else {
		LeftPosition = (screen.width) ? (screen.width-w) / 2 : 0;
		TopPosition = (screen.height) ? (screen.height-h) / 2 : 0;
	}

	var pageConfig = 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=' + pageScroll + ', resizable=yes, width=' + (w + 18) + ', height=' + (h + 18) + ', left=' + LeftPosition + ', top=' + TopPosition;
	var popup = window.open(pageURL.replace(/&popup=[^&]*/,'')+'&popup=1', pageName, pageConfig);
	popup.focus();
	return popup;
}

function findID(obj)
{	
	if(obj = $(obj)) {
		alert(obj);
		while(obj = obj.getParent()) {
			if(obj.id) {
				var id =  parseInt(obj.id.replace(/^list_row_(\d)+$/ig, '$1'));
				if(id){				
					return id;
				}
			}
		}
	}
	return false;
}

function hideLoading()
{
	$('loading').addClass('hidden');	
}

function doDelete(obj, id)
{
	var id = id ? id : findID(obj);
	new ajax('index.php?section='+section+'&module='+module+'&cmd=delete&id='+id, { onComplete:loadList }).request();
}

function doEdit(lang, obj, id)
{
	if( typeof(a_window) != 'undefined') a_close(a_window, 'edit_box');
	var cmd = id ? 'edit' : 'new';
	var id = id ? id : findID(obj);
	$('edit_box').style.top =  window.getSize().scroll.y+4+'px';
	$('edit_box').style.left = Math.max((window.getSize().size.x-$('edit_box').getSize().size.x)/2, 8)+'px';
	$('loading').removeClass('hidden');
	new ajax('index.php?section='+section+'&module='+module+'&cmd='+cmd+'&id='+id+'&lang='+lang, { update:'edit_box', loading:null, onComplete:hideLoading }).request();
}

function doSubmit(frm, iframe)
{
	if($('a_submit').value == 'Saving...') return false;
	
	var oDoc = $('myframe').contentWindow || $('myframe').contentDocument;
	if (oDoc.document) {
		oDoc = oDoc.document;
	}
	oDoc.body.innerHTML = '';
	doSubmit.submitOK = function(res){
		var script, regexp = /<script[^>]*>([\s\S]*?)<\/script>/gi;
		while ((script = regexp.exec(res))) eval(script[1]);
		if(res.indexOf('[[error]]')>-1) {
			alert('Error in saving.');
			$('a_submit').value = $('a_submit').pre_value;
		} else if(res.indexOf('[[fault]]')>-1) {// error with php message
			$('a_submit').value = $('a_submit').pre_value;	
		} else {	
			a_close('edit_box');	
			loadList();	
		}
	};
	
	doSubmit.check = function(){
		var oDoc = $('myframe').contentWindow || $('myframe').contentDocument;
		if (oDoc.document) {
			oDoc = oDoc.document;
		}
		var txt = oDoc.body ? oDoc.body.innerHTML : '';
		if(txt!='' && txt!='false') {
			doSubmit.submitOK(txt);	
			//doSubmit.myframe.remove();
		} else {
			doSubmit.check.delay(500);
		}
	};
	
	if(iframe) {
		doSubmit.check.delay(500);
	} else {
		var a = new ajax(null, { evalScripts:true, onComplete:this.submitOK, method:'post' });
		a.setHeader('Content-type', 'multipart/form-data; charset=utf8');
		a.send('index.php', $('adminform').toQueryString());
	}
	$('a_submit').pre_value = $('a_submit').value;
	$('a_submit').value = 'Saving...';
	return iframe;
}

function doDeleteImage(dir, id)
{
	doDeleteImage.removeImage = function()
	{
		$('imageBox') && $('imageBox').remove();
	}
	new ajax('index.php?section='+section+'&module='+module+'&cmd=deleteimage&id='+id, {onComplete:doDeleteImage.removeImage, update:'imageBox'}).request();
}

function a_close(obj, newid)
{
	$(obj).setHTML('');
	if(newid) $(obj).id = newid;
}

function a_minimize(sender, obj)
{
	$(obj).t_height = $(obj).getSize().size.y;
	
	var style = {
					height: '23px',
					overflow: 'hidden' 
				};				
	$(obj).setStyles(style);
	$(sender).addClass('hidden');
	$(sender).getNext().removeClass('hidden');
}

function a_restore(sender, obj)
{
	var style = {
					height: $(obj).t_height,
					overflow: 'visible' 
				};
	$(obj).setStyles(style);
	sender.addClass('hidden');
	sender.getPrevious().removeClass('hidden');
}

function setGroupName(selobj, inpobj, imgobj, group)
{
	if($(selobj)) {
		$(inpobj).value=$(selobj).options[$(selobj).selectedIndex].text;	
		$(imgobj).src = 'showpic.php??mw=64&mh=64&dir='+group+'&pic='+$(selobj).value;
	}
}

function doNewGroup(rowobj, cmdobj, txtobj)
{
	$(cmdobj).value = 'insert';
	$(rowobj).remove();
	$(txtobj).value='';
}

function doDeleteGroup(cmdobj)
{
	if(confirm('Do you want to delete this group?')) {
		$(cmdobj).value = 'delete';
		$(cmdobj).form.submit();
	}
}

function addRecord(sender, obj)
{
	obj = $(obj);
	var clone = obj.clone();
	clone.injectBefore($(sender));
	clone.id = 'temp_cloned';
	$$('#temp_cloned INPUT, #temp_cloned SELECT, #temp_cloned TEXTAREA').each(function(el){
		el.name = el.name.replace(/^~/, '');
	});
	clone.id = null;
	clone.removeClass('hidden');
}

function checkTextDOM(dom1)
{
	if(dom1.value=="") {
		dom1.className = "RequiredField";
		return false;
	}
	else {
		dom1.className = "";
		return true;
	}
}
function checkFormItem(dom1)
{
	//you must set form onsubmit="checkFormItem(this);"
	//and set onblur items...
	//if need check before send form onblur="checkFormItem(this);"
	//else onblur="" that goal is check this item on onsubmit
	var retflag = true;
	if(dom1.tagName=="FORM") {
		for(i=dom1.elements.length-1;i>=0;i--) {
			try{
				if(dom1.elements[i].onblur!=null) {
					if(dom1.elements[i].id=="xpassword2") {
						if(!checkFormPassword(dom1.elements[i-1], dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					} else if(dom1.elements[i].id=="Email") {
						if(!checkEmail(dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					} else {
						if(!checkFormItem(dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					}
				}
			}catch(e){}
		}
	} else if(dom1.tagName=="INPUT" || dom1.tagName=="TEXTAREA") {
		if(dom1.value=="") {
			dom1.className = "RequiredField";
			retflag = false;
		}
		else {
			dom1.className = "";
		}
	} else if(dom1.tagName=="SELECT") {
		if(dom1.selectedIndex==0) {
			dom1.className = "RequiredField";
			retflag = false;
		}
		else {
			dom1.className = "";
		}
	}
	return retflag;
}
function checkEmail(dom1)
{
	var retflag = true;
	var str = dom1.value;
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1) retflag = false;
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) retflag = false;
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) retflag = false;
	if (str.indexOf(at,(lat+1))!=-1) retflag = false;
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) retflag = false;
	if (str.indexOf(dot,(lat+2))==-1) retflag = false;
	if (str.indexOf(" ")!=-1) retflag = false;
	if(retflag)
		dom1.className = "";
	else
		dom1.className = "RequiredField";
	return retflag;
}

function checkFormPassword(dom1, dom2)
{
	var retflag = true;
	if(checkFormItem(dom2)) {
		if(dom1.value==dom2.value){
			dom2.className = "";
		} else {
			dom2.className = "RequiredField";
			retflag = false;
		}
	} else {
		retflag = false;
	}
	return retflag;
}
function img(){
$('img').setProperty('src', '../images/button/search-over.jpg');

}
function img1(){
$('img').addEvent('mouseOver',img());
}

function FP_swapImg() {//v1.0
 var doc=document,args=arguments,elm,n; doc.$imgSwaps=new Array(); for(n=2; n<args.length;
 n+=2) { elm=FP_getObjectByID(args[n]); if(elm) { doc.$imgSwaps[doc.$imgSwaps.length]=elm;
 elm.$src=elm.src; elm.src=args[n+1]; } }
}

function FP_preloadImgs() {//v1.0
 var d=document,a=arguments; if(!d.FP_imgs) d.FP_imgs=new Array();
 for(var i=0; i<a.length; i++) { d.FP_imgs[i]=new Image; d.FP_imgs[i].src=a[i]; }
}

function FP_getObjectByID(id,o) {//v1.0
 var c,el,els,f,m,n; if(!o)o=document; if(o.getElementById) el=o.getElementById(id);
 else if(o.layers) c=o.layers; else if(o.all) el=o.all[id]; if(el) return el;
 if(o.id==id || o.name==id) return o; if(o.childNodes) c=o.childNodes; if(c)
 for(n=0; n<c.length; n++) { el=FP_getObjectByID(id,c[n]); if(el) return el; }
 f=o.forms; if(f) for(n=0; n<f.length; n++) { els=f[n].elements;
 for(m=0; m<els.length; m++){ el=FP_getObjectByID(id,els[n]); if(el) return el; } }
 return null;
}

function CheckHosting(obj){
	ID = obj.id.replace(/^[^0-9]+/,'');
	document.getElementById('hosting_duration'+ID).disabled = !obj.checked;
	document.getElementById('xhostid'+ID).disabled = !obj.checked;
	<!--document.getElementById('NeedHosting'+ID).value = (obj.checked)?1:0;-->
	setPrice('xhostid'+ID);
}

function setPrice(obj) {
	obj = $(obj);
	var id = obj.id.replace(/^[^0-9]+/, '');
	var year = $('hosting_duration'+id);
	year.options[0].text = 'یک سال / '+obj.options[obj.selectedIndex].title+' تومان';
	year.options[1].text = 'دو سال / '+obj.options[obj.selectedIndex].title*2+' تومان';
	year.options[2].text = 'سه سال / '+obj.options[obj.selectedIndex].title*3+' تومان';
	year.options[3].text = 'پنج سال / '+obj.options[obj.selectedIndex].title*5+' تومان';
	year.options[4].text = 'ده سال / '+obj.options[obj.selectedIndex].title*10+' تومان';
}

function DomainSelectChange(obj){
	ID = obj.id.replace(/^[^0-9]+/, '');
	document.getElementById('domain_duration'+ID).disabled = !obj.checked;
	//document.getElementById('NeedDomain'+ID).value = (obj.checked)?1:0;
	if(obj.checked)
		document.getElementById('TRid'+ID).className = document.getElementById('TRid'+ID).className.substr(0, 4)+ "selected";
	else{
		document.getElementById('TRid'+ID).className = document.getElementById('TRid'+ID).className.substr(0, 4);
		//document.getElementById('hosting'+ID).checked = false;
		CheckHosting(document.getElementById('hosting'+ID));
	}	
}

function AllDomainChanged(obj){
	for(var i=0; i<=obj.form.length;i++)
		if(obj.form.elements[i].type == "checkbox")
			if(obj.form.elements[i].id.substr(0, 5) == "rowid")
				if(!obj.form.elements[i].disabled || !obj.checked){
					obj.form.elements[i].checked = obj.checked;
					DomainSelectChange(obj.form.elements[i]);
				}
}

function SelectRow(obj){
	ID = obj.id.substr(19,10);
	document.getElementById('rowid'+ID).checked = true;
	DomainSelectChange(document.getElementById('rowid'+ID));
}

function PrintIt(obj){
 nw = window.open(null, 'factor', 'status=no,menubar=no,width=600,height=500,scrollbars=auto');
 nw.document.writeln('<html><head>');
 nw.document.writeln('<link rel="stylesheet" href="scripts/style.css" type="text/css">');
 nw.document.writeln('</head><body onload="window.print()">');
 nw.document.writeln('<img src="images/logo.gif" class="top_logo" alt="AryaVista" />');
 nw.document.writeln(document.getElementById(obj).innerHTML);
 nw.document.writeln('</body></html>');
 nw.focus();
 setTimeout("nw.stop();nw.print()", "6000");
}

function ChangeValue(obj){
	if(obj.value == 'farsi'){
		t = 'Ø¯Ø§Ù…ÙŠÙ† Ù‡Ø§ÙŠÛŒ Ú©Ù‡ Ø¨Ø§ ÙˆØ¶Ø¹ÙŠØª Â«ØºÙŠØ±Ù…Ø¬Ø§Ø²Â» Ù…Ø´Ø®Øµ Ø´Ø¯Ù‡ Ø§Ù†Ø¯ Ø¯Ø§Ø±Ø§ÛŒ Ú©Ø§Ø±Ú©ØªØ±Ù‡Ø§ÛŒ ØºÙŠØ±Ù…Ø¬Ø§Ø² Ø¯Ø± Ù†Ø§Ù… Ø®ÙˆØ¯ '+
			'Ù…ÙŠØ¨Ø§Ø´Ù†Ø¯ Ú©Ù‡ Ù‚Ø§Ø¨Ù„ Ø«Ø¨Øª Ù†ÙŠØ³ØªÙ†Ø¯. ÙÙ‚Ø· Ø¯Ø±ØµÙˆØ±ØªÙŠÚ©Ù‡ Ø´Ù…Ø§ Ø¯Ø±Ø­Ø§Ù„ Ø«Ø¨Øª Ø¯Ø§Ù…ÙŠÙ† ÙØ§Ø±Ø³ÛŒ Ù‡Ø³ØªÙŠØ¯ØŒ'+
			'Ø¨Ø§ ÙØ±Ù…Øª "Ù†Ù€Ù€Ù€Ù€Ù€Ù€Ù€Ù€Ù€Ù€Ø§Ù….Ø§ÙŠØ±Ø§Ù†"'+
			'  Ú©Ù‡ ÙÙ‚Ø· Ø´Ø§Ù…Ù„ Ø­Ø±ÙˆÙ ÙØ§Ø±Ø³ÛŒ Ùˆ Ø§Ø¹Ø¯Ø§Ø¯ Ù…ÙŠØ¨Ø§Ø´Ø¯ Ùˆ Ù¾Ø³ÙˆÙ†Ø¯ Ø¢Ù† Â«.Ø§ÙŠØ±Ø§Ù†Â» Ø§Ø³ØªØŒ '+
			'Ø§ÙŠÙ† Ú¯Ø²ÙŠÙ†Ù‡ Ø±Ø§ ÙØ¹Ø§Ù„ Ú©Ù†ÙŠØ¯.'+'\n'+
			' (Ø¯Ø±ØµÙˆØ±ØªÙŠÚ©Ù‡ Ø¯Ø§Ù…ÙŠÙ† Ø´Ù…Ø§ Ø¨Ù‡ Ù‡Ø± Ø¯Ù„ÙŠÙ„ÛŒ Ù‚Ø§Ø¨Ù„ Ø«Ø¨Øª Ù†Ø¨Ø§Ø´Ø¯ Ù…Ø¨Ù„Øº Ø¢Ù† Ø¨Ù‡ Ø´Ù…Ø§ Ø¨Ø±Ú¯Ø´Øª Ø¯Ø§Ø¯Ù‡ Ù…ÙŠØ´ÙˆØ¯)'+'\n'+
			'  Ø¢ÙŠØ§ Ø§ÙŠÙ† Ú¯Ø²ÙŠÙ†Ù‡ ÙØ¹Ø§Ù„ Ø´ÙˆØ¯ØŸ';
		if(!window.confirm(t)){
			obj.checked = false;
			document.getElementById('rowid'+ID).checked = false;
			DomainSelectChange(document.getElementById('rowid'+ID));
		}
	}
	ID = obj.id.substr(19,10);
	document.getElementById('DomainStatus'+ID).value = obj.value;
}

function CheckForm(sForm){
	var RET = true;
if (sForm.fld_UUserName.value){	
	if (sForm.fld_UUserName.value && sForm.fld_UserPassword.value){
		return RET;
	}
	else{
		sForm.fld_UUserName.className="RedInput";
		sForm.fld_UserPassword.className="RedInput";
		RET = false;
	}
}else{
	if (sForm.fld_UserName.value.length < 3){
		sForm.fld_UserName.className="RedInput";
		RET = false;
	} else {	
		sForm.fld_UserName.className="input";
	}

	if (sForm.fld_UserTel.value.length < 7){
		sForm.fld_UserTel.className="RedInput";
		RET = false;
	}
	else	
		sForm.fld_UserTel.className="input";

	var Rg = /\w+@\w+\.\w+/;
	if (!Rg.test(sForm.fld_UserEmail.value)){
		sForm.fld_UserEmail.className="RedInput";
		RET = false;
	} else {	
		sForm.fld_UserEmail.className="input";
	}
	
	
	if (sForm.fld_Uname.value.length < 3){
		sForm.fld_Uname.className="RedInput";
		RET = false;
	} else {	
		sForm.fld_Uname.className="input";
	}	
	
	if (sForm.fld_Password.value.length < 3){
		sForm.fld_Password.className="RedInput";
		RET = false;
	} else {	
		sForm.fld_Password.className="input";
	}	
	
	if (sForm.fld_Password.value != sForm.fld_confirm.value){
		sForm.fld_Password.className="RedInput";
		sForm.fld_confirm.className="RedInput";
		RET = false;
	} else {	
		sForm.fld_confirm.className="input";
	}
}
	if(!RET){
		alert('لطفاً فيلدهايی که با رنگ قرمز مشخص شده اند را بطور صحيح پر نمائيد.');
	}
	return RET;
}
