[ Решено ] Для 6 разные формы регистрации для разных ролей

Аватар пользователя bolatzh bolatzh 1 марта 2009 в 15:14

Доброго времени суток!
Старый вопрос, только вот не нашел ответа на него
"как сделать разные формы регистрации для разных ролей"
как
тут и
типа такого.
для Drupal 6.
Модули с которыми боролся
content_profile
profile_role
autoassignrole
и CCK.
Ничего путного не вышло.
Сделал, что пользователь при регистрации из выпадающего списка
выбирает роль, регистрируется, потом получает свой профайл в зависимости от роли, который когда захочет, тогда и заполнит.

Хотелось бы, чтобы пользователь эту форму заполнял при регистрации, когда пройдет
по выбранному линку (Роль1, либо Роль2), но не выходит.

Комментарии

Аватар пользователя Vladimir_VVV Vladimir_VVV 1 марта 2009 в 16:26

Тоже интересно.
Особой необходимости пока не было, но хочется знать как это делать быстро и просто.

Аватар пользователя Dan Dan 1 марта 2009 в 17:31

Помниться я делал такое на 5 друпале.
Юзал RoleSignUp (сейчас устарел, юзать надо AutoAssignRole. Этот модуль позволит юзерам выбрать нужную роль. Потом надо обеспечить различный набор полей профиля, которые необходимо заполнить при регистрации. Для этого, вроде использовал Nodeprofile. Сейчас уже точно не помню что конкретно было использовано, но рецепт для 6-ки наверняка есть.

Аватар пользователя bolatzh bolatzh 1 марта 2009 в 18:19

"Dan" wrote:
рецепт для 6-ки наверняка есть.

Спасибо за поддержку.
Скорее всего плохо ищу...
Но больше склоняюсь сейчас к варианту:
сделать страницу с линками по ролям - типа такого
и написать модули с формами регистрации для каждой роли и зарегить пользователя, используя user_save().
Такого не делал, но пишут, что возможно.
Это выход из ситуации или есть варианты проще?

Аватар пользователя PetrChe PetrChe 1 марта 2009 в 19:27

Вот уже пару дней ищу похожее, но, к сожалению, для 6-й версии нормального выхода не нашел Sad Поэтому тоже понаблюдаю за темой

Аватар пользователя Stan.Ezersky Stan.Ezersky 1 марта 2009 в 20:10

content_profile
autoassignrole
решают поставленую задачу

Вопрос в том, как переопределить содержание страницы или направить регистрирующегося пользователя на страницу с выбором ролей (именно выбор по ссылкам), например, как на purevolume.com (signup).

Аватар пользователя PetrChe PetrChe 1 марта 2009 в 20:40

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

Аватар пользователя Stan.Ezersky Stan.Ezersky 1 марта 2009 в 21:30

"PetrChe" wrote:
чтобы поля видны были сразу при регистрации

Настройте правильно и поля будут.

У меня всё упирает в страницу с ссылками на регистрацию, остальное всё делается.

Аватар пользователя Vladimir_VVV Vladimir_VVV 1 марта 2009 в 23:17

можно самописным модулем перехватить страницу регистрации, а можно еще проще - вывести по адресу user/register views с нужным контентом вместо регистрации, только кеш не забудте обновить.

Аватар пользователя Stan.Ezersky Stan.Ezersky 2 марта 2009 в 2:33

Vladimir_VVV , спасибо за подсказку. Очевидное всегда на виду, просто мы его не замечаем-)

В заголовок (во Views) вставляем и оформляем наши ссылки из auto assign role

P.S. Советую к кастомной регистрации модуль content_taxonomy

Аватар пользователя iveril iveril 16 февраля 2012 в 16:28

Добрый день,

Вот уже долгое время бьюсь - пытаюсь сделать по вашему рецепту регистрацию для двух типов пользователей - застреваю в views. ничего не выходит, вы пишите- вставить в заголовок во views ссылки из autoassignrole, помогите пожалуйста, напишите подробно как вывести ссылки типа -регистрация 1,
-регистрация 2
заранее благодарна

Аватар пользователя ACD ACD 27 марта 2012 в 4:53

iveril wrote:
Добрый день,

Вот уже долгое время бьюсь - пытаюсь сделать по вашему рецепту регистрацию для двух типов пользователей - застреваю в views. ничего не выходит, вы пишите- вставить в заголовок во views ссылки из autoassignrole, помогите пожалуйста, напишите подробно как вывести ссылки типа -регистрация 1,
-регистрация 2
заранее благодарна

