новый формат поля для регистрации 2.X

создать дополнение, плагин или что-то такое

 
Посетитель
no avatar
Сообщений: 4
Понадобилось мне решить задачу, отобразить на форме регистрации не обязательные поля. Штатными средствами решить не смог, пришлось залезть в кишочки и все там сделать.
Вопрос вот какой, задачу я решил. Внёс правки, создал классы, переводы, логику. Всё это прям в движке, хотелось бы все это оформить в виде дополнения, чтобы при обновлениях версии не затиралось. Подскажите, возможно это или готовиться к регулярным обновлениям сделанных изменений.
С движком только знакомлюсь, по этому все внутренней кухни ещё не разобрал.
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2647
@Sin13:
Штатными средствами решить не смог
Попробуйте смочь. Это возможно 100%
Реклама
cms
Посетитель
no avatar
Сообщений: 4
Ris:

@Sin13:
Штатными средствами решить не смог
Попробуйте смочь. Это возможно 100%
Если "ткнёте пальцем" скажу спасибо. Поиск ничего не выдал. куча тем как в коде отобразить поле того же "телефона", которое не обязательное при регистрации. Задача стоит, пусть не заполняется, но должно присутствовать на форме регистрации. Искал долго, не нашел ни расширения чисто под эту фичу, ни решения как это штатно сделать, существующие типы крутил вертел по разному. Может до 2.11.0 это работало, как это сделать в этой версии из коробки я не нашел.
Редактировалось: 2 раз (Последний: 19 января 2019 в 23:32)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2647
@Sin13,
Спойлер
Посетитель
small user social cms
Медаль
Сообщений: 728
Насколько я смог понять, нужно чтобы поля были, когда непосредственно жмешь Регистрацию и попадаешь на эту страницу?
Но это не очень логично на самом деле. Не очень корректно.
Вы уж определитесь - ОБЯЗАТЕЛЬНОЕ ли поле, так ли оно важно для регистрации, смогут/захотят ли его заполнить ВСЕ пользователи?
И если да - то смело ставьте его в обязательные в настройках пользователей.
Если нет, то лучше перебрасывать пользователя после непосредственно регистрации на страницу настроек профиля. Т.е. имя он указал, почту и пароль тоже, а дальше пусть заполняет что хочет. За счет того, что автоматически перебрасывает на эту страницу, многие заполнят. Ну а если человек принципиально не хочет телефон светить - он его в любом случае не напишет.
Редактировалось: 1 раз (Последний: 20 января 2019 в 00:37)
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2647
alkokrolik:
Насколько я смог понять, нужно чтобы поля были, когда непосредственно жмешь Регистрацию и попадаешь на эту страницу?
Достаточно убрать галку "Показывать в профиле" с поля "Телефон".
Тогда оно будет доступно только при редактировании (если разрешить юзеру доступ для изменения).
Посетитель
no avatar
Сообщений: 4
alkokrolik:

Насколько я смог понять, нужно чтобы поля были, когда непосредственно жмешь Регистрацию и попадаешь на эту страницу?
Но это не очень логично на самом деле. Не очень корректно.
Вы уж определитесь - ОБЯЗАТЕЛЬНОЕ ли поле, так ли оно важно для регистрации, смогут/захотят ли его заполнить ВСЕ пользователи?
И если да - то смело ставьте его в обязательные в настройках пользователей.
Если нет, то лучше перебрасывать пользователя после непосредственно регистрации на страницу настроек профиля. Т.е. имя он указал, почту и пароль тоже, а дальше пусть заполняет что хочет. За счет того, что автоматически перебрасывает на эту страницу, многие заполнят. Ну а если человек принципиально не хочет телефон светить - он его в любом случае не напишет.
Да, надо именно на странице регистрации отобразить. Да, не совсем логично, такое требование заказчика. Карточка достаточно обширная при регистрации и много данных.
Вот как раз, потому что не все захотят не все смогут, часть полей идет на потом, если человек может, чтобы сразу все вбил. Тут думаю после первой волны регистраций будет понятно, все ли поля обязательные выживут.
По этому и хочу вынести этот функционал в модуль, это редкий кейс и мало кому нужна эта галочка отобразить поле. smile Просто получается повышение гибкости настроек отображения.
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2647
@Sin13,
Теперь понял. Нужно, чтобы поле было именно на первой странице регистрации? но не было обязательным?
Тогда достаточно дописать семь строк в файл \system\controllers\auth\forms\form_registration.php
Спойлер
И не нужно никаких
@Sin13:
правки, создал классы, переводы, логику.
Чтобы это было в виде дополнения достаточно его оформить в виде дополнения:
https://instantcms.ru/users/files/download7072.html
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3549
Ris:
Чтобы это было в виде дополнения достаточно его оформить в виде дополнения
Цель всё же немного иная, чем просто в виде дополнения, а именно
@Sin13:
чтобы при обновлениях версии не затиралось
Для этого надо использовать хуки. В двойке есть хуки которые позволяют получить и изменить содержимое всех форм движка.
Для формы регистрации этот хук будет называться form_auth_registration. Но для его объявления системе нужна запись в файле манифеста. Поэтому для этого нужен свой компонент, в котором будете вносить эти изменения. Только в этом случае ничего не слетит при обновлении.
Посетитель
small user social cms
Медаль
Сообщений: 728
@Sin13,
Я бы поговорил с заказчиком. Зависит конечно от проекта, но все же в любом случае много полей при регистрации - это плохо.
Какая-то часть может и передумать регистрироваться.
Я вот по себе знаю: заходишь на любой современный известный сайт - и там только несколько полей требуют, например, почта и пароль, телефон и пароль, иногда даже тупо один только телефон/почта/аккаунт в соцсетях. Просто и быстро. И есть некоторое удивление, когда попадаешь на какой-нибудь форум/сайт/магазин, где выкатывают целую портянку для заполнения. Даже если некоторые поля необязательны - все равно напрягает.
Вопрос - зачем вам телефон, отсюда и надо танцевать.
Посетитель
no avatar
Сообщений: 4
alkokrolik:

