/** Javascript principal pour le site WWW.KELBTP.COM
 * @author lgerbaud
 */
$(document).ready(function(){

	$("#modal_login").dialog({
		autoOpen:false,
		bgiframe: true,
		modal: true,
		resizable:false,
		draggable:false,
		width:440
	});
	
	//Récupération du titre et de l'intro pour la modale
	$('.need_login').click(function(ev){
		ev.preventDefault();
		if($(this).hasClass('file')){
			$('#ui-dialog-title-modal_login').text('Téléchargement de document').html('Vous devez être connecté pour télécharger ce document.');
			$('#modal_login').dialog('open');
		}
		else{
			var $action_requested = $(this).attr('class');
			$action_requested = $action_requested.replace('need_login','').replace(/^\s+/g,'').replace(/\s+$/g,'');

			//Récupération du link canonical pour la redirection à l'authentification
			$('link').each(function(){
			    if($(this).attr('rel')=="canonical") $('#forceLogin','#artisan_account').val($(this).attr('href'));
			});
			
			$('#connection_form').attr(
					'action',
					document.location.toString().split('#')[0]+'#'+class_to_title[$action_requested]
			);
			
			$.post('ajax.php',
				{
					page:'get_modal_infos',
					action_requested:$action_requested
				},
				function(data){
					$('#ui-dialog-title-modal_login').text(data.title).html(data.intro_text);
					$('#modal_login').dialog('open');
				},'json');
		}
	});
		
	//Boites modale de formulaires
	/*
	
	Envoyer par email
	Contacter le fabricant
	Le fabricant me recontacte
	Devis express
	
	*/
	$('.modal_button').click(function(ev){
		ev.preventDefault();
		var $modal = $('#modal_form');
		var $page = $(this).attr('class').replace('modal_button','').replace(' ','');
		$.get('ajax.php',{
				page:$page,
				manufacturer_id:$manufacturer_id,
				product_id:$product_id
			},
			function(data){
				data = eval('('+data+')');
				$modal.html(data.content);
				$modal.dialog('option','width',data.modal_width);
				var the_form = $modal.find('form');
				the_form.kbtp_validator({
					form_required_fields : data.required_fields,
					callback : function(form,ev){
							form.data('bSubmited','1');
							$.post('ajax.php',
									$(form).serialize(),
									function(data){
										//data = eval('('+data+')');
										if(data.status=='success'){
											$modal = $('#modal_form');
											$modal.dialog('close');
											//$modal.html(data.content);
											//$modal.dialog('option','width',data.modal_width);
										}
									},'json');
							return false;
						}
					});
				the_form.attr('action','ajax.php').append('<input type="hidden" name="page" value="'+$page+'" />');
				//ouverture de la boite modale
				$modal.dialog('open');
			});
	});
	//déclaration de form_modal
	$("#modal_form").dialog({
			autoOpen:false,
			bgiframe: true,
			modal: true,
			resizable:false,
			draggable:false
		});				
	
	if ($("a[rel=kbtp_lightbox]").length) {
		//déclaration de modal_lightbox
		$("#modal_lightbox").dialog({
			autoOpen: false,
			bgiframe: true,
			modal: true,
			resizable: false,
			draggable: false,
			width: 440
		});
		
		//liens images pour lightbox (rel="kbtp_lightbox")
		$("a[rel=kbtp_lightbox]").click(function(ev){
			ev.preventDefault();
			$("#modal_lightbox").html('<h3>'+$(this).attr('title')+'</h3><img src="' + $(this).attr('href') + '" />');
			$("#modal_lightbox").dialog('open');
			return false;
		});
	}
	
	$('#password_forget_lnk').click(function(e) {
		e.preventDefault();
		
		$('#connection_form').hide();
		$('.msg').hide();
		$('#password_forget_form').show();
		$('.password_form').show();
		
	});
	
	$('#password_forget_form').submit(function (e) {
		e.preventDefault();
		
		$.post(
			'passe-perdu',
			{
				mode: 'ajax',
				submit: true,
				artisan_email: $('#password_forget_form input[name=artisan_email]').val()
			},
			function(success) {
				$('.password_form').hide();
				if (success) {
					$('.passwordsuccess').show();
				} else {
					$('.passworderror').show();
				}
			},
			'json'
		);
	});
	
	$('#password_forget_form .cancel_btn').click(function(e) {
		$('#password_forget_form').hide();
		$('.msg').hide();
		$('#connection_form').show();
	});
	
	$('#modale_cgu').dialog({
		autoOpen:false,
		bgiframe: true,
		modal: true,
		resizable:false,
		draggable:false,
		width:440
	});
	
	$('.accept_cgu_lnk').click(function(e) {
		e.preventDefault();
		$('#modale_cgu').dialog('open');
	});
	
/* V1 valid */
	//Pour virer les textes dans les inputs du formulaire de connexion
	$('#header input.text,#textfield1').focus(function(i){
	    if(!$(this).hasClass('clicked')){
	        $(this).val('').addClass('clicked');
		}
	});
	
	$('#header_search form').submit(function(ev){
		ev.preventDefault();
		document.location=encodeURI($('.text',this).val()+'-gs');
	});
	
	//Boite d'inscription et connexion
	$('#inscription_top').click(function(){$('#bouton_inscription').click();});
	$('#connexion_top').click(function(){$('#bouton_connexion').click();});
	$('#bouton_inscription,#bouton_connexion').click(function(){
		//modale correspondante
		var $modal = $('#modal_'+this.name);
		//Si la modale correspondante est affichée, on la masque
		if($modal.css('display')!="none")
			$modal.hide();
		else{
			$modal.siblings('div.modal').hide();
			$modal.show();
		}
	});
	$('#bouton_moncompte').click(function(){document.location=$site_root+"mon-compte";});
	$('#bouton_deconnexion').click(function(){document.location=$site_root+"deconnexion";});
	
	//Soumission du mini-form "inscription"
	$('#modal_inscription form').submit(function(e) {
		$(this).attr('action', $(this).find('input[name="type"]:checked').val());
	});
	
	/* menu categories */
	if(typeof($mode_index) == "undefined")
		$mode_index = 'p';
	$('body').data('mode_index',$mode_index);
	PrepareSubclassAjaxLoading();
});


