if (js && !js.isInit) js.init();   
/*
 * Пример использования AJAX:
 * 
 *	var Request = new HttpRequest();
 *	Request.container = document.getElementById('newDiv');
 *	Request.addParam('PAGE_N',2);
 *	Request.doRequest('/ajax.php','POST');
 */
// Класс выполнения AJAX запросов к серверу.
function HttpRequest() {
	// Задание глобальных параметров.
	HttpRequest.USE_STANDARD_REQUEST		= true;
	HttpRequest.REQUEST_DEFAULT_METHOD		= "GET";
	HttpRequest.REQUEST_DEFAULT_ASYNCHRONE	= true;
	HttpRequest.RESPONSE_DEFAULT_TYPE		= "text";

	// Инициализация переменных.
	this.request				= null;
	this.container				= null;
	this.requestEventHandler	= null;
	this.readyStates			= [];
	this.requestParams			= new Object();
	this.error					= false;
	this.url					= "";
	this.initParams				= null;

	// Объявление метода получения объекта XMLHttpRequest'a или его аналога.
	this.getRequestObject = function() {
		if (this.request) {
			return this.request;
		}
		else if (window.XMLHttpRequest) {
			this.request = new XMLHttpRequest();
		} 
		else if (window.ActiveXObject) {
			try {
				this.request = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					this.request = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e) {
					this.error = true;
				}
			}
		} 
		return this.request;
	}

	// Объявление метода выполнения запроса к серверу.
	this.doRequest = function(url, method, asynch) {

		// Установка обработчика завершения запроса к серверу по умолчанию.
		if (!this.requestEventHandler) {
			this.requestEventHandler = defaultEventHandler; // ?
		}

		// Проверка объекта XMLHttpRequest.
		if (!this.request && !this.error) {
			this.getRequestObject();
		}

		if (this.request) {
			// Инициализация и проверка переменных.
			var thisReq = this;
			var requestParams = "";

			url		= url || this.url;
			method	= method || HttpRequest.REQUEST_DEFAULT_METHOD;
			asynch	= asynch || HttpRequest.REQUEST_DEFAULT_ASYNCHRONE;

			// Инициализация параметров запроса.
			if (this.initParams) {
				this.initParams(this);
			}

			// Обработка параметров запроса.
			if (this.requestParams) {
				for (var i in this.requestParams) {
					requestParams += i + "=" + encodeURI(this.requestParams[i]);
					requestParams += "&";
				}

				if (method == "GET") {
					url += "?" + requestParams;
					requestParams = null;
				} 
			}

			try {
				// Инициализация запроса к серверу.
				this.request.open(method, url, asynch);

				// Применение параметров POST запроса.
		 		if (method == "POST") {
					this.request.setRequestHeader("Content-type", "application/x-www-form-urlencoded;charset=UTF-8");
				//	this.request.setRequestHeader("Content-type", "multipart/form-data");
					this.request.setRequestHeader("Content-length", requestParams.length);
					this.request.setRequestHeader("Connection", "close");
				}

		 		// Выполнение запроса.
				this.request.send(requestParams);

				// Регистрируем обработчик изменения статуса соединения с сервером.
				this.request.onreadystatechange = function() {
  					thisReq.requestEventHandler(thisReq);
				}

				return false;
			}
			catch(e) {
				return HttpRequest.USE_STANDARD_REQUEST;
			}
		}

		return HttpRequest.USE_STANDARD_REQUEST;
	}

	// Объявление метода добавления параметра запроса.
	this.addParam = function(name, value) {
		this.requestParams[name] = value;
	}

	// Объявление метода установки метода обработки результата соединения с сервером.
	this.setReadyStateHandler = function(readyStateCode, handler) {
		this.readyStates[readyStateCode] = handler;
	}

	// Объявление метода установки обработчика изменения состояния соединения с сервером.
	this.setRequestEventHandler = function(handler) {
		this.requestEventHandler = handler;
	}

	// Метод обработки изменения состояния соединения с сервером поумолчанию.
	var defaultEventHandler = function(reqObj) {
		if (reqObj.readyStates[reqObj.request.readyState]) {
			reqObj.readyStates[reqObj.request.readyState](reqObj);
		}
		else if (reqObj.request.readyState == 4) {
			if (reqObj.request.status == 200) {
				reqObj.container.innerHTML = reqObj.request.responseText;
			}
		}
	}
}

