В личном кабинете возможна замена шаблонов модулей.
Разберем на примере нескольких модулей, как это делать.
Warning Не называйте шаблон так же, как это сделано в стандартном модуле, если у Вас на это нет веской причины! |
Замена шаблона страницы обещанных платежей
Если вас не устраивает количество информации об обещанном платеже, то имеется возможность изменить это.
На примере разберем, как добавить шаблон, отображающий страницу так:
Это делается с помощью следующего шаблона:
<style> .promise_pay { margin-top: 10px; margin-bottom: 10px; } </style> <?if(count($data['promise_pays']) < 1) {?> <div> Обещанный платеж для вашего тарифа недоступен </div> <?}?> <? foreach($data['promise_pays'] as $promise_pay){?> <div> <form action="" method="post"> <?$this->module_token()?> <label>Наименование: <?=$promise_pay->name?></label><br /> <label>Обещанный платеж на сумму <?=$promise_pay->promise_summ?>.</label><br /> <?if ($promise_pay->summa > 0) {?> <label>Стоимость подключения услуги: <?=$promise_pay->summa?></label><br/> <?}?> <button type="submit" value="<?=$promise_pay->id?>" name="add_promise_pay" class="btn btn-primary"> Активировать обещанный платеж. Стоимость активации: <?=$promise_pay->activate_pay?> </button> <br /> </form> </div> <?}
Переменная $data['promise_pays'] содержит все доступные пользователю обещанные платежи.
Пользовательские шаблоны необходимо сохранять в каталоге:
/app/asr_cabinet/var/cabinet_tmpl/
Например, этот файл шаблона называется PromisePay_Detailed.php и тогда полный путь к нему будет:
/app/asr_cabinet/var/cabinet_tmpl/PromisePay_Detailed.php
Для включения его в личном кабинете на странице обещанного платежа строку:
[cabinet_promise_pay]
необходимо заменить на:
[cabinet_promise_pay template="PromisePay_Detailed"]
Иллюстрация:
Замена шаблона страницы текущий тариф
Стандартная страница выглядит так:
Её код в WordPress:
[cabinet_tarif_info]
Уберем нижнюю часть с солнышком, луной и молнией.
Приводим стандартный шаблон к следующему виду:
<table class="table tarif"> <tr class="tarif-header"> <td>Услуга</td> <td colspan="">Ваш тариф</td> <td> <span><a href="">Рекомендуем</a></span> <span><a href="">Популярные</a></span> </td> </tr> <!-- Current tarif info --> <tr> <td></td> <td class="tarif-head tarif-current"> <h4><?=$data['user_info']->tarif?></h4> <div class="tarif-desc"> <?= $data['admin.tarif'][0]->fields->plan_comment ?> </div> <div class="actions"> <a href="/cabinet/смена_тарифа/" class="btn btn-primary">Поменять тариф</a> </div> </td> <td class="tarif-recommend"> <h4><?=$data['best_tarif']->name?></h4> <div class="tarif-desc"> <?=$data['best_tarif']->plan_comment?> </div> </td> </tr> </table>
И сохраняем на сервере:
/app/asr_cabinet/var/cabinet_tmpl/my_tarif_info.php
После этого в WordPress меняем шорткод модуля на:
[cabinet_tarif_info template="my_tarif_info"]
После этого страница будет выглядеть так:
Замена шаблона страницы заявки на подключение
Создадим шаблон my_tpl_connection.php , в котором нет поля почта, но используется капча
<?php /** * Created by PhpStorm. * User: alexander * Date: 19.03.15 * Time: 14:29 */ $legend = strlen($this->options['form_header']) > 0 ? $this->options['form_header'] : false; $messages=new \carbon\modules\Message(); echo $messages->getHtml(); ?> <div class="col-xs-15"> <div class="clearfix"> <form action="" class="form-horizontal" method="post"> <?$this->module_token()?> <fieldset> <?if($legend){?> <!-- Form Name --> <legend><?=$legend?></legend> <?}?> <!-- Text input--> <div class="form-group"> <label class="col-xs-7 control-label" for="street">Улица</label> <div class="col-xs-7"> <input id="street" value="<?php echo $_GET['street_val']?>" name="street" type="text" placeholder="Например, Ленина" class="form-control input-md"> </div> </div> <!-- Text input--> <div class="form-group"> <label class="col-xs-7 control-label" for="house_n">Номер дома</label> <div class="col-xs-7"> <input id="house_n" name="house_n" value="<?php echo $_GET['home_num_val']?>" type="text" placeholder="Например, 1" class="form-control input-md"> </div> </div> <!-- Text input--> <div class="form-group"> <label class="col-xs-7 control-label" for="korpus">Корпус</label> <div class="col-xs-7"> <input id="korpus" name="korpus" type="text" value="<?php echo $_GET['home_liter_val']?>" placeholder="Например, Б" class="form-control input-md"> </div> </div> <!-- Text input--> <div class="form-group"> <label class="col-xs-7 control-label" for="contact_name">Контактное лицо</label> <div class="col-xs-7"> <input id="contact_name" name="contact_name" type="text" placeholder="Иван Иванович Иванов" class="form-control input-md"> </div> </div> <!-- Prepended text--> <div class="form-group"> <label class="col-xs-7 control-label" for="phone_number">Номер телефона</label> <div class="col-xs-7"> <div class="input-group"> <span class="input-group-addon">+7</span> <input id="phone_number" name="phone_number" class="form-control" placeholder="1234567890" type="text"> </div> </div> </div> <!-- Text input--> <div class="form-group"> <label class="col-xs-7 control-label" for="captcha">Капча</label> <div class="col-xs-7"> <img src="/wp-content/themes/carbonsoft/library/captcha.php" id="captcha" width="150px" alt="Введите сюда текст с картинки в поле ниже" title="Введите сюда текст с картинки в поле ниже" /> <!-- CHANGE TEXT LINK --> <a href="#" onclick=" document.getElementById('captcha').src='/wp-content/themes/carbonsoft/library/captcha.php?'+Math.random(); document.getElementById('captcha-form').focus();" id="change-image"> Сложно? Сменить текст! </a> <input id="captcha-form" name="captcha" type="text" autocomplete="off" placeholder="Введите сюда текст с картинки" class="form-control input-md" > </div> </div> <!-- Button --> <div class="form-group"> <label class="col-xs-7 control-label" for="submit"></label> <div class="col-xs-7"> <button id="submit" name="submit" class="btn btn-primary">Отправить</button> </div> </div> </fieldset> </form> </div> </div>
Сохраним файл в каталоге пользовательских шаблонов:
/app/asr_cabinet/var/cabinet_tmpl/my_tpl_connection.php
И изменим шорткод страницы с формой заявки:
[cabinet_apply_for_connection captcha=1 template='my_tpl_connection']
Замена шаблона страницы смены номера SMS-информирования
Добавим на форму ввода номера ограничение по маске, чтобы можно было вводить номера типа "+9 (999) 999-99-99"
Скачать шаблон:
PhoneForm.php
Выгружаем его в каталог шаблонов, путь будет:
/app/asr_cabinet/var/cabinet_tmpl/PhoneForm.php
И на странице смены номера для оповещений меняем шорткод на:
[cabinet_set_user_info sms='Номер для SMS-Информирования' template='PhoneForm']