var _contact; if (!_contact) { _contact = { messages: { submit: { ok: "Votre email a bien été envoyé." } }, subscribe: { enabled: false }, form: ['_lastname', '_firstname', '_mail', '_zipcode', '_concession', '_service', '_message', '_tel'], require: ['_lastname', '_firstname', '_mail', '_zipcode', '_concession', '_service'], want_subscribe: function() { return document.getElementById("want_subscribe").checked; }, check: function(){ if(_contact.want_subscribe()) { if (!_subscribe.check()) { return false; } } var l_input; var l_boo = true; var l_require = _contact.require; for(var n_rnk in l_require) { l_input = l_require[n_rnk]; if ($('#' + l_input).val() == '') { $('#lb' + l_input + ' span.Style3').css('display', 'inline'); l_boo = false; } else { $('#lb' + l_input + ' span.Style3').css('display', 'none'); } } if (!(new RegExp(/^([a-zA-Z0-9_\-\.]+)@(.+)\.([a-zA-Z]+)$/)).exec($("#_mail").val())) { $('#lb_mail span.Style3').css('display', 'inline'); l_boo = false; } return l_boo; }, update: function() { }, init: function() { $("#contact_inputs td span[class=Style3]").css("display", "none"); $("#contact_subscribe").css("display", "none"); $("#want_subscribe").bind('click', function(){ if (! _contact.subscribe.enabled) { $.getScript("/_static/scripts/subscribe.js", function(){ _contact.subscribe.enabled = true; }); } $("#contact_subscribe").css("display", (this.checked) ? "block" : "none"); }); $("#lb_firm").css("overflow", "hidden"); $("#lb_firm").css("height", "1px"); $("#_par").bind('click', function(){ $("#lb_firm").css("height", "1px"); }); $("#_pro").bind('click', function(){ $("#lb_firm").css("height", "auto"); }); $('#_concession').change(function() { $('#select__service .select .sel_on .sel_list') .load( '/_front/_ajax/contact/services .select .sel_on .sel_list a', { concession_code: $('#_concession').val() } ) ; }); $('#_concession').change(); }, getData: function(){ var l_data = {}; for(var n_inc in this.form) { var l_field = this.form[n_inc]; l_data[l_field] = $('#' + l_field).val(); } return l_data; }, _submit: function(){ if (_contact.check()) { $.post("/_front/_ajax/contact/submit/", this.getData(), function(i_return){ i_return = i_return.split(':')[0]; if (i_return == "ok") { if (_contact.want_subscribe()) { _subscribe.submit(); } else { _index.popup.on( { content: _contact.messages.submit.ok } ); } } else { _index.popup.on( { content: "erreur", timeout: 1000 } ); } return false; }); } return false; }, direct: { feedback: { ok: 'Votre demande a bien été prise en compte.', missing: 'Veuillez saisir renseigner soit votre e-mail, soit votre numéro de téléphone' }, submit: function() { var l_key = 'contact_direct_text'; var l_val = $('#' + l_key).val(); if (l_val == _index.inputs[l_key]) { alert(_contact.direct.feedback.missing); } else { $.post('/_front/_ajax/contact/direct/', { referer: window.location.href, message: l_val }, function(i_fb) { if (i_fb.split(':')[0] == 'ok') { _index.popup.on({ content: _contact.direct.feedback.ok }); } } ); } } } }; _contact.init(); }