

function Init()
{
  hps();
}


var ProductsMenuAll = new Object();
for (var el in ProductsMenu)
{
  ProductsMenuAll[el] = ProductsMenu[el];
  if (ProductsMenu[el].submenu!=null)
  {
    for (var j=0; j<ProductsMenu[el].submenu.length; j++)
    {
      ProductsMenu[el].submenu[j].sectionId = el;
      ProductsMenuAll[ProductsMenu[el].submenu[j].id] = ProductsMenu[el].submenu[j];
    }
  }
}

var selProdsCookieName = "SelectedPTprods";

var sectionIDprefix = "group_"; //Префикс для id элементов содержащих подменю
var menuPicIDprefix = "pic_"; //Префикс для id элементов каринок отображающих состояние меню (раскрыто/закрыто)

var prevSectionId = ""; //значение предыдущего id раздела меню (используется для закрытия раздела в случае открытия нового)
var prevGroupId = ""; 

var itemPicEnabled = true;


function MIover(itemId)
{
  var picObj = document.getElementById(menuPicIDprefix+itemId);    
  picObj.src = "/images/arrows_right_black.gif";
}


function MIout(itemId)
{
  var picObj = document.getElementById(menuPicIDprefix+itemId);    
  picObj.src = "/images/empty.gif";
}


//Обработчик события клика мыши по пунктам меню
function CLKM(itemId)
{
  var obj = document.getElementById(sectionIDprefix+itemId);
//  if (obj==null) return;
  if (itemId.charAt(0)=="s")
  {
    if (((ProductsMenuAll[itemId].link+"")!="undefined") && ((ProductsMenuAll[itemId].link+"")!=""))
    {   
      document.location = ProductsMenuAll[itemId].link;
      return;
    }
    if (obj==null) return;    
//    var picObj = document.getElementById(menuPicIDprefix+itemId);    
    var prevSectionObj = document.getElementById(sectionIDprefix+prevSectionId);
//    var prevPicObj = document.getElementById(menuPicIDprefix+prevSectionId);    
    if (obj.style.display == "none")
    {
      obj.style.display = "";
//      picObj.src = "/images/arrows_down_white1.gif";
      if ((itemId!=prevSectionId) && (prevSectionObj!=null)) 
      {
        prevSectionObj.style.display = "none";
//        prevPicObj.src = "/images/arrows_right_white1.gif";
      }
      prevSectionId = itemId;
    }
    else
    {
//      picObj.src = "/images/arrows_right_white1.gif";    
      obj.style.display = "none";
    }  
  }
  if ((prevGroupId!=ProductsMenuAll[itemId].sectionId) && (prevGroupId!=itemId))
  {
    if ((ProductsMenuAll[itemId]+"")!="undefined")
    {
      if ((document.ProductsForm+"")!="undefined")
      {
        document.ProductsForm.menuId.value = itemId;
        document.ProductsForm.submit();
      } //else document.location = "/products/index.asp?menuId="+itemId;
    }
  }
  else
  {
    if (itemId.charAt(0)!="s") document.location = "#"+itemId;
  }
}


