function ValidateSearch() 
{
  var SearchText = document.SearchForm.word;
  if (SearchText.value.length == 0 || SearchText.value.replace(/ /gi,"").length < 3) {
      alert("Строка поиска должна содержать не менее 3 символов");
      return false;
    };
    return true;
}

function pause(numberMillis)
{
var now = new Date();
var exitTime = now.getTime() + numberMillis;
while (true)
{
now = new Date();
if (now.getTime() > exitTime)
return;
}
} 

var xmlHttp = createXmlHttpRequestObject();
var showErrors = false;

function explode( delimiter, string ) {
    var emptyArray = { 0: '' };
 
    if ( arguments.length != 2
        || typeof arguments[0] == 'undefined'
        || typeof arguments[1] == 'undefined' )
    {
        return null;
    }
 
    if ( delimiter === ''
        || delimiter === false
        || delimiter === null )
    {
        return false;
    }
 
    if ( typeof delimiter == 'function'
        || typeof delimiter == 'object'
        || typeof string == 'function'
        || typeof string == 'object' )
    {
        return emptyArray;
    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }
 
    return string.toString().split ( delimiter.toString() );
}

function createXmlHttpRequestObject() 
{
  var xmlHttp;

  try
  {
    xmlHttp = new XMLHttpRequest();
  }
  catch(e)
  {
    var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0",
                                    "MSXML2.XMLHTTP.5.0",
                                    "MSXML2.XMLHTTP.4.0",
                                    "MSXML2.XMLHTTP.3.0",
                                    "MSXML2.XMLHTTP",
                                    "Microsoft.XMLHTTP");
    for (var i=0; i<XmlHttpVersions.length && !xmlHttp; i++) 
    {
      try 
 
      { 
        xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
      } 
      catch (e) {}
    }
  }
  if (!xmlHttp)
    alert("Error creating the XMLHttpRequest object.");
  else 
    return xmlHttp;
}


function displayError($message)
{
    alert("Error encountered: \n" + $message);
}

function turnMain(level)
{
  if (xmlHttp)
  {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
      	document.getElementById("rotate_main1").style.display = "none";
 		document.getElementById("rotate_main2").style.display = "block";   
      	  
        var params = "level=" + encodeURIComponent(level);
        xmlHttp.open("POST", "/turn_main.php", true);

        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        xmlHttp.setRequestHeader("Content-length", params.length);
        xmlHttp.setRequestHeader("Connection", "close");
        xmlHttp.onreadystatechange = handleHttpGetMenuMain;
        xmlHttp.send(params);
        
        
      }
      else
      {
        setTimeout(turnMain(level), 1000);
      }
  }

//return false; 

}


function handleHttpGetMenuMain() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        displayMenuMain();
      }
      catch(e)
      {

        displayError(e.toString());
      }
    } 
    else 
    {
      displayError(xmlHttp.statusText);
    }
  }
}


function displayMenuMain()
{
 var textResponse = xmlHttp.responseText;
 var arr=explode('<hr><hr>',textResponse);
 
 var new_level=arr[3];
 
 document.getElementById("menu1").innerHTML = arr[0];
 document.getElementById("menu2").innerHTML = arr[1];
 document.getElementById("menu3").innerHTML = arr[2];
 document.getElementById("menu4").onclick = function(){turnMain(new_level);return false;};
 document.getElementById("menu5").onclick = function(){turnMain(new_level);return false;};
 
 //turnImage(arr[4]);
 
 document.getElementById("rotate_main2").style.display = "none";
 document.getElementById("rotate_main1").style.display = "block"; 
}

function turnCatalog(level)
{
  if (xmlHttp)
  {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
      	document.getElementById("rotate_catalog3").style.display = "block";
      	document.getElementById("rotate_catalog2").style.display = "block";
        document.getElementById("rotate_catalog1").style.display = "none";   
      	   
        var params = "level=" + encodeURIComponent(level);

        xmlHttp.open("POST", "/turn_catalog.php", true);

        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        xmlHttp.setRequestHeader("Content-length", params.length);
        xmlHttp.setRequestHeader("Connection", "close");
        xmlHttp.onreadystatechange = handleHttpGetMenuCatalog;
        xmlHttp.send(params);
        
      }
      else
      {
        //setTimeout(turnCatalog(level), 1000);
      }
  }
}


function handleHttpGetMenuCatalog() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        displayMenuCatalog();
      }
      catch(e)
      {

        displayError(e.toString());
      }
    } 
   else 
    {
      displayError(xmlHttp.statusText);
    }
  }
}


function displayMenuCatalog()
{
 var textResponse = xmlHttp.responseText;
 var arr=explode('<hr><hr>',textResponse);
 
 var new_level=arr[1];
 
 document.getElementById("menu1").innerHTML = arr[0];
 document.getElementById("menu2").onclick = function(){turnCatalog(new_level);return false;};
 document.getElementById("menu3").onclick = function(){turnCatalog(new_level);return false;};
  
 document.getElementById("rotate_catalog3").style.display = "none";
 document.getElementById("rotate_catalog2").style.display = "none";
 document.getElementById("rotate_catalog1").style.display = "block";  
}



function turnImage(id)
{  
 if (id!==undefined) 
 {
  if (xmlHttp)
  {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
        document.getElementById("main_img").style.display = "none";
        document.getElementById("main_img_indicator").style.display = "block";
        
       //document.getElementById("rotate_main2").style.display = "block";
       //document.getElementById("rotate_main1").style.display = "none";         

        var params = "id=" + encodeURIComponent(id);
        xmlHttp.open("POST", "/image_main.php", true);

        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        xmlHttp.setRequestHeader("Content-length", params.length);
        xmlHttp.setRequestHeader("Connection", "close");
        xmlHttp.onreadystatechange = handleHttpGetImage;
        xmlHttp.send(params);
        
        
      }
  }
 }

}

function handleHttpGetImage() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        displayImage();
      }
      catch(e)
      {

        displayError(e.toString());
      }
    } 
    else 
    {
      displayError(xmlHttp.statusText);
    }
  }
}


function displayImage()
{
	
 var textResponse = xmlHttp.responseText;
 var arr=explode('<hr><hr>',textResponse);
 
 //alert(arr[6]);
 
 document.getElementById("main_img_indicator").style.display = "none";
 document.getElementById("main_img").style.display = "block";

 document.getElementById("main_text").innerHTML = arr[1];
 document.getElementById("main_img").innerHTML = arr[0];
 document.getElementById("main_left").onclick = function(){turnImage(arr[2]);return false;};
 document.getElementById("main_right").onclick = function(){turnImage(arr[3]);return false;};
 
 document.getElementById("link1").href = arr[6];

 preload_image('/img/images/main/' + arr[4]);
 preload_image('/img/images/main/' + arr[5]);
 
}


function closeQuestion()
{
 document.getElementById("question").style.display = "none";
 document.getElementById("question_title").onclick = function(){displayQuestion();};
}

function displayQuestion()
{
 document.getElementById("question").style.display = "block";
 document.getElementById("question_title").onclick = function(){closeQuestion();};
}	

function turnBookmark(id,amount)
{   
  if (xmlHttp)
  {
    try
    {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
      	  
      	if(document.getElementById("result")){document.getElementById("result").innerHTML=""};
        document.getElementById("bookmark").style.display = "none";
        document.getElementById("bookmark_loading").style.display = "block";

        
        var params = "level=" + encodeURIComponent(id);
        xmlHttp.open("POST", "/turn_bookmark.php", true);

        for(i=1;i<=amount;i++)
        {
         document.getElementById("color" + i).className="usual_bookmark";
        }	
        
        document.getElementById("color" + id).className="green_bookmark";
        
        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        xmlHttp.setRequestHeader("Content-length", params.length);
        xmlHttp.setRequestHeader("Connection", "close");
        xmlHttp.onreadystatechange = handleHttpBookmark;
        xmlHttp.send(params);
        
        
      }
      else
      {
        setTimeout(turnBookmark(id,amount), 1000);
      }
    }
    catch (e)
    {
      displayError(e.toString());
    }
  }
}


function handleHttpBookmark() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        displayBookmark();
      }
      catch(e)
      {

        //displayError(e.toString());
      }
    } 
    else 
    {
      //displayError(xmlHttp.statusText);
    }
  }
}

function displayBookmark()
{
 document.getElementById("bookmark_loading").style.display = "none";
 document.getElementById("bookmark").style.display = "block";	
	
 var textResponse = xmlHttp.responseText;
 var arr=explode('<hr><hr>',textResponse);
 document.getElementById("bookmark").innerHTML=arr[0];
	
 //alert(arr[1]);

 document.getElementById("submenu_loading").style.display = "block";
	
 new Ajax.Request('/data_values.php', {
 method: 'post',
 parameters: {id: arr[1], def: 0},
 onSuccess: function(transport){$('submenu').innerHTML=transport.responseText; document.getElementById("submenu_loading").style.display = "none";}
 });
  
}

function turnImageWithInterval()
{
 if (xmlHttp)
  {
      if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
      {
      	var params = "id=1";
      	  
        xmlHttp.open("POST", "/turn_main_image.php", true);

        xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
        xmlHttp.setRequestHeader("Content-length", params.length);
        xmlHttp.setRequestHeader("Connection", "close");
        xmlHttp.onreadystatechange = handleHttpGetImageWithInterval;
        xmlHttp.send(params);
        
        
      }
      else
      {
        //setTimeout(turnImageWithInterval(), 1000);
      }
  }

}	

function handleHttpGetImageWithInterval() 
{
  if (xmlHttp.readyState == 4) 
  {
    if (xmlHttp.status == 200) 
    {
      try
      {
        TurnImageTry();
      }
      catch(e)
      {

        //displayError(e.toString());
      }
    } 
    else 
    {
      //displayError(xmlHttp.statusText);
    }
  }
}

function TurnImageTry()
{
  var textResponse = xmlHttp.responseText;
 
  turnImage(textResponse);
}



