208 похожих чатов

Привет, друзья. Я тут накрутила всякого и немного запуталась. Направьте

меня на путь, если возможно: есть страница оформления заказа. нет регистрации на сайте. Но заказчик хочет авторегистрацию с отправкой пароля на телефон. Поэтому все, что ниже у меня в OnSaleOrderBeforeSaved.
Что у меня уже есть: в init.php - если заказ новый, и если пользователь авторизован - понятно. Если не авторизован, я проверяю существование логина через CUser::GetList и если пользователя нет, то создаю его. А вот если есть пользователь я что-то затупила. Именно с логикой процесса, не с кодом. Форма авторизации не предусмотрена. Только поле для ввода кода(пароля) с телефона. Хорошо, я скрою это поле скриптом и буду отображать если value поля телефон == логин из CUser::GetList а дальше? как мне его авторизовать-то? У меня же не форма регистрации? Тупым образом скрыть форму через скрипт и подставлять значения скриптом? Совсем какой-то ахтунг получается. Что-то я адски накрутила и не могу теперь размотать...

10 ответов

6 просмотров

sale.order.ajax самостоятельно регистрирует пользователя, если нет авторизации, если установлены соответствующие параметры компонента, чтобы разрешать оформление заказа без авторизации.

alex-uld Автор вопроса
Арсен
sale.order.ajax самостоятельно регистрирует пользо...

у меня кастомный компонент вот этот: https://verstaem.com/bitrix/opensource-order/ Верстка очень сложная, дефолтный не смогла натянуть

alex uld
у меня кастомный компонент вот этот: https://verst...

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

alex-uld Автор вопроса
Арсен
именно про этот компонент не скажу. не понимаю в...

а формы-то нет? куда вводить? как авторизовать? по условию, что в кастомное поле введен пароль? бред же?

"Поэтому все, что ниже у меня в OnSaleOrderBeforeSaved" - чой-та? нажал юзер "Оформить заказ" - вот в первую очередь все и проверяйте. "Если не авторизован, я проверяю существование логина через CUser::GetList и если пользователя нет, то создаю его. А вот если есть пользователь я что-то затупила. Именно с логикой процесса, не с кодом" я по вашему описанию вижу хорошую возможность подломать магазин или за ddos-ить (перебором номеров) вы не можете при таком ТЗ авторизовывать без кода подтверждения на телефон иначе я за Васю Петрова, номер которого знаю, столько заказов наделаю...

alex-uld Автор вопроса
Eugene Zhukov
"Поэтому все, что ниже у меня в OnSaleOrderBefore...

Таки да. Не могу. И я об этом же. То есть мало того, что я его должна авторизовать без перезагрузки страницы, плюс отправить код без перезагрузки, получитьего из поля без перезагрузки... Не. Не реально. Наверное надо так - после "оформить" как сказал voiciano отправлять на страницу с полем кода, а потом уже оформлять. Но все-равно придется переписать все.

alex uld
Таки да. Не могу. И я об этом же. То есть мало тог...

"То есть мало того, что я его должна авторизовать без перезагрузки страницы, плюс отправить код без перезагрузки, получитьего из поля без перезагрузки..." не вижу препятствий 1. ajax-запрос на сервак (авторизован или нет), на ответ вешается обработчик 2. в ответе либо "зарегали, вот данные", либо "код успешно подтвержден", либо "авторизуй" (при этом с сервака ушла смска клиенту), либо "не тот код подтверждения" - eсли зарегали или успешно подтвердили (на серваке он уже авторизовано должон быть)- ajax-запрос со следующим шагом либо вообще сабмит формы - если авторизуй - показываете всплываху "введи код подтверждения" и ждете - если "не тот код" - "чувак, что-то не то, давай через минуту-другую еще раз покажу кнопку Отправить код снова" 3. ввел код - ajax на сервак с кодом и идем на п.1 вот и все

alex-uld Автор вопроса
Eugene Zhukov
"То есть мало того, что я его должна авторизовать ...

ААААААА1 ajax! упс! Спасибо! я про него забыла напрочь)

alex uld
ААААААА1 ajax! упс! Спасибо! я про него забыла нап...

про check_bitrix_sessid и передачу токена не забудьте тогда уж

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта