
function img1(name) {
	 img=new Image();
     img.src = '/i/'+name+'.gif';
	 document.images[name].src=img.src;
}

function img2(name) {
	 img=new Image();
     img.src = '/i/'+name+'b.gif';
	 document.images[name].src=img.src;
}

function dbl(t) {
	if(t.dlg_clicked)
		return false;
	t.dlg_clicked=true;
	return true;
}


function calc_bar() {
	var page = document.getElementById('page');
	var sr = document.getElementById('sr');
	if ( ! page || ! sr) return;
	sr.style.width = page.offsetLeft + 4 + 'px';
}
window.onresize = calc_bar

function vSlider(id) {
	if ( ! vSlider.instances ) vSlider.instances = {};
	var c;
	var slider;
	var items;
	var width;
	var maxw;
	var nav = false;
	this.running = false;
	this.ah = false; // auto handler
	var delay = 5000;
	
	this.setup = function () {
		c = $('#' + id);
		slider = $('.slider', c);
		items = $('.item', slider);
		items.addClass('left');
		width = c.width();
		maxw = width * items.length;
		items.css('width', width);
		slider.css('width', maxw);
		if (items.length > 1) {
			c.append('<div class="nav"><div class="l" onclick="vSlider.instances[\'' + id + '\'].slide(-1)"></div><div class="r" onclick="vSlider.instances[\'' + id + '\'].slide(1)"></div></div>');
			var navs = $('.nav', c);
			nav = {l: $('.l', navs), r: $('.r', navs)};
		}
		this.go(-1);
	}
	
	this.go = function (step) {
		if (this.running)
			return;
		var l = step * width;
		var ml = parseInt(slider.css('marginLeft'));
		var npos = ml - l;
		var npos2 = ml - (l * 2);
		if (nav) {
			if (npos2 > 0) 
				nav.l.hide();
			else
				nav.l.show();
			if (npos2 < -(maxw - width)) 
				nav.r.hide();
			else
				nav.r.show();
		}
		if ((npos > 0 && step < 0) || (npos < -(maxw - width) && step > 0)) {
			return;
		} 
		
		this.running = true;
		slider.animate({
			'marginLeft': npos + 'px'
		}, 500, function () {
			vSlider.instances[id].running = false;
		});
	}
	
	this.start = function () {
		this.ah = setTimeout(function () { vSlider.instances[id].auto(); }, delay);
	}
	
	this.auto = function () {
		var ml = parseInt(slider.css('marginLeft'));
		if (ml > -(maxw - width)) {
			this.go(1);
		} else {
			this.go(-(items.length - 1));
		}
		this.ah = setTimeout(function () { vSlider.instances[id].auto(); }, delay);
	}
	
	this.slide = function (d) {
		this.go(d);
		clearTimeout(this.ah);
	}
	
	vSlider.instances[id] = this;
	$(document).ready(function () {vSlider.instances[id].setup();} );
}



function getElementsByClassName(cn,root,tag){
    var arr = new Array();
    var els = ( root != undefined ? root : document ).getElementsByTagName(tag ? tag : '*');
    var exp= new RegExp("^(.* )?"+cn+"( .*)?$", "i");
    for (var i = 0; i < els.length; i++ ) 
        if (exp.test(els[i].className)) 
            arr.push(els[i]);
    return arr;
}

function hasClass(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}

function addClass(ele,cls) {
	if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}

function removeClass(ele,cls) {
	if (hasClass(ele,cls)) {
    	var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
}

function setup_tabs(buttons_id, tabs_id, def) {
	switch_tab(document.getElementById(buttons_id), document.getElementById(tabs_id), def);
}

function switch_tab(buttons, tabs, active) {
	buttons = getElementsByClassName('tab_button', buttons);
	button_id = active + '_button';
	tab_id = active + '_tab';
	for (var i = 0; i < buttons.length; i++) {
		if (buttons[i].id == button_id)  {
			addClass(buttons[i], 'active');
			if (buttons[i].onclick) {
				buttons[i].onclick();
			}
		} else
			removeClass(buttons[i], 'active');
	}
	tabs = getElementsByClassName('tab', tabs);

	for (i = 0; i < tabs.length; i++)
		tabs[i].style.display = tabs[i].id == tab_id ? 'block' : 'none';

}

var previous_hash = '';

function hash_change() {
	window.setInterval(
		function () {
			if (window.location.hash.length && window.location.hash != previous_hash) {
				var tab_id = window.location.hash.replace('#', '');
				var tab = document.getElementById(tab_id + '_tab');
				if (tab) {
					var tabs = tab.parentNode;
				//	button = document.getElementById(tab_id + '_button');
					var buttons = document.getElementById('product_buttons');
					switch_tab(buttons, tabs, tab_id);
				}
				previous_hash = window.location.hash;
			}
		}
	, 100);
}


function fontSize(size) {
	document.body.className = 'font' + size;
	$.get(DEFAULT_ROOT, {font: size, ajax: 1});
	return false;
}