Посмотрите модуль profile2_regpath ( http://drupal.org/project/profile2_regpath ). Думаю при помощи его намного проще.
Также посмотрите - http://www.drupal.ru/node/73053

Аватар пользователя Stan.Ezersky Stan.Ezersky 2 марта 2009 в 2:35

"PetrChe" wrote:
Да, я тоже смотрел эти модули, что-то пробовал. Но хочется иметь ссылки для разных ролей и чтобы поля видны были сразу при регистрации.

Для auto assign role и content profile в Issues этих модулей лежат патчи (минимум по 4 на каждый). С ними всё работает (почти всё)

Аватар пользователя bolatzh bolatzh 2 марта 2009 в 5:22

Спасибо за подробное разъяснение,
буду пробовать делать своими руками вечером.
Вопрос, с помощью Views делаем страницу с линками,
а как быть с полями в регистрации, как их разграничить для разных
ролей. Ведь система еще не знает какая роль у пользователя, он еще
анонимный. Или я ошибаюсь?

Аватар пользователя Stan.Ezersky Stan.Ezersky 2 марта 2009 в 8:05

"bolatzh" wrote:
Ведь система еще не знает какая роль у пользователя, он еще
анонимный. Или я ошибаюсь?

Я не зря скрины приаттачил:
нажимаем регистрация, попадаем на страницу с views, где ссылки на регистрацию (register as Artist, register as Fan). Выбираем роль и нам показана наша форма под конкретную роль.

Чтобы её сделать, воспользуемся CCK, а то увидим форму по умолчанию. Потом настроим content types

В auto assign role выбираем Assign from Path (больше ничего не трогаем)

В первой роли:
Artist состояние - включено
как показывать(Display Method:) - страницы без навигации (Pages with no navigation)
путь - например artist
заголовок - Artist
Описание - artist' role

Во второй роли:
Fan состояние - включено
как показывать(Display Method:) - страницы без навигации (Pages with no navigation)
путь - например fan
заголовок - Fan
Описание - fan' role


Artist и Fan произвольные названия

Ссылки на регистрацию теперь доступны по путям:
site.dom/artist
site.dom/fan

можно изменить путь в Assign from Path

P.S. Я патчей поставил не менее 14 штук (для content profile и autoassignrole)...

P.P.S. Views работает, но после ссылок на регистрацию по ролям (страница user/register), я наблюдаю созданные профили. Загадочно, есть мысли? Спать не хочется, но за бодрствование более 36 часов мозг уже плохо соображает.

Аватар пользователя Stan.Ezersky Stan.Ezersky 10 ноября 2015 в 11:46

UPD:
Во Views добавить аргумент Global: Null -> Display empty text.

В empty text вставляем что-то типа

<ul>
<li>register as <a href="/artist">Artist</a></li>
<li>register as <a href="/fan">Fan</a></li>
</ul>

Всё!

Аватар пользователя Stan.Ezersky Stan.Ezersky 2 марта 2009 в 8:42

Единственное, чего я не добился, это, как собственно показывать ноду в регистрации? В данном случае можно просто заголовок.

Аватар пользователя PetrChe PetrChe 2 марта 2009 в 8:46

EzS, спасибо за развернутый ответ! Правда, смущает такое количество патчей и неспешность разработчиков модулей выпускать -dev релиз, включающий эти патчи Sad

Аватар пользователя Stan.Ezersky Stan.Ezersky 2 марта 2009 в 9:09

"PetrChe" wrote:
спасибо за развернутый ответ!

Не за что-) Сам сижу разбираюсь, почему бы не поделиться соображениями с практикой?

"PetrChe" wrote:
смущает такое количество патчей и неспешность разработчиков модулей выпускать -dev релиз

Так патчи для дев-версии-)

Аватар пользователя PetrChe PetrChe 2 марта 2009 в 10:53

Quote:
"PetrChe" wrote:
смущает такое количество патчей и неспешность разработчиков модулей выпускать -dev релиз

Так патчи для дев-версии-)

- так вот я и хочу дев-версии скачать, в которых будут эти 14 патчей Smile

Аватар пользователя bolatzh bolatzh 3 марта 2009 в 5:01

Views c линками сделал.
Но

"EzS" wrote:
В auto assign role выбираем Assign from Path (больше ничего не трогаем)

не могу найти где это настроить.
У меня стоит Auto Assign Role 6.x-1.0-beta3.
EzS , долго нужно работать напильником?

Аватар пользователя Stan.Ezersky Stan.Ezersky 10 ноября 2015 в 11:46

"bolatzh" wrote:
долго нужно работать напильником?

Я просидел в Issues от двух модулей два дня.

