Skip to content

Instantly share code, notes, and snippets.

@sigorilla
Last active November 25, 2015 12:50
Show Gist options
  • Save sigorilla/67da281bd53210cbeb82 to your computer and use it in GitHub Desktop.
Save sigorilla/67da281bd53210cbeb82 to your computer and use it in GitHub Desktop.
Передача данных

Передача данных

  1. При создания формы надо быть увереным, что поля идут в определённом порядке. А именно:
  2. Имя
  3. Телефон
  4. Email
  5. После этого надо заменить обычную кнопку подтверждения формы на свою:
  6. Скроем обычную кнопку. Для этого пропишем display: none; в расширенных настройках кнопки (справа) в поле Чистый CSS.
  7. Создаем Кнопка: * Ссылка должна быть вида: #wtk_fire_newNN, где NN — номер блока формы. Чтобы его узнать, надо нажать один раз на форму и посмотреть, что будет написано в правом блоке сверху. Например, Форма 79, значит NN будет равен 79. * Открывать: в том же окне * Текст: какой необходимо
  8. После этого надо стилизовать эту кнопку на своё усмотрение.
  9. Добавляем скрипт. Менять ничего не надо.
<script>
jq_144(document).ready(function () {

  function myValidForm(send_form) {
    var error = true;
    var EMAIL_RE = /^([a-z0-9_\.-]+)@([a-z0-9_\.-]+)\.([a-z\.]{2,8})$/i;
    var URL_RE = /^(https?:\/\/)?([\da-zа-я\.-]+)\.([a-zа-я\.]{2,8})([\/\w \.-]*)*\/?$/i;
    var send_data = send_form.serializeArray();
    var send_array = {};
    for (var i in send_data) {
      send_array[send_data[i].name] = send_data[i].value;
    }
    send_form.find('.cont:visible').each(function () {
      var cont = jq_144(this);
      var label = cont.attr('data-label');
      var name = cont.attr('data-name');
      var value = send_array[name];
      if (cont.attr('data-required')) {
        error &= !!value;
      }
      if (cont.attr('data-email')) {
        error &= !(value && !value.match(EMAIL_RE));
      }
      if (cont.attr('data-url')) {
        error &= !(value && !value.match(URL_RE));
      }
      if (cont.attr('data-pattern')) {
        error &= !(value && this.dataset && !value.match(new RegExp(this.dataset.pattern, 'i')));
      }
    });
    return error;
  }
  jq_144('a[href^=#wtk_fire]').click(function (event) {
    event.preventDefault();
    var block_id = jq_144(this).attr('href').substr(10);
    $form = jq_144('#block-'+block_id+' form');
    if (myValidForm($form)) {
      var roiData = (typeof roistatGetCookie !== 'undefined') ? ("&roistat_visit=" + roistatGetCookie('roistat_visit')) : "";
      jq_144.ajax({
        url: "http://wanttoknow.ru/script/tolanto.php?" + $form.serialize() + roiData + "&href=" + encodeURIComponent(location.origin + location.pathname) + location.search.replace("?", "&"),
        dataType: "jsonp",
        success: function (data) {
          jq_144('a[href=#fire_form_'+block_id+']').click();
        },
      });
    } else {
      jq_144('a[href=#fire_form_'+block_id+']').click();
    }
  });
});
</script>
  1. Можно сохранить эту страницу.
  2. Добавить пару строк в скрипт на стороне сервера. Для этого заходим сюда (файл talanto.php в папке script, редактировать надо как PHP) и добавляем в 131 строку такой текст:
'Ссылка на страницу' => 'Заголовок в AmoCRM',

Например:

'http://courses.wanttoknow.ru/mobile/rus/' => 'БП русский',

Важно не забыть поставить ковычки и запятую в конце строки!

  1. Сохраняем файл.
  2. После этого всё должно работать.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment