// user.class.php

function userEnableModeratorOptions(totalmodules) {
	if(document.editform.level_id.options[document.editform.level_id.selectedIndex].value == 2) {
		document.getElementById("rights").className = "enabled";

		for(var x = 0; x < totalmodules; x++) {
			document.getElementById("ma" + x).disabled = false;
		}
	} else {
		document.getElementById("rights").className = "disabled";

		for(var x = 0; x < totalmodules; x++) {
			document.getElementById("ma" + x).disabled = true;
			document.getElementById("ma" + x).checked = false;
		}
	}
}

// account.class.php

function updateAccountDomainCheck() {
	if(document.newform.extra_price_id.options[document.newform.extra_price_id.selectedIndex].value == -1)
		document.newform.p2.value = 'domain:_notnull_';
	else
		document.newform.p2.value = 'domain:_domain__notnull_';		
}

function updateAccountList(listtype, by, key) {
	location.href = '?section=account&sub=list&by='+by+'&key='+key+'&listtype='+listtype+'&page='+document.typeform.page.options[document.typeform.page.selectedIndex].value+'&type_id='+document.typeform.type_id.options[document.typeform.type_id.selectedIndex].value;
}

function updateAccountListUser(listtype) {
	location.href = '?section=account&sub=list&listtype='+listtype+'&page='+document.typeform.page.options[document.typeform.page.selectedIndex].value;
}

function updateAccountType() {
	location.href = '?section=account&sub=create&user_id='+document.newform.user_id.options[document.newform.user_id.selectedIndex].value+'&server_id='+document.newform.server_id.options[document.newform.server_id.selectedIndex].value+'&type_id='+document.newform.type_id.options[document.newform.type_id.selectedIndex].value;
}

function updateAccountProposalList(listtype, by, key) {
	location.href = '?section=account_proposal&sub=list&by='+by+'&key='+key+'&listtype='+listtype+'&page='+document.typeform.page.options[document.typeform.page.selectedIndex].value+'&type_id='+document.typeform.type_id.options[document.typeform.type_id.selectedIndex].value;
}

function updateAccountProposalListUser(listtype) {
	location.href = '?section=account_proposal&sub=list&listtype='+listtype+'&page='+document.typeform.page.options[document.typeform.page.selectedIndex].value;
}

function updateAccountProposalTypeEdit() {
	location.href = '?section=account_proposal&sub=edit&user_id='+document.newform.user_id.options[document.newform.user_id.selectedIndex].value+'&server_id='+document.newform.server_id.options[document.newform.server_id.selectedIndex].value+'&type_id='+document.newform.type_id.options[document.newform.type_id.selectedIndex].value;
}

function updateAccountTypeUser() {
	location.href = '?section=account&sub=create&type_id='+document.newform.type_id.options[document.newform.type_id.selectedIndex].value;
}

function updateAccountTypeEdit(account_id) {
	location.href = '?section=account&sub=edit&account_id='+account_id+'&type_id='+document.editform.type_id.options[document.editform.type_id.selectedIndex].value;
}

function updateAccountProposalType() {
	location.href = '?section=account_proposal&sub=create&type_id='+document.newform.type_id.options[document.newform.type_id.selectedIndex].value;
}

function updateAccountProposalTypeEdit(proposal_id) {
	location.href = '?section=account_proposal&sub=edit&proposal_id='+proposal_id+'&type_id='+document.newform.type_id.options[document.newform.type_id.selectedIndex].value;
}

// article.class.php

function articleArchiveUpdateDate() {
	location.href = '?section=news&sub=archive&date='+document.editform.date.options[document.editform.date.selectedIndex].value;
}

// banner.class.php

function bannerCreateUpdateType() {
	location.href = '?section=banner&sub=create&bannertype='+document.editform.bannertype.options[document.editform.bannertype.selectedIndex].value;
}

function bannerEditUpdateType() {
	location.href = '?section=banner&sub=edit&bannertype='+document.editform.bannertype.options[document.editform.bannertype.selectedIndex].value;
}

// calendar.class.php

function calendarSelectColor(color) {
	document.editform.color.value = color;
	document.getElementById("colorpanel").style.backgroundColor = color;
}

// download.class.php

function openFM(sid) {
	openPopup('?section=download&sub=listfiles&hidden=1&PHPSESSID='+sid, 'fm', '640', '480');
}

// engine.class.php

// START of Swap Image Code from Macromedia Dreamweaver //

function preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.p) d.p=new Array();
    var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.p[j]=new Image; d.p[j++].src=a[i];}}
}

function swapImgRestore() { //v3.0
  var i,x,a=document.sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function swapImage() { //v3.0
  var i,j=0,x,a=swapImage.arguments; document.sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=findObj(a[i]))!=null){document.sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

// END of Swap Image Code //

function goTo(url) {
	location.href = url;
}

function openPopup(path, name, width, height) {
	oc = window.open(path,name,"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,copyhistory=no,dependent=yes,width="+width+",height="+height)
}

function remove(go, text) {
	var name = confirm(text);

	if(name == true) {
	  window.location = go;
	}
}


function _remove(go, text) {
	var name = confirm(text);

	if(name == true) {
	  window.location = go;
	}
}

function genericSubmitImageForm() {
	document.imgform.submit();
	document.imgform.postit.disabled = true;
	document.images.progress.src = "contents/system/progressbar.gif";
}

function genericSubmitDownloadForm() {
	document.fileform.submit();
	document.fileform.postit.disabled = true;
	document.images.progress.src = "contents/system/progressbar.gif";
}

function updateImage(file, img_id) {
	if (!document.images)
		return;
	opener.document.images.dimage.src = file;
	opener.document.editform.img_id.value = img_id;
	window.close();
}

function removeImage() {
	document.images.dimage.src = 'contents/system/spacer.gif';
	document.editform.img_id.value = -1;
}

function acceptFile(file) {
	opener.document.editform.filename.value = file;
	window.close();
}

function updateProductInfo(ptype) {
	var sel_id = document.getElementsByName(ptype)[0].options[document.getElementsByName(ptype)[0].selectedIndex].value;
	document.getElementsByName(ptype + '_price')[0].value = currency(document.getElementsByName('h_' + ptype + '_price_' + sel_id)[0].value);
	document.getElementsByName(ptype + '_price_total')[0].value = currency(document.getElementsByName('h_' + ptype + '_price_' + sel_id)[0].value * document.getElementsByName(ptype + '_qt')[0].value);

	var cpu_price = new Number(document.getElementsByName('cpu_price_total')[0].value.substring(1));
	var mb_price = new Number(document.getElementsByName('mb_price_total')[0].value.substring(1));
	var gpu_price = new Number(document.getElementsByName('gpu_price_total')[0].value.substring(1));
	var psu_price = new Number(document.getElementsByName('psu_price_total')[0].value.substring(1));
	var ram_price = new Number(document.getElementsByName('ram_price_total')[0].value.substring(1));
	var hdd_price = new Number(document.getElementsByName('hdd_price_total')[0].value.substring(1));
	var dvdr_price = new Number(document.getElementsByName('dvdr_price_total')[0].value.substring(1));
	var dvdrw_price = new Number(document.getElementsByName('dvdrw_price_total')[0].value.substring(1));
	var atx_price = new Number(document.getElementsByName('atx_price_total')[0].value.substring(1));
	var monitor_price = new Number(document.getElementsByName('monitor_price_total')[0].value.substring(1));
	var keyboard_price = new Number(document.getElementsByName('keyboard_price_total')[0].value.substring(1));
	var mouse_price = new Number(document.getElementsByName('mouse_price_total')[0].value.substring(1));
	var speaker_price = new Number(document.getElementsByName('speaker_price_total')[0].value.substring(1));
	var printer_price = new Number(document.getElementsByName('printer_price_total')[0].value.substring(1));
	var ups_price = new Number(document.getElementsByName('ups_price_total')[0].value.substring(1));
	var audio_price = new Number(document.getElementsByName('audio_price_total')[0].value.substring(1));
	var tv_price = new Number(document.getElementsByName('tv_price_total')[0].value.substring(1));
	var card_price = new Number(document.getElementsByName('card_price_total')[0].value.substring(1));
	
	var total = cpu_price + mb_price + gpu_price + psu_price + ram_price + hdd_price + dvdr_price + dvdrw_price + atx_price + monitor_price + keyboard_price + mouse_price + speaker_price + printer_price + ups_price + audio_price + tv_price + card_price;

	document.getElementsByName('totalconfig')[0].value = currency(total);
}

function toogleEditorMode(sEditorID, action) {
    try {
        if(action == "disable") {
            tinyMCE.removeMCEControl(tinyMCE.getEditorId(sEditorID));
            tinyMCEmode = false;
        } else if(action == "enable") {
            tinyMCE.addMCEControl(document.getElementById(sEditorID), sEditorID);
            tinyMCEmode = true;
        }
    } catch(e) {
        //error handling
    }
}

// imanager.class.php

function imageUpdateLetter(type) {
	location.href = '?section=image&hidden=1&type='+type+'&gletter='+document.editform.gletter.options[document.editform.gletter.selectedIndex].value;
}

// message.class.php

function messageUpdateList(where) {
	location.href = '?section=message&sub='+where+'&page='+document.typeform.page.options[document.typeform.page.selectedIndex].value+'&type_id='+document.typeform.type_id.options[document.typeform.type_id.selectedIndex].value;
}

// module.class.php

function moduleUpdateSubmoduleType() {
	if(document.editform.type.options[document.editform.type.selectedIndex].value == "Custom HTML Menu") {
		document.editform.customhtml.disabled = false;
		document.editform.customhtml.className = "inputbox";
	}else {
		document.editform.customhtml.disabled = true;
		document.editform.customhtml.className = "disabled";
		document.editform.customhtml.value = '';
	}
}

// news.class.php

function newsArchiveUpdateDate() {
	location.href = '?section=news&sub=archive&date='+document.editform.date.options[document.editform.date.selectedIndex].value;
}

// product.class.php

function productUpdateName() {
		location.href = '?section=product_stock&sub=recharge&product_id='+document.editform.product_id.options[document.editform.product_id.selectedIndex].value;
}

function productListUpdateCat(opened) {
		location.href = '?section=product&sub=list&opened='+opened+'&cat_id='+document.listform.cat_id.options[document.listform.cat_id.selectedIndex].value;
}

function productToggleExpirationPanel() {
	var table = document.getElementById('expirationpanel');

	if(document.editform.day.disabled) {
		document.editform.day.disabled = false;
		table.className = "enabled";
	} else {
		document.editform.day.disabled = true;
		table.className = "disabled";
	}
		
	if(document.editform.month.disabled) {
		document.editform.month.disabled = false;
		table.className = "enabled";
	} else {
		document.editform.month.disabled = true;
		table.className = "disabled";
	}
	
	if(document.editform.year.disabled) {
		document.editform.year.disabled = false;
		table.className = "enabled";
	} else {
		document.editform.year.disabled = true;
		table.className = "disabled";
	}	
}

function productCheckoutUpdateShipping(zone_id, payment_id) {
		location.href = '?section=product_basket&sub=checkout&zone_id='+zone_id+'&payment_id='+payment_id+'&ship_id='+document.optionform.ship_id.options[document.optionform.ship_id.selectedIndex].value;
}
function productCheckoutUpdateShippingZone(ship_id, payment_id) {
		location.href = '?section=product_basket&sub=checkout&ship_id='+ship_id+'&payment_id='+payment_id+'&zone_id='+document.optionform.zone_id.options[document.optionform.zone_id.selectedIndex].value;
}
function productCheckoutUpdatePayment(zone_id, ship_id) {
		location.href = '?section=product_basket&sub=checkout&zone_id='+zone_id+'&ship_id='+ship_id+'&payment_id='+document.optionform.payment_id.options[document.optionform.payment_id.selectedIndex].value;
}

function acceptTerms() {
	if(document.newform.accept.checked) {
		document.newform.submit.disabled = false;
	} else {
		document.newform.submit.disabled = true;
	}
}

function updateSimulatorSize() {
		location.href = '?section=account&sub=simulator&mbsize='+document.newform.mbsize.options[document.newform.mbsize.selectedIndex].value;
}
function updateSimulatorEmails(mbsize) {
		location.href = '?section=account&sub=simulator&mbsize='+mbsize+'&emails='+document.newform.emails.options[document.newform.emails.selectedIndex].value;
}
function updateSimulatorSite(mbsize, emails) {
		location.href = '?section=account&sub=simulator&mbsize='+mbsize+'&emails='+emails+'&site='+document.newform.site.options[document.newform.site.selectedIndex].value;
}

function currency(num) {
	num = num.toString().replace(/\$|\,/g,'');

	if(isNaN(num))
		num = "0";

	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();

	if(cents<10)
		cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+
	num.substring(num.length-(4*i+3));

	return (((sign)?'':'-') + '€' + num + '.' + cents);
}

function CTT(){                                 
	orderNumber = document.getElementById("ctl00_CTT1_txtRequestOrderNumber").value
	
	window.open("http://www2.ctt.pt/feapl/jsp/pesqobjectos/public/pesqobjectosresult.jsf?lang=def&trackTrace=" +
		 orderNumber, "new_Win" )
}

function coeficiente(valor, meses) {
	coef = new Array();
	coef[0] = new Array();
	coef[1] = new Array();
	coef[2] = new Array();
	coef[3] = new Array();
	coef[4] = new Array();
	coef[5] = new Array();

	coef[0][6] = 0.180948; coef[0][12] = 0.096903; coef[0][18] = 0.068608; coef[0][24] = 0.054822;
	coef[1][6] = 0.179793; coef[1][12] = 0.095783; coef[1][18] = 0.067989; coef[1][24] = 0.054188; coef[1][30] = 0.045680; coef[1][36] = 0.040291;
	coef[2][6] = 0.178616; coef[2][12] = 0.094647; coef[2][18] = 0.066663; coef[2][24] = 0.052831; coef[2][30] = 0.044609; coef[2][36] = 0.039191;
	coef[3][6] = 0.177834; coef[3][12] = 0.093893; coef[3][18] = 0.065651; coef[3][24] = 0.051799; coef[3][30] = 0.043291; coef[3][36] = 0.037840;
	coef[4][6] = 0.177443; coef[4][12] = 0.093518; coef[4][18] = 0.064648; coef[4][24] = 0.050779; coef[4][30] = 0.042252; coef[4][36] = 0.036778;
	coef[5][6] = 0.1777028; coef[5][12] = 0.093119; coef[5][18] = 0.064150; coef[5][24] = 0.050273; coef[5][30] = 0.041738; coef[5][36] = 0.036253;

	var i = 0;
	if(valor > 300 && valor <= 450)
		i = 0;
	if(valor > 450 && valor <= 750)
		i = 1;
	if(valor > 750 && valor <= 1250)
		i = 2;
	if(valor > 1250 && valor <= 2000)
		i = 3;
	if(valor > 2000 && valor <= 3000)
		i = 4;
	if(valor > 3000 && valor <= 5000)
		i = 5;

	return coef[i][meses];
}

function mensalidade(valor, meses) {
	return valor * coeficiente(valor, meses);
}
