function init() {
	/*new AddDecor('ul.menu li, div.content div.title h2, div.content div.title div, div.content div.title h3, div.content div.gallerydvd div.thumb_item, div#similardvds div.thumb_item, div.item_info, div.content .title dt, table.models div.item .item_rate'
							 ,'both',false);
	new AddDecor('table.gallery div.thumb, #balloon', 'bottom', false);
	new AddDecor('table.models div.item, table.models div.latest_img, div.latest div.latest_img, table.gallery div.item, .framepager_bs .set_items .item, .frameitem');*/

	
//	bodyHeight();
	
	updateOrientation();
	resizeTabs();
	
	function resizeTabs(){
		if(!$("bsiPlaceHolder")){
			return;
		} else {
			var w = $("bsiPlaceHolder").offsetWidth;
		}
		var head = $$("#bsiPlaceHolder div.title div.but");
		
		var offset = ($("join"))?82:0;

		var pl = (w-offset)/(head.length);

		if(pl<0){
			return;
		}
		for(var i=0; i<head.length; i++){
			var el = head[i].getElementsByTagName("SPAN")[0];
			el.style.width = parseInt(pl-12)+"px";
		}
	}
	function updateOrientation()
    {
  	 	var orientation=window.orientation;
		window.scrollTo(0, 1);
     	switch(orientation)
    	{
    	
    		case 0:
    				document.body.setAttribute("class","portrait");
    				break;	
    				
    		case 90:
    				document.body.setAttribute("class","landscapeLeft");
       				break;
    		
    		case -90:	
    				document.body.setAttribute("class","landscapeRight");
    				break;
    	}
		
		resizeTabs();
    
    }
    
    window.onorientationchange=updateOrientation;
	

}

function initAfterAjax(ajax_id) {
	return true;
}


Ajax.Responders.register({
  onComplete: function() { EventSelectors.assign(rulesDefault);}
})

function openImage(url,image_x,image_y)
{
    X_pos = (screen.width/2)-(image_x/2);
    Y_pos = (screen.height/2)-(image_y/2);
    window.open(url,'imagewin','scrollbars=no,resizable=no,left='+X_pos+',top='+Y_pos+',width='+image_x+',height='+image_y);
}

/* DOM-ready watcher by brothercake, http://www.brothercake.com/site/resources/scripts/domready/ */
function domFunction(f, a) {
	var n = 0;
	var t = setInterval(function() {
		var c = true;
		n++;
		if (typeof document.getElementsByTagName != 'undefined' && (document.getElementsByTagName('body')[0] != null || document.body != null)) {
			c = false;
			if (typeof a == 'object') {
				for (var i in a) {
					if ((a[i] == 'id' && document.getElementById(i) == null) || (a[i] == 'tag' && document.getElementsByTagName(i).length < 1) ) {
						c = true;
						break;
					}
				}
			}
			if (!c) { f(); clearInterval(t); }
		}
		if (n >= 60) {
			clearInterval(t);
		}
	}, 250);
};

/**
 * Add some html for decoring any element by css.
 *
 * elements (required) - elements in css style, like '#menu li'
 * layout - where add decor: 'top', 'bottom' or 'both' (by default)
 * wrap - add all childs to a wrap: true (by default) or false
 */
function AddDecor (elements, layout, wrap, id) {
	if (!elements) return false;
	var searchUnder = id ? '#'+id+' ' : '';
	switch (layout) {
		case 'top': this.layout = 'top'; break;
		case 'bottom': this.layout = 'bottom'; break;
		default: this.layout = 'both';
	}
	this.wrap = wrap == null ? true : (wrap == false ? false : true);

	var selArr = elements.split(',');
	var selNum = selArr.length;
	for (var j=0;j<selNum;j++) {
		var elArr = $$(searchUnder+selArr[j]);
		var elNum = elArr.length;
		for (var i=0;i<elNum;i++) {
			this.work(elArr[i]);
		}
	}
	return true;
}

