/* AJAX */
var divId,curGalleryId,curPage,curChildId,cookieId,isCard;
var isReady=true;
var refUrl='';

   this.Sleep = function ZZzzzZZzzzzzzZZZz(naptime){
      naptime = naptime * 1000;
      var sleeping = true;
      var now = new Date();
      var alarm;
      var startingMSeconds = now.getTime();
      while(sleeping){
         alarm = new Date();
         alarmMSeconds = alarm.getTime();
         if(alarmMSeconds - startingMSeconds > naptime){ sleeping = false; }
      }      
   }



        document.getElementsByClassName = function(cl) {
        var retnode = [];
        var myclass = new RegExp('\\b'+cl+'\\b');
        var elem = this.getElementsByTagName('*');
        for (var i = 0; i < elem.length; i++) {
        var classes = elem[i].className;
        if (myclass.test(classes)) retnode.push(elem[i]);
        }
        return retnode;
        }; 
        



function onPictureLoaded(text){
    if (rec.readyState == 4) {
                if (rec.status == 200) {
                     
                     StopLoader();
                     if(!mouseOut){
                        //TODO implement more independent way for downloading pictures
                        document.getElementById("bigImageDiv").innerHTML=rec.responseText;
                     //   document.getElementById("pictureDiv").style.display='block';       
                     }                 
                     
                }
     }
}


function onHugePictureLoaded(text){
    if (rec.readyState == 4) {
                if (rec.status == 200) {
                     
                     StopLoader();
               //      if(!mouseOut){
                        //TODO implement more independent way for downloading pictures
                        if(isCard){
                            document.getElementById("hugeDiv").innerHTML=rec.responseText;
                        }
                        else{ 
                            document.getElementById("descriptionDiv").style.display='block';
                            document.getElementById("descriptionDiv").innerHTML=rec.responseText;                        
                        }    
                     //   document.getElementById("pictureDiv").style.display='block';       
              //        }                 
                     
                }
     }
}




function $AjaxGetObject ()
{
var httpRequestObject = false;
if (!httpRequestObject) try { httpRequestObject = new ActiveXObject("MSXML2.XMLHTTP.3.0"); } catch (e) {}
if (!httpRequestObject) try { httpRequestObject = new ActiveXObject('Msxml2.XMLHTTP'); } catch (e){}
if (!httpRequestObject) try { httpRequestObject = new ActiveXObject('Microsoft.XMLHTTP'); } catch (e){}
if (!httpRequestObject) try { httpRequestObject = new XMLHttpRequest(); } catch (e){}
if (!httpRequestObject)
return false;
else
return httpRequestObject;
}
function $AjaxGetUrl (url)
{
return $AjaxSyncQuery(url);
}
function $AjaxSyncQuery (url)
{
StartLoader();
var obj = $AjaxGetObject();
obj.open('GET', url, false);
obj.send(null);
StopLoader();
test_session(url);
return obj.responseText;
}


function StartLoader() {

var obj=document.getElementById("load");
 //   alert('');
if (obj) {
   try{
 //   document.getElementById("load").style.left=x+'px';
 //   document.getElementById("load").style.top=y+'px'; 

    document.getElementById("load").style.visibility="visible";
   }
   catch(e){
   
   }  
}   
}

function StopLoader() {
window.status = "";
var obj=document.getElementById("load");
if (obj)
document.getElementById("load").style.visibility="hidden";
isReady=true;

}
function mevent(e) {
document.getElementById("loader1").style.left=window.event.x+10;
document.getElementById("loader1").style.top=window.event.y-10;
return true;
}


function $AjaxAsyncQuery (url, onLoading, onLoaded, onError)
{
var obj = $AjaxGetObject();
obj.onreadystatechange = function () { $AjaxAsyncLoaded (obj, onLoaded, onError) };
obj.open('GET', url, true);

eval(onLoading + '();');
obj.send(null);
}
function $AjaxAsyncLoaded (AjaxObject, onLoaded, onError)
{
if (AjaxObject.readyState == 4) {
if (AjaxObject.status == 200) {
eval(onLoaded + "('" + AjaxObject.responseText.replace(/\r\n/mgi,'') + "');");
} else {
eval(onError + '();');
}
}
}
var rec;



function onLoaded1(){
//        alert(this.responseText);
           isReady=false;
           StartLoader();
}

function onLoaded2(text){
    if (rec.readyState == 4) {
                if (rec.status == 200) {
                      //  document.getElementById("load").style.display="none";
                      //  alert(rec.responseText); 
                        document.getElementById('search-box').style.display='none'; 
                        document.getElementById('descriptionDiv').innerHTML=rec.responseText;

                        resizePopUp();                      
                        StopLoader();
                }
     }
}


function onBusketLoaded(text){
    if (rec.readyState == 4) {
             //   if (rec.status == 200) {
                     

                     var date = new Date();
                     var url='../getBusketInfo.php?cookieId='+cookieId+'&date='+date;
                     $AjaxAsyncQuery2 (url,onLoaded1,onBusketInfoLoaded);

                     
           //     }
     }
}

function onBusketInfoLoaded(text){
    if (rec.readyState == 4) {
              //  if (rec.status == 200) {
                     
                     StopLoader();
                     document.getElementById("basket").innerHTML=rec.responseText;
                     alert('Товар успешно добавлен в корзину!'); 

                     
            //    }
     }
}


