Модуль Обратный звонок (заказать в 1 клик) для DLE - бесплатно

📅 {date}👁️ {views} просмотров📁 {category}

Модуль Обратный звонок (заказать в 1 клик) для DLE - бесплатно

📅 06.01.2014👁️ 20124 просмотров📁 Наши разработки | Плагины для DLE
🏷️ Теги: модуль, бесплатно
Модуль «Обратный звонок» предназначен для вывода на сайте формы отправки менеджерам сайта информации с телефоном клиента (если он будет указан).
Типовое применение - плавающая панель на корпоративном сайте компании, предоставляющей услуги.
Либо использование модуля в качестве кнопки «Заказать в 1 клик», если ваш сайт является интернет-магазином или виртуальной витриной с товарами.

Пример работы модуля:
на страницах сайта в правой колонке (можно перенастроить правками CSS) расположена плавающая панель «Заказать звонок»

при клике на панель, выезжает форма для указания имени, номера телефона и времени звонка.

Посетитель сайта указывает данные и нажимает "отправить".
Письмо с данными улетает менеджерам сайта, а посетитель видит надпись:
Успех
Запрос успешно отправлен!

текст уведомления об отправке можно изменить.

Достоинства модуля:
- Легкая установка
- Всего одна правка в engine/engine.php
- Свой шаблон внешнего оформления
Работа модуля тестировалась на версиях движка DLE 9.0 - 10.1

Структура модуля:

Всего 6 файлов:
две картинки, один php, один tpl, css и js

Установка модуля:

1. скопировать на сайт файлы модуля
Скопировать файл call.php из приложения в /engine/modules/.
В файле /engine/engine.php найти:
case "register" :
include ENGINE_DIR . '/modules/register.php';
break;

Вставить ниже:
case "call" :
include ENGINE_DIR . '/modules/call.php';
break;

2. в папку шаблона скопировать файлы внешнего оформления из папки templates/Ваш_шаблон
3. в файл /templates/Ваш_шаблон/main.tpl добавить
перед тегом

вставить


перед тегом

вставить
{include file="tcse_mod/call.tpl"}

Для открытия окна формы, достаточно на страницу сайта поставить ссылку
Заказать звонок 


Настройки модуля:
Вы можете указать:
- Адрес получателя уведомлений
- Адрес отправителя
- Заголовок письма
- Сообщение на странице сайта после отправки.
Для внесения правок необходимо отредактировать файл /engine/modules/call.php

Чтобы указать свой адрес почты в качестве получателя
найти:
$mail_addr = "vasya@pupkin.com";

заменить на свой адрес
$mail_addr = "petya@ivanov.ru, admin@sitov.net"; 

где petya@ivanov.ru, admin@sitov.net это адреса получателей.

Для сортировки писем в своей почтовой программе, рекомендуется указать адрес отправителя
найти:
$mail_sender = "call@site.com"; 

заменить на свой адрес:
$mail_sender = "zvonok@pupkin.ru";


А так же изменить тему сообщения
найти:
$mail->send($mail_addr, "Заказ звонка", $message);

исправить по своему вкусу, например
$mail->send($mail_addr, "Заказ звонка с сайта TCSE-cms.com", $message);




Инструкция одним файлом http://goo.gl/t69aUy

Живые примеры работы модуля "Обратный звонок":
http://iv-service.ru/
http://fiat-ac.ru/
http://alarm-man.ru/
Программная основа: DLE 9.5 - 10.1
Название модуля: Обратный звонок (TCSE_call-mod)
Версия модуля: 1.1 (от 2013-07-15)
Программирование: Кирилл Родэ
Руководитель проекта: Виталий Чуяков

Скачать архив с модулем
[attachment=7:TCSE_call_win1251.zip]


суть ошибки:
игнорируются обязательные поля при отправки данных из формы.
как исправить:
открыть файл templates/Ваш_шаблон/js/call.js
заменить:

$(function() {

var callState = false;
$('.right-call .call-top, .call-open').click(function() {
var delta = (callState) ? "-=260" : "+=260";
$('.right-call').animate({width: delta}, 250);
callState = !callState;
return false;
});


}); 

на

$(function() {

var callState = false;
$('.right-call .call-top, .call-open').click(function() {
var delta = (callState) ? "-=260" : "+=260";
$('.right-call').animate({width: delta}, 250);
callState = !callState;
return false;
});

$('.call-content input[type=submit]').click(function() {
var parentForm = $(this).closest('form');
if(!parentForm.find('input[name=name]').val().length ||
    !parentForm.find('input[name=phone]').val().length) {
    DLEalert('Не заполнены необходимые поля.', 'Ошибка');
    return false;
}
else return true;
});

});