// JavaScript Document
window.onload = function() { 
	init();
}

/*ustawienie dlugosci wyswietlania slajdow*/
var top_products_interval = 6000;

/*liczba produktów w kolejce do wyswietlenia*/
var top_products_amount = 5;

var interval_handle = null;
	
function init(){
	/*pokazywanie i urywanie zaawansowanego wyszukiwania*/
	var adv = $('#advanced_search');
	var adv_show_btn = $('#advanced_search_show');
	var adv_hide_btn = $('#advanced_search_hide');
	
	adv_show_btn.bind('click', function(e){adv.fadeIn('slow'); return false;});
	adv_hide_btn.bind('click', function(e){adv.fadeOut('slow'); return false;});
	
	top_products_init();
		
	init_ordering();
	
	//inicjalizacja prettyPhoto
	$("a[rel^='prettyPhoto']").prettyPhoto();
	$("a[rel^='lightbox']").prettyPhoto();
	
	//centrowanie naglowkow menu w pionie
	$("#categories span.label").vAlign();
	
	//galeria dla podstrony z produktem
	product_gallery_init();
	
	//uruchamia zwijalne sekcje na stronie produktu
	var sections = $('.description_section');
	sections.each(
								function(obj_index, obj){
										$(obj).find('.toggle_content').bind('click', function(){$(obj).find('.content_holder').toggle("slow"); return false;});
									}
								);
	
	//init_product_rating();
	//init_popups();
	
	var ghost_labelled = $('.input_ghost_label');
	ghost_labelled.bind('focus', function(e){
											  if($(this).get(0).value == $(this).get(0).defaultValue){
												$(this).get(0).value = '';
												$(this).addClass('active');
											  }
										  });
	ghost_labelled.bind('blur', function(e){
											  if($(this).get(0).value == ''){
												$(this).get(0).value = $(this).get(0).defaultValue;
											  	$(this).removeClass('active');
											  }
										  });
	
	$('#NewsletterForm_Check:first').bind('click', function(e){
								
										if($('#NewsletterForm_Check:first').is(':checked')){
											$('#newsletter_submit').removeAttr('disabled');
											$('#newsletter_submit').addClass('active');
											$('#newsletter_submit').css('background-image', 'url(_skiny_users/cosmetic24/images/newsletter_input_submit.png)');
											
										} else{
											$('#newsletter_submit').attr('disabled', 'disabled');
											
											$('#newsletter_submit').removeClass('active');
											$('#newsletter_submit').css('background-image', 'url(_skiny_users/cosmetic24/images/newsletter_input_submit_inactive.png)');
										}							 
										});
	/* automatycznie rozszerzanie selecta po najechaniu
	$('#advanced_search select').bind('mouseover', function(e){
																			  $(this).css('width', 'auto');
																			  });
	$('#advanced_search select').bind('blur', function(e){
														
																			  $(this).css('width', '112px');
																		
																			  });*/
}
function init_popups(){
	$('.error').dialog({ modal: true, title: 'Błąd', buttons: { "Ok": function() { $(this).dialog("close"); } }, width:500 });
	$('.info').dialog({ modal: true, title: 'Informacja', buttons: { "Ok": function() { $(this).dialog("close"); } }, width:500 });
}
function top_products_init(){
	//sprawdz czy jest kontener na top_products
	if(!$('#top_products').get(0)){
		return false;
	}
	
	/*okno promowanych produktow "top_products"*/
	var top_products = $('#top_products');
	/*pobierz tablice przyciskow i stron z produktami*/
	var pages = $('#top_products .top_product_page');
	top_products_amount = pages.length;
	if(!pages.get(0)){
		alert('Brak głównych produktów');
		return false;
	}
	var page_numbers = $('#top_products .pages li');
	
	/*pokaz pierwsza strone*/
	$(pages[0]).show();
	page_numbers_overall_width = 0;
	/*przejdz przez wszystkie przyciski stron*/
	page_numbers.each(
		function(i_pn, obj_pn){
			page_numbers_overall_width += $(obj_pn).width();
			//jezeli nie ma podstrony dla przycisku to zniknij go
			if(i_pn >= pages.length){
				$(obj_pn).hide();
			}
	   /*przypisz do kazdego funckje na klikniecie*/
			$(obj_pn).bind('click', 
				function(){
					if(pages.length > 1){
						//reset czasu odliczania zeby slajd nagle nie uciekl po kliknieciu
						window.clearInterval(interval_handle);
						interval_handle = setInterval('top_products_next()', top_products_interval);
					}
				  /*pokaz strone top produktu odpowiadajaca numerowi przycisku*/
					pages.each(
						function(i_p, obj_p){
							 if(i_p == i_pn){
								 current_product = i_p + 1;
								 $(obj_p).fadeIn("slow");
							 }
							 else{
								 $(obj_p).hide();
							 }
							 
						}
					);
					/*dodaj klase active do aktywnego przysku a z reszty usun*/
					page_numbers.each(
						function(i_pn2, obj_pn2){
							if(i_pn2 == i_pn){
								$(obj_pn2).find('a:first').addClass('active');
							}
							else{
								$(obj_pn2).find('a:first').removeClass('active');
							}
						}
					);
					return false;
				}
			);
	   }
	
	);
	$('#top_products .pages').width(page_numbers_overall_width + 'px');
	if(pages.length > 1){
		/*uruchom pokaz slajdow*/
		interval_handle = setInterval('top_products_next()', top_products_interval);
		
		//zatrzymaj pokaz po najechaniu myszka
		top_products.bind('mouseover', function(){window.clearInterval(interval_handle)});
		
		//wznow pokaz po opuszczeniu myszka obszaru prezentacji
		top_products.bind('mouseout', function(){window.clearInterval(interval_handle); interval_handle = setInterval('top_products_next()', top_products_interval)});
	}
}
var current_product = 1;
function top_products_next(){
	var pages = $('#top_products .top_product_page');
	var page_numbers = $('#top_products .pages li');
	
	if(current_product == top_products_amount){
	   current_product = 0;
	   }
	/*pokaz strone top produktu odpowiadajaca numerowi przycisku*/
		pages.each(
			function(i_p, obj_p){
				 if(i_p == current_product){
					 $(obj_p).fadeIn("slow");
				 }
				 else{
					 $(obj_p).hide();
				 }
			}
		);
		/*dodaj klase active do aktywnego przysku a z reszty usun*/
		page_numbers.each(
			function(i_pn2, obj_pn2){
				
				if(i_pn2 == current_product){
					$(obj_pn2).find('a:first').addClass('active');
				}
				else{
					$(obj_pn2).find('a:first').removeClass('active');
				}
			}
		);
	current_product++;
}