function $AjaxAsyncQuery2 (url, onLoading, onLoaded)
{

var $AjaxObject = $AjaxGetObject();
rec = $AjaxObject;
$AjaxObject.onreadystatechange = onLoaded;
$AjaxObject.open('GET', url, true);
onLoaded1();

//StopLoader();
$AjaxObject.send(null);
}

function $AjaxAsyncQueryNoLoading (url, onLoading, onLoaded)
{

var $AjaxObject = $AjaxGetObject();
rec = $AjaxObject;
$AjaxObject.onreadystatechange = onLoaded;
$AjaxObject.open('GET', url, true);

//StopLoader();
$AjaxObject.send(null);
}


function strrpos( haystack, needle, offset){

 
    var i = (haystack+'').lastIndexOf( needle, offset ); 
    return i >= 0 ? i : false;
}



function onLoaded3(){
    if (rec.readyState == 4) {
                if (rec.status == 200) {
                        document.getElementById("load").style.visibility="hidden";
                        document.getElementById("descr").innerHTML=rec.responseText;
                        StopLoader();
                }
     }
}



function resizePopUp(){
          //changing the size of the pop_up window according to the screen resolution
     /*     if ((screen.width<=1152) && (screen.height<=864))
            {
                document.getElementById('pop_up').style.margin='-158px 0 0 -348px';
                document.getElementById('pop_up').style.width='900 px';
                document.getElementById('pop_up').style.height='490 px';
               alert(document.getElementById('inDiv').style.height);
                document.getElementById('inDiv').style.height='490 px';
               document.getElementsByClassName('in')[0].style.height='490 px';
            }*/
}



function showdescription(nid,cookieId,searchWay,hitWay,refUrl)
{ 
       

      if(document.body.clientHeight>=764){    
             
        var _x;
	      var _y;

if(navigator.appName=='Microsoft Internet Explorer'){
            document.body.scroll='no';
          }
          else{
            document.body.style.overflow='hidden';          
          }   

          document.getElementById('descriptionDiv').style.display='block';
          var date = new Date();
          var timestamp = date.getTime();            
          var url='./preview.php?nid='+nid+'&time='+timestamp; 
          $AjaxAsyncQuery2 (url,onLoaded1,onLoaded2);
          return true;
       }
       else{
           if(searchWay!=''){           
              refUrl=refUrl+'&'+searchWay;
           }   
           if(hitWay!=''){           
              refUrl=refUrl+'&'+hitWay;
           }   
              

           document.location=refUrl;

         
       }   
        
          
}



function addToBusket(nid,tempCookieId)
{ 
             
          cookieId=tempCookieId;
          var date = new Date();
          var timestamp = date.getTime();            
          var url="../cart/add/"+nid+"?destination="+"../temp.php"; 
          $AjaxAsyncQuery2 (url,onLoaded1,onBusketLoaded);
        
          
}

function getBigImage(photoWay)
{ 
             

          var date = new Date();
          var timestamp = date.getTime();            
          var url="../getBigImage.php?photoWay="+photoWay+"&time="+date+""; 
          $AjaxAsyncQuery2 (url,onLoaded1,onPictureLoaded);
        
          
}


function getHugeImage(photoWay)
{         
         if(document.getElementById('descriptionDiv').style.display=='block') {    
             document.getElementById('hugeDiv').style.display='block';
             document.getElementById('card-page').style.display='none';
             isCard=true;  
         }    
         else{
            isCard=false;  
            document.getElementById('descriptionDiv').innerHTML=''; 
            document.getElementById('descriptionDiv').style.display='block'; 
         
         }
          var date = new Date();
          var timestamp = date.getTime();          
          var url="../getHugeImage.php?photoWay="+photoWay+"&time="+date+""; 
          $AjaxAsyncQuery2 (url,onLoaded1,onHugePictureLoaded);
        
          
}

function getMainImage(imageWay){

         document.getElementById('bigImageDiv').innerHTML=imageWay;

}


function onGoodRequestLoaded(text){

 if (rec.readyState == 4) {
   tb_remove();
      StopLoader();
    alert('Ваш запрос был успешно добавлен! Как только данный товар появится в наличии, мы вас оповестим. Спасибо!'); 
  }     
}


function onAliasReceived(text){
    if (rec.readyState == 4) {
                if (rec.status == 200) {
                    refUrl=rec.responseText;  
                }
     }   
}



function addGoodRequest(name,email,phone,goodId)
{ 
             
          var date = new Date();
          var timestamp = date.getTime();  


        /*  document.cookie = "request_name="+name+";expires=" + tomorrow.toGMTString();          
          document.cookie = "request_email="+email+";expires=" + tomorrow.toGMTString();  
          document.cookie = "request_phone="+phone+";expires=" + tomorrow.toGMTString(); */           
             
          var url="../addGoodRequest.php?date="+date+"&name="+name+"&email="+email+"&phone="+phone+"&goodId="+goodId; 
          $AjaxAsyncQuery2 (url,onLoaded1,onGoodRequestLoaded);
        
          
}

function getGoodAlias(goodId){
             
          var date = new Date();
          var timestamp = date.getTime();         
          var url="../getGoodAlias.php?date="+date+"&goodId="+goodId; 
          $AjaxAsyncQueryNoLoading (url,onLoaded1,onAliasReceived);

}

