[Office] Версия 1.4.6 - повтор заказов
Привет, друзья!
Хочу анонсировать вам обновление Office, которое стало результатом личной просьбы одного из участников митапа в Казахстане, на прошлой неделе.
Речь о возможности повторять заказы прямо из таблицы Office. У сниппета officeMiniShop2 есть теперь 3 новых параметра:
Новая версия уже в магазине, можно обновляться.
Хочу анонсировать вам обновление Office, которое стало результатом личной просьбы одного из участников митапа в Казахстане, на прошлой неделе.
Речь о возможности повторять заказы прямо из таблицы Office. У сниппета officeMiniShop2 есть теперь 3 новых параметра:
- allowRemove — включить возможность удаления заказов со статусом «Новый».
- allowRepeat — включить возможность повторения заказа.
- cartLink — ссылка на корзину с оформлением заказа.
- Если повтор разрешён, в таблице заказов появляется соответствующая иконка.
- При клике на неё товары заказа набиваются в сессию, как будто бы пользователь сам добавил их в корзину.
- Дальше, если параметр cartLink не пуст, то пользователь переправляется на указанную страницу оформления заказа. Выбирает метод доставки, оплаты, заполняет или меняет нужные поля адреса.
- Если же этот параметр пуст, то заказ создаётся сразу же, копируя всё что можно из старого.
[[!officeMiniShop2?
&allowRemove=`1`
&allowRepeat=`1`
&cartLink=`/order/cart`
]]
Новая версия уже в магазине, можно обновляться.
Комментарии: 5
allowRepeat не работает, если товар виртуальный. По крайней мере не повторяет заказ подписки PayAndSee, выдаёт ошибку: Ошибка добавления в корзину: не указан идентификатор товара
Василий подскажи пожалуйста, как отключить функционал сброса пароля?
Т.е. мне не нужно чтобы человек ввел Логин(емайл) и ему тут же сбросился пароль.
Пароль и Логин выдаются админом, так что сбрасывать может только админ, отсюда и такая задача.
Т.е. мне не нужно чтобы человек ввел Логин(емайл) и ему тут же сбросился пароль.
Пароль и Логин выдаются админом, так что сбрасывать может только админ, отсюда и такая задача.
Корявенко но вот:
office_auth_register_password_error = Вы не ввели пароль
Плохо будет когда обновление…
//208 строчка core/components/office/controllers/auth.class.php
//заменяем
return $this->_resetPassword($user->username);
//на
return $this->error($this->modx->lexicon('office_auth_register_password_error'));
В лексиконах добавляем запись office_auth_register_password_error = Вы не ввели пароль
Плохо будет когда обновление…
Специально на этот случай в Office предусмотрена возможность расширения классов:
1. Идем в директорию core/components/office/controllers/ и создаем там свой класс.
Например, customauth.class.php
2. Расширяем в нем стандартный класс авторизации
4. Вставляем в отмеченном месте из шага 2 данную функцию.
5. Заменяем желаемый участок кода
6. Идем в вызываемый чанк нужной формы Office и меняем там auth/formLogin на наш customauth/formLogin
Готово.
1. Идем в директорию core/components/office/controllers/ и создаем там свой класс.
Например, customauth.class.php
2. Расширяем в нем стандартный класс авторизации
<?php
if(!class_exists('officeAuthController')) {
require_once 'auth.class.php';
}
class officeCustomAuthController extends officeAuthController {
//здесь будут расширяемые функции
}
return 'officeCustomAuthController';
3. Идем в core/components/office/controllers/auth.class.php и ищем в нем дефолтную функцию, которую хотим модифицировать. В вашем случае это formLogin. Копируем её.4. Вставляем в отмеченном месте из шага 2 данную функцию.
5. Заменяем желаемый участок кода
6. Идем в вызываемый чанк нужной формы Office и меняем там auth/formLogin на наш customauth/formLogin
Готово.
эх, пробегала у меня мысль, что наверно можно расширить класс и заменить функцию, но видать лень одалела искать что-то)))
Спасибо Максим большое! Все получилось!
Спасибо Максим большое! Все получилось!
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.