//Функция создающая html-код меню на основе объекта ProductsMenu
function DrawWMenu(wmenu)
{

  function DrawWSM(wsm,wsmId)
  {
    document.write("<TABLE width=\"100%\" cellspacing=\"2\" cellpadding=\"0\" border=\"0\" style=\"cursor:pointer;\">");  
    for (var j=0; j<wsm.length; j++)
    {
      if (itemPicEnabled)
      {
        document.write("<TR><TD valign=\"top\" width=\"1%\"><IMG id=\""+menuPicIDprefix+wsm[j].id+"\" src=\"/images/empty.gif\" width=\"9\" height=\"9\" vspace=\"1\"></TD>");
        document.write("<TD onclick=\"CLKM('"+wsm[j].id+"')\" onmouseover=\"MIover('"+wsm[j].id+"')\" onmouseout=\"MIout('"+wsm[j].id+"')\" class=\"wmenu_sm\">"+wsm[j].name+"</TD></TR>");
        if (j<(wsm.length-1)) document.write("<TR><TD height=\"1\"></TD><TD height=\"1\" bgcolor=\"#DDDDDD\" background=\"/images/menu_dots2.gif\"><IMG src=\"/images/empty.gif\" height=\"1\" width=\"1\" border=\"0\"></TD></TR>");
      }
      else
      {
        document.write("<TR><TD width=\"9\"></TD>");
        document.write("<TD onclick=\"CLKM('"+wsm[j].id+"')\" class=\"wmenu_sm\">"+wsm[j].name+"</TD></TR>");
        if (j<(wsm.length-1)) document.write("<TR><TD height=\"1\"></TD><TD height=\"1\" bgcolor=\"#DDDDDD\" background=\"/images/menu_dots2.gif\"><IMG src=\"/images/empty.gif\" height=\"1\" width=\"1\" border=\"0\"></TD></TR>");      
      }
    }
    document.write("</TABLE>");    
  }
  
  document.write("<TABLE width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\">")
  var isFirstElement = true;
  for (groupId in wmenu)
  {
    var menuId = sectionIDprefix+groupId;
    var onclickStr = "CLKM('"+groupId+"')";
    if (!isFirstElement) document.write("<TR><TD width=\"100%\" colspan=\"2\" background=\"/images/menu_dots1.gif\"><IMG src=\"/images/empty.gif\" height=\"1\" width=\"1\" border=\"0\"></TD></TR>");
    
    document.write("<TR class=\"wmenu_top\" onclick=\""+onclickStr+"\"><TD width=\"1%\" height=\"16\" bgcolor=\"#AC0000\"><IMG src=\"/images/empty.gif\" height=\"1\" width=\"4\" border=\"0\"></TD>");
    document.write("</TD><TD class=\"menu\" valign=\"center\">"+wmenu[groupId].name+"</TD></TR>");    
    if (wmenu[groupId].submenu!=null)
    {
      document.write("<TR id=\""+menuId+"\" style=\"display:none;\" class=\"wmenu_exp\"><TD colspan=\"2\">")
      DrawWSM(wmenu[groupId].submenu,menuId);
      document.write("</TD></TR>");
    }
    if (isFirstElement) isFirstElement = false;
  }
//  document.write("<TR class=\"wmenu_top\"><TD width=\"100%\" colspan=\"2\"><IMG src=\"/images/empty.gif\" height=\"5\" width=\"1\" border=\"0\"></TD></TR>");  
  document.write("</TABLE>");
}


//функция восстановления состояния меню если оно было сохранено в элементе формы с именем "ProductsForm" в элементе с именем "menuId"
function InitMenu()
{
  if ((document.ProductsForm+"")!="undefined")
  { 
    var curSectionId = document.ProductsForm.menuId.value;
    prevGroupId = curSectionId;
    if ((ProductsMenuAll[curSectionId]+"")=="undefined") return;
    if (curSectionId.charAt(0)!="s") prevGroupId = ProductsMenuAll[curSectionId].sectionId;
    if (curSectionId.charAt(0)!="s") curSectionId = ProductsMenuAll[curSectionId].sectionId;
    if (curSectionId!="") CLKM(curSectionId);
  }
}

// - МЕНЮ 



//---------------------------------------------------------------------------



function CheckboxCLK(checkbox)
{
  var prodId = checkbox.value;
  if (prodId=="") prodId = "p";
  var selectedProducts = getCookie(selProdsCookieName);
  if ((selectedProducts+"")=="undefined") selectedProducts = "";
  if (checkbox.checked)
  {
    if (selectedProducts.indexOf(prodId+",")<0) selectedProducts += prodId+",";
  }
  else
  {
    var re = new RegExp(prodId+",","gi");
    selectedProducts = selectedProducts.replace(re,"");
  }
//  window.status = ""+selectedProducts;
  setCookie(selProdsCookieName,selectedProducts,0.5,"","");  
}


function CheckOrder()
{
  if (((getCookie(selProdsCookieName)+"")=="undefined") || ((getCookie(selProdsCookieName)+"")==""))
  {
    alert("Не выбрано ни одного продукта/услуги");
    return false;
  }
  return true;
}