function init_map(lat, lng, icon, name){
	if(lat==null){
		var lat = 51.240117;
	}
	if(lng==null){
		var lng = 22.553043;
	}
	if(icon==null){
		var icon = "http://cosmetic24.pl/_skiny_users/"
	}
	
	//pobrac obszar mapy
	var map_canvas = $("#map_canvas").get(0);
	//jezeli mapki nie ma na stronie to przerwac operacje
	if(!map_canvas) return false;
	
	//test kompatybilnosci przegladarki
	if (!GBrowserIsCompatible()) return false;
	
	var map = new GMap2(map_canvas);
	map.setCenter(new GLatLng(lat, lng), 17);
	map.setUIToDefault();
	
	
	// Create our "tiny" marker icon
	var marker = new GIcon(G_DEFAULT_ICON);
	
	marker.iconSize = new GSize(41, 42);
	marker.shadowSize = new GSize(0, 0);
	marker.iconAnchor = new GPoint(14, 42);
	marker.image = icon;
                
	// Set up our GMarkerOptions object
	markerOptions = { icon:marker };

  var point = new GLatLng(lat, lng);
  map.addOverlay(new GMarker(point, markerOptions));
}

function init_ordering(){
		if($('#register_toggle')){
			$('#register_toggle').bind('click', function(){
				 if($('#register_data'))
				$('#register_data').toggle("slow");
				});
		}
	if($('#invoice_toggle')){
		$('#invoice_toggle').bind('click', function(){
				$('#invoice_data').toggle("slow");
				});
	}
}

function product_gallery_init(){
	var thumbnails = $("#thumbnails a");
	if(thumbnails.length == 0){
		return false;
	}
	thumbnails.find('img:first').vAlign();
	//przypisz do kazdego elementu galerii zmiene zrodel w targecie
	thumbnails.bind('click', function(e){
	//pobierz element a w ktorym beda zmieniane zrodla href oraz src wewnetrzenego img
	var target = $("#big_photo a.image:first");
	var img = target.find("img:first");
	var a = $(this);
	
	target.attr('href', '_var/gfx/' + a.attr('title'));
	img.attr('src', 'image_func.php?img=gfx/' + a.find('img:first').attr('title') + '&maxwidth=220');
	
	thumbnails.removeClass('active');
	a.addClass('active');
	
	return false});
}

function init_product_rating(){
	//$('.rating-cancel').hide();
	$('.auto-submit-star').rating({ 
	callback: function(value, link){ 
	this.form.submit();
	} 
	});
	
}
//
(function ($) {
// VERTICALLY ALIGN FUNCTION
$.fn.vAlign = function() {
	return this.each(function(i){
	var ah = $(this).height();
	var ph = $(this).parent().height();
	var mh = (ph - ah) / 2;
	$(this).css('margin-top', mh);
	});
};
})(jQuery);



//preload images
site={
  config:{
    preloaded_images:['menu_home_hover.gif', 'menu_help_hover.gif', 'menu_new_hover.gif', 'menu_special_hover.gif', 'menu_account_hover.gif', 'menu_contact_hover.gif'],
    images_rel_path:"/_skiny_users/cosmetic24/img/"
  },
 
  preload_images:function(){
    jQuery.each(site.config.preloaded_images, function(){
      jQuery("<img>").attr('src', site.config.images_rel_path + this);
    });
  },
  init:function(){
    this.preload_images();
  }
};

function echeck(str){
	var at = "@";
	var dot = ".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	var errorFlag = 0;
	if (str.indexOf(at)==-1){
		errorFlag = 1;
	}
	
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		 errorFlag = 1;
	}
	
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
			errorFlag = 1;
	}
	
	 if (str.indexOf(at,(lat+1))!=-1){
		 errorFlag = 1;
	 }
	
	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
			errorFlag = 1;
	 }
	
	 if (str.indexOf(dot,(lat+2))==-1){
		 errorFlag = 1;
	 }
	
	 if (str.indexOf(" ")!=-1){
		 errorFlag = 1;
	 }
	if(errorFlag == 1){
		alert('Nieprawidłowy adres e-mail');
		return false;
	}
	return true;
}
