User can sign up for the site
- There is a /signup page
- Sign up occurs in 2 steps so that the forms seem less daunting
- Fields on step 1 of signup
- Name (required)
- Email (required)
- Password (required)
- Acceptance of terms and conditions (required)
- form submit button says "Join"
- Fields on step 2 of signup
- Job Title (required / free form with auto suggestions)
- Company (required / free form with auto suggestions)
- Management Responsibilities (required / free form with auto suggestions / allows for comma separated list)
- Interests and Experience (required / free form with auto suggestions / allows for comma separated list)
- form submit button says "Complete Sign Up"
- Signup uses javascript live validations built into the old app
- Once you've signed up you're taken to your profile page and you see a flash message that says "Welcome, Lee, please fill out the rest of your profile so that you can better connect with the community."
- wireframes: sign_up_step_1, sign_up_step_2, 992px_layout, account_links_detail
- There are going to be 3 types of users, Basic, Premium, and Admin, but anyone can sign up for the site. When they join, they are a basic member. Admin's get assigned in the console for now and Premium membership status is triggered by payment.
- Instead of disappearing when you load a new page flash messages disappear with a soft fade after 10 seconds or so
- The background doesn't have to actually be yellow; we'll style that according to the design
As a user I would like to be able to login and out of the site
- There's a /login page with a field for email / password and a login button
- On login, the "remember me", is automatic. It doesn't present remembering the user as an option, it just remembers you automatically.
- Once you're logged in you are redirected to the home page
- If a user is logged in they see a "sign out" link that allows them to logout of the site
- Login uses javascript live validations built into the old app
- wireframes: login, account_links_detail
As a user I would like to be able to have the site send me a password reset email in case I forget my password
- On /login, there's a link that says "Forgot Your Password?"
- The forgot your password link takes you to a /reset-password page that allows you to request an email to have your password resent.
- Password resent email gets mailed and the reset process allows you to change your password
- wireframes: login
As a user I would like to be able to update my basic account information on a settings page
- There's a /settings page
- There are options to email address and change your password
- Fields should be pre-populated with the user's current data
- Password field should have "hidden password" stars (************) until you add your cursor to the field, then they should go away
- The submit button should say "save changes"
- There's a "Settings" link to this page that's always in the sidebar
- Wireframes: account_links_detail, account_settings_detail
Users can navigate to an edit profile page where they see options to update their profile information
As a user I would like to be able to add to and edit the information that appears on my profile.
- There's a link to edit profile that's always in the sidebar
- When you click the link to edit your profile you are shown a page with options to change and add to your profile information
- Wireframes: account_links_detail, user_profile_detail, user_profile_edit
#Users can navigate to an profile show page where they and other users can view their profile.
- Their username appears next to the edit profile link in the sidebar and thens sends them to their profile show page
- Users should be able to view each others' profile show pages
- Wireframes: account_links_detail, user_profile_detail
- The current profile pic appears as a thumbnail on the profile edit page so they can see what their current photo is
- There's a option to choose file and select a new photo
- Profile photos get autocropped to a consistent square size. The size is TBD until we create the new profile page design, but let's do 300px by 300px for now.
- If a user does not have a profile photo we display a standard "missing a profile pic" image instead
- The new photo gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- Wireframes: user_profile_edit
- There's a field for "Name" on the edit profile page
- The field is pre-populated with their current name
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- This is initially created during the signup process
- Wireframes: user_profile_edit
- There's a field for "Company" on the edit profile page
- The field is pre-populated with their current company name
- This has auto suggestion and ties into the "list of professionals" on the partners pages
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- This is initially created during the signup process
- Wireframes: user_profile_edit
- There's a field for "Title" on the edit profile page
- The field is pre-populated with their current title
- This has auto suggestion and pulls from other titles that people have used
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- This is initially created during the signup process
- Wireframes: user_profile_edit
- There's a text box for "Professional Summary" on the edit profile page
- Users can add and edit text in this box
- I don't see a need for any length validations on this page
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- Wireframes: user_profile_edit
- There's a fieldset for "Experience" on the edit profile page. The fieldset contains fields for company, position, and dates
- We don't show the blank fieldset until they click a link to "+ Add another position"
- Ideally the add another position link would work without having to leave the page via ajax
- For each fieldset that they've added we show the fieldset with the contents so that they can edit the text if needed
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- Wireframes: user_profile_edit
- There's a fieldset for "Education" on the edit profile page. The fieldset contains fields for School, Degree, and dates
- We don't show the blank fieldset until they click a link to "+ Add another school"
- Ideally the add another school link would work without having to leave the page via ajax
- For each fieldset that they've added we show the fieldset with the contents so that they can edit the text if needed
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- Wireframes: user_profile_edit
- There's a field for "Interests" on the edit profile page
- The field is pre-populated with their current list of interests
- They can list multiple entries in a comma separated list
- This has auto suggestion and pulls from other interests that people have used
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- This is initially created during the signup process
- Wireframes: user_profile_edit
- There's a field for "Current Management Responsibilities" on the edit profile page
- The field is pre-populated with their current list of management responsibilities
- They can list multiple entries in a comma separated list
- This has auto suggestion and pulls from other responsibilities that people have used
- The change gets submitted when they hit the "Save Changes" button at the bottom of the profile edit form
- This is initially created during the signup process
- Wireframes: user_profile_edit
- Each time a user logs in without a profile photo uploaded they should see a flash message that says "Lee, you don't have a profile photo yet. Upload one to better connect with the community". This should link to the user profile edit page.
- As a user I would like to be able to sign up and login to the site with my facebook or linked in accounts.
- If a user signs up using one of these services we still need to save all of the normal required sign up fields in the database so we still need to prompt them to create these fields (except password).
- We auto-populate any signup fields and profile fields with information from the third party whenever possible. This could work on Name, email address, and profile picture.
- railscasts has some good reference material. it seems to be straightforward to do this with devise and Janrain Engage http://railscasts.com/episodes/233-engage-with-devise
step 2 on the sign up process:
-It would be nice to get industry (drop down list SIC code)
At complete sign up: It would be nice to let them choose where they want to go next. This could be used with those that come to the site via a link (invite/knowledge). What would you like to do next?.... (first suggestion would be based on link that it comes from (i.e view knowledge/ register for event/ complete profile), we would then list a couple other features in the site (i.e. Ask the community a question, search for information on a topic (search box right here), etc.), account settings with "membership level")
request a password reset: can we have a resend if link not used in a certian amount of time?
User profile: