Перейти к содержимому


Фото
- - - - -

Заказ Обратного Звонка


  • Чтобы отвечать, сперва войдите на форум
14 ответов в теме

#1 jonny008

jonny008
  • Пользователь
  • 90 сообщений

Опубликовано 10.03.2017 - 08:11

Делаем импорт таблицы s_callbacks.sql в БД (во вложении).

 

Далее в файле api/Simpla.php примерно на 40 строке вставляем:

 

'callbacks'	 => 'Callbacks',

Далее в файле IndexView.php после:

 

function fetch()
	{

Вставить:

 

if($this->request->method('post') && $this->request->post('callback')) {
            $callback = new stdClass();
            $callback->phone        = $this->request->post('phone');
            $callback->name         = $this->request->post('name');
            $this->design->assign('callname',  $callback->name);
            $this->design->assign('callemail', $callback->phone);
            $this->design->assign('call_sent', true);
            $callback_id = $this->callbacks->add_callback($callback);
            // Отправляем email
            $this->callbacks->email_callback_admin($callback_id);
        }

Далее в api/Managers.php в  public $permissions_list = array добавить:

 

'callbacks'

 

 

Далее в файлах simpla/design/html в файлах comments.tpl и feedbacks.tpl примерно на 6 строке добавить:

 

	{if in_array('callbacks', $manager->permissions)}<li><a href="index.php?module=CallbacksAdmin">Заказ обратного звонка</a></li>{/if}

В шаблоне выводим: 

<a class="callback_link" href="#callback_form">Обратный звонок</a>

{include file='callback.tpl'}

и добавляем СSS 

/*Обратный звонок*/
.callback_title {
	display: block;
    border-bottom: solid 3px #106ac2;
    font-weight: 500;
    font-size: 18px;
    
    margin: 0 0 15px;
    color: #000;
	text-align: center;
	padding: 0 0 5px;
}
#callback_form .button {
	display: block;
    margin: 0 auto 3px;
    padding: 9px 25px 8px;
    font-weight: 500;
    font-size: 15px;
}

Вроде ничего не забыл. 

Прикрепленные файлы:



#2 ahmed

ahmed
  • Пользователь
  • 172 сообщений
  • Программирование, Пользователь
  • Версия CMS:2.x
  • Откуда:Россия

Опубликовано 10.03.2017 - 10:29

Файл callback.tpl в архиве размещен не в той папке, где должен быть.



#3 Danya

Danya
  • Фрилансер
  • 908 сообщений
  • Дизайн, Программирование, Верстка
  • Версия CMS:1.x, 2.x

Опубликовано 11.03.2017 - 12:47

забыли указать в файле simpla/IndexAdmin.php после:

'FeedbackAdmin'       => 'feedbacks',

добавить

'CallbacksAdmin'      => 'callbacks',


#4 jonny008

jonny008
  • Пользователь
  • 90 сообщений

Опубликовано 12.03.2017 - 05:56

забыли указать в файле simpla/IndexAdmin.php после:

'FeedbackAdmin'       => 'feedbacks',

добавить

'CallbacksAdmin'      => 'callbacks',

Да, спасибо. Пропустил



#5 Furu

Furu
  • Пользователь
  • 8 сообщений
  • Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 20.03.2017 - 14:40

не хочет работать нажимаю ссылку Обратный звонок ноль реакции в чем может быть причина?



#6 Kosjak76

Kosjak76
  • Модератор
  • 3 674 сообщений
  • Программирование
  • Версия CMS:1.x, 2.x
  • Откуда:Харьков, Украина

Опубликовано 20.03.2017 - 14:52

 $(...).fancybox is not a function

Скорее всего - не подключен фансибокс, или подключен неправильно



#7 Furu

Furu
  • Пользователь
  • 8 сообщений
  • Пользователь
  • Версия CMS:2.x
  • Откуда:Москва

Опубликовано 20.03.2017 - 22:06

 $(...).fancybox is not a function

Скорее всего - не подключен фансибокс, или подключен неправильно

работает только на главной странице почему-то 


Изменено: Furu, 20.03.2017 - 22:10


#8 digimon

digimon
  • Пользователь
  • 68 сообщений
  • Версия CMS:2.x

Опубликовано 10.04.2017 - 05:35

Чет вообще не хочет...вроде сделал по инструкции..где-то еще что-то упустили?



#9 mishanya

mishanya
  • Фрилансер
  • 2 490 сообщений
  • Программирование, Верстка
  • Версия CMS:2.x
  • Откуда:Ukraine

Опубликовано 11.04.2017 - 21:31

Чет вообще не хочет...вроде сделал по инструкции..где-то еще что-то упустили?

 

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



#10 star

star
  • Пользователь
  • 40 сообщений
  • Заказчик
  • Версия CMS:2.x

Опубликовано 10.01.2018 - 10:31

Если сделать заказ обратный звонок и перезагрузить страницу отправка формы повторится(( Может ошибка где нибудь в коде?


Изменено: star, 10.01.2018 - 11:03


#11 shooroop

shooroop
  • Фрилансер
  • 619 сообщений
  • Дизайн, Верстка
  • Версия CMS:2.x
  • Откуда:Antarktida

Опубликовано 10.01.2018 - 13:23

Если сделать заказ обратный звонок и перезагрузить страницу отправка формы повторится(( Может ошибка где нибудь в коде?

 

нет, это уже на стороне браузера,



#12 Плохиш

Плохиш
  • Забаненый
  • 98 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Орел

Опубликовано 10.01.2018 - 13:35

Это стандартная работа браузера. Если не нравится, то можно в обработчике формы добавить перезагрузку страницы подобно тому, как сделано в ProductView.php при приеме комментария.



#13 star

star
  • Пользователь
  • 40 сообщений
  • Заказчик
  • Версия CMS:2.x

Опубликовано 11.01.2018 - 19:13

Это стандартная работа браузера. Если не нравится, то можно в обработчике формы добавить перезагрузку страницы подобно тому, как сделано в ProductView.php при приеме комментария.

В ProductView.php перезагрузка страницы как я понимаю здесь.

				// Приберем сохраненную капчу, иначе можно отключить загрузку рисунков и постить старую
				unset($_SESSION['captcha_code']);
				header('location: '.$_SERVER['REQUEST_URI'].'#comment_'.$comment_id);

и чем это поможет если не секрет


 



#14 star

star
  • Пользователь
  • 40 сообщений
  • Заказчик
  • Версия CMS:2.x

Опубликовано 11.01.2018 - 19:25

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



#15 Плохиш

Плохиш
  • Забаненый
  • 98 сообщений
  • Программирование
  • Версия CMS:2.x
  • Откуда:Орел

Опубликовано 11.01.2018 - 20:42

В ProductView.php перезагрузка страницы как я понимаю здесь.

				// Приберем сохраненную капчу, иначе можно отключить загрузку рисунков и постить старую
				unset($_SESSION['captcha_code']);
				header('location: '.$_SERVER['REQUEST_URI'].'#comment_'.$comment_id);

и чем это поможет если не секрет


 

 

Тем же, чем помогает не посылать повторно комментарий при перезагрузке страницы товара.






0 пользователей читают эту тему

0 пользователей, 0 гостей, 0 скрытых