function CheckForm(formName)
{
  var formObj = document.forms[formName];
  if ((formObj+"")!="undefined")
  {
    if ((formObj["fio"]+"")!="undefined") {
      if (formObj["fio"].value=="") {alert("Не задано поле \"ФИО\"."); return false;}
    }
    if ((formObj["company"]+"")!="undefined") {
      if (formObj["company"].value=="") {alert("Не задано поле \"Компнаия\"."); return false;}
    }
    if ((formObj["city"]+"")!="undefined") {
      if (formObj["city"].value=="") {alert("Не задано поле \"Город\"."); return false;}
    }
    if ((formObj["phone"]+"")!="undefined") {
      if (formObj["phone"].value=="") {alert("Не задано поле \"Телефон\"."); return false;}
    }
    if ((formObj["email"]+"")!="undefined") {
      if (formObj["email"].value=="") {alert("Не задано поле \"Электронный адрес\"."); return false;}
    }
    if (formName=="CommentsForm") {
      if ((formObj["comment"]+"")!="undefined") {
        if (formObj["comment"].value=="") {alert("Не задано поле \"Комментарий\"."); return false;}
      }
    }
    if ((formObj["prodIds"]+"")!="undefined") {
      if (formObj["prodIds"].value=="") {alert("Не выбрано ни одного продукта."); return false;}
    }
    if (!EmailIsCorrect(formObj["email"].value)) return false;
    if (EmailIsFree(formObj["email"].value)) {alert("Недопустим e-mail бесплатной почтовой службы."); return false;}
    if (formName=="OrderForm") {
      if (!CheckOrder()) return false;
    }
    return true;
  }
  return false;
}


function FinalizeOrder()
{
  setCookie(selProdsCookieName,"",-1,"","");
  setTimeout("document.location = '/products/';",5000);
}


//Список бесплатных почтовых серверов (1-я страница)
var freeEmails = new Array(
  "beep.ru","cmail.ru","popmail.ru","yes.ru","zmail.ru",
  "id.ru","go.ru","ok.ru","ru.ru","cmail.ru",
  "mailgate.ru","e-mail.ru","aport2000.ru","omen.ru","atrus.ru",
  "mail2000.ru","userline.ru","kiss.ru","emax.ru","fomenko.ru",
  "pupsik.ru","persik.ru","lovers.ru","yandex.ru","pisem.net",
  "crazyrussian.com","bratva.ru","email.ru","aport.ru","omen.ru",
  "ebox.ru","femail.ru","imail.ru","itsmylife.ru","mail2k.ru",
  "male.ru"
);

//Проверка на бесплатный почтовый сервис (возвращает true, если e-mail попадает в список беслптаных почтовых серверов)
function EmailIsFree(testEmail)
{
  var ind = testEmail.lastIndexOf("@");
  var emailDomain = testEmail.substring(ind+1);
  emailDomain = emailDomain.toLowerCase();
  for (var i=0; i<freeEmails.length; i++)
  {
    if (emailDomain==freeEmails[i].toLowerCase()) return true;
  }
  return false;
}


//проверка адреса e-mail на корректность
function EmailIsCorrect(email)
{
  var re1 = new RegExp("(.+)@(.+)*(\\.)(.+)","gi");
  var re2 = new RegExp("[A-Za-z0-9\._@\\-]","gi");
  
  if (email=="")
  {
    alert("Не задан адрес e-mail");
    return false;
  }
  if ((email.match(re1)==null)) 
  {
    alert("Неправильно задан адрес e-mail");
	return false;
  }
  else
  {
    if ((email.match(/@/gi)).length>1)
	{
      alert("В адресе e-mail содержится более одного симовла '@'");
	  return false;
	}
	else
	{
      var incSymbols = email.replace(re2,"");
      var incSymbolsList = "";
      for (var i=0; i<incSymbols.length; i++)
      {
        if (incSymbolsList.indexOf(incSymbols.charAt(i))<0) incSymbolsList += ((incSymbolsList.length>0)?",":"")+"'"+incSymbols.charAt(i)+"'";
      }  
      if (incSymbolsList!="") 
	  {
	    alert("Адрес e-mail содержит недопустимые символы: "+incSymbolsList);
	    return false;
	  }
	}
  }
  return true;  
}