function PrepareSubclassAjaxLoading()
{
	$('.menu_bouton').click(function(ev){
		ev.preventDefault();
		var $context = $(this).parent().parent();
		if($(this).hasClass('bouton_opened')){
			unpop_category($context);
		}
		else{
			pop_category($(this).attr('id'),$context);
		}
	});
	
	//Hover en javascript pour IE6
	if(navigator.userAgent.toLowerCase().indexOf('msie 6') != -1)
		$('.menu_bouton').hover(
			function(){
				if(!$(this).hasClass('bouton_opened'))
					$(this).addClass('bouton_hovered');
			},
			function(){
				if(!$(this).hasClass('bouton_opened'))
					$(this).removeClass('bouton_hovered');
			}
		);
	
	$('.cat_lvl1_close_button').live('click',function(ev){
		$(this).parent().parent().find('.bouton_opened').click();
	});
}

function pop_category(class_id,$context){
	var $el = $('#'+class_id,$context);
	$('.bouton_opened',$context).removeClass('bouton_opened');
	$el.removeClass('bouton_hovered');
	
	var list_scat = $el.parent().find('div.menu_sous_cat ul');
	var menu_sous_cat = list_scat.parent();
	
	$.post("ajax.php", 
		{
			page:'get_children',
			category_id: class_id.substr(2,class_id.length),
			type:$mode_index
		},
		 function(data){
			$el.addClass('bouton_opened');
			$mode_index = $('body').data('mode_index');
			var current_mode_index = $mode_index;
			//préparation des lignes
			var lines='';
			if(data.length==0)
				lines += 'Aucun élément dans cette catégorie';
			else
			for(var cat in data){
				if(current_mode_index=="p")
					lines += '<li class="cat_lvl2" id="c_'+data[cat].category_id+'"><a href="'+data[cat].category_url_product+'" title"'+data[cat].category_short_description+'" class="lvl2_link"><img src="http://htdocs.kelbtp.com/images/puce_white_sel.gif" />'+data[cat].category_name+'</a></li>';
				else if(current_mode_index=="m")
					lines += '<li class="cat_lvl2" id="c_'+data[cat].category_id+'"><a href="'+data[cat].category_url_manufacturer+'" title"'+data[cat].category_short_description+'" class="lvl2_link"><img src="http://htdocs.kelbtp.com/images/puce_white_sel.gif" />'+data[cat].category_name+'</a></li>';
				else if(current_mode_index=="a")
					lines += '<li class="cat_lvl2" id="c_'+data[cat].category_id+'"><a href="'+data[cat].category_url_cp+'" title"'+data[cat].category_short_description+'" class="lvl2_link"><img src="http://htdocs.kelbtp.com/images/puce_white_sel.gif" />'+data[cat].category_name+'</a></li>';
				else if(current_mode_index=="c" && ~~(1*data[cat].catalog_count))
					lines += '<li class="cat_lvl2" id="c_'+data[cat].category_id+'"><a href="'+data[cat].category_url_catalog+'" title"'+data[cat].category_short_description+'" class="lvl2_link"><img src="http://htdocs.kelbtp.com/images/puce_white_sel.gif" />'+data[cat].category_name+'</a></li>';
			}
			
			//Masquage du texte de présentation de la catégorie ^^
			menu_sous_cat.find('.cat_lvl1_presentation').remove();
			//Si on a changé de ligne
			if (!menu_sous_cat.hasClass('sclass_visible')) {
				
				$('div.sclass_visible',$context).slideUp().removeClass('sclass_visible');
				list_scat.html(lines);
				menu_sous_cat.animate({
					"opacity": "toggle",
					"height": "toggle"
				}).addClass('sclass_visible');
			}
			else {
				menu_sous_cat.animate({
					"opacity": "toggle"
				},300,function(){
					list_scat.html(lines);
					menu_sous_cat.animate({
						"opacity": "toggle"
					},300);
				});
			}
		},'json');
}

function unpop_category($context){
	$('div.sclass_visible',$context).animate({"opacity": "toggle","height":"toggle"},300).removeClass('sclass_visible');
	$('.bouton_opened',$context).removeClass('bouton_opened');
}
