var DDSPEED = 10;
var DDTIMER = 15;

// main function to handle the mouse events //
function ddMenu(id,d,m_width){
  var h = document.getElementById(id + '-ddheader');
  var c = document.getElementById(id + '-ddcontent');
  clearInterval(c.timer);
  if(d == 1){
    clearTimeout(h.timer);
    if(c.maxh && c.maxh <= c.offsetHeight){return}
    else if(!c.maxh){
	  c.style.width = m_width+'px';
      c.style.display = 'block';
      c.style.height = 'auto';
      c.maxh = c.offsetHeight;
      c.style.height = '0px';
    }
    c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
  }else{
    h.timer = setTimeout(function(){ddCollapse(c)},50);
  }
}

// collapse the menu //
function ddCollapse(c){
  c.timer = setInterval(function(){ddSlide(c,-1)},DDTIMER);
}

// cancel the collapse if a user rolls over the dropdown //
function cancelHide(id){
  var h = document.getElementById(id + '-ddheader');
  var c = document.getElementById(id + '-ddcontent');
  clearTimeout(h.timer);
  clearInterval(c.timer);
  if(c.offsetHeight < c.maxh){
    c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
  }
}

// incrementally expand/contract the dropdown and change the opacity //
function ddSlide(c,d){

  var currh = c.offsetHeight;
  var dist;
  if(d == 1){
    dist = (Math.round((c.maxh - currh) / DDSPEED));
  }else{
    dist = (Math.round(currh / DDSPEED));
  }
  if(dist <= 1 && d == 1){
    dist = 1;
  }
  c.style.height = currh + (dist * d) + 'px';
  c.style.opacity = (currh / c.maxh)*0.8;
  c.style.filter = 'alpha(opacity=' + (currh * 80 / c.maxh) + ')';
  if((currh < 5 && d != 1) || (currh > (c.maxh - 2) && d == 1)){
    clearInterval(c.timer);
  }
}


	var inn=0;			
	var last_id=0;
	var w_gallery=285;
	var scrolldelay;

	function scroll_right ()
		{
					scroller_x=document.getElementById('scroll').style.left.replace(/px/i,'');
					scroller_x=scroller_x.replace(/pt/i,'');
					scroller_x=scroller_x-0;
					if(scroller_x < 0)
					   {
					 	inn=inn+3;
					    document.getElementById('scroll').style.left=inn+'px';
					    scrolldelay = setTimeout('scroll_right()',10); // scrolls every 100 milliseconds
					   }
		}
	function scroll_left ()
		{
					//scroller_w=document.getElementById('scroll').scrollWidth;
					scroller_w=img_num*56;
					scroller_x=document.getElementById('scroll').style.left.replace(/px/i,'');
					scroller_x=scroller_x.replace(/pt/i,'');
					scroller_x=scroller_x-0;
					if(scroller_x>w_gallery-scroller_w)
					 {
					 
					   inn=inn-3;
					   document.getElementById('scroll').style.left=inn+'px';
					   
						scrolldelay = setTimeout('scroll_left()',10); // scrolls every 100 milliseconds
					 }
		}
	function stopScroll() 
		{
     			clearTimeout(scrolldelay);
		}


	function readCookie(name) {
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++) {
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
				if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
	}


//Ajax
function HTTP()
{
	this._factory = null;
	this._factories = [
		function(){ return new XMLHttpRequest(); },
		function(){ return new ActiveXObject("Msxml2.XMLHTTP"); },
		function(){ return new XMLHttpRequest("Microsoft.XMLHTTP"); }
	];
}
HTTP.prototype.newRequest = function()
{
	if(this._factory != null)
		return this._factory();

	for(var i=0; i<this._factories.length; i++)
	{
		try 
		{
			var factory = this._factories[i];
			var request = factory();

			if (request != null) 
			{
				this._factory = factory;
				return request;
			}
		}
		catch (e)
		{
			continue;
		}
	}

	this._factory = function()
	{
		throw new Error("Объект XMLHttpRequest не поддерживается");
	}
	this._factory();
}

HTTP.prototype._getResponse = function(request)
{
	switch(request.getResponseHeader("Content-Type"))
	{
		case "text/xml":
			return request.responseXML;
		default:
			return request.responseText;
	}
}

HTTP.prototype.encodeFormData = function(data)
{
	var pairs = [];
	var regexp = /%20/g;
	for(var name in data)
	{
		var value = data[name].toString();
		var pair = encodeURIComponent(name).replace(regexp,'+') + '=' +
				   encodeURIComponent(value).replace(regexp,'+');
		pairs.push(pair);
	}
	return pairs.join('&');
}
/**
* HTTP.post( 
*			String 'url', 
*			Function 'callback',
*			[Object 'options' : 
*			{
*				Object 'parameters', 
*				Number 'timeout', 
*				Function 'timeoutHandler', 
*				Function 'progressHandler'
*			}
*			] 
*			);
**/

HTTP.prototype.post = function(url, callback, options)
{
	var request = this.newRequest();
	var T = this, counter = 0, timer;
	
	if(options.timeout)
	{
		timer = setTimeout(function()
						   {
								request.abort();
								if(options.timeoutHandler)
									options.timeoutHandler(url);
						   }, options.timeout);
	}

	request.onreadystatechange = function()
	{
		if(request.readyState == 4)
		{
			if(timer)
				clearTimeout(timer);

			if(request.status == 200)
			{
				//alert(request.responseText);
				callback(T._getResponse(request));
			}
			else 
			{
				if(options.errorHandler)
					options.errorHandler(request.status, request.statusText);
				else
					callback(null);
			}
		}
		else if(options.progressHandler)
		{
			options.progressHandler(++counter);
		}
	}

	request.open("POST", url);
	request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	request.send(this.encodeFormData(options.parameters));
}

		function show_bigimage(src, caption) 
		{
			var div = document.getElementById('bigimage');
			
			heavyImage = new Image();
			heavyImage.src = src;
			var Left = (document.body.scrollWidth - heavyImage.width)/2;
			var Top  = (document.body.scrollHeight - heavyImage.height)/2;
			
			if(Left<0)
				Left=0;

			if(Top<0)
				Top=0;

			div.style.left = Left + 'px';
			div.style.top = Top + 'px';
			
			div.style.display='';
			div.innerHTML = '<img src="/itcms3/images/close_window.gif" style="position:absolute;right:2px;top:2px;cursor:pointer;cursor:hand;display:inline;" onclick="document.getElementById(\'view_button\').style.display=\'block\';document.getElementById(\'bigimage\').style.display=\'none\';" title="'+caption+'"/><img src="'+src+'" />';
		}

