function changeLocation(location)
           { 
            document.location.href = location; 
           } 
           
function showBusyLayer(layer) 
{
        var layer = layer;
        var busyLayer = document.getElementById(layer);

    if (window.innerHeight && window.scrollMaxY) {  
        yScroll = window.innerHeight + window.scrollMaxY;
        var deff = document.documentElement;
        var hff = (deff&&deff.clientHeight) || document.body.clientHeight || window.innerHeight || self.innerHeight;
        yScroll -= (window.innerHeight - hff);
    } else if (document.body.scrollHeight > document.body.offsetHeight || document.body.scrollWidth > document.body.offsetWidth){
        yScroll = document.body.scrollHeight;
    } else { 
        yScroll = document.body.offsetHeight;
    }

    if (busyLayer != null) {
        busyLayer.style.visibility = "visible";
        busyLayer.style.height = yScroll;
    }
};

function hideBusyLayer(layer) 
{     
        var layer = layer;
        var busyLayer = document.getElementById(layer);
        if (busyLayer != null) {
            busyLayer.style.visibility = "hidden";
            busyLayer.style.height = "0px";
        }
};


function getCookie(Name) 
{
   var search = Name + "="
   if (document.cookie.length > 0) 
   { // если есть какие-либо куки
      offset = document.cookie.indexOf(search) 
      if (offset != -1) { // если кука существует 
         offset += search.length 
         // установить индекс начала значения
         end = document.cookie.indexOf(";", offset) 
         // установить индекс конца значения куки
         if (end == -1) 
            end = document.cookie.length
         return unescape(document.cookie.substring(offset, end))
      } 
   }
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}


function hideLevel(id) 
{ 
var thisLevel = document.getElementById(id); 
thisLevel.style.display = "none"; 

   var t = new Date();
   expires = new Date(t.getTime()+1*60*60*60*60);
   document.cookie = "advanced_search"+"="+escape("hide")+";path=/;expires="+expires.toGMTString();

} 

function showLevel(id) 
{ 
var thisLevel = document.getElementById(id); 
  if ( thisLevel.style.display == "none") 
   { 
     thisLevel.style.display = "block";
   
        var t = new Date();
        expires = new Date(t.getTime()+1*60*60*60*60);
        document.cookie = "advanced_search"+"="+escape("show")+";path=/;expires="+expires.toGMTString();
   } 
   else 
   { 
     hideLevel(id); 
   } 
} 

function setActiveStyleSheet(title) {

	createCookie("ColorCSS", title, 365);
	window.location.reload();
	return;

  var i, a, main, arr;
  arr = document.getElementsByTagName("link");
  for(i=0; (a = arr[i]); i++) {
  	var ltitle = a.getAttribute("title");
    if(a.getAttribute("rel").indexOf("style") != -1 && ltitle) {
      a.disabled = true;
      if(ltitle == title) a.disabled = false;
    }
  }
  createCookie("ColorCSS", title, 365);
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}


//Превьюха

function get_http_old()
{
	var xmlhttp;
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
		try {
			xmlhttp = new XMLHttpRequest();
		} catch (e) {
			xmlhttp = false;
		}
	}
	return xmlhttp;
}
//var oXMLHttp = new XMLHttpRequest();
  function get_http() {
        if(typeof XMLHttpRequest != "undefined") 
        { 
//          alert("XMLHttpRequest library for mozilla!"); // для браузеров аля Mozilla
          return new XMLHttpRequest();
        } else if(window.ActiveXObject) { // для Internet Explorer (all versions)
          var aVersions = ["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
                   "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp",
                   "Microsoft.XMLHttp"
                   ];
          for (var i = 0; i < aVersions.length; i++) {
            try { //
              var oXmlHttp = new ActiveXObject(aVersions[i]);
//              alert(aVersions[i]); 
              return oXmlHttp;
            } catch (oError) { 
              /* поскольку это элемент управления ActiveX, любая ошибка создания объекта будет
                возбуждать исключительную ситуацию, а это означает что попытки создания
                объекта необходимо предпринимать внутри конструкции try...catch.
                
                 В данном случае, если обнаружена ошибка, мы
                 ничего не делаем, создать объект с данной версией компонента не удалось.
               */
            }
          }
          throw new Error("Невозможно создать объект XMLHttp.");
        }
      }
      

