$(document).ready(function() {
	/****************************************************************************************************
	 * FORMS
	 ****************************************************************************************************/

	var getMagasins = function(event, form) {
		if (form == undefined) {
			form = $(this).parent();
		}
		
		if ($.form.checkForm(form)) {
			var variables = {
				code_postal: form.find('[name=code_postal]').val()
			}
			$.getJSON('index.php/magasins/getMagasins/', variables,
				function (data) {
					var html = '';
					
					if (data.length > 0) {
						var s = (data.length > 1)?'s':'';
						html = '<option value="" selected>' + data.length + ' magasin' + s + ' trouvé' + s + '</option>' + "\n";
						for (var i=0; i<data.length; i++) {
							var magasin = data[i];
							html += '<option value="' + magasin['id_magasin'] + '">' 
											+ magasin['code_postal']
											+ ' - ' + magasin['ville']
											+ ' - ' + magasin['denomination']
									+ '</option>' + "\n";
						}
					}
					else {
						html = '<option value="" selected>Aucun magasin</option>';
					}
					
					form.find('[name=magasin]').html(html);
				}
			);
		}
	}
	
	$('form.choix_magasin').each(function(){
		$(this).find('input[name=code_postal]').attr('maxlength', 5);

		$(this).find('select[name=magasin]')
			.change(function(){
				var id_magasin = $(this).val();
				if (!$.string.empty(id_magasin)) {
					$.cookie('id_magasin', id_magasin, {expires: 1});

					var variables = {
						id_magasin: id_magasin
					};
					$.getJSON('index.php/magasins/getMagasin/', variables,
						function (magasin) {
							var html = '<p><strong>';
							switch (magasin['enseigne']) {
								case 'IM':
									html += 'Intermarché ';
									break;
									
								case 'ECO':
									html += 'Ecomarché ';
									break;
							}
							html += magasin['denomination'] + '</strong><br />';
							html += magasin['adresse'] + '<br />'
							html += magasin['code_postal'] + ' ' + magasin['ville'];
							html += '</p>';
							
							$('#mon_magasin').html(html);
						}
					);
					
					switch (ID_PAGE) {
						case 'fruits-legumes':
						case 'viandes':
						case 'maree':
							location.href = ID_PAGE + '.html';
							break;
							
						default:
					}
				}
		});
		
		$(this).submit(function(){
			getMagasins(null, $(this));
			return (false);
		});
		$(this).find('img.submit').click(getMagasins);
		
		$.form.addField($(this), 'code_postal', {
			required:		true,
			type:			'int',
			minLength:		2,
			maxLength:		5,
			tipValue:		'Votre code postal',
			errorMessage:	'Veuillez renseigner votre code postal ou votre numéro de département.',
			errorContainer:	'error'
		});
	});
	
	/****************************************************************************************************
	 * MENU
	 ****************************************************************************************************/
	
	var id_magasin = $.cookie('id_magasin');
	$('div.menu div.choix_magasins').hide();
	
	if ((id_magasin != null) && $.number.isInt(id_magasin)) {
		$('#choix_magasin_0').hide();
		$('#choix_magasin_1').show();
	}
	else {
		$('#choix_magasin_0').show();
		$('#choix_magasin_1').hide();
	}
	
	$('h2.choix_magasin a').click(function(){
		var choix_magasin = $(this).parent().parent().find('div.choix_magasins');
		if (choix_magasin.is(":visible")) {
			$(this).removeClass('open');
		}
		else {
			$(this).addClass('open');
		}
		choix_magasin.slideToggle(100);
		
		return (false);
	});
	
	/**/
});