"bolatzh" wrote:
не могу найти где это настроить.

/admin/user/autoassignrole

Аватар пользователя iex iex 25 марта 2009 в 18:21

EzS wrote:
"bolatzh" wrote:
долго нужно работать напильником?

Я просидел в Issues от двух модулей два дня.

"bolatzh" wrote:
не могу найти где это настроить.

/admin/user/autoassignrole

Я по поводу Друпал 5. У вас на скриншоте есть опция assign from path - у менят акой нет, как её добавить? Никакого патча не нашол для этого Sad

Аватар пользователя bolatzh bolatzh 4 марта 2009 в 14:49

Сделал, :))), а теперь как это у меня получилось.
1. Скачиваем autoassignrole
здесь
2. Ставим еще одну заплатку на autoassignrole
http://drupal.org/node/321110
3. поставил еще одну заплатку на content-profile-registration
http://drupal.org/node/313341

4. Может кому-нить еще понадобиться вот это
http://drupal.org/node/337423 пост № 4 пост № 4
отсюда я взял только пока
ссылку http://drupal.org/node/321110

следуем указаниям EzS и все получится.

Спасибо большое EzS и Vladimir_VVV за помощь.

Аватар пользователя kissfm kissfm 10 марта 2009 в 17:27

Так получилось вывести CCK поля для заполнения пользователем сразу после перехода по ссылке нужной роли?
Туда, где Username и E-mail address

Аватар пользователя kissfm kissfm 13 марта 2009 в 16:33

Товарищи! У меня смешиваются поля с обоих ролей на странице регистраций каждой из них.
Неужто у всех прошло без этого?
Прошу помощи. Спасибо.

Аватар пользователя bolatzh bolatzh 19 марта 2009 в 18:19

Может поможет....
Если провалиться Содержание -> Типы материалов и нажать в колонке
Операции - "изменить"
В твоих созданных профилях есть настройка "Content Profile" в самом низу страницы.
Для
Use this content type as a content profile for users
там поставил галку
ниже радиобаттоны для Path:
У тебя наверное стоит All Registration forms
Я выбирал путь для конткретной роли, который указывал в Auto assign role
в разделе Assign from Path

Аватар пользователя kissfm kissfm 20 марта 2009 в 15:40

Стояло там все, как должно быть - для каждого типа материала - своя роль выбрана в Content Profile. Не знаю в чем дело. Наверное глючило. Я вернулся на предыдущий вариант регистрации.

Аватар пользователя Stan.Ezersky Stan.Ezersky 28 марта 2009 в 17:31

Блин, я фигею на загадки этой задачи. Решил заново поставить всё с нуля и понять в чём причина отсутствия тела ноды (CCK поля отображаются в форме регистрации). Отключил модули, снёс их из базы через кнопку "удалить". Скачал и поставил модули заново.

Залез в Issues в надежде новых решений, но не тут-то было. зато, я нашёл интересное предложение, про которое или все забыли, или же просто не обратили внимания. не цитата, но смысл таков:
"включить модуль только после полного патчинга и создания типов материалов профиль_01 и профиль_02". Не вопрос, всё снёс, поставил заново, пропатчил.
Перед этим я создал два типа профилей (про-01 и про-02).

Включил AAR и собственно увидел как и должно быть, т.е. отображаются не только ССК поля, но и тело ноды, правда видна кнопка "отделить анонс" и "предосмотр" и "сохранить". Юмор в общем-)

Аватар пользователя Stan.Ezersky Stan.Ezersky 29 марта 2009 в 0:56

"Олег Михайлович" wrote:
Всё это очень запутано и не работает! Кто нибудь отдельным (дополнительным) модулем сделать можит? Очень надо!!

Запутанно, но работает. Правда не как надо.

Я уже откровенно смеюсь сижу на эти баги в этих модулях-)))))

Аватар пользователя iex iex 14 апреля 2009 в 18:01

Знаете, я вот никак не могу добиться того что в модуле autoassign появилась опция from path, уже запарился. Пытаюсь пропатчить, так ругается на что-то, даже порой на то что файлов нету, например патч патчит файл autoassignrole-path.inc , ОТКУДА ОН ВЗЯЛСЯ?! ))

Может ктонибудь выложит модуль полностью пропатченный для Шестёры?

Аватар пользователя PetrChe PetrChe 22 апреля 2009 в 22:39

"kissfm" wrote:
Товарищи! У меня смешиваются поля с обоих ролей на странице регистраций каждой из них.

- у меня все тоже самое... как решается эта проблема?

