var currentTextSize = 0;
var pl_current = 'none';
var pl_clink = null;

function initPcms(){
	Element.hide('working');

	var appHandlers = {
	
		onCreate: function(){
			Element.show('working');
		},

		onComplete: function() {
			if(Ajax.activeRequestCount == 0){
				Element.hide('working');
				changeTextSize(text_size);
			}
		}
	};
	Ajax.Responders.register(appHandlers);
}


function formPostUpd(form, event, container) {
	var params = Form.serialize(form);
	if (event != null) params = event + '&' + params;
	new Ajax.Updater(container, form.action, {method:'post', postBody:params});
}

function formPostEval(form, event, container) {
	var params = Form.serialize(form);
	if (event != null) params = event + '&' + params;
	new Ajax.Updater(container, form.action, {method:'post', postBody:params, evalScripts: true});
}

function updateDiv(url, container){
	updateDiv(url, container, '');
}

function updateDiv(url, container, params){
	var leftMenuAjax = new Ajax.Updater(
				{success: container}, 
				url, 
				{
					method: 'get',
					params: params,
					evalScripts: true,
					onFailure: function () { Element.update(container, 'Error fetching request url:<br>' + url); }
				});
}


formatCurrency = function (n, c, d, t) {
    var m = (c = Math.abs(c) + 1 ? c : 2, d = d || ",", t = t || ".",
        /(\d+)(?:(\.\d+)|)/.exec(n + "")), x = m[1].length > 3 ? m[1].length % 3 : 0;
    return (x ? m[1].substr(0, x) + t : "") + m[1].substr(x).replace(/(\d{3})(?=\d)/g,
        "$1" + t) + (c ? d + (+m[2] || 0).toFixed(c).substr(2) : "");
}

function loadHome(){
	updateDiv('/page.do', 'page');
}

function loadProduct(id){
	updateDiv('/page.do?product&id=' + id, 'page');
}

function loadNews(id){
	updateDiv('/page.do?news&id=' + id, 'page');
}

function loadDetailNews(id){
	$('detailnews').innerHTML = '';
	updateDiv('/news.do?title=true&id=' + id, 'detailnews');
	$('listnews').style.display = 'none';
	$('detailcontainer').style.display = 'block';
}

function showNewsList(){
	$('detailcontainer').style.display = 'none';
	$('listnews').style.display = 'block';
}

function loadAllNews(){
	updateDiv('/allnews.do', 'page');
}

function afterLoginSuccess(){
	document.location.reload();
}

function refreshContent(){
	updateDiv('/content.do', 'container');
}

function changeTextSize(new_size){
	// Returns if no changes allowed
	if(currentTextSize == new_size || new_size < 0 || new_size > 2) return;

	var tags = ['div', 'p', 'a', 'td', 'span', 'b', 'input', 'ul', 'li'];
	var sizes = null;	
	sizes = ['12px', '14px', '16px'];

	var container = document.getElementById('container');
	
	if(container){
		container.style.fontSize= sizes[new_size];
		
		for(tag = 0; tag < tags.length; tag++){
			elts = container.getElementsByTagName(tags[tag]);
			for(i = 0; i < elts.length; i++){
				elt = elts[i];
				if(!elt.className.substring(0, 7) == 'nosize_'){
					el = elt.style;
					el.fontSize= sizes[new_size];
				}
			}
		}

		// Set new current size
		currentTextSize = new_size;
		
		// cycle through elements
		// set current size button
		document.getElementById("button_small").className = (currentTextSize == 0) ? "sizebutton_x" : "sizebutton";
		document.getElementById("button_medium").className = (currentTextSize == 1) ? "sizebutton_x" : "sizebutton";
		document.getElementById("button_large").className = (currentTextSize == 2) ? "sizebutton_x" : "sizebutton";

	}

}


function toggle_pl(elt, status){
	if(pl_current != elt){
		if(pl_current != 'none') toggle_pl(pl_current, 'on');
		pl_current = elt;
	}

	c_active = elt + "_" + status;
	c_inactive = elt + "_" + ((status == 'on') ? 'off' : 'on');

	elt0 = document.getElementById(c_active);
	elt0.style.display = 'none';
	//Effect.BlindUp(elt0, {duration:0.3});
	elt1 = document.getElementById(c_inactive);
	elt1.style.display = 'block';
	//Effect.BlindDown(elt1, {duration:0.3});
}


function pl_sellink(elt) {
	if(pl_clink != null) {
		pl_clink.style.textDecoration = 'none';
	}
	elt.style.textDecoration = 'underline';
	pl_clink = elt;	
}


function product_detail(newsid, prodid, elt){
	menu = document.getElementById('menuprodet');
	elts = menu.getElementsByTagName('div');
	for(i=0; i < elts.length; i++) {
		elts[i].className = 'detailtab';
	}
	elt.className = 'detailtab_hi';
	updateDiv('/news.do?id=' + newsid + '&title=false' + '&prodid=' + prodid, 'proddetail');
}