function show_goods_preview(goods, event) 
{       
showBusyLayer("preview_busy_layer");
//document.getElementById('preview_content').innerHTML = '<div style="text-align: center; text-valign: middle;"><img src="images/ajax-loader_bar.gif" alt="Подождите пожалуйста..."></div>';

  	 this.http = get_http();
	 this.working = false;
          if (!this.working && this.http) 
          {  
            
            var http = this.http;
             url = "inc/preview.php?goods_id=" + goods + "";
		this.http.open("get", url, true);
		this.http.onreadystatechange = function() 
                {
			if (http.readyState == 4) 
                        {
				document.getElementById('preview_content').innerHTML = http.responseText;
                                this.working = false;
			} 
                        else 
                        {
                                document.getElementById('preview_content').innerHTML = '<div style="text-align: center; text-valign: middle;"><img src="images/ajax-loader_bar.gif" alt="Подождите пожалуйста..."></div>';
                        }
		}
		this.http.send(null);
	} 
        else 
        {
		alert('Ошибка. Объект используется!')
	}
	
        if(!this.http)
        {
		alert('Ошибка при создании XMLHTTP объекта!')
	}


    var y = 0;
    if (document.attachEvent != null) 
    { // Internet Explorer & Opera
        //y = window.event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
        y = 100 + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    } 
    else if (!document.attachEvent && document.addEventListener) 
    { // Gecko :)
        y = 100 + window.scrollY;
    } 
    else 
    {
        
    }
           obj = document.getElementById("preview_box");
           obj.style.top = y + 'px';;
           obj.style.left = '200px';
           obj.style.right = '200px';
           
           obj.style.visibility = "visible";
           obj.style.display = "block";
            return;
}


function show_goods_preview_3d(model, event) 
{       
  showBusyLayer("preview_busy_layer");
//document.getElementById('preview_content').innerHTML = '<div style="text-align: center; text-valign: middle;"><img src="images/ajax-loader_bar.gif" alt="Подождите пожалуйста..."></div>';

  
  

  model_content = '<div class="module_name_bg"><div class="module_name_text">3D фотография товара</div></div><div class="close_cross" title="Закрыть" onclick="close_box()"></div>';
  model_content += '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" SCALE=tofit WIDTH=400 HEIGHT=317>';
  model_content += '<PARAM NAME="MOVIE" VALUE="3dmodels/'+model+'.swf">';
  model_content += '<PARAM NAME="QUALITY" VALUE=high> <PARAM NAME="BGCOLOR" VALUE=#E7E3E7> ';
  model_content += '<EMBED SRC="3dmodels/'+model+'.swf" SCALE=tofit WIDTH=400 HEIGHT=317 QUALITY=high BGCOLOR=#E7E3E7 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED>';
  model_content += '</OBJECT>';

 document.getElementById('preview_content').innerHTML = model_content;

    var y = 0;
    if (document.attachEvent != null) 
    { // Internet Explorer & Opera
        //y = window.event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
        y = 100 + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    } 
    else if (!document.attachEvent && document.addEventListener) 
    { // Gecko :)
        y = 100 + window.scrollY;
    } 
    else 
    {
        
    }
           obj = document.getElementById("preview_box");
           obj.style.top = y + 'px';;
           //obj.style.left = '300px';
          // obj.style.right = '300px';

           x = width_browser/2-210;           
           obj.style.left = x;

           obj.style.visibility = "visible";
           obj.style.display = "block";
            return;
}


function update_block_basket(kol, cena)
{
  var kol = kol;
  var cena = cena;
  var AAA = getCookie("basket_kol");
  var ZZZ = getCookie("basket_sum");
        AAA = AAA*1+1;
        ZZZ = ZZZ*1+cena*1;
        createCookie("basket_kol", AAA, 1);
        createCookie("basket_sum", ZZZ, 1);
        
        document.getElementById('block_basket_kol').innerHTML=AAA;
        document.getElementById('block_basket_sum').innerHTML=ZZZ;
}