@Sin13,
Я бы поговорил с заказчиком. Зависит конечно от проекта, но все же в любом случае много полей при регистрации - это плохо.
Какая-то часть может и передумать регистрироваться.
Я вот по себе знаю: заходишь на любой современный известный сайт - и там только несколько полей требуют, например, почта и пароль, телефон и пароль, иногда даже тупо один только телефон/почта/аккаунт в соцсетях. Просто и быстро. И есть некоторое удивление, когда попадаешь на какой-нибудь форум/сайт/магазин, где выкатывают целую портянку для заполнения. Даже если некоторые поля необязательны - все равно напрягает.
Вопрос - зачем вам телефон, отсюда и надо танцевать.
На данный момент, проще оказалось впилить изменение, чем переубедить заказчика.
Телефон, как пример, поля не по умолчанию, которое есть из коробки :). Зачем мне описывать все поля свои. Про портянку согласен, но на данный момент на стадии регистрации надо предоставить возможность сообщить о себе информацию, по которой потом будут формироваться группы, назовем их "по интересам". Минимальная форма, даст мне головняк в виде большой серой массы, которую надо будет потом как-то на основе чего распределять, заставлять как-то заполнять профиль. Необязательные поля, как раз для того чтобы получить массив вариация, на данный момент неопределенных значений, потом их можно будет причесать и выдать уже списком. обязательных значений.

Loadырь:

Ris:
Чтобы это было в виде дополнения достаточно его оформить в виде дополнения
Цель всё же немного иная, чем просто в виде дополнения, а именно
@Sin13:
чтобы при обновлениях версии не затиралось
Для этого надо использовать хуки. В двойке есть хуки которые позволяют получить и изменить содержимое всех форм движка.
Для формы регистрации этот хук будет называться form_auth_registration. Но для его объявления системе нужна запись в файле манифеста. Поэтому для этого нужен свой компонент, в котором будете вносить эти изменения. Только в этом случае ничего не слетит при обновлении.

Спасибо, посмотрю в сторону хуки, кажется это единственный вариант для меня. Да и полей много разных и каждое руками вносить, это не наш метод. smile Будет эффект автобуса, зачем мне головняк этот. Пусть модераторы после сдачи имеют возможность управлять полями.

Ris:

@Sin13,
Теперь понял. Нужно, чтобы поле было именно на первой странице регистрации? но не было обязательным?
Тогда достаточно дописать семь строк в файл \system\controllers\auth\forms\form_registration.php

Спасибо, за файлик. попробую разобраться что к чему, хочется все же независимое решение сделать, кто знает как проект дальше будет жить. может и не нужен будет этот "хак".
Редактировалось: 2 раз (Последний: 21 января 2019 в 13:17)
Посетитель
small user social cms
Медаль
Сообщений: 728
@Sin13:
будут формироваться группы, назовем их "по интересам". Минимальная форма, даст мне головняк в виде большой серой массы, которую надо будет потом как-то на основе чего распределять, заставлять как-то заполнять профиль
Писали бы конкретнее smoke
У меня тоже есть что-то подобное, типа профессия, ну то есть получается что все пользователи как-то распределяются по группам. Я сделал обязательное поле, чтобы они сразу определялись. Но и дал возможность регистрироваться просто как "посетитель". Можно выбирать несколько профессий, можно потом изменять. Но поле обязательное, т.к. оно важно.
В начало страницы
Предыдущая темаСледующая тема Перейти на форум:
Быстрый ответ
Чтобы писать на форуме, зарегистрируйтесь или авторизуйтесь.