/**
 * @author <a href="http://meia5.com">Media5</a> - <a href="mailto:banzalik@media5.com">Бойченко Александр</a>
 * @description скрипты для m5 css framework
 */

 /**
 * @description полная загрузка страницы, картинки при этом уже загрузились
 */
window.onload=documentLoaded; // присваиваем функцию documentLoaded

/**
 * @description вызов функций при полной загрузке страницы, картинки при этом уже загрузились
 */
function documentLoaded(){

}

/**
 * @description вызов функций при полной загрузке DOM дерева, картинки при этом еще не загрузились
 */
$(document).ready(function(){
			autoclearInput();
			$(".left_menu ul").hide();
			$(".left_menu ul.open_menu").show();
			var y=$(".left_column").height()+57;
			$(".down_duga_").css("min-height",y);
			$('#treemenu2 li').click (function () {
			var y=$(".left_column").height();
			$(".down_duga_").css("min-height",y);
			})
			mainMenu();
			mainMenu_inner();
			$('#poll_form').ajaxForm({target: '#poll_div'});
			$('#rfeedb').ajaxForm({
			beforeSubmit: function(formData, jqForm, options){
				if (jqForm[0].name.value == 'Имя' || !jqForm[0].name.value.match(/^([а-яA-Яa-zA-Z]+\.?-?\s?)+$/)) {alert('Пожалуйста, корректно укажите Ваше имя!'); jqForm[0].name.focus(); return false;}
 				else if (!jqForm[0].phone.value.match(/^([0-9()\-+,;]+\s*)+$/)) {alert('Пожалуйста, корректно укажите Ваш контактный телефон!'); jqForm[0].name.focus(); return false;}
				else return true;
				},
			success: function(responseText) {
            eval(responseText); document.order_call.reset()}});
			if ($('#subscribe').length) {
				$('#subscribe').ajaxForm({
				beforeSubmit: function(formData, jqForm, options){
				if (!jqForm[0].email.value.match(/^\w+([.\-]?\w+)*@\w+([.\-]?\w+)*\.\w{2,4}$/)) {alert('Пожалуйста, корректно укажите Ваш e-mail!'); jqForm[0].email.focus(); return false;}
 				else return true;
				},
			success: function(responseText) {
            document.subscribe.reset(); hidePupop222()}});
				}
			atLeast();
})



/**
 * @description очистка инпутов, при клике на них
 */
function autoclearInput(){
	$(".autoclear").each(function(){
		$(this).attr("defaultvalue",$(this).attr("value")); // записываем в defaultvalue значение по умолчанию, необходимо для проверки нового стекста со старым
	});

	$(".autoclear").click(function(){
		if ($(this).attr("value")==$(this).attr("defaultvalue")) { // проверяем совпадают ли value и defaultvalue
			$(this).attr("value", ""); // сбрасываем значение value
		}
	})
}

function getPageSize(){
       var xScroll, yScroll;
       if (window.innerHeight && window.scrollMaxY) {
                xScroll = document.body.scrollWidth;
                yScroll = window.innerHeight + window.scrollMaxY;
          	 } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
                   xScroll = document.body.scrollWidth;
                   yScroll = document.body.scrollHeight;
             } else if (document.documentElement && document.documentElement.scrollHeight > document.documentElement.offsetHeight){ // Explorer 6 strict mode
                   xScroll = document.documentElement.scrollWidth;
                   yScroll = document.documentElement.scrollHeight;
             } else { // Explorer Mac...would also work in Mozilla and Safari
                   xScroll = document.body.offsetWidth;
                   yScroll = document.body.offsetHeight;
             }

             var windowWidth, windowHeight;
             if (self.innerHeight) { // all except Explorer
                  windowWidth = self.innerWidth;
                  windowHeight = self.innerHeight;
             } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
                  windowWidth = document.documentElement.clientWidth;
                  windowHeight = document.documentElement.clientHeight;
             } else if (document.body) { // other Explorers
                     windowWidth = document.body.clientWidth;
                     windowHeight = document.body.clientHeight;
             }


             // for small pages with total height less then height of the viewport
             if(yScroll < windowHeight){
                    pageHeight = windowHeight;
             } else {
                    pageHeight = yScroll;
             }

           // for small pages with total width less then width of the viewport
           if(xScroll < windowWidth){
                pageWidth = windowWidth;
        } else {
                 pageWidth = xScroll;
         }


         return [pageWidth,pageHeight,windowWidth,windowHeight];
  }

  function mainMenu(){
	 var defImg=$('.home_banner').css('background-image');
	  $(".menu_2 li").hover(
      function () {
		  var img='url('+$(this).attr('img')+')';
		  $('.home_banner').css({'background-image':img})
      },
      function () {
		  $('.home_banner').css({'background-image':defImg});
      }
	  );
	  $("#treemenu2 li .submenu_a").hover(
      function () {
		  var img='url('+$(this).attr('img')+')';
		  $('.home_banner').css({'background-image':img})
      },
      function () {
		  $('.home_banner').css({'background-image':defImg});
      }
	  );
	   }
  function mainMenu_inner() {
	  var defImg=$('.main_banner').css('background-image');
	  $(".menu_2 li").hover(
      function () {
		  var img='url('+$(this).attr('img')+')';
		  $('.main_banner').css({'background-image':img})
      },
      function () {
		  $('.main_banner').css({'background-image':defImg});
      }
	  );
	  $("#treemenu2 li .submenu_a").hover(
      function () {
		  var img='url('+$(this).attr('img')+')';
		  $('.main_banner').css({'background-image':img})
      },
      function () {
		  $('.main_banner').css({'background-image':defImg});
      }
	  );
	  }

	function leftMenu(immg){
//		alert(immg);
		if ($('.home_banner').length)
		$('.home_banner').css('background-image',immg);
		else if ($('.main_banner').length)
		$('.main_banner').css('background-image',immg);
		 }

