function addCookie(szName,szValue,dtDaysExpires) 
{
   var dtExpires = new Date();
   var dtExpiryDate = "";

   dtExpires.setTime(dtExpires.getTime() + 
     dtDaysExpires * 24 * 60 * 60 * 1000);

   dtExpiryDate = dtExpires.toGMTString();

   document.cookie = 
    szName + "=" + szValue + "; expires=" + dtExpiryDate;
}

function findCookie(szName) 
{
  var i = 0;
  var nStartPosition = 0;
  var nEndPosition = 0;  
  var szCookieString = document.cookie;  

  while(i <= szCookieString.length) 
  {
    nStartPosition = i;
    nEndPosition = nStartPosition + szName.length;

    if(szCookieString.substring( 
        nStartPosition,nEndPosition) == szName) 
    {
      nStartPosition = nEndPosition + 1;
      nEndPosition = 
        document.cookie.indexOf(";",nStartPosition);

      if(nEndPosition < nStartPosition)
        nEndPosition = document.cookie.length;

      return document.cookie.substring( 
          nStartPosition,nEndPosition);  
      break;    
    }
    i++;  
  }
  return "";
}







( function( $ ) {

$( function() {
  // placeholders for non-supporting browsers
  $( 'form.listbuilder-optin input[placeholder]' ).placeholder();

  // cookie user as opted in when they submit a form
  $( 'form.listbuilder-optin' ).submit( function() {
  
    //var expires = new Date(); expires.setYear( expires.getFullYear() + 1 ); expires.toUTCString();
    //document.cookie = 'listbuilder_opted_in=yes;expires=' + expires.toUTCString() + ';path=/';
  });

  // close button for footer optin
  $( 'div.listbuilder-footer-optin' ).each( function() {
    var close = $( '<div class="listbuilder-footer-optin-close"></div>' );

    close.click( function() {

      $( 'div.listbuilder-footer-optin, div.listbuilder-footer-optin-shim' ).remove();
	  //addCookie("listbuilder_close_footer","yes",1);
    } );

    $( this ).append( close );
  } );
} );

} )( jQuery );











function lb_checkmail(value) {
//reg = /[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/;
reg = /[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}/g;
if (!value.match(reg))
{
//alert("Пожалуйста, введите свой настоящий e-mail");
return false;
}
}
function lb_checkForm(form) {
	// Заранее объявим необходимые переменные
	var el, // Сам элемент
		elName, // Имя элемента формы
		value, // Значение
		type; // Атрибут type для input-ов
	// Массив списка ошибок, по дефолту пустой
	var errorList = [];
	// Хэш с текстом ошибок (ключ - ID ошибки)
	var errorText = {
		1 : "Не заполнено поле 'Имя'",
		2 : "Не заполнено поле 'E-mail'",
		3 : "Не прикреплен файл",
		4 : "Не оставлен комментарий",
		5 : "Не выбрано любимое время суток",
		6 : "Не правильный синтаксис адреса электронной почты"
	}

	// Получаем семейство всех элементов формы
	// Проходимся по ним в цикле
	for (var i = 0; i < form.elements.length; i++) {
		el = form.elements[i];
		elName = el.nodeName.toLowerCase();
		value = el.value;
		if (elName == "input") { // INPUT
			// Определяем тип input-а
			type = el.type.toLowerCase();
			// Разбираем все инпуты по типам и обрабатываем содержимое
			switch (type) {
				case "text" :
					//alert(el.name);
					if (el.name == "mtux_sform[firstname]" && value == "Ваше имя") errorList.push(1);
					//if (el.name == "mtux_sform[email]" && value == "Ваш e-mail") errorList.push(2);
					//if (el.name == "mtux_sform[email]" && lb_checkmail(value) == false) errorList.push(6);
					if (el.name == "mtux_sform[email]")
						{
							if ((lb_checkmail(value) == false) || (value == "Ваш e-mail"))
								{
									errorList.push(6);
								}
						}

				break;
				case "file" :
					//if (value == "") errorList.push(3);
				break;
				case "checkbox" :
					// Ничего не делаем, хотя можем
				break;
				case "radio" :
					// Ничего не делаем, хотя можем
				break;
				default :
					// Сюда попадают input-ы, которые не требуют обработки
					// type = hidden, submit, button, image
				break;
			}
		} else if (elName == "textarea")
				{ // TEXTAREA
					if (value == "") errorList.push(4);
				}
		 else if (elName == "select")
		 		{ // SELECT
					if (value == 0) errorList.push(5);
				}
		  else
		  		{
					// Обнаружен неизвестный элемент ;)
				}
	}
	// Финальная стадия
	// Если массив ошибок пуст - возвращаем true
	if (!errorList.length) 
		{
		    var expires = new Date(); expires.setYear( expires.getFullYear() + 1 ); expires.toUTCString();
			document.cookie = 'listbuilder_opted_in=yes;expires=' + expires.toUTCString() + ';path=/';
		return true;
		}
	// Если есть ошибки - формируем сообщение, выовдим alert
	// и возвращаем false
	var errorMsg = "При заполнении формы подписки допущены следующие ошибки:\n\n";
	for (i = 0; i < errorList.length; i++) {
		errorMsg += errorText[errorList[i]] + "\n";
	}
	alert(errorMsg);
	return false;
}