function LinkHandler(navContainer)
{
	// Задание глобальных параметров.
	LinkHandler.ENABLED_CLASS = 'enabled';
	LinkHandler.DISABLED_CLASS = 'disabled';
	LinkHandler.E_CLASS = 'cur';
	LinkHandler.D_CLASS = '';
	LinkHandler.relize = true;

	// Инициализация переменных.
	this.links = new Array();
	this.offsetName = 'PAGEN_';
	this.offset = 0;
	this.request = null;
	this.url = '';
	this.pageLength = 0;
	this.navContainer = navContainer;
	this.useUri = false;
	this.mapUri = new Array();

	this.clickHandler = function() {
		return this.clickHandlerObject.initReq(this);
	}

	// Метод установки AJAX'a элементу DOM дерева.
	this.initReq = function(obj) {

		// Если элемент имеет класс "disabled", то ничего делать дальше не будем.
		if (obj.className == LinkHandler.DISABLED_CLASS)
		{
			return false;
		}

		// Получаем объект для AJAX запроса.
		var req = (obj.clickHandlerObject.request instanceof Array) ? obj.clickHandlerObject.request[0] : obj.clickHandlerObject.request;

		// Добавляем уникальный параметр, для корректной работы в IE с кэшированием.
		var dt = new Date();
		req.addParam("uniq", dt.getMilliseconds());

		// Получение параметров текущей страницы и передача их AJAX запросу.
		var q = (obj.clickHandlerObject.useUri) ? getHttpQueryUri(obj, obj.clickHandlerObject.mapUri) : getHttpQuery(obj);
		var pn = "";
		var pv = 0;

		for (var i in q) {
			if (i.indexOf(obj.clickHandlerObject.offsetName) !== -1) {
				pn = i;
				pv = q[i];
			}

			req.addParam(i, q[i]);
		}

		// Выполнение AJAX запроса.
		res = req.doRequest(obj.clickHandlerObject.url);

		// Если ошибка, то попытаемся что-то исправить?
		if (!res)
		{
			try {
				obj.clickHandlerObject.init(pv,null,q,pn);

				if (this.clickHandlerObject.request instanceof Array)
				{
					for (var i = 1; i < obj.clickHandlerObject.request.length; i++) {
						res = obj.clickHandlerObject.request[i].doRequest();
					}
				}
			}
			catch(e) {
			}
		}

		return false;
	}

	// Инициализация блока с кнопками постраничной AJAX навигации.
	this.init = function(pageNum, pageLength, urlParams, pagerName) {

		// Если используется IE шестой или более ранней версии, то...
		if (js.browser.msie && js.browser.version <= 6) {
			this.initIE6(pageNum, pageLength, urlParams, pagerName);
			return;
		}

		// Получаем количество элементов на странице.
		this.pageLength = (pageLength || pageLength === 0) ? pageLength : this.pageLength;

		// Получаем список UL элементов контейнера.
		var lsButtons = js.$$("ul", this.navContainer);

		// Выбираем кнопки из списка, ориентируясь на названия CSS классов.
		var buttons = null; 
		var toBeginButton = null;
		for (var i = 0; i < lsButtons.length; i++) {
			if (lsButtons[i].className == "pn_buttons") {
				buttons = js.$$("a", lsButtons[i]);
			}
			else if (lsButtons[i].className.indexOf("toBeginEnd") != -1) {
				toBeginButton = js.first("a", lsButtons[i]);
			}
		}

		// Устанавливаем класс активности кнопки перехода на первую страницу.
		if (toBeginButton) {
			toBeginButton.className = pageNum > 1 ? LinkHandler.ENABLED_CLASS : LinkHandler.DISABLED_CLASS;
		}

		// Если всего две кнопки (предыдущая и следующая страницы), то...
		if (buttons.length == 2) {
			if (this.pageLength > 1) {
				// Если нет предыдущей страницы, то выключаем первую кнопку.
				if (pageNum <= 1) {
					urlParams[pagerName] = parseInt(pageNum) + 1;
					buttons[0].className = LinkHandler.DISABLED_CLASS;
					buttons[1].className = LinkHandler.ENABLED_CLASS;
					buttons[1].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
				}
				else {
					// Если есть и предыдущая и следующая страницы, то обе кнопки включены.
					if (pageNum < this.pageLength) {
						urlParams[pagerName] = parseInt(pageNum) - 1;
						buttons[0].className = LinkHandler.ENABLED_CLASS;
						buttons[0].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
						
						urlParams[pagerName] = parseInt(pageNum) + 1;
						buttons[1].className = LinkHandler.ENABLED_CLASS;
						buttons[1].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
					}
					// Если нет следующей страницы, то выключаем вторую кнопку.
					else {
						urlParams[pagerName] = parseInt(pageNum) - 1;
						buttons[0].className = LinkHandler.ENABLED_CLASS;
						buttons[0].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
						buttons[1].className = 	LinkHandler.DISABLED_CLASS;
					}
				}
			} 
		}

		// Выставляем классы для кнопочек страниц.
		var numButtonsList = js.$$("ol", this.navContainer);
		if (numButtonsList.length > 0) {
			var numButtons = js.$$("a", numButtonsList[0]);
			for (var i = 0; i < numButtons.length; i++) {
				numButtons[i].parentNode.className = (i == pageNum - 1) ? LinkHandler.E_CLASS : LinkHandler.D_CLASS;
			}
		}
	}

	// Списки изображений кнопок в разных состояниях.
	LinkHandler.IE6PngSrc = {
		blocknav2: {
			IE6BgnEnabledImageName: "http://7dn.7days.ru/images/nav2-begin-enabled.png",
			IE6BgnDisabledImageName: "http://7dn.7days.ru/images/nav2-begin-disabled.png",
			IE6LeftEnabledImageName: "http://7dn.7days.ru/images/nav2-left-enabled.png",
			IE6RightEnabledImageName: "http://7dn.7days.ru/images/nav2-right-enabled.png",
			IE6LeftDisabledImageName: "http://7dn.7days.ru/images/nav2-left-disabled.png",
			IE6RightDisabledImageName: "http://7dn.7days.ru/images/nav2-right-disabled.png",
			IE6UpEnabledImageName: "http://7dn.7days.ru/images/nav2-up-enabled.png",
			IE6DownEnabledImageName: "http://7dn.7days.ru/images/nav2-down-enabled.png",
			IE6UpDisabledImageName: "http://7dn.7days.ru/images/nav2-up-disabled.png",
			IEDownDisabledImageName: "http://7dn.7days.ru/images/nav2-down-disabled.png",
			IE6Bng2EnabledImageName: "http://7dn.7days.ru/images/nav2-begin2-enabled.png",
			IE6Bng2DisabledImageName: "http://7dn.7days.ru/images/nav2-begin2-disabled.png"
		},
		blocknav3: {
			IE6LeftEnabledImageName: "http://7dn.7days.ru/images/nav3-left-enabled.png",
			IE6RightEnabledImageName: "http://7dn.7days.ru/images/nav3-right-enabled.png",
			IE6LeftDisabledImageName: "http://7dn.7days.ru/images/nav3-left-disabled.png",
			IE6RightDisabledImageName: "http://7dn.7days.ru/images/nav3-right-disabled.png"
		}
	}
	
	LinkHandler.IE6GetFilter = function(src) {
		return "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='crop')";
	}
	
	LinkHandler.IE6SetFilter = function(obj, src) {
		obj.style.filter = LinkHandler.IE6GetFilter(src);
		obj.filters[0].Apply();
		obj.filters[0].Play();
	}

	// Инициализация для IE6.
	this.initIE6 = function(pageNum, pageLength, urlParams, pagerName) {
		this.pageLength = (pageLength || pageLength === 0) ? pageLength : this.pageLength;
		var lsButtons = js.$$("ul", this.navContainer);
		var buttons = null; 
		var toBeginButton = null;

		for (var i = 0; i < lsButtons.length; i++) {
			if (lsButtons[i].className == "pn_buttons") {
				buttons = js.$$("a", lsButtons[i]);
			}
			else if (lsButtons[i].className.indexOf("toBeginEnd") != -1) {
				toBeginButton = js.first("a", lsButtons[i]);
			}
		}

		var isVertical = this.navContainer.parentNode.id == "_df_navBlock" ? true : false; 
		var pngSrc = LinkHandler.IE6PngSrc[this.navContainer.className];

		if (toBeginButton) {
			toBeginButton.className = pageNum > 1 ? LinkHandler.ENABLED_CLASS : LinkHandler.DISABLED_CLASS;

			if (pageNum > 1) {
				LinkHandler.IE6SetFilter(toBeginButton, (isVertical ? pngSrc.IE6Bng2EnabledImageName : pngSrc.IE6BgnEnabledImageName));
			}
			else {
				LinkHandler.IE6SetFilter(toBeginButton, (isVertical ? pngSrc.IE6Bng2DisabledImageName : pngSrc.IE6BgnDisabledImageName));			
			}
		}

		if (buttons.length == 2) {
			if (this.pageLength > 1) {
				if (pageNum <= 1) {
					urlParams[pagerName] = parseInt(pageNum) + 1;
					buttons[1].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);

					buttons[1].className = LinkHandler.ENABLED_CLASS;
					buttons[0].className = LinkHandler.DISABLED_CLASS;
					
					LinkHandler.IE6SetFilter(buttons[0], (isVertical ? pngSrc.IE6UpDisabledImageName : pngSrc.IE6LeftDisabledImageName));
					LinkHandler.IE6SetFilter(buttons[1], (isVertical ? pngSrc.IE6DownEnabledImageName : pngSrc.IE6RightEnabledImageName));
				}
				else { 
					if (pageNum < this.pageLength) {	
						var picLeft = buttons[0].style.filter.indexOf("-hover") != -1 ? buttons[0].style.filter.match(/src=\'(.+\.png)\'/).pop() : (isVertical ? pngSrc.IE6UpEnabledImageName : pngSrc.IE6LeftEnabledImageName);
						var picRight = buttons[1].style.filter.indexOf("-hover") != -1 ? buttons[1].style.filter.match(/src=\'(.+\.png)\'/).pop() : (isVertical ? pngSrc.IE6DownEnabledImageName : pngSrc.IE6RightEnabledImageName); 
										
						urlParams[pagerName] = parseInt(pageNum) - 1;
						buttons[0].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
						
						buttons[0].className = LinkHandler.ENABLED_CLASS;
						buttons[1].className = LinkHandler.ENABLED_CLASS;
						
						LinkHandler.IE6SetFilter(buttons[0], picLeft);						
						
						urlParams[pagerName] = parseInt(pageNum) + 1;
						buttons[1].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
						
						LinkHandler.IE6SetFilter(buttons[1], picRight);
							
					}
					else {
						urlParams[pagerName] = parseInt(pageNum) - 1;
						buttons[0].href = (this.useUri) ? buildHttpQueryUri(urlParams) : buildHttpQuery(urlParams);
						
						buttons[0].className = LinkHandler.ENABLED_CLASS;
						buttons[1].className = LinkHandler.DISABLED_CLASS;
						
						LinkHandler.IE6SetFilter(buttons[0], (isVertical ? pngSrc.IE6UpEnabledImageName : pngSrc.IE6LeftEnabledImageName));
						LinkHandler.IE6SetFilter(buttons[1], (isVertical ? pngSrc.IE6DownDisabledImageName : pngSrc.IE6RightDisabledImageName));
					}
				}
			} 
		}		
		
		var numButtonsList = js.$$("ol", this.navContainer);

		if (numButtonsList.length > 0) {
			var numButtons = js.$$("a", numButtonsList[0]);
			for (var i = 0; i < numButtons.length; i++) {
				if (i == pageNum - 1) {
					LinkHandler.IE6SetFilter(numButtons[i], 'http://7dn.7days.ru/images/thumb-blue-active.png');
				} else {
					LinkHandler.IE6SetFilter(numButtons[i], 'http://7dn.7days.ru/images/thumb-passive.png');
				}
			}
		}
	} 

	// Добавление ссылки.
	this.addLink = function(link) {
		link.onclick = this.clickHandler;
		link.ondblclick = function() { return false }
		link.clickHandlerObject = this;
		this.links.push(link);
	}
}

// Получение URI без параметров.
function getHttpPath(link) {
	if (link.indexOf("?") !== -1) {
		link = link.split("?");
		link = link[0];
	}
	return link;
}

// Получение хэш-массива параметров ссылки тега A.
function getHttpQuery(o) {
	var obj = {};
	var path = o.href.split("?");
	if (path[1]) {
		q = path[1].split("&");
		for (var i = 0; i < q.length; i++) {
			v = q[i].split("=");
			if (v[0] && v[1]) {
				obj[v[0]] = v[1];
			}
		}
	}
	return obj;
}

// Получение хэш-массива параметров, входящих в URI, по маске.
function getHttpQueryUri(o, mapVars) {
	var obj = {};
	q = o.href.split("/");
	for (var i = mapVars.length; i > 0; i--) {
		var inx = q.length - i;
		if (q[inx]) {
			obj[mapVars[mapVars.length - i]] = q[inx];
		}
	}
	return obj;
}

// Создание параметров запроса из хэш-массива.
function buildHttpQuery(obj) {
	var s = "";
	for (var i in obj) {
		if (obj[i]) {
			if (s) s += "&";
			s += i + "=" + obj[i];
		}
	}
	if (s) s = "?" + s;
	return s;
}

// Создание URI из хэш-массива.
function buildHttpQueryUri(obj) {
	var s = "";
	for (var i in obj) {
		if (obj[i]) {
			if (s) s += "/";
			s += obj[i];
		}
	}
	if (s) s = "/" + s;
	return s;
}

// Скроллинг одного дива в другом.
function objectMove(obj, type) {
	var el = obj.calledObject.container;

	if (typeof el == "string") {
		el = window[el](obj.calledObject);
	}

	if (
		(parseInt(el.style.top) >= 0 && type == true) 
		|| 
		(parseInt(el.style.top) <= obj.calledObject.containerHeight - el.offsetHeight && type == false)
	) {
	
		if (obj.calledObject.interval) {
			clearInterval(obj.calledObject.interval);
		}
			
		obj.calledObject.viewStyle(obj.calledObject.target, false);
		return false;
	}

	var offset = type ? obj.calledObject.offset : obj.calledObject.offset * -1;
	offset = parseInt(el.style.top) + offset;
	el.style.top = offset;
	obj.calledObject.viewStyle(obj.calledObject.target, true);
}

// Класс объекта скроллинга по нажатию кнопки.
function moveObj() {

	// Инициализация переменных.
	this.containerHeight = 325;
	this.offset = 15;
	this.timeOut = 25;
	this.interval = null;
	this.container = null;
	this.links = new Array();

	// Установка класса выбранному объекту, а остальным класс "enabled"; 
	this.viewStyle = function(target, type) {
		target.className = type ? "enabled" : "disabled";
		for (var i = 0; i < this.links.length; i++) {
			if (this.links[i] != target) {
				this.links[i].className = "enabled";
			} 
		}
	}

	// Регистрация объекта и добавление ему ссылки на этот объект и задание слушателей событий.
	this.registerObject = function(obj, type) {
	
		// Запоминаем регистрируемый объект в нашем объекте.
		this.links.push(obj);

		// Добавляем регистрируемому объекту свойсвто-ссылку на наш объект.
		obj.calledObject = this;

		// Устанавливаем обработчик события "onmousedown".
		obj.onmousedown = function(evt) {
			var evt = evt||event;
			this.calledObject.target = evt.target||evt.srcElement;

			if (this.calledObject.target.nodeName.toLowerCase() != "a") {
				this.calledObject.target = this.calledObject.target.parentNode;
			}

			window.calledObject = this.calledObject;
			this.calledObject.interval = setInterval("objectMove(this," + type + ")", this.calledObject.timeOut);
		}
		
		// Устанавливаем обработчик события "onmouseup".
		obj.onmouseup = function() {
			if (this.calledObject.interval) {
				clearInterval(this.calledObject.interval);
			}
		}
	}
}

// Объект - МЕНЮ.
selectMenu = {
	prevListObj: false,
	addItem: function(selectId, containerId) {
		var containerObj  = document.getElementById(containerId);
		var selectObj = document.getElementById(selectId);	
		var item = selectObj.options[selectObj.options.length - 1];
		var list = containerObj.getElementsByTagName("ul").item(0);
		var last = " class=\"last\" style=\"border-bottom: none;\"";
		var ls = containerObj.getElementsByTagName("li");

		for (i = 0; i < ls.length; i++) {
			ls[i].className = "itm";
		}

		list.innerHTML += '<li onclick="selectMenu.onItemClick(\'' + selectId + '\', ' + (selectObj.options.length - 1) + ', \'' + item.innerHTML + '\')"' + last + '>' + item.innerHTML + '</li>';
		document.getElementById(selectId + '_Text').innerHTML = item.innerHTML;
	},
	replace: function(selectId, containerId, width) {
		if (!width) {
			width = '100px';
		}
		var containerObj  = document.getElementById(containerId);
		var selectObj = document.getElementById(selectId);
		var length	= selectObj.length;

		var html	= [];
		var html2	= [];
		var cls	= "";
		var stl	= "";

		containerObj.style.width = width + 34 + 'px';
		dropObj = width + 18 + 'px';
		
		html.push('<div class="dropDown" id="' + selectId + '_List">');
		html.push('<div class="ctop">');
		html.push('<div class="cright">');
		html.push('<div class="cbottom">');
		html.push('<div class="cleft">');
		html.push('<div class="ccenter">');
		html.push('<ul class="selectMenuList" style="width:' + dropObj + '">');	
		
		for (var i = 0; i < length; i++) {
			var item      = selectObj.options[i];
			cls	  = "itm";
			stl 	  = "";
				
			if (item.style.display == "none") {
				stl = "display:none;";
			}
			var itemValue = item.value;
			var itemText  = item.innerHTML;

			if (i == 0 || item.selected) {
				 var selectedText = itemText;
			}			
			if ((i + 1) == length) {
				cls = "last";	
				stl += "border-bottom:none;";						
			}
			html.push('<li class="'+ cls +'" style="'+ stl +'" onmouseout="this.className = this.className.replace(\' hover\', \'\')" onmouseover="this.className += \' hover\'" onclick="selectMenu.onItemClick(\'' + selectId + '\', ' + i + ', \'' + itemText + '\')">' + itemText + '</li>');
		}
	    html.push('</ul>');
		html.push('</div>');
		html.push('</div>');
		html.push('</div>');
		html.push('</div>');
		html.push('</div>');
		html.push('</div>');
		
		html2.push('<div class="selectMenu">');
		html2.push('<div class="left"></div>');
		html2.push('<div class="center" style="width: ' + width + '" onclick="selectMenu.showList(event, \'' + selectId + '_List\')"><div id="' + selectId + '_Text">' + selectedText + '</div></div>');
		html2.push('<div class="arrow" onclick="selectMenu.showList(event, \'' + selectId + '_List\')"></div>');
		html2.push(html.join(''));
		html2.push('</div>');

		selectObj.style.display                             = 'none';
		containerObj.innerHTML                              = html2.join('');	
		
		//alert(document.getElementById(selectId + '_List').getElementsByTagName('li').item(0).innerHTML);		
		document.getElementById(selectId + '_List').onclick = function() { selectObj.onchange()};
		
	},
	onItemClick: function(id, index, text, onChange) {
		document.getElementById(id).selectedIndex           = index;
		document.getElementById(id + '_Text').innerHTML     = '<div>' + text + '</div>';
		document.getElementById(id + '_List').style.display = 'none';
		//alert(document.getElementById(id + '_List').parentNode.className);
		
		if (id == "CURRENCY") {
			divs = document.getElementById(id + '_List').parentNode.getElementsByTagName("div");
			for (var i = 0; i < divs.length; i++) {
				if (divs[i].nodeType == 1 && divs[i].className.indexOf("arrow") != -1) {
					divs[i].className = "arrow";
					break;
				}
			}
		}
					
		document.onclick                                    = null;	
	},
	
	showList: function(e, id) {
		var _this = this;
		obj = document.getElementById(id);	
		
		
		if (selectMenu.prevListObj && obj != selectMenu.prevListObj) {
			selectMenu.prevListObj.style.display = "none";
			divs = selectMenu.prevListObj.parentNode.getElementsByTagName("div");
			for (var i = 0; i < divs.length; i++) {
				if (divs[i].nodeType == 1 && divs[i].className.indexOf("arrow") != -1) {
					divs[i].className = "arrow";
					break;
				}
			}	
		}

		var prnt = obj.parentNode;		
		var arrow = null;
		var divs = prnt.getElementsByTagName('div');
		for (var i = 0; i < divs.length; i++) {
			if (divs[i].nodeType == 1 && divs[i].className.indexOf("arrow") != -1) {
				arrow = divs[i];
				break;
			}
		}	

		if (obj.style.display == "block") {
			obj.style.display = "none";
			arrow.className = "arrow";
		}
		else {
			obj.style.display = "block";
			arrow.className = "arrow-hover";
		}

		selectMenu.prevListObj = obj;
		e.cancelBubble   = true;		

		document.onclick = function() {			
			_this.hideList(id);
		}

	},
	hideList: function(id) {
		document.getElementById(id).style.display = "none";
		var prnt = obj.parentNode;
		var arrow = null;
		var divs = prnt.getElementsByTagName("div");
		for (var i = 0; i < divs.length; i++) {
			if (divs[i].nodeType == 1 && divs[i].className.indexOf("arrow") != -1) {
				divs[i].className = "arrow";
				break;
			}
		}
		document.onclick = null;		
	}

}

function onPressedHandler(obj) 
{
	if (obj.className == "enabled") {
		obj.className = 'pressed';
		obj.onmouseup = function() {
			this.className = "enabled";
		}
	} else {
		obj.onmouseup = null;
	}
}

function captionShadow(){
	var div = document.getElementsByTagName("div");
	var divLength = div.length;

	for (j = 0; j < divLength; j++){
		var divClass = div[j].className;
		var index = divClass.indexOf("contCaption");
		var caption = divClass.substr(index, 11)
		if(caption == "contCaption") {
			var innerDiv = null;
			var divs = div[j].getElementsByTagName('div');
			for (i = 0; i < divs.length; i++) {
			  if (divs[i].className == 'captText2') {
				innerDiv = divs[i];
			    break;
			  }
			}
			if (!innerDiv) {
				innerDiv = divs[0];
			}
			innerDiv.innerHTML = "<ins>" + innerDiv.innerHTML + "</ins>" + innerDiv.innerHTML;
		}
	}
	
	
	if (document.getElementById("changeviewcontainerID")) {
		var changeviewcontainerID = document.getElementById("changeviewcontainerID");
		var span = changeviewcontainerID.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
	
	if (document.getElementById("nowButton")) {
		var nowButton = document.getElementById("nowButton");
		var span = nowButton.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
	
	if (document.getElementById("nowButton2")) {
		var nowButton2 = document.getElementById("nowButton2");
		var span = nowButton2.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
	
	if (document.getElementById("chanSelect")) {
		var chanSelect = document.getElementById("chanSelect");
		var span = chanSelect.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
	
	if (document.getElementById("dayTimeSet")) {
		var dayTimeSet = document.getElementById("dayTimeSet");
		var span = dayTimeSet.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
	
	if (document.getElementById("genres_list")) {
		var genres_list = document.getElementById("genres_list");
		var span = genres_list.getElementsByTagName("span");
		for (i = 0; i < span.length; i++){
			var spanClass = span[i].className;
			if(spanClass == "txt"){
				spanTxt = span[i].innerHTML;
				span[i].innerHTML = "<ins>" + spanTxt + "</ins>" + spanTxt;
			}
		}
	}
}

function ieHover(){
	var lis = document.getElementById("menu").getElementsByTagName("li");
	for(i = 0; i < lis.length; i++){
		lis[i].onmouseover = function(){ 
			this.className = "iehover"; 
		}
		lis[i].onmouseout = function(){
			this.className = "";
		}
	}		
}

function textShadow(){
	//shadow();
	captionShadow();
}

function customDate() {
	this.dt = new Date();
	this.setDate = function(y,m,d) {
		this.dt.setFullYear(y);
		this.dt.setMonth(m - 1);
		this.dt.setDate(d);
	}
	
	this.getDay = function() {
		return this.dt.getDate();
	}
	
	this.getMonth = function() {
		return this.dt.getMonth() + 1;
	}
	
	this.getYear = function() {
		return this.dt.getFullYear();
	}
}

keyNav = {
	isCtrl: false,
	navObj: null,
	setDown: function(e) {
		e = e||event;
		if (!keyNav.isCtrl) {
			if (e.ctrlKey) {
				keyNav.isCtrl = true;
			}
		} else {
			if (keyNav.navObj) {
				var lsButtons = js.$$("ul", keyNav.navObj.navContainer);
				var buttons = js.$$("a", lsButtons[0]);
				if (e.keyCode == 37) {
					keyNav.navObj.initReq(buttons[0]);
				} else if (e.keyCode == 39) {
					keyNav.navObj.initReq(buttons[1]);
				}
			}
		}
	},
	
	setUp: function(e) {
		e = e||event;
		if (!e.ctrlKey)
			keyNav.isCtrl = false;
	},
	
	setNavObj: function(navObj) {
		keyNav.navObj = navObj;
	}
}

function addBanner(theType,theId,width,height,bgColor)
{
     document.getElementById(theId).innerHTML = "<iframe"
          + ' src="/Advertising.php?'
               + 'type=' + theType + '&amp;'
               + 'id=' + theId + '&amp;'
               + 'width=' + width + '&amp;'
               + 'height=' + height + '&amp;'
               + 'bgColor=' + bgColor + '&amp;'
               + 'rnd=' + Math.round(Math.random()*1000000000) + '" '
          + ' width="' + width + '" '
          + ' height="' + height + '" '
          + ' id="frm_' + theId + '" '
          + ' frameborder="0" '
          + ' vspace="0" '
          + ' hspace=0 '
          + ' marginwidth="0" '
          + ' marginheight="0" '
          + ' scrolling="no" '
           + "></iframe>";
}