﻿

	$j(document).ready(function() {
		$j("a._blank").attr('target', '_blank');align="absmiddle"
		$j("img.absmiddle").attr('align', 'absmiddle');
		
		activateCertificatePopUp();
		activateContactFormOnMain();
	});
	
	var CURR_LANG;
	function activateLanguage(lang){
		if(lang==2) {
			CURR_LANG = I18n.ua;
		} else if(lang==3) {
			CURR_LANG = I18n.en;
		} else {
			CURR_LANG = I18n.ru
		}
	}
	
	function activateTabs(){
		var $links	= $j('#wrapper_tab a');
		var $tabs 	= $j('.tab_text');		
		$links.bind('click', function(){
			$this = $j(this);
			$links.removeClass('active');
			$this.addClass('active');			
			var index = $links.index( $this );
			$tabs.hide();
			$j( $tabs.get(index) ).fadeIn();
		});
	}
	
	// -- Product -- 
	
	function activateProductCarousel(){
		$object_carousel = $j('.product_carousel');
		$object_carousel.each(function(){
			$curr_carousel = $j(this);
			$curr_carousel.jcarousel({
				initCallback: function(carousel){ 
					$object_carousel.css({'visibility':'visible'}); 
					
					var classFilter 		= carousel.options.id/*$j(this).attr('id')*/;
					var $carusel_prev	= jQuery('.indicator_left').filter('.'+classFilter);
					var $carusel_next	= jQuery('.indicator_right').filter('.'+classFilter);				
					$carusel_prev.bind('click', function() {
						carousel.prev();
						return false;
					});					
					$carusel_next.bind('click', function() {
						carousel.next();
						return false;
					})

				},				
				animation: "slow",
				scroll: 2,
				buttonNextHTML: null,
				buttonPrevHTML: null,
				id:$curr_carousel.attr('id')
			});		
		});
	}
	
	function activateProductZoom(){
		$j(".jqzoom").jqzoom({
			zoomWidth: 250,
            zoomHeight: 250,
			showEffect:'fadein',
            hideEffect:'fadeout',
			fadeinSpeed: 'fast',
            fadeoutSpeed: 'medium',
			xOffset: 30
		});
	}
	
	var popup_menu_product_is_loaded = false;
	var $products_container;
	
	function activatePopUpMenuForProduct(lang){
		$j('.tovar_menu .end').bind('click', function(){
			
			$tovar_menu	= $j(this);
			
			if( popup_menu_product_is_loaded==true ){
				showPopUpMenuForProduct( $products_container, $tovar_menu );
				return false;
			}			
			
			categoryID = $tovar_menu.attr('id');

			$j.ajax({			// $j.getJSON(				
				url: '/ajax/?module=products&method=GetProducts',
				method: 'get',
				dataType: 'json',
				timeout: 3000,
				error: function(){				
					ajaxError('Функция - activatePopUpMenuForProduct');
				},	
				success: function( json ) {
					if( json.error==1 ){
						ajaxError('Функция - activatePopUpMenuForProduct');
						return;
					}
					if( !json.products ){
						return;
					}
					
					var products			= json.products;					
					$products_container 	= $j('<div/>');
					var href_prep			= $j('.tovar_menu .sub').attr('href');
					for (var i = 0; i < products.length; i++) {
						var $a_product = $j('<a/>').html( products[i].title ).attr( 'href', href_prep+products[i].url+'.html' ).addClass('popup_product');
						$products_container.append( $a_product );
					}
					
					showPopUpMenuForProduct( $products_container, $tovar_menu );
					popup_menu_product_is_loaded = true;
				},
				complete: function(){
				},					
				// Parametrs
				data: {categoryID:categoryID,
                                lang:lang}
			});
			return false;
		});
			
		/*
		в activatePopUpMenuForCategogories
		$j('#popup_menu_center').bind('mouseleave', function(){
			$this = $j(this);
			$this.parent().fadeOut(function(){				
				// $this.empty();
			});
		});*/
	}
	function showPopUpMenuForProduct( $products_container, $tovar_menu ){
		var offset	= $tovar_menu.offset();
		var m_top	= offset.top - 35;
		var m_left	= offset.left - 35;
		$j('#popup_menu_wrapper').css({'top':m_top,'left':m_left}).fadeIn();
		
		$j('#popup_menu_center').html($products_container).append('<br clear="all" />');
	}
	
	// -- Categories --
	
	var popup_menu_categories_is_loaded = false;
	var $categories_container;
	function activatePopUpMenuForCategogories(lang){
		console.log(lang);
		$j('.tovar_menu .categories').bind('click', function(){
			
			$tovar_menu	= $j(this);
			
			if( popup_menu_categories_is_loaded==true ){
				showPopUpMenuForProduct( $categories_container, $tovar_menu );
				return false;
			}			
			
			$j.ajax({			// $j.getJSON(				
				url: '/ajax/?module=products&method=GetCategories',
				method: 'get',
				dataType: 'json',
				timeout: 3000,
				error: function(){				
					ajaxError('Функция - activatePopUpMenuForCategogories');
				},	
				success: function( json ) {
					if( json.error==1 ){
						ajaxError('Функция - activatePopUpMenuForCategogories');
						return;
					}
					if( !json.categories ){
						return;
					}
					
					var categories			= json.categories;					
					$categories_container 	= $j('<div/>');
					for (var i = 0; i < categories.length; i++) {
						var $a_category = $j('<a/>').html( categories[i].title ).attr( 'href', '/'+categories[i].url+'/' ).addClass('popup_product');
						$categories_container.append( $a_category );
					}
					
					showPopUpMenuForProduct( $categories_container, $tovar_menu );
					popup_menu_categories_is_loaded = true;
				},
				complete: function(){
				},					
				// Parametr
				data: {lang:lang}

			});
			return false;
		});
			
		$j('#popup_menu_center').bind('mouseleave', function(){
			$this = $j(this);
			$this.parent().fadeOut(function(){				
				// $this.empty();
			});
		});		
	}
		
	// -- News --
	
	function activateNewsCarousel(){
		$object_carousel = $j('#news_carousel');
		$object_carousel.each(function(){
			$curr_carousel = $j(this);
			$curr_carousel.jcarousel({
				initCallback: function(){ $object_carousel.css({'visibility':'visible'}); },
				animation: "slow",
				scroll: 1
			});		
		});		
	}
	
	// -- Flash --
	
	function activateFlashBanners( wrapper, src, width, height ){        
        $j('#'+wrapper).flash(
            { 
			  'wmode':'opaque',
			  src: src,
              width: width,
              height: height
			},
            { version: 8 }
        );
    }
	
	// -- Sertificate PopUp
	
	function activateCertificatePopUp(){
		$j('.sertificat').bind('click', function(){			
			$j.blockUI({ 
				message: $j('#sertificatImg'),
				css: {
					left: 	($j(window).width() - 850) /2 + 'px',	
					top:  	($j(window).height() - 590) /2 + 'px',
					width:	850, 
					height:	590,
					border: ''
				}
			});			
		});
		
		$j('#sertificat_close').bind('click', function(){
			$j.unblockUI();
		});
	}
	
	// -- Contact --
	
	function activateContactFormOnMain(){
		activateContactForm();
		$j('.letter').bind('click', function(){			
			$j.blockUI({ 
				message: $j('#contactpopup_wrapper'),
				css: {
					left: 	($j(window).width() - 590) /2 + 'px',	
					top:  	($j(window).height() - 475) /2 + 'px',
					width:	590, 
					height:	475,
					border: '',
					'text-align':'left'
				}
			});
			
			return false;
			
		});
		
		$j('#contact_close').bind('click', function(){
			$j.unblockUI();
		});
	}
	
	function activateContactForm(){
		var $contacts_form 	= $j('#contacts_form').add('#contacts_form2');		
		$contacts_form.validate({			
			onkeyup: false,
			errorClass:'errorInput',
			validClass:'defaultInput',
			errorPlacement: function(error, element) {},
			rules: {	
				"user[fio]":"required",
				"user[email]": {
					required:true,
					email:true
				},
				"user[text]":"required"
			}
		});
		
		$j('#submitform').bind('click', function(){ $contacts_form.submit(); });
		$j('#resetform').bind('click', function(){ $j('input, textarea', $contacts_form).val(''); });		
	}
	
	function activateContactFormWithError(){
		var $contacts_form 	= $j('#contacts_form');				
		var $errorContainer	= $j('div.errorContainer');
		
		$contacts_form.validate({			
			onkeyup: false,
			//errorClass:'errorInput',
			//validClass:'defaultInput',
			errorContainer: $errorContainer,
			errorLabelContainer: $j("ol", $errorContainer),		
			wrapper: 'li',			
      		highlight: function(element, errorClass) {
				$j(element).fadeOut(function() {
					$j(element).fadeIn();
				});
			},	
			errorPlacement: function(error, element) {},
			rules: {	
				"user[fio]":"required",
				"user[email]": {
					required:true,
					email:true
				},
				"user[text]":"required",
				securimage_code_value: "required"
			},
			messages: {				
				"user[fio]": {
					required: CURR_LANG.error.fio.required
				},
				"user[email]": {	
					required: CURR_LANG.error.email.required,
					email: CURR_LANG.error.email.email					
				},
				"user[text]": {
					required: CURR_LANG.error.text.required
				},
				securimage_code_value: {
					required: CURR_LANG.error.securimage_code_value.required
				}
			}//,
			/* Бред, но без success глючит форма( не снимаются error стили) */
			//success: function(label) {}
		});
		
		$j('#submitform').bind('click', function(){ $contacts_form.submit(); });
		$j('#resetform').bind('click', function(){ $j('input, textarea', $contacts_form).val(''); });		
	}
	
	// -- Tabs --
	
	function activateTabs(){
		var $links	= $j('#wrapper_tab a');
		var $tabs 	= $j('.tab_text');		
		$links.bind('click', function(){
			$this = $j(this);
			$links.removeClass('active');
			$this.addClass('active');			
			var index = $links.index( $this );
			$tabs.hide();
			$j( $tabs.get(index) ).fadeIn();
		});
	}
	
	// -- Addithional --
		
	function ajaxError(){
		alert("Ошибка при передаче данных! Попробуйте снова");
	}
	
	function reloadPage(){
		window.location.reload();
		return;
	}
	
	function checkResponse( responseText ){
		if( typeof(responseText)=='undefined' ){				
			alert("Ошибка при передаче данных! Попробуйте снова");
			return false;
		}
		
		var json = eval( "(" + responseText + ")" );	
		if( typeof(json.error)=='undefined' ){
			alert("Ошибка при передаче данных! Попробуйте снова");
			return false;
		}
		
		return json;
	}
	
	function activateCalendar( range ){
		// Календарь
		$j(".calendar").datepicker({
			//mandatory: true,
			yearRange: range,
			dateFormat: $j.datepicker.ATOM
		}).attr("readonly", "readonly");
	}	
	
	function var_dump(obj) {
		  var result = null;
		  for (var i in obj)
		  result += 'object' + '.' + i + ' = ' + obj[i] + '\n';
		  return result;
	}
	 
	function activateblock(){
		$j.blockUI({ css: { 
            border: 'none', 
            padding: '15px', 
            backgroundColor: '#000', 
            '-webkit-border-radius': '10px', 
            '-moz-border-radius': '10px', 
            opacity: '.5', 
            color: '#fff'				
        }, overlayCSS:{'z-index': 1007} }); 
	}
	
	function deactivateblock(){
		$j.unblockUI();
	}
	
	function you_are_sure(str){
		return confirm(str);
	}
