﻿//-----------------------------------------------------Функция проверки заполненности полей формы отправки резюме автора
	function checkFormNA(fNA)
	{
//массив с именами полей для проверки	
	requiredNA = new Array("na_name", "na_phone", "na_email");
//массив с текстами ошибок для конкретного поля
	requiredNA_show = new Array("Ваше имя", "Ваш телефон", "Ваш E-mail");
	var i, j;
	for(j=0; j<requiredNA.length; j++)
		{
		for (i=0; i<fNA.length; i++)
			{
			if (fNA.elements[i].name == requiredNA[j] && fNA.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNA_show[j]);
				fNA.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы отправки резюме автора

//-----------------------------------------------------Функция проверки заполненности полей формы добавления нового автора
	function checkFormNAadd(fNA)
	{
//массив с именами полей для проверки	
	requiredNA = new Array("avtor_fio", "avtor_fio2", "avtor_about", "avtor_works");
//массив с текстами ошибок для конкретного поля
	requiredNA_show = new Array("ФИО (полное)", "ФИО (Фамилия И.О.)", "Об авторе", "Основные работы");
	var i, j;
	for(j=0; j<requiredNA.length; j++)
		{
		for (i=0; i<fNA.length; i++)
			{
			if (fNA.elements[i].name == requiredNA[j] && fNA.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNA_show[j]);
				fNA.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления нового автора

//-----------------------------------------------------Функция проверки заполненности полей формы добавления новой книги
	function checkFormNBadd(fNB)
	{
//массив с именами полей для проверки	
	requiredNB = new Array("title", "avtor1", "large_descr");
//массив с текстами ошибок для конкретного поля
	requiredNB_show = new Array("название книги", "хотя бы одного автора", "описание книги");
	var i, j;
	for(j=0; j<requiredNB.length; j++)
		{
		for (i=0; i<fNB.length; i++)
			{
			if (fNB.elements[i].name == requiredNB[j] && fNB.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNB_show[j]);
				fNB.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления новой книги

//-----------------------------------------------------Функция проверки заполненности полей формы добавления нового жанра
	function checkRequiredJanr(fNB)
	{
//массив с именами полей для проверки	
	requiredNJ = new Array("janr_name");
//массив с текстами ошибок для конкретного поля
	requiredNJ_show = new Array("название жанра");
	var i, j;
	for(j=0; j<requiredNJ.length; j++)
		{
		for (i=0; i<fNB.length; i++)
			{
			if (fNB.elements[i].name == requiredNJ[j] && fNB.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNJ_show[j]);
				fNB.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления нового жанра

//-----------------------------------------------------Функция проверки заполненности полей формы добавления новых секций
	function checkRequiredSubs(fNB)
	{
//массив с именами полей для проверки	
	requiredNS = new Array("subsection_name");
//массив с текстами ошибок для конкретного поля
	requiredNS_show = new Array("название секции");
	var i, j;
	for(j=0; j<requiredNS.length; j++)
		{
		for (i=0; i<fNB.length; i++)
			{
			if (fNB.elements[i].name == requiredNS[j] && fNB.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNS_show[j]);
				fNB.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления новых секций

//-----------------------------------------------------Функция проверки заполненности полей формы добавления новой вакансии
	function checkRequiredVacs(fNB)
	{
//массив с именами полей для проверки	
	requiredNV = new Array("vac_name", "vac_desc");
//массив с текстами ошибок для конкретного поля
	requiredNV_show = new Array("название вакансии", "описание вакансии");
	var i, j;
	for(j=0; j<requiredNV.length; j++)
		{
		for (i=0; i<fNB.length; i++)
			{
			if (fNB.elements[i].name == requiredNV[j] && fNB.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNV_show[j]);
				fNB.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления новой вакансии

//-----------------------------------------------------Функция проверки заполненности полей формы добавления новой новости
	function checkRequiredNews(fNB)
	{
//массив с именами полей для проверки	
	requiredNews = new Array("news_date", "news_title", "news_descr_short", "news_descr_large");
//массив с текстами ошибок для конкретного поля
	requiredNews_show = new Array("дату", "заголовок", "краткую информацию", "подробную информацию");
	var i, j;
	for(j=0; j<requiredNews.length; j++)
		{
		for (i=0; i<fNB.length; i++)
			{
			if (fNB.elements[i].name == requiredNews[j] && fNB.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredNews_show[j]);
				fNB.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления новой новости

//-----------------------------------------------------Функция проверки заполненности полей формы добавления новой книги
	function checkFormFIOZakaz(FIOZ)
	{
//массив с именами полей для проверки	
	requiredFZ = new Array("buyer_fio_nns", "buyer_phone_nns", "buyer_adress_nns");
//массив с текстами ошибок для конкретного поля
	requiredFZ_show = new Array("ФИО", "телефон", "адрес");
	var i, j;
	for(j=0; j<requiredFZ.length; j++)
		{
		for (i=0; i<FIOZ.length; i++)
			{
			if (FIOZ.elements[i].name == requiredFZ[j] && FIOZ.elements[i].value == "" )
				{
				alert("Пожалуйста, введите " + requiredFZ_show[j]);
				FIOZ.elements[i].focus();
				return false;
				}
			}
		}
	return true;
	}
//-----------------------------------------------------конец функции проверки заполненности полей формы добавления новой книги

//-----------------------------------------------------Функция поддержки класса hover для IE
startList = function() 
{
      if (document.all&&document.getElementById) 
	   {
            navRoot = document.getElementById("nav");
            for (i=0; i<navRoot.childNodes.length; i++)
			{
                  node = navRoot.childNodes[i];
                  if (node.nodeName=="LI") 
				  {
                        node.onmouseover=function()
						{
                              this.className+=" over";
                        }
                        node.onmouseout=function()
						{
                              this.className=this.className.replace(" over", "");
                        }
                  }
            }
    
	  }

}
window.onload=startList;
//-----------------------------------------------------конец Функция поддержки класса hover для IE



        function isEmpty(str) {
            // Check whether string is empty.
            for (var intLoop = 0; intLoop < str.length; intLoop++)
               if (" " != str.charAt(intLoop))
                  return false;
            return true;
         }

         function checkRequired(f) {
		    var strError = "";
             for (var intLoop = 0; intLoop<f.length; intLoop++){
               if ("0"!=f.elements[intLoop].getAttribute("required"))
                  if (isEmpty(f.elements[intLoop].value))
                  strError += "  " + f.elements[intLoop].name + "\n";
             }
           if (""!=strError) {
               alert("Не введены все необходимые поля");
               return false;
            }
         }

		          function checkRequiredMail(f) {
             var strError = "";

             for (var intLoop = 0; intLoop<f.length; intLoop++){
               if ("0"!=f.elements[intLoop].getAttribute("required"))
                  if (isEmpty(f.elements[intLoop].value))
                  strError += "  " + f.elements[intLoop].name + "\n";
             }
            if (""!=strError) {
               alert("Не введены все необходимые поля");
               return false;
            }




             for (var intLoop = 0; intLoop<f.length; intLoop++){
               if (f.elements[intLoop].name.indexOf("gr_temp_id_") > -1)
			   {

                  if (f.elements[intLoop].checked){
					strError = "1";
					break;
					}
					}
             }
            if (""==strError) {
               alert("Выберете хотя-бы одну вакансию для рассылки");
               return false;
            }

         }

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function show_image_catalog(file, width, height) {

    var p, scrollbars = 'no';


    p=window.event.srcElement.parentNode;

    window.event.returnValue=false;
      width += 50;
      height += 100;
      if (width>screen.width-200) {width=screen.width-200; scrollbars='yes';}
      if (height>screen.height-200) {height=screen.height-200; scrollbars='yes';}
      window.open(file,"", "toolbar=no,location=no,directories=no,status=yes,menubar=no,scrollbars="+scrollbars+", resizable=yes,width="+width+",height="+height+",top=100,left=100");

return false;


}

function news_changer(file) {

      window.open(file,"_parent");


return false;

}

	$(function () {
        $('.bubbleInfo').each(function () {
            var distance = 10;
            var time = 250;
            var hideDelay = 250;

            var hideDelayTimer = null;

            var beingShown = false;
            var shown = false;
            var trigger = $('.trigger', this);
            var info = $('.popup', this).css('opacity', 0);


            $([trigger.get(0), info.get(0)]).mouseover(function () {
                if (hideDelayTimer) clearTimeout(hideDelayTimer);
                if (beingShown || shown) {
                    // don't trigger the animation again
                    return;
                } else {
                    // reset position of info box
                    beingShown = true;

                    info.css({
                        top: -90,
                        left: -13,
                        display: 'block'
                    }).animate({
                        top: '-=' + distance + 'px',
                        opacity: 1
                    }, time, 'swing', function() {
                        beingShown = false;
                        shown = true;
                    });
                }

                return false;
            }).mouseout(function () {
                if (hideDelayTimer) clearTimeout(hideDelayTimer);
                hideDelayTimer = setTimeout(function () {
                    hideDelayTimer = null;
                    info.animate({
                        top: '-=' + distance + 'px',
                        opacity: 0
                    }, time, 'swing', function () {
                        shown = false;
                        info.css('display', 'none');
                    });

                }, hideDelay);

                return false;
            });
        });
    });
	
