YAHOO.namespace("COMMON");

YAHOO.COMMON.clearInput = function(el) {
	var el = YAHOO.util.Dom.get(el);
	el.value = '';
	return;
}

var UTILS = {};
UTILS.decodeEmail = function(link) {
	link.href = link.href.split("?")[0].replace("pasedespam.", "");
}

UTILS.isValidEmailAddress = function(emailAddress) {

	var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);

	return pattern.test(emailAddress);

}

YAHOO.COMMON.loader = new YAHOO.util.YUILoader({
			onSuccess : function() {
			}
		});

YAHOO.COMMON.pager = function() {
	return {
		init : function(config) {

			var pagerClickCallBack = function(pageclickednumber) {

				$("#pager-" + config.bloc_id).pager({
							pagenumber : pageclickednumber,
							pagecount : config.pager_total,
							buttonClickCallback : pagerClickCallBack,
							firstButton : '<<',
							lastButton : '>>',
							prevButton : '<',
							nextButton : '>'
						});
				var container = '#' + config.container + config.bloc_id;
				$(container).block({
							message : 'Chargement...'
						});
				$.ajax({
							type : "POST",
							async : true,
							url : config.pager_url,
							data : {
								action : 'pager',
								page : pageclickednumber,
								bloc_id : config.bloc_id,
								theme : config.theme,
								layout : config.layout
							},
							success : function(html) {
								var divOffset = $(container).offset().top;
								$('html,body').animate({
											scrollTop : divOffset
										}, 'fast');
								$(container).html(html);
								$(container).unblock();

							}
						});
			}
			$("#pager-" + config.bloc_id).pager({
						pagenumber : 1,
						pagecount : config.pager_total,
						buttonClickCallback : pagerClickCallBack,
						firstButton : '<<',
						lastButton : '>>',
						prevButton : '<',
						nextButton : '>'
					});
		}
	}
}

YAHOO.namespace("SITRA");
YAHOO.SITRA.search = function() {
	return {

		init : function(config) {

			var handleSuccess = function(response) {
				if (response !== undefined) {
					var ct = $('#results-' + config.bloc_id);
					var form = '#sitra-form-' + config.bloc_id;
					if (response) {
						$("#pager-" + config.bloc_id).html('');
						if (response.pagecount > 1)
							pagerInit(response);
						ct.removeClass('input_error');
						ct.html(response.results).hide().fadeIn("slow");

						$('#elargir-' + config.bloc_id).click(function() {
									$(form + ' .voisins').attr('checked', true);
									$('#sitra-form-' + config.bloc_id).submit();
									return false;
								});

					} else {
						ct.addClass('input_error');
						ct.html('Erreur').hide().fadeIn("slow");
					}
				}
				$("#results-" + config.bloc_id).unblock();
			}

			var pagerInit = function(response) {

				var pagerClickCallBack = function(pageclickednumber) {

					$("#pager-" + config.bloc_id).pager({
								pagenumber : pageclickednumber,
								pagecount : response.pagecount,
								buttonClickCallback : pagerClickCallBack,
								firstButton : '<<',
								lastButton : '>>',
								prevButton : '<',
								nextButton : '>'
							});

					$("#results-" + config.bloc_id).block({
								message : 'Chargement...'
							});
					$.ajax({
								type : "POST",
								async : true,
								url : config.pager_url,
								data : {
									action : 'pager',
									page : pageclickednumber,
									bloc_id : config.bloc_id,
									theme : config.theme,
									layout : config.layout,
									sitra_tag : config.sitra_tag,
									TypesObjet : response.TypesObjet,
									Commune : response.Commune,
									voisins : response.voisins,
									TexteRechercheLibre : response.TexteRechercheLibre,
									TypologiePromoSitra : response.TypologiePromoSitra ? response.TypologiePromoSitra : '',
									DateDebut : response.DateDebut ? response.DateDebut : '',
									DateFin : response.DateFin ? response.DateFin : ''
								},
								success : function(html) {
									var divOffset = $('#results-' + config.bloc_id).offset().top;
									$('html,body').animate({
												scrollTop : divOffset
											}, 'fast');
									$("#results-" + config.bloc_id).html(html);
									$("#results-" + config.bloc_id).unblock();

								}
							});
				};
				$("#pager-" + config.bloc_id).pager({
							pagenumber : 1,
							pagecount : response.pagecount,
							buttonClickCallback : pagerClickCallBack,
							firstButton : '<<',
							lastButton : '>>',
							prevButton : '<',
							nextButton : '>'
						});

			}

			var options = {
				dataType : 'json',
				success : handleSuccess,
				beforeSubmit : function() {
					$("#results-" + config.bloc_id).block({
								message : 'Chargement...'
							});
				}
			};

			// bind to the form's submit event
			jQuery('#sitra-form-' + config.bloc_id).ready(function($) {
						if ($('#sitra-form-' + config.bloc_id).length > 0) {
							$('#sitra-form-' + config.bloc_id).ajaxForm(options);

						}
					});

			if (config.pagecount > 0)
				pagerInit(config);

		}
	}
}
$(document).ready(function() {
			$("a[rel='lightbox']").colorbox({
						rel : "nofollow"
					});
			$("a[rel='lightbox-page']").colorbox({
						iframe : true,
						width : 600,
						height : 600,
						rel : 'nofollow',
						current : 'page'
					});
		});