Аватар пользователя rdk rdk 20 мая 2009 в 16:01

"iex" wrote:
Знаете, я вот никак не могу добиться того что в модуле autoassign появилась опция from path, уже запарился. Пытаюсь пропатчить, так ругается на что-то, даже порой на то что файлов нету, например патч патчит файл autoassignrole-path.inc , ОТКУДА ОН ВЗЯЛСЯ?! ))

У вас какая версия модуля стоит? Вероятно бета. Нужна дев.

Аватар пользователя rdk rdk 20 мая 2009 в 17:01

"kissfm" wrote:
Товарищи! У меня смешиваются поля с обоих ролей на странице регистраций каждой из них.
Неужто у всех прошло без этого?
Прошу помощи. Спасибо.

Если используете Fieldgroup CKK, попробуйте извлечь из него поля. Мне помогло. Поля, которые находятся за пределами сета, не отображаются там, где не нужно.

Аватар пользователя Денис Денис 8 июня 2009 в 4:14

не пойму как поставить патч. где добавить эти строки патча, после какой строки? не заменять же файл который весит 2-3 Кб файлом в 700 байт. я сейчас на том этапе когда при регистрации у меня появилось право выбрать под какими правами регистрироваться. Но анкета под роли не меняется. Подскажите как ставить патчи и что дальше делать?

Аватар пользователя kissfm kissfm 10 ноября 2015 в 11:46

Вот вам всем пропатченный content profile для 6.
Это архив, измените расширение zip на tar.gz

Аватар пользователя scandi scandi 22 июня 2009 в 22:41

"kissfm" wrote:
Вот вам всем пропатченный content profile для 6.
Это архив, измените расширение zip на tar.gz

Не советую. Лучше взять текущую версию в ней уже все пропатчено.

Аватар пользователя kissfm kissfm 1 июля 2009 в 12:59

Ну как хотите. Я пользовался тем, что было.
Значит текущая стандартная версия для 6 пропатчена, так?

Аватар пользователя ilfat ilfat 3 июля 2009 в 15:13

http://drupal.org/project/user_types подошло.
Создаешь user types, привязываешь к определенной роли.
При создании поля в профиле пользователей указываешь для какого user type предназначено оно.
Примерно так без темизации http://edumagazin.ru/register

Аватар пользователя Heaton Heaton 2 ноября 2009 в 14:44

К выше сказанному установил ССК, только не пойму как теперь редактировать страницы Роль_1 и Роль_2. Во время регистрации пользователя появляется кроме стандарных полей текстовое поле тайтл и еще одно поле Содержание. Далее в user/1 Мои учетные данные появилось Create your Роль_1. Create your Роль_2.Create your Роль_3.
Не пойму как редактировать =/ помогите

Аватар пользователя Dusk Dusk 27 февраля 2010 в 0:13

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

Аватар пользователя Antoniy Antoniy 30 апреля 2012 в 20:08

Только что сделал, как описано Stan.Ezersky все получилось, спасибо. Делайте в точности, как он написал в комментариях к этой теме + внимательность и все получится.

Сейчас модули Content Profile и Autoassignrole встали без всяких патчей и заработали как надо, последние на сей момент версии.

Аватар пользователя Dan Dan 1 мая 2012 в 11:21

Не надо делать, как Стэн - это старое решение. Сейчас всё делается проще.
К тому же не надо делать страницу ссылок через views - нужно просто создать страницу со ссылками на регистрацию ролей.

Аватар пользователя Antoniy Antoniy 1 мая 2012 в 11:27

Dan wrote:
Не надо делать, как Стэн - это старое решение. Сейчас всё делается проще.

Каким образом?

Аватар пользователя Dan Dan 1 мая 2012 в 18:51

Ставим модули (без патчей), настраиваем их. Создаём статичную страницу с адресом /user/register, на которой описываем типы регистрации и вставляем ссылки на регистрацию (типа /user/register/buyer, /user/register/simple, ...).
Всё.

Аватар пользователя Antoniy Antoniy 1 мая 2012 в 18:59

Спасибо! Модули те же самые? А чем views плох для этого? Создаем статичную страницу /user/register, такой адрес в системе уже есть, конфликта не будет?

Аватар пользователя Dan Dan 1 мая 2012 в 19:15

"Kremenetskiy" wrote:
Спасибо! Модули те же самые? А чем views плох для этого? Создаем статичную страницу /user/register, такой адрес в системе уже есть, конфликта не будет?

Модули не помню, вроде да.
Views хорош всем, но отрезать кусок спички циркулярной пилой не самое оптимальное решение.
Конфликта с путями не будет.