52 06.07.2016 13:15:56
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
Что бы при регистрации пароль формировался автоматически и отправлялся на e-mail
А по этому вопросу?
53 06.07.2016 12:28:00
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
Не совсем понял. Этот функционал присутствует сразу. В чём загвоздка?
Что бы при регистрации пароль формировался автоматически и отправлялся на e-mail
А как можно вызвать getPropertyView ?
А то теперь ругается на него
54 06.07.2016 12:11:00
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
И еще вопрос(наверно его стоит отнести к платной поддержке). Могли бы помочь с получением пароля автоматически на e-mail при регистрации. Как это сделано при оформлении заказа
55 06.07.2016 11:48:32
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
А теперь возник другой вопрос. Можно тоже самое сделать с формой регистрации?Вывести ее на главную, без всплывающего окна.
А то я пытаюсь делать по примеру авторизации, но получаю ошибку
Fatal error: Call to a member function getNonFormErrors() on a non-object in Z:\home\ready.local\www\core\smarty\sysplugins\smarty_internal_templatebase.php(165) : eval()'d code on line 43
И еще вопрос(наверно его стоит отнести к платной поддержке). Могли бы помочь с получением пароля автоматически на e-mail при регистрации. Как это сделано при оформлении заказа
56 06.07.2016 09:13:33
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Дублирую сообщение из почты.
Посмотрел через firebag , post не передается. Заранее спасибо.
В orderview.tpl после
{assign var=products value=$cart->getProductItems()}
вставил
{assign var=shop_config value=ConfigLoader::byModule('shop')}
заменил в orderview.tpl
{foreach from=$fm->getStructure() item=item}
<tr class="{cycle values=$hl name="order"}">
<td class="otitle">
{$item.title}
</td>
<td>{$item.current_val}</td>
</tr>
{/foreach}
на это
{foreach from=$fm->getStructure() item=item}
<tr class="{cycle values=$hl name="order"}">
<td class="otitle">{$item.title}</td><td><input type="text" name="current_val" value="{$item.current_val}" class="maxWidth"></td>
<!--<td>{$item.current_val}</td>-->
</tr>
{/foreach}
function init()
{
$this
->bind('controller.afterexec.shop-admin-orderctrl');
}
/**
* Срабатывает после отработки контроллера сохранения заказа
*
* @param string $result_html - готовый HTML, возвращаемый контроллером
*/
public static function controllerAfterexecShopAdminOrderCtrl($result_html)
{
if (isset($_REQUEST['current_val'])){
$config = \RS\Config\Loader::byModule('shop'); //Получам конфиг магазина
$config['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING, ""); //Записываем значение из поста
$config->update(); //ЗДЕСЬ есть, т.к. сохраняется другой объект
}
return $result_html;
}
57 05.07.2016 17:22:08
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
Думаю дело не в этом потому что я пробовал, копировал полностью содержимое authorization.tplв файл authblock.tpl
Откомпилированный?
Не сразу догадался посмотреть через firebag.
В Вашем случае, можно добавить в контейнер внешний шаблон, куда заложить нужную Вам логику.
Содержимое контейнера, будет в переменной {$wrapped_content} . Например:Моя логика {$wrapped_content} //Вывод контента, который назначен в контейнере.
Все понял, спасибо!:)
Только вот в какой каталог разместить этот шаблон, что бы было по уму?
58 05.07.2016 16:32:10
Re: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
Проверка пользователь залогинен или нет, можно так:
{if $is_auth} //Пользователь зарегистрирован {/if}
Это я понял, спасибо вопрос в другом, как скрыть сам контеинер?Проблема в том, что фон у меню контеинера у меня залит цветом. И когда вставляю проверку на "залогинен или нет", то у меня у меня соответственно пропадает меню, а фон заливки остается, потому что он привязан к классу navContainer и вписан в поле CSS-класс оборачивающего блока
Вся причина в том, что ещё в форме, которая отправляется используется скрытое поле с идентификатором контроллера. Подсмотрите на странице авторизации этот код у формы и добавьте себе это скрытое поле.
Спасибо, с этим проблему решил
59 05.07.2016 11:31:20
Тема: Форма входа (41 ответов, оставленных в Вопросы по работе с системой)
Добрый день. Подскажите пожалуйста, как правильно сделать, что бы форма входа сразу отображалсь в шапке(а то сейчас она во всплывающем окне). Я пробовал редактировать шаблон, но у меня возникло затруднение в следующем. При нажатии кнопки войти меня перекидыват на страницу авторизации site.ru/auth/ и только на этой странице получается вход, скажите как это исправить?
Я так понимаю дело в action="{$router->getUrl('users-front-auth')}"
И еще вопрос, как можно скрыть navContainer от не зарегистрированного пользователя? куда вставить проверку?
60 28.06.2016 16:54:36
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
61 28.06.2016 09:08:06
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Вообщем видимо придется забросить эту идею. Ничего не получается.
62 24.06.2016 17:00:17
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Андрей.
var_dump($_REQUEST['current_val']); что выдаёт? Если ничего, то выведите весь массив $_REQUEST и посмотрите что у Вас из запроса приходит.
так же ничего
63 24.06.2016 16:36:06
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
var_dump($config['current_val']); выдает null
64 24.06.2016 15:02:29
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Вот рабочий код:
function init() { $this ->bind('orm.beforewrite.shop-order'); } /** * Действия перед записью в БД * * @param array $data - массив с данными */ public static function ormBeforewriteShopOrder($data) { if (isset($_REQUEST['current_val'])){ $config = \RS\Config\Loader::byModule('shop'); //Получам конфиг магазина $config['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING, ""); //Записываем значение из поста $config->update(); //ЗДЕСЬ есть, т.к. сохраняется другой объект } }
не работает, и переустановил модуль и кеш скинул. ни как
65 24.06.2016 14:40:19
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Если я правильно понимаю, Вы добавили поле в заказе.
Поля я добавил в Веб сайт->Настройка модулей->Магазин->Дополнительные поля->добавить поле.
66 24.06.2016 14:36:25
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
orm.beforewrite у Вас сработает в тех случаях если вызывался
insert() - запись объекта
или
update() - обновление объекта
Вы сами действия где производите? В каком разделе? я имею ввиду с полем Вашим.
В админке. admin/shop-orderctrl/?id=3&do=edit вот по этому адресу
67 24.06.2016 14:08:23
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Александр
Да вот куда не вставлю var_dump ошибку выдает.
Вставил Ваш код, все равно не работает. Может какая то оошибка в шаблоне самом?
68 24.06.2016 11:51:29
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
чтобы посмотреть срабатывает эта функция у Вас или нет.
я понял для чего) Можете привести пример выполнения этого?
Киньте код обоих попыток.
Скину второй вариант
function init()
{
$this
->bind('orm.beforewrite.shop-config-file');
}
public static function OrmBeforewriteShopConfigFile ($data) {
$config = $data['orm'];
$config = \RS\Config\Loader::byModule('shop');
$config['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING);
$config->update();
}
Кстати, первый хук немного не такой. Он же должен вести на контроллер в админ панели. Вы в каком контроллере данные сохраняете.
Просто если посмотрите в папку с контролерами админки, то там есть только orderctrl, а не order. Вы же понимаете как формируется хук?
controller.afterexec.ПАПКАМОДУЛЯ-ПАПКАКОНТРОЛЛЕРА(ADMIN)-ИМЯФАЙЛАКОНТРОЛЛЕРА.
Значит первый вариант у меня был не правильный, я делал без admin. Да понимаю как формируется
А вот второй должен сработать. Надо сделать var_dump и посотреть прервётся ли сохранение.
как правильно вывести var_dump(а тут что?);
69 24.06.2016 09:27:18
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
А можно вообще наверное ещё проще использовать orm.beforewrite.shop-config-file, тогда это сразу в объекте сработает.
попробовал оба варианта хуков, не помогает. А var_dump от чего тут использовать?
70 23.06.2016 16:41:11
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
if (isset($_POST['current_val'])){
$order['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING);
}
на счет этого все понятно. Но значение почему то не подхватывается. Тоесть я ввожу данные нажимаю сохранить, но ничего не происходит, где то в функции допущена ошибка?
public static function ControllerAfterexecShopOrder ($data) {
$config = $data['orm'];
$config = \RS\Config\Loader::byModule('shop');
$config['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING);
$config->update();
}
71 23.06.2016 15:18:01
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Сам конфиг можно получить так:
{assign var=shop_config value=ConfigLoader::byModule('shop')}
В orderview.tpl после
{assign var=products value=$cart->getProductItems()}
вставил
{assign var=shop_config value=ConfigLoader::byModule('shop')}
И далее просто выводить значения полей в инпуты.
заменил в orderview.tpl
{foreach from=$fm->getStructure() item=item}
<tr class="{cycle values=$hl name="order"}">
<td class="otitle">
{$item.title}
</td>
<td>{$item.current_val}</td>
</tr>
{/foreach}
на это
{foreach from=$fm->getStructure() item=item}
<tr class="{cycle values=$hl name="order"}">
<td class="otitle">{$item.title}</td><td><input type="text" name="current_val" value="{$item.current_val}" class="maxWidth"></td>
<!--<td>{$item.current_val}</td>-->
</tr>
{/foreach}
Сам шаблон Вы естественно можете перегрузить в своей теме оформления.
шаблон перегрузил
Что касается обработки полей, то я думаю Вам нужен хук:
controller.afterexec.КОРОТКОЕ_ИМЯ_КОНТРОЛЛЕРА из таблицы http://readyscript.ru/dev-manual/dev_ho … hooks_list
<?php
namespace Edpole\Config;
use \RS\Orm\Type as OrmType;
class Handlers extends \RS\Event\HandlerAbstract
{
function init()
{
$this
->bind('controller.afterexec.shop-order');
}
Не совсем уверен на счет того, что это правильно(функция)
Где можно из POST вытащить Ваши поля и сохранить у конфига.
public static function ControllerAfterexecShopOrder ($data) {
$config = $data['orm'];
$config = \RS\Config\Loader::byModule('shop');
$config['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING);
$config->update();
}
Вот это нужно добавлять или нет?
if (isset($_POST['current_val'])){
$order['current_val'] = \RS\Http\Request::commonInstance()->request('current_val', TYPE_STRING);
}
Спасибо за помощь.
72 15.06.2016 08:57:21
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
А Вы хотите откуда их редактировать? Из заказа?
Да, от туда. orderview.tpl шаблон
73 14.06.2016 16:26:47
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
Вы в настройках модуля магазин добавляли поля(Веб-сайт->Настройка модулей->Магазин)?
Да ,там.
74 14.06.2016 14:08:45
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
А есть возможность добавить редактирование доп полей, которые создаются в настройках модуля магазин?
75 06.06.2016 16:26:25
Re: Редактирование полей (65 ответов, оставленных в Вопросы по работе с системой)
а можно это сделать, как по примеру с полем "Контактное лицо" ?