AddDecor.prototype.work = function(el) {
	elChildsNum = el.childNodes.length;

	if (this.wrap) {
		var wrapObj = document.createElement('div');
		wrapObj.className = 'decorWrap';
		while(el.firstChild) wrapObj.appendChild(el.firstChild);
		el.appendChild(wrapObj);
	}

	if (this.layout == 'top' || this.layout == 'both') {
		var decorTop = document.createElement('b');
		decorTop.className = 'decorStr decorTop';
		var decorLeft = document.createElement('i');
		decorLeft.className = 'decorLeft';
		decorTop.appendChild(decorLeft);
		var decorCentre = document.createElement('i');
		decorCentre.className = 'decorCentre';
		decorTop.appendChild(decorCentre);
		var decorRight = document.createElement('i');
		decorRight.className = 'decorRight';
		decorTop.appendChild(decorRight);

		if (el.firstChild) {
			el.insertBefore(decorTop, el.firstChild);
		} else {
			el.appendChild(decorTop);
		}
	}

	if (this.layout == 'bottom' || this.layout == 'both') {
		var decorBottom = document.createElement('b');
		decorBottom.className = 'decorStr decorBottom';
		var decorLeft = document.createElement('i');
		decorLeft.className = 'decorLeft';
		decorBottom.appendChild(decorLeft);
		var decorCentre = document.createElement('i');
		decorCentre.className = 'decorCentre';
		decorBottom.appendChild(decorCentre);
		var decorRight = document.createElement('i');
		decorRight.className = 'decorRight';
		decorBottom.appendChild(decorRight);

		el.appendChild(decorBottom);
	}
}

/* hides 'splash' div and sets cookie 'cms_splash_screen' about it */
function hideSplash() {
	expires = 365; // days

	var today = new Date();
	today.setTime( today.getTime() );
	var expires_date = new Date( today.getTime() + (expires * 1000 * 60 * 60 * 24) );
	document.cookie = 'cms_splash_screen=1' + ';expires=' + expires_date.toGMTString();

	/*$('splash_out').style.display = 'none';*/
	$('splash').style.display = 'none';

}


