|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (16)
просмотр истории страницыНачиная с версии 5.6.0 возможна замена шаблона некоторых модулей. |
{toc} |
|
В личном кабинете возможна замена шаблонов модулей. Разберем на примере нескольких модулей, как это делать. {warning:title=Warning} Не называйте шаблон так же, как это сделано в стандартном модуле, если у Вас на это нет веской причины\! {warning} {info:title=Ограничения} У некоторых модулей параметр "template" не работает. В таком случае нужно называть шаблон так же, как модуль, чтобы он заменял стандартный. Список: * [Authorize|https://docs.carbonsoft.ru/pages/viewpage.action?pageId=50659482#WordPress.%D0%9A%D0%B0%D0%BA%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE%22%D0%9B%D0%B8%D1%87%D0%BD%D1%8B%D0%B9%D0%BA%D0%B0%D0%B1%D0%B8%D0%BD%D0%B5%D1%82%22.%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%B2%D0%B5%D0%B1-%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8-%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B8%D1%82%D1%8C%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%B2%D0%B5%D0%B1%D0%B0%D0%B2%D1%82%D0%BE%D1%80%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8] {info} Так же есть возможность [редактирования модулей|CarbonBilling:Пользовательские модули в cabinet_modules] |
h4. Замена шаблона страницы обещанных платежей |
... |
На примере разберем, как добавить шаблон, отображающий страницу так: |
!promisepay.png|thumbnail,border=1! !promisepay.png|border=1! |
Это делается с помощью следующего шаблона: |
... |
<label>Стоимость подключения услуги: <?=$promise_pay->summa?></label><br/> <?}?> |
<button type="submit" value="<?=$promise_pay->id?>" name="add_promise_pay"> |
<button type="submit" value="<?=$promise_pay->id?>" name="add_promise_pay" class="btn btn-primary"> |
Активировать обещанный платеж. Стоимость активации: <?=$promise_pay->activate_pay?> </button> |
... |
{code} Иллюстрация: |
!promisepay_detailed.png|thumbnail,border=1! !promisepay_detailed.png|border=1! |
h4. Замена шаблона страницы текущий тариф |
... |
|
!trarif_info_standart.png|thumbnail,border=1! !trarif_info_standart.png|border=1! |
Её код в WordPress: |
... |
{code} |
<table> <tr> <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> <h4><?=$data['user_info']->tarif?></h4> |
<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> <?= $data['admin.tarif'][0]->fields->plan_comment ?> </div> <div> <a href="/cabinet/смена_тарифа/">Поменять тариф</a> </div> </td> <td> <h4><?=$data['best_tarif']->name?></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> <?=$data['best_tarif']->plan_comment?> </div> </td> </tr> |
<div class="tarif-desc"> <?=$data['best_tarif']->plan_comment?> </div> </td> </tr> |
</table> {code} |
... |
{code} После этого страница будет выглядеть так: |
!tarif_info_new.png|thumbnail,border=1! !tarif_info_new.png|border=1! |
h4. Замена шаблона страницы заявки на подключение Создадим шаблон *my_tpl_connection.php* , в котором нет поля почта, но используется капча {code} <?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> {code} Сохраним файл в каталоге пользовательских шаблонов: {code} /app/asr_cabinet/var/cabinet_tmpl/my_tpl_connection.php {code} И изменим шорткод страницы с формой заявки: {code} [cabinet_apply_for_connection captcha=1 template='my_tpl_connection'] {code} h4. Сумма расхода за месяц Выводит сумму элементов из шорткода [cabinet_current_month_expenses|CarbonBilling:Wordpress. Список шорткодов ЛК.] Код измененного шаблона: {code} <h4>Расход за месяц</h4> <?php if(count($data['expenses']) < 1){ ?> <div class="alert alert-info"> Нет списаний </div> <?php } $summa = 0; foreach ($data['expenses'] as $expense) { $summa += $expense->summ; } echo ca_util()->format_money($summa); {code} Сохраним файл в каталоге пользовательских шаблонов: {code} /app/asr_cabinet/var/cabinet_tmpl/current_month_expenses_summ.php {code} Шорткод страницы: {code} [cabinet_current_month_expenses template='current_month_expenses_summ'] {code} h4. Замена шаблона страницы смены номера SMS-информирования Добавим на форму ввода номера ограничение по маске, чтобы можно было вводить номера типа "+9 (999) 999-99-99" Скачать шаблон: [^PhoneForm.php] Выгружаем его в каталог шаблонов, путь будет: {code} /app/asr_cabinet/var/cabinet_tmpl/PhoneForm.php {code} И на странице смены номера для оповещений меняем шорткод на: {code} [cabinet_set_user_info sms='Номер для SMS-Информирования' template='PhoneForm'] {code} h4. Стандартные пути к файлам Модули располагаются по следующему пути: {panel} /app/asr_cabinet/usr/local/lib/cabinet_modules/modules/ {panel} Шаблоны располагаются здесь: {panel} /app/asr_cabinet/usr/local/lib/cabinet_modules/modules/tpls/ {panel} |