Hi everyone
I just thought I'd try and get a discussion going regarding 'user registration/creating a new account' and what people think the best methods/best practices are for this?
The discussion springs from my own current requirements and a general confusion in terms of the best way to go. Standard D7 user registration vs Profile2 vs Any other known system of combination?
I'm creating a market research based site and have 2 distinct user types, these being (1) Research Respondent and (2) Commercial Client. Each distinct user type will essentially have a very different registration processes as described below:
(1) Research Respondent will be asked on creating a new account (in addition to the standard username/password etc) three key questions - to keep the registration short - their 'gender', 'location' and 'age'. Once the account is created I then need to collate information in respect of 5 key categories with each category having a variety of questions (via various field inputs). The categories will be (1) My Personal Profile (such as Age, Location, Gender (as in signup), marital status, number of children, etc). (2) My Work Profile (income, job, etc), (3) My Utilities & Services (telecoms, gas, electric providers etc), (4) My Interests (Hobbies etc), and (5) My Other (any other information we should ask of them).
(2) Commercial Clients will be asked a much smaller amount of information including Name of Company, Contact Name, Tel Contact, Email, Etc.
The questions remains what would be the best method to go about something like this. I've currently dived straight into using Profile2 and although I cannot be sure at this time I have a feeling it will not do what I want it to do (I'm already pulling my hair out getting views to interrogate the profile2 data). The main requirement for me is to be able to drill down into user information and extrapolate in views (including the possibility of integrating my Lime Survey system via http://drupal.org/project/limesurvey_sync - BUT THIS IS ANOTHER STORY).
The questions that I have at the moment include:
-
Is Profile2 required or can I collect user information via some other method in D7 (specifically that the user would have their own menu with links to the various separate information request/data capture pages such as (1) My Personal Profile (2) My Work Profile (income, job, etc), 3) My Utilities & Services (telecoms, gas, electric providers etc), (4) My Interests (Hobbies etc), and (5) My Other (any other information we should ask of them).
-
Considering I'm using Bartik theme if I want to collect data via fields is there a way to do this where it looks like a normal page held within the main page section as opposed to the popup overlay system I usually see when I use 'Add new content' (I just think this would be better for the users)?
-
Is there a way to have two separate user registration pages other than using Profile2 i.e. one for (1) Research Respondents and another for (2) Commercial Clients?
-
What really is the difference between Entities and Nodes in terms of Profile2 using entities and D7 registration using Nodes?
Glad to hear your thoughts :-)
Stephen
Comments
No need to choose. Use both.
I'm just dealing with a similar situation. The solution I've come up with is to put fields that are common to both users types on the User entity (first/last name, etc). These fields can be added to the user registration form on a field-by-field basis.
Then use profile2 to do two things: 1) separate fields by user type, and 2) further separate fields within one user type (eg, personal, work, etc).
The profile2 module allows you to assign profile2 entities by role, so you could have one for commercial clients and several for research respondents. There's a setting for separate tabs on the user profile for each profile type.
AFAIK, 2 things that don't exist yet are 1) the ability to add profile2-entity fields to the reg form on a field-by-field basis (it's all or nothing), and 2) the ability to setup separate user registration pages by role. But I bet someone's working on that and is close.
Your question about Overlay is independent of all this, btw. Just turn off the Overlay module to not use it at all, or see your theme's settings to disable overlay being used for node edit (I think, I can never find that when I need it).
Lastly, not sure I understand your last question. Profile2 and core D7 Users are both entities (but not nodes). Nodes are also entities.
Lookup the eRecruiter distribution....
In this distrbution, they have used the modules PROFILE2 and PROFILE PAGES. In profile pages one can create diffeent fields for collecting diff data from different user types registering on the website ontheir own.
The profile2 module will separate the ACCOUNT pages from the PROFILE page of every user.
You may also consider using the module PROFILE REGISTRATION PATH to have a separate registration paths during the registration process.
I have not tried pulling out the collected PROFILE data in to tje views yet. So i do not know that part.
Hope this helps.
thanks guys
Thanks guys.
I've actually now managed to pull all of the field data into views from my separate Profile2 types.
I had to select a User View and then create a 'relationship' with Profile which then made all the fields available to me.