// Debug Window
var dbw = function(element)
{
	var d="";
	for(f in element) {
		try
		{
			d+=f+"="+element(f)+"\n";
		} 
		catch(e)
		{
			continue;
		}
	}
	myW = open("", "displayWindow", "status=no,toolbar=no,menubar=yes");
	myW.document.open();
	myW.document.write("<html><body><textarea style='width: 500px; heigth: 500px'>"+d+"</textarea></body></html>");
	myW.document.close();
	
}
/**
*@package EnvisioNext javascript library
*@subpackage ListUp
*@copyright (C) 2007 EnvisioNext.com  <support@EnvisioNext.com>
*@author Anton Zavidov <anton.zavidov@envisionext.com.ua>
*/
var ListUp = {
	init : function()
	{
		if($('RelatedItemsViewIdDriver') && $('RelatedItemsViewId') && $('RelatedItemsViewIdSelect')){
			Event.observe($('RelatedItemsViewIdDriver'), 'click', this.RelatedItemsViewIdDriver.bindAsEventListener(this));
			//Event.observe($('RelatedItemsViewIdSelect'), 'change', this.RelatedItemsViewIdSelect.bindAsEventListener(this));
			this.selects($('RelatedItemsViewIdSelect'),'RelatedItemsView');
			this.hiddenEl('RelatedItemsViewId','RelatedItemsView');
			$('RelatedItemsViewId').style.display = "block";
		}
		if($('RelatedPhotoItemsViewIdDriver') && $('RelatedPhotoItemsViewId') && $('RelatedPhotoItemsViewIdSelect')){
			Event.observe($('RelatedPhotoItemsViewIdDriver'), 'click', this.RelatedPhotoItemsViewIdDriver.bindAsEventListener(this));
			//Event.observe($('RelatedPhotoItemsViewIdSelect'), 'change', this.RelatedPhotoItemsViewIdSelect.bindAsEventListener(this));
			this.selects($('RelatedPhotoItemsViewIdSelect'),'RelatedPhotoItemsView');
			this.hiddenEl('RelatedPhotoItemsViewId','RelatedPhotoItemsView');
			$('RelatedPhotoItemsViewId').display = "block";
		}
	},
	RelatedItemsViewIdDriver : function()
	{
		var el = $('RelatedItemsViewId');
		this.hiddenEl('RelatedItemsViewId','RelatedItemsView');
		if(el.style.display == "" || el.style.display == "block") {
			el.style.display = "none";
			$('RelatedItemsViewIdDriver').className = $('RelatedItemsViewIdDriver').className.split(" ")[0]+" collapse";
		} else {
			el.style.display = "block";
			$('RelatedItemsViewIdDriver').className = $('RelatedItemsViewIdDriver').className.split(" ")[0]+" expand";
		}
	},
	RelatedPhotoItemsViewIdDriver : function()
	{
		var el = $('RelatedPhotoItemsViewId');
		this.hiddenEl('RelatedPhotoItemsViewId','RelatedPhotoItemsView');
		if(el.style.display == "" || el.style.display == "block") {
			el.style.display = "none";
			$('RelatedPhotoItemsViewIdDriver').className = $('RelatedPhotoItemsViewIdDriver').className.split(" ")[0]+" collapse";
		} else {
			el.style.display = "block";
			$('RelatedPhotoItemsViewIdDriver').className = $('RelatedPhotoItemsViewIdDriver').className.split(" ")[0]+" expand";
		}
	},
	RelatedItemsViewIdSelect : function(el)
	{
		var value = el.value;
		setSettings('RelatedItemsView',value);
		this.hiddenEl('RelatedItemsViewId','RelatedItemsView');
	},
	RelatedPhotoItemsViewIdSelect : function(el)
	{
		var value = el.value;
		setSettings('RelatedPhotoItemsView',value);
		this.hiddenEl('RelatedPhotoItemsViewId','RelatedPhotoItemsView');
	},
	hiddenEl : function(el,cook)
	{		
		var num = getSettings(cook);
		if(num!=null){
			num = parseInt(num);
		} else {
			num=5;
			setSettings('RelatedPhotoItemsView',num);
		}
		var elements = $$("#"+el+" div.item");
		for(var i=0; i<elements.length; i++){
			if(i>=num) {
				elements[i].style.display="none";
			} else {
				elements[i].style.display="block";
			}
		}
	},
	selects : function(se,cook)
	{
		var num = getSettings(cook);
		if(num!=null){
			num = parseInt(num);
		} else {
			num=5;
			setSettings('RelatedPhotoItemsView',num);
		}
		for(var i=0; i<se.options.length; i++){
			if(parseInt(se.options[i].value) == parseInt(num)){
				se.options[i].selected = true;
				return;
			}
		}
	}
}
/**
*@package EnvisioNext javascript library
*@subpackage Cookies
*@copyright (C) 2007 EnvisioNext.com  <support@EnvisioNext.com>
*@author Anton Zavidov <anton.zavidov@envisionext.com.ua>
*/
var setSettings = function(name, value)
{
	document.cookie = name + "=" + escape(value) +
      	"; expires=Mon, 01-Jan-2017 00:00:00 GMT" +
      	"; path=/";
}
var getSettings = function(name)
{
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
   	var offset = 0;
    var end = 0;
    if (cookie.length > 0)
	{
		offset = cookie.indexOf(search);
		if (offset != -1)
		{
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1)
			{
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}
/**
*@package EnvisioNext javascript library
*@subpackage Flash Tabs
*@copyright (C) 2007 EnvisioNext.com  <support@EnvisioNext.com>
*@author Anton Zavidov <anton.zavidov@envisionext.com.ua>
*/

////
var bodyHeight = function() { 
	var body = $$('body')[0];
	body.style.height = 'auto';
	var winHeight = (document.documentElement.clientHeight?document.documentElement.clientHeight :	document.body.clientHeight);
	body.style.height = body.offsetHeight > winHeight ? 'auto' : '100%'; 
};

/*Switcher*/

function subsiteSwitcher() {
	$$('#subsite_switcher input').each(function(checkbox){
		var li = checkbox.up();
		if (li.lang == document.location.hostname.replace('www.','')) {
			li.addClassName('active');
			checkbox.checked = true;
			window.activeSwither = li;
		}
		Event.observe(checkbox, "click", function(event){
			/*checkbox = Event.element(event);*/
			var li = this.up();
			window.activeSwither.removeClassName('active');
			li.addClassName('active');
			this.checked = true;
			window.activeSwither = li;
			var domainSplited = document.location.hostname.split('.');
			/*Set_Cookie( 'favSubDomain', li.lang, 30, '/', '.'+domainSplited[domainSplited.length-2]+'.'+domainSplited[domainSplited.length-1]);*/
			document.location.href = 'http://'+li.lang+'/';
		}.bind(checkbox));
	});
}

/*send Content Error*/
function sendContentError(obj) {
	var obj = obj || new Object();
	var data = {
		code : obj.code || 404,
		url : obj.url || null
	}
	var frame = document.createElement('iframe');
	with (frame) {
		src = document.location.protocol + '//' + document.location.host + '/logError/contentError.html?code=' + data.code + (data.url ? '&url='+escape(data.url) : '');
		with (style) {
			position = 'absolute';
			top = '-10000px';
			left = '-10000px';
			width = '0';
			height = '0';
			visibility = 'hidden';
		}
		var handler = function(){document.body.removeChild(frame);};
		if (document.addEventListener) addEventListener('load', handler, false)
		else attachEvent('onload', handler);
	}
	document.body.appendChild(frame);
}