Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 

README.md

Simple Callback Module

Простой модуль обратного звонка или для обратной связи. Совместим с Joomla 3.0 и выше. При необходимости дополняется компонентом Simple Callback Component, для сохранения сообщений в панели администрирования.

mod_simplecallback screenshot mod_simplecallback screenshot mod_simplecallback screenshot

📎 Скачать модуль: Все версии 📎 Скачать компонент: Все версии

Основные преимущества:

  1. Бесплатный
  2. Безопасный: поддержка токенов (CSRF) капчи и honneypot.
  3. Без перезагрузки страницы (ajax).
  4. SMS-уведомления с помощью сервиса SMS.ru (бесплатно, в случае отправки на один телефон)
  5. Возможность вставки нескольких модулей на одну страницу
  6. Содержит все необходимые настройки

Возможности:

Модуль поддерживает несколько видов отображения на странице:

  • Как обычный модуль — форма вставляется в указанную позицию
  • Как оверлей — код формы вставлен в позицию, но сама форма скрыта. Вызвать форму можно с любой кнопки на странице с аттрибутом data-simplecallback-open, например:
<a href="#" data-simplecallback-open>
    Обратная связь
</a>

В коде сверху вызовется самый первый модуль с оверлеем. Если на странице размещается сразу несколько модулей, то вызвать нужный можно указав ID модуля в аттрибуте data-simplecallback-open, например:

<a href="#" data-simplecallback-open="93">
    Обратный звонок
</a>

Альтернативный способ открытия — использование хэш ссылки. Может быть полезным, если вы хотите сделать кнопку обратного звонка в меню Joomla.

<a href="#simplecallback-93">
    Обратный звонок
</a>

Закрыть оверлей можно любой кнопкой/ссылкой с атрибутом data-simplecallback-close, пример:

<a href="#" data-simplecallback-close>
    Закрыть [x]
</a>

Еще вызвать модуль можно через JS:

/* показать оверлей с модулем по id */
    simplecallback.show(id); 
/* скрыть оверлей с модулем */
    simplecallback.hide(); 

Передача скрытого текста:

Иногда возникает ситуация: вам необходимо понимать с какой кнопки был совершен обратный звонок. Для этого можно использовать атрибут data-simplecallback-custom-data. Значение этого атрибута будет указано в письме. Может быть полезно, например, если у вас множество товаров на странице и на всех есть кнопка быстрого заказа.

<a href="#" data-simplecallback-open="93" data-simplecallback-custom-data="Купить iPhone 6">
    Купить в 1 клик
</a>

События JS:

События могут быть полезны, если вы пользуетесь Яндекс.Метрикой или Google Analytics. Можно отследить следующие события:

simplecallback:beforeShow — событие до открытия модального окна

simplecallback:afterShow — событие после открытия модального окна

simplecallback:success — событие после успешной отправки данных и получения ответа с сервера с валидными данными

simplecallback:error — событие в случае сетевой ошибки, либо parseError

simplecallback:error — событие в случае сетевой ошибки, либо parseError

Примеры использования событий:

$(document).on('simplecallback:beforeShow', function(event, data) {
    console.log(data);
    alert('Simplecallback beforeShow event triggered \nmoduleId: ' + data.moduleId + ' \ncustomData: ' + data.customData);
});
    
$(document).on('simplecallback:afterShow', function(event, data) {
    console.log(data);
    alert('Simplecallback afterShow event triggered \nmoduleId: ' + data.moduleId + ' \ncustomData: ' + data.customData);
});

$(document).on('simplecallback:success', function(event, data) {
    console.log(data);
    alert('Simplecallback success event triggered \nform: ' + data.form + ' \nmoduleId: ' + data.moduleId + ' \ncustomData: ' + data.customData + ' \ndata: ' + data.data);
});

$(document).on('simplecallback:error', function(event, data) {
    console.log(data);
    alert('Simplecallback error event triggered \nform: ' + data.form + ' \nmoduleId: ' + data.moduleId + ' \ncustomData: ' + data.customData + ' \ndata: ' + data.data + ' \njqXHR: ' + data.jqXHR + ' \ntextStatus: ' + data.textStatus + '\n errorThrown: ' + data.errorThrown);
});

$(document).on('simplecallback:complete', function(event, data) {
    console.log(data);
    alert('Simplecallback complete event triggered \nform: ' + data.form + ' \nmoduleId: ' + data.moduleId + ' \ncustomData: ' + data.customData + ' \ndata: ' + data.data + ' \njqXHR: ' + data.jqXHR + ' \ntextStatus: ' + data.textStatus);
});

Дизайн, шаблоны и пр:

Модуль создан без особого прицела на визуальный дизайн, т.к. дизайн каждого сайта индивидуален, поэтому вам предоставляется полная свобода для оформления и верстки.

Для того, чтобы создать свой шаблон, создайте директорию /templates/название-вашего-шаблона/html/mod_simplecallback/ и добавьте туда копию файла default.php из директории /modules/mod_simplecallback/tmpl/default.php. Вы можете создать разные шаблоны в папке вашего шаблона и выбирать их из панели администрирования в настроке модуля «Альтернативный макет».

Рекомендации по настройке:

Настоятельно рекомендуется настроить в общих настройках Joomla отправку писем не через PHP Mail, а через SMTP-сервер. Это уменьшит шанс того, что ваше письмо попадет в спам или вовсе будет удалено на вашем почтовом ящике фильтрами.

Система — Общие настройки — Сервер — Способ отправки: SMTP

Для SMTP рекомендуется завести отдельный ящик, в целях безопасности, т.к. SMTP пароли в Joomla хранятся в открытом виде. В случае компрометации Joomla ваш основной ящик не пострадает!

About

Простой модуль для CMS Joomla 3.0+ для обратного звонка

Resources

Packages

No packages published
You can’t perform that action at this time.