function add_goods_in_basket(patch, name, kol, cena, partner, from_site, notification) 
{       
 var action = "add";
 var patch = patch;
 var name = name;
 var kol = kol;
 var cena = cena;
 var partner = partner;
 var from_site = from_site;
 var notification = notification;

var AAA = getCookie("basket_kol");
var ZZZ = getCookie("basket_sum");
AAA = AAA*1+1;
ZZZ = ZZZ*1+cena*1;
createCookie("basket_kol", AAA, 1);
createCookie("basket_sum", ZZZ, 1);

document.getElementById('block_basket_kol').innerHTML=AAA;
document.getElementById('block_basket_sum').innerHTML=ZZZ;

  
//заморочки с win-1251 начало
// Инициализируем таблицу перевода
        var trans = [];
        for (var i = 0x410; i <= 0x44F; i++)
          trans[i] = i - 0x350; // А-Яа-я
        trans[0x401] = 0xA8;    // Ё
        trans[0x451] = 0xB8;    // ё
        
        // Сохраняем стандартную функцию escape()
        var escapeOrig = window.escape;
        
        // Переопределяем функцию escape()
        window.escape = function(str)
        {
          var ret = [];
          // Составляем массив кодов символов, попутно переводим кириллицу
          for (var i = 0; i < str.length; i++)
          {
            var n = str.charCodeAt(i);
            if (typeof trans[n] != 'undefined')
              n = trans[n];
            if (n <= 0xFF)
              ret.push(n);
          }
          return escapeOrig(String.fromCharCode.apply(null, ret));
        }
//заморочки с win-1251 конец

//showBusyLayer("basket_message_busy_layer");

  	 this.http = get_http();
	 this.working = false;
          if (!this.working && this.http) 
          {   
		var http = this.http;
                url = "" + patch + "?action=add&name=" + escape(name) + "&kol=" + kol + "&cena=" + cena + "&partner=" + partner + "&from_site=" + from_site + "&notification=" + notification + "";
                //alert(url);
		 
                this.http.open("GET", url, true);
		this.http.onreadystatechange = function() 
                {
			if (http.readyState == 4) 
                        {
				showBusyLayer("basket_message_busy_layer");
                                //showBusyLayer("preview_busy_layer");
				  startday = new Date();
                                  clockStart = startday.getTime();
				    //alert(clockStart);
                                    show_timer(clockStart);
				    
				
 				 document.getElementById('basket_message_content').innerHTML = "Товар: <b>" + name + "</b>,<br> стоимостью <b>" + cena + "</b> руб. добавлен в корзину.<br><br><img src='images/ajax_load_48_white_2.gif' alt='Подождите пожалуйста...'><br><br>Вы можете <a href='portativ.php?module=basket'><u>перейти в корзину</u></a>, или продолжить делать покупки.";
                                 //document.getElementById('basket_message_content').innerHTML = http.responseText;
                                  x = getClientCenterX()-250;
                                  y = getClientCenterY() - 50;
                                 
                                        //   x = 10;
				         //  y = 10;
                                           obj = document.getElementById("basket_message");
                                           obj.style.top = y + 'px';
                                           obj.style.left = x +'px';
                                           obj.style.width = '500px';
                                           
                                           //obj.style.right = '400px';
                                           
                                           obj.style.visibility = "visible";
                                           obj.style.display = "block";
         				
				//document.getElementById('add_goods_in_basket['+name+']').innerHTML = http.responseText;
 				//alert("Товар:" + name + ", стоимостью " + cena + "руб. добавлен в корзину.");
 				//hideBusyLayer("basket_busy_layer");
			        //document.getElementById('basket_ajax_loader_layer').style.visibility = "hidden";
 			 	//document.getElementById('add_goods_in_basket['+name+']').innerHTML = '';
                                this.working = false;
			} 
                        else 
                        {
                         // ajax_loader_layer();
                        }
		}
		this.http.send(null);
	} 
        else 
        {
		alert('Ошибка. Объект используется!')
	}
	
        if(!this.http){
		alert('Ошибка при создании XMLHTTP объекта!')
	}


            return;
}




function close_box() 
  {
    document.getElementById("preview_box").style.visibility="hidden"
    hideBusyLayer("preview_busy_layer")
  }

function pause (mSec) 
{
clock = new Date();
justMinute = clock.getTime();
while (true) {
just = new Date();
if ((just.getTime() - justMinute > mSec) ) break;
}
}

function show_photos_preview(goods, event) 
{       
  var goods = goods;
  obj = document.getElementById(goods);
  obj.style.left = defPosition(event).x+50+'px'; 
  obj.style.top = defPosition(event).y+5+'px';;
  obj.style.visibility = 'visible';
  obj.style.display = 'block';
 return;
}

function hide_photos_preview(goods) 
{       

//pause(1000);
  document.getElementById(goods).style.visibility='hidden'; 
            return;
}

function defPosition(event) 
{
    var x = y = 0;
    if (document.attachEvent != null) { // Internet Explorer & Opera
        x = window.event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
        y = window.event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
    } else if (!document.attachEvent && document.addEventListener) { // Gecko
        x = event.clientX + window.scrollX;
        y = event.clientY + window.scrollY;
    } else {
        // Do nothing
    }
    return {x:x, y:y};
}

// Простая проверка
// С помощью document.write выведем координаты прямо в окно браузера
// Они будут обновлять при движении мыши

//document.onmousemove = function(event) {
//    var event = event || window.event;
//    document.body.innerHTML = "x = " + defPosition(event).x + ", y = " + defPosition(event).y;
//}

function getClientWidth()
{
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;
}

function getClientHeight()
{
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;
}


function getBodyScrollTop()
{
  return self.pageYOffset || (document.documentElement && document.documentElement.scrollTop) || (document.body && document.body.scrollTop);
}
function getBodyScrollLeft()
{
  return self.pageXOffset || (document.documentElement && document.documentElement.scrollLeft) || (document.body && document.body.scrollLeft);
}

function getClientCenterX()
{
	return parseInt(getClientWidth()/2)+getBodyScrollLeft();
}

function getClientCenterY()
{
	return parseInt(getClientHeight()/2)+getBodyScrollTop();
}


function ajax_loader_layer()
{                      
        l = getClientCenterX() - 110 + 'px';
        t = getClientCenterY() - 50 + 'px';

       // document.body.innerHTML = '<div id="basket_ajax_loader_layer" style="visibility: hidden; display: block; position: absolute;"><img src="images/ajax-loader_bar.gif"></div>';
        document.getElementById('basket_busy_layer').innerHTML = '<div id="basket_ajax_loader_layer" style="visibility: visible; display: block; position: absolute; top: '+ t +'; left: '+ l +';"><img src="images/ajax-loader_bar.gif"></div>';

//        document.getElementById('basket_ajax_loader_layer').style.top = getClientCenterY() - 50 + 'px';
//        document.getElementById('basket_ajax_loader_layer').style.left = getClientCenterX() - 110 + 'px';
//        document.getElementById('basket_ajax_loader_layer').style.visibility = 'visible';
//        document.getElementById('basket_ajax_loader_layer').style.display = 'block';
}



function add_basket_message()
{                      
        l = getClientCenterX() - 110 + 'px';
        t = getClientCenterY() - 50 + 'px';

       // document.body.innerHTML = '<div id="basket_ajax_loader_layer" style="visibility: hidden; display: block; position: absolute;"><img src="images/ajax-loader_bar.gif"></div>';
        document.getElementById('basket_busy_layer').innerHTML = '<div id="basket_ajax_loader_layer" style="visibility: visible; display: block; position: absolute; top: '+ t +'; left: '+ l +';"><img src="images/ajax-loader_bar.gif"></div>';

//        document.getElementById('basket_ajax_loader_layer').style.top = getClientCenterY() - 50 + 'px';
//        document.getElementById('basket_ajax_loader_layer').style.left = getClientCenterX() - 110 + 'px';
//        document.getElementById('basket_ajax_loader_layer').style.visibility = 'visible';
//        document.getElementById('basket_ajax_loader_layer').style.display = 'block';
}

//startday = new Date();
//clockStart = startday.getTime();
//alert(clockStart);

function show_timer(val)
   {
   var clockStart = val;
    
    var myTime = new Date();
    var timeNow = myTime.getTime()-3000;
    var timeDiff = timeNow - clockStart;
    this.diffSecs = timeDiff/1000;
    var mySecs = this.diffSecs; 
    var mySecs1 = ""-mySecs;
     mySecs1 = Math.round(mySecs1);  //по секундам

      if (mySecs1 < 1)  
      {
       hideBusyLayer("basket_message_busy_layer");
       document.getElementById('basket_message').style.visibility = "hidden";
       return;
      }
     document.getElementById("show_timer").innerHTML = "<b>Окно закроется автоматически, через</b><br> <font color=red size=+5><b>" + mySecs1 + "</b></font> <b>сек</b>.";
     window.setTimeout('show_timer(clockStart)',0); 
    }


function set_width_browser_in_cookie()
   {
     width_browser = getClientCenterX()*2;
     createCookie("width_browser", width_browser, 1);
   } 
   
function resize_search_block()
{   
   width_browser = getClientCenterX()*2;
   var obj = document.getElementById('searchstring');
    if (obj != null) 
     {
       obj.style.width = width_browser-600+'px';
     }
}


