Creating profiles in advance

alt=
DannyA
@dannya
10 years ago
584 posts
I have a strange request. And i'm looking for possible solutions.

I need to create a profile in advance for a user who is not in the system.
If a user is not found, another user can invite someone to join. However when they do that, i want to create a profile for them because i need a placeholder for a specific record.

How can i create a profile for a user based on an email address, while still allowing them to sign up and select their own user name?
updated by @dannya: 09/05/14 08:50:31AM
michael
@michael
10 years ago
7,717 posts
You can create a new profile from the ACP:

"Create a New Profile"
yoursite.com/profile/create


You can create a new user & a profile for that user from:

"Create a User Account"
yoursite.com/user/create

There is no way for a new user to signup to an existing account though. You would need to do something custom.
alt=
DannyA
@dannya
10 years ago
584 posts
I'm trying to do something custom. But I'm looking for ideas on the best way
alt=
DannyA
@dannya
10 years ago
584 posts
Had an idea, but don't know if it would work.

1. User enters the email address of person they want to invite.
2. Profile is created using random username (or perhaps the first part of the email address, before the @).
3. User goes to signup page and creates account using their email
4. presented Form to update their information including profile id.

In other words, is there a way to automatically link a new account to an existing profile?

Would that work?
updated by @dannya: 08/04/14 12:00:42PM
SteveX
SteveX
@ultrajam
10 years ago
2,584 posts
My first thought is that if you have created the "temporary" profile, you might be better off directing the user to a different signup form specifically made to "claim" that temporary profile.

I'm assuming that the profile is listed to users on your system, ie not invisible until claimed.

If you don't need the profile to be listed, you could just create it when the invite is made and send the verification email and password to the email address. It will become active when the new user first logs in.


--
¯\_(ツ)_/¯ Education, learning resources, TEL, AR/VR/MR, CC licensed content, panoramas, interactive narrative, sectional modules (like jrDocs), lunch at Uni of Bristol. Get in touch if you share my current interests or can suggest better :)
alt=
DannyA
@dannya
10 years ago
584 posts
I think you're on the right track. The profile would definately be invisible (until the user decides to make it public)
I also like the idea of the custom signup page. There are 2 open questions then in this scenario

1. how to you know to "claim" a specific profile. I.e. how do you know that profile x should be linked to email x?

2. after the person creates account, how do you make them update the profile name. Is it possible to make it look like it doesn't exist? My concern is that they don't update the name thay you created automatically. So if someone's email is wanker1234@gmail.com, and i autocreate a profile called wanker1234, we want to make sure they update it.
SteveX
SteveX
@ultrajam
10 years ago
2,584 posts
First thing, this would almost certainly be another standalone module (xtClaimableProfile), not a signup page template.

Not well thought out:

1. The profile was created with that email address, so search for that email address field in the db, when you get a match, that's the profile being claimed. I guess there will be a lot more to do if the email address already belongs to a user on the system (so its another profile for them to claim/decline). Store the email as a profile field and check for that? Or link the unclaimed profile to the user with that email address and leave it unactivated until they claim it - I bet that is going to get complicated very quickly.

2. You will have sent a verification code to the email address (a custom verification code, probably not jsut the signup one) , they click on the link in the email and the profile is activated. You can check in a signup listener for a profile marked as "temporary", and show that user a form which they need to fill out before they can access their profile.

But I would have thought you'd already know the artist name - you will have the name of the artist (I'm thinking the creator of an unlicensed track in a mix), some track and publisher data, and then maybe their email address. Regardless, you could make a Profile Name field a required field on your "claim profile"/"activate existing profile" form - then they can't claim the profile without specifying the profile name.
If you are just activating the profile (from the link in the email), you could check if it's the first login (not sure if that can be checked for , but you could create a custom field in the signup activation listener) and then show the required profile name field in the login form only if it is the first login.


--
¯\_(ツ)_/¯ Education, learning resources, TEL, AR/VR/MR, CC licensed content, panoramas, interactive narrative, sectional modules (like jrDocs), lunch at Uni of Bristol. Get in touch if you share my current interests or can suggest better :)

updated by @ultrajam: 08/05/14 01:28:21PM
alt=
DannyA
@dannya
10 years ago
584 posts
Thanks steve. Good ideas there.

Have to think some more on the profile name. I think the profile name is not really authoritative. It is very possible that the user has multiple profiles, goes by different names, or has multiple accounts.

Jamroom already has the ability to have multiple profiles linked to the same email. It seems your solution #2 would be more apt. So it seems what we would do is
1. send an invitation on behalf of a known email address. I would think that someone adding the track would have to a least know their collaborator's email. If not, they need to get that.
2. The invitee gets and email with their "claim account" link.
3. When they click the link, they update their password, update username, username, and agree to terms.
4. Account is linked to profile. confirmation is sent. User can continue to fill in/ complete their profile.

Tags