(function(){ $.fn.Thankform = function(opts){ var enabled = true; var errors = { 'employee' : 'Нужно ввести имя сотрудника', 'client' : 'Нужно ввести Ваше имя', 'company' : 'Нужно ввести название компании', 'text' : 'Нужно ввести текст', 'phone' : 'Нужно ввести телефон', 'email' : 'Нужно ввести почту' }; var dict = { 'rus' : { 'select_employee' : 'Укажите сотрудника, о котором хотите оставить отзыв (если необходимо)', 'text_thank' : 'Напишите отзыв', 'text_review' : 'Напишите отзыв', 'name_company' : 'Укажите название Вашей компании', 'header_review' : 'Форма обратной связи', 'title_review' : 'Уважаемый клиент!', 'desc_review' : 'Используя эту форму Вы можете сообщить нам свое впечатление о работе нашей компании или отдельного сотрудника', 'header_thank' : 'Форма обратной связи', 'title_thank' : 'Уважаемый клиент!', 'desc_thank' : 'Используя эту форму Вы можете сообщить нам свое впечатление о работе нашей компании или отдельного сотрудника', 'email' : 'Если Вы хотите получить обратную связь по Вашему обращению, оставьте, пожалуйста, свой e-mail или телефон, по которому с Вами можно связаться', 'submit' : 'отправить' }, 'eng' : { 'select_employee' : 'Введите сотрудника', 'text_thank' : 'Введите текст благодарности', 'text_review' : 'Введите текст отзыва', 'name_company' : 'Укажите название Вашей компании', 'header' : 'Отзыв о сотруднике', 'title' : 'Отзыв', 'desc' : 'Заполните форму ниже, чтобы отправить нам отзыв', 'submit' : 'Submit' } }; // Параметры var link_thank = $('#link_popup_thank'); var link_review = $('#link_popup_review'); var link_question = $('#link_popup_question'); var type; // Тип попапа, благодарность или жалоба var lang = opts.lang || 'rus'; // Язык var container = $('#popup_container_thank'); // Контейнер с попапом var bg = $('#popup_bg_thank'); // Бекграунд попапа var popup = $('#popup_thank'); // Окно попапа var header = $('#popup_header_title'); // Заголовок окна попапа var title = $('#popup_title'); // Заголовок попапа var desc = $('#popup_desc'); // Описание попапа var form = $('#popup_form_thank'); // Форма для отправки // Объекты полей и меток для заполнения var type_inp = $('#type'); // Тип запроса жалоба/благодарность var label_email = $('#label_email'); // Впишите почту var email = $('#email'); // Впишите почту var label_phone = $('#label_phone'); // Впишите телефон var phone = $('#phone'); // Впишите телефон var label_employee = $('#label_employee'); // Выберите сотрудника var employee = $('#employee'); // Выберите сотрудника var label_client = $('#label_client'); // От кого отзыв var client = $('#client'); // От кого отзыв var label_text = $('#label_text'); // Текст жалобы/благодарности var text = $('#thank_text'); // Текст жалобы/благодарности var label_company = $('#label_thank_company'); // Название компании var company = $('#thank_company'); // Название компании var submit = $('#thank_submit'); // Кнопка отправки формы var showPopup = function(){ $('#popup_thank').die('click'); if(container.length === 0){ container = $('
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n

Уважаемый клиент!

\r\n

Используя эту форму Вы можете сообщить нам свое впечатление о работе нашей компании или отдельного сотрудника

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n

\r\n
\r\n Нажимая кнопку «Отправить» вы соглашаетесь с\r\n Политикой обработки персональных данных.\r\n
\r\n
\r\n
\r\n
'); $("body").append(container); bg = $('#popup_bg_thank'); popup = $('#popup_thank'); header = $('#popup_header_title'); title = $('#popup_title'); desc = $('#popup_desc'); form = $('#popup_form_thank'); type_inp = $('#type'); sotr= $('#sotr'); label_email= $('#label_email'); email = $('#email'); label_phone= $('#label_phone'); phone = $('#phone'); label_employee = $('#label_employee'); employee = $('#employee'); label_client = $('#label_client'); client = $('#client'); label_text = $('#label_text'); text = $('#thank_text'); label_company = $('#label_thank_company'); company = $('#thank_company'); submit = $('#thank_submit'); } if(type === 'thank'){ // Если тип окна благодарность header.html(dict[lang]['header_thank']); title.html(dict[lang]['title_thank']); desc.html(dict[lang]['desc_thank']); } else if (type === 'complain'){ // Если тип окна жалоба header.html(dict[lang]['header_review']); title.html(dict[lang]['title_review']); desc.html(dict[lang]['desc_review']); } else { // Если тип окна Вопрос header.html(dict[lang]['header_question']); title.html(dict[lang]['title_question']); desc.html(dict[lang]['desc_question']); } //filial.html(''); //$.each(filials_list, function(index, item){ // filial.append(''); //}); ////label_filial.html(dict[lang]['select_filial']); ////label_email.html(dict[lang]['email']); ////label_employee.html(dict[lang]['select_employee']); //console.log('type: ' + type); if(type === 'thank'){ ////label_text.html(dict[lang]['text_thank']); type_inp.val('thank'); } else if(type === 'review'){ ////label_text.html(dict[lang]['text_review']); type_inp.val('review'); } else { ////label_text.html(dict[lang]['text_question']); type_inp.val('question'); } ////label_company.html(dict[lang]['name_company']); submit.val(dict[lang]['submit']); container.show(); var dx = parseInt(($(window).height() - $(container).height()) / 2, 10) + $(document).scrollTop(); /*---------TOP--------*/ //container.css('top', dx + 'px'); bg.css('top', '0'); //console.log("высота экрана: " + $(window).height()); //console.log("высота окна: " + $(container).height()); //console.log("скролл сверху: " + $(document).scrollTop()); //console.log("dx: " + dx); bg.fadeIn(300); $('#popup_thank').live('click', function(e){ e.stopPropagation(); }); } var hidePopup = function(){ //console.log('hide popup'); if(!container.hasClass('no_hide')){ container.hide(); bg.hide(); container.find('.select_box .done').css('display', 'none'); container.find('.content').css('display', 'block'); form.trigger('reset'); } } // Клик по благодарности link_thank.live('click', function(e){ type = 'thank'; $("#sotr").show(); //console.log("Нажали на благодарность"); $('body').addClass('overflow'); showPopup(); e.preventDefault(); }); // Клик по жалобе link_review.live('click', function(e){ type = 'review'; $("#sotr").show(); //console.log("Нажали на отзыв"); $('body').addClass('overflow'); showPopup(); e.preventDefault(); }); // Клик по Вопросу link_question.live('click', function(e){ type = 'question'; $("#sotr").hide(); //console.log("Нажали на Вопрос"); $('body').addClass('overflow'); showPopup(); e.preventDefault(); }); // console.log(link_review); //bg.live('click', function(){ // hidePopup(); //}); $(document).live('click', '#popup_container_thank', function(e){ $('body').removeClass('overflow'); hidePopup(); }); $('#popup_thank a.popup_close').live('click', function(e){ // console.log('close'); $('body').removeClass('overflow'); e.preventDefault(); hidePopup(); }); $('#popup_thank #thank_reset').live('click', function(e){ //console.log(container.find('.done')); container.find('.done').hide(); container.find('.content').css('display', 'block'); e.preventDefault(); }); $(document).keyup(function(e){ if (e.keyCode == 27) { $('body').removeClass('overflow'); hidePopup(); } }); $('#thank_submit').live('click', function(e){ e.preventDefault(); $("#employee_error").hide(); $("#texxt_error").hide(); $("#company_error").hide(); $("#client_error").hide(); $("#phone_error").hide(); $("#email_error").hide(); if(enabled){ enabled = false; form.ajaxSubmit({ type : 'post', dataType : 'json', success : function(json) { // console.log(json.errors); if(json.errors !== undefined) { // console.log('WE HAVE MISTAKES'); $.each(json.errors, function(i, item){ console.log("#" + item + "_error"); $("#" + item + "_error").show(); //$("#" + item + "_error").html(errors[item]); }); } else { //console.log('SEND!'); $('#popup_container_thank_content').css('display', 'none'); $('#popup_container_thank_done').css('display', 'block'); setTimeout(function(){ container.fadeOut(1000, function(){ hidePopup(); container.find('#popup_container_thank_done').hide(); container.find('#popup_container_thank_content').css('display', 'block'); }); }, 3000); } enabled = true; } }); } }); if(matches = window.location.href.match(/\#saythanks/)) { link_thank.trigger('click'); } if(matches = window.location.href.match(/\#thank/)) { link_thank.trigger('click'); } if(matches = window.location.href.match(/\#complain/)) { link_review.trigger('click'); } if(matches = window.location.href.match(/\#question/)) { link_question.trigger('click'); } } })();