function checkPhorm(phorm, fields, names){
			for(i in fields){
				if(phorm.elements[fields[i]].value == ''){
					alert('Заполните, пожалуйста, поле "'+names[i]+'"!');
					phorm.elements[fields[i]].focus();
					return false;
					}
				 else if ((phorm.elements[fields[i]].name == 'name' && !phorm.elements[fields[i]].value.match(/^([а-яA-Яa-zA-Z]+\.?-?\s*)+$/)) || (phorm.elements[fields[i]].name == 'email' && !phorm.elements[fields[i]].value.match(/^\w+([.\-]?\w+)*@\w+([.\-]?\w+)*\.\w{2,4}$/)) || (phorm.elements[fields[i]].name == 'phone' && !phorm.elements[fields[i]].value.match(/^([0-9()\-+,;]+\s*)+$/))){
					alert('Пожалуйста, корректно заполните поле "'+names[i]+'"!');
					phorm.elements[fields[i]].focus();
					return false;
					 }
				} return true;
			}

function buildTabbedPanel(){
                                    $(function (){

												var numtabs=0;// считаем количество табов
												var totalwidth=0; // считам ширину всех табов
												var tabs=Array(); // создаем массив табов и их ширины
												var tabWidth=$("#TabbedPanels1").width(); // считам ширину общего таба
												$("#TabbedPanels1 .TabbedPanelsTabGroup .TabbedPanelsTab").each(function(i){
														numtabs=i;
														var thisTab=$(this);
														totalwidth=totalwidth+thisTab.width();
														tabs[i]=thisTab.width()+1;
														//console.log("width",tabs[i]);
												});
												var items=totalwidth/tabWidth;
												//console.log("totalwidth",totalwidth);
												//console.log("tabs",tabs);
												//console.log("items",items);
												//console.log("numtabs",numtabs);
												//alert(numtabs);
												//console.log("tabWidth",tabWidth);
												// создаем строки
												var line='';
												var startArray=0;
												for (i=0; i<=numtabs; i++ ) {
													if (startArray<=numtabs) {
													line+='<div class="row clearfix">';
														//считаем сколько нам надо взять табов
														var widthThisTab=0;
														//console.log("numtabs",numtabs);
														if (startArray<=numtabs) {
															var tbw=tabWidth;
															for (b=startArray; b<=numtabs; b++) {
																tbw=tbw-tabs[b];
																//console.log("tbw",tbw);
																	if (tbw>0) {
																		//console.log("b",b);
																		//console.log("tabs[i]",tabs[b]);
																		line+="<li class=\"TabbedPanelsTab  tba_"+b+"\" onmouseover=\"addClass("+b+")\" onmouseout=\"remClass("+b+")\">";
																		line+=$("#TabbedPanels1 .TabbedPanelsTabGroup .TabbedPanelsTab").eq(b).html();
																		line+="</li>";
																		startArray=b+1;
																		}
															}
														}
													line+='</div>';
													}
												}
												// <ul class="TabbedPanelsTabGroup">
												$(".TabbedPanelsTabGroup").html(line);

												// считаем количество получившихся рядов
												var numrows=$(".TabbedPanelsTabGroup .row").length-1;

												//console.log("numrows",numrows);

												// перебираем ряды
												for (i=0; i<=numrows; i++)
												{
													// считаем количество пунктов в  ряде и их общую ширину
													var numtabs=0;
													var widthtabs=0;
													$(".TabbedPanelsTabGroup .row").eq(i).find("li.TabbedPanelsTab").each(function(b){
															numtabs=b;
															widthtabs+=$(this).width();
													})
													numtabs++;
													if (numtabs==1) {

														$(".TabbedPanelsTabGroup .row").eq(i).find("li.TabbedPanelsTab").each(function(b){
																		var thisell=$(this);
																		var newWinth=tabWidth-1;
																		thisell.width(newWinth);
																		if (jQuery.browser.msie && jQuery.browser.version<7) {
																			thisell.width(newWinth);
																			thisell.find("span").width(newWinth-20);
																			}
														});

													} else {
													//console.log("numtabs",numtabs);
													//console.log("widthtabs",widthtabs);
													//var addwidth=(tabWidth % widthtabs)/numtabs;
													var addwidth=Math.floor((tabWidth % widthtabs)/numtabs);
													//console.log("addwidth",addwidth);
													//console.log("ideal",addwidth*numtabs);
													//console.log("tabWidth",tabWidth);
														$(".TabbedPanelsTabGroup .row").eq(i).find("li.TabbedPanelsTab").each(function(b){
																		var thisell=$(this);
																		var newWinth=thisell.width()+addwidth-1;
																		thisell.width(newWinth);
																		if (jQuery.browser.msie && jQuery.browser.version<7) {
																			thisell.width(newWinth);
																			thisell.find("span").width(newWinth-20);
																			}
														});

														var ttw=0;
														$(".TabbedPanelsTabGroup .row").eq(i).find("li.TabbedPanelsTab").each(function(b){
																																	 ttw+=$(this).width()+1;

														});
														//alert(tabWidth);
														//alert(ttw);
														var raznica=tabWidth-ttw;
														$(".TabbedPanelsTabGroup .row").eq(i).find("li.TabbedPanelsTab:last span").each(function(b){
																																	var nwth=raznica+$(this).width();
																																	$(this).width(nwth);
																																	//parent preved
																																	$(this).parent().eq(0).width(nwth+20)
																																	//console.log()


														});




													}


												}

												//console.log("ul",line);
												//var TabbedPanels1 = new Spry.Widget.TabbedPanels("TabbedPanels1");



												// tabs
												$(".TabbedPanelsTab").each(function(i){
																					$(this).attr("rowtab",i);
												});

												// content tabs
												$(".TabbedPanelsContent").each(function(i){
																					$(this).attr("rowcont",i);
												});

												// consoles
												var prinlink=$(".first_center_column a.print").attr("href");
												//console.log("prinlink",prinlink);

											$(".TabbedPanelsTab").live("click", function(){
																					$(".TabbedPanelsTab").removeClass("TabbedPanelsTabHover");
																					var nm=$(this).attr("rowtab");
																					var tba="tba_"+nm;
																					//console.log("tba",tba);
																					$("."+tba).addClass("TabbedPanelsTabHover");
																					$(".TabbedPanelsContent").hide();
																					$(".TabbedPanelsContent").eq(nm).show();
																					var uniqid=$(".TabbedPanelsContent").eq(nm).attr("uniqid");
																					//console.log("uniqid",uniqid);
																					var newprinlink=prinlink+"&uniqid="+uniqid;
																					//console.log("newprinlink",newprinlink);
																					$("a.print").attr("href",newprinlink);



												});

											$(".TabbedPanelsTabGroup div.row").live("click", function(){
																					var tmpHtml="<div class=\"row clearfix\">"+$(this).html()+"</div>";
																					$(this).remove();
																					$("ul.TabbedPanelsTabGroup").append(tmpHtml);
												});

												//hide all tabs
												$(".TabbedPanelsContent").hide();
												$(".TabbedPanelsContent").eq(0).show();
												$(".TabbedPanelsTab").eq(0).trigger("click");

									})
												//TabbedPanelsTabSelected
												function addClass(nm){
													var tba="tba_"+nm;
													//alert(nm);
													$("."+tba).addClass("TabbedPanelsTabHover");
												}
												function remClass(nm){
													var tba="tba_"+nm;
													//alert(nm);
													$("."+tba).removeClass("TabbedPanelsTabHover")
												}

	}
