As a user I would like to be able to choose my membership level on initial signup
- When I click "Join" from the homepage or visit /join, I'm give the option to choose the free or premium plan
- If I choose the free plan I'm taken through the normal signup process
- If I choose the premium plan, I'm taken through the normal signup process but at the end I share my credit card information and select either a monthly or annual billing plan and I am signed up as a premium user when signup is complete.
- Users can pay yearly and get a 10% discount or they can be billed monthly
- Billing automatically recurs either monthly or annually depending on the payment option they choose
- We send out a billing reminder 1 week before a recurring billing occurs
- Signup includes a list of features that each membership level affords the user
As a user I would like to upgrade my account to a premium, or paid, membership
- There's a page that allows me to change my membership level (this could be at /membership)
- If I am already a premium member then this page gives me the option to downgrade my membership (make sure to add an "Are you sure?" popup to this and let them know that they are still eligible for the premium membership for XXXXXX more days)
- If I am basic member this page gives me the option to upgrade to a premium membership and it takes me through the payment processing forms where I share my payment info and select a monthly or annual billing plan.
As a user I would always like the ability to upgrade or downgrade my membership level by visiting my settings page
- There's an option to change their membership level on their settings page
- Their current membership level is displayed on their settings page
Because I pay for an upgraded membership I would like additional benefits not available to the basic members
- premium members can sign up for all events for free
As a site admin or partner page admin I would like to be able to create a new event
- there's an event/new page with a form for uploading event info. This form includes photo, title, date, description, address line 1, address line 2, city, state, zip code, cost, and event leader
- Note that event materials will be handled by uploading knowledge and then tagging it to the event title, so that is not a concern on this story
As a user I'd like to find out event info for each event on an event#show page
- There's an event photo, date, city, title and description in the left-hand column
- There's a button to register now, info about the facilitator, the full date, full address, and cost in the right hand column
- There's an ical "add to calendar" button in the right hand column
- There's a google map embed that gets created based on the full address
- There's an attendee list that gets populated by people that have registered. It shows their profile photo, name, title and company. We should only show people that have a profile photo present on the events#show page. There should also be a link to view all attendees that takes you to the full list of the event attendees for this event
- Note that event materials will be handled by uploading knowledge and then tagging it to the event title, so that is not a concern on this story. They will show up in the left hand column once that is built out
- see the event_detail_layout wireframe
As a user I would like to be able to browse events at /events.
- On the main column there's a list of recommended events (for now this can be a random list of upcoming events, eventually AXR will recommend these)
- Each event in the recommended event page displays the date of the event, the title of the event, the city and state where the event is occurring, and a truncated piece of the event description. There's also a "register now" that takes you directly to the event signup form. The title, date, and city are all linked to the event#show page.
- There's an upcoming events list in the right hand column. These should display the date and title and link to the event#show page
- There's a list of events the user has attended in the right hand column. These should display the date and title and link to the event#show page. If a user has not attended any events nothing should appear here, not even the title "Events You've Attended"
- There's a list of past events in the right hand column. These should display the date and title and link to the event#show page
As a user I'd like to be able to sign up for an event when I click the register now button
- There's a register now button on the event#show page and on the recommended events on events#index
- When you click the register now button and you are a premium member it automatically signs you up for the event and redirects you back to the events#show page where the "register now" button has been replaced with a "You're Attending" message, there's a flash that says "Thanks for signing up for this event", and you've been added to the list of event attendees.
- When you click the register now button and you are not a premium member it takes you to a one time $30 event payment form and asks for your credit card information. Credit card information should be pre-populated with the credit card information we have on file in your settings section if they have already shared that information with us. If this is their first time entering credit card information, then their should be an option to save this information for future use. There should also be an option to change credit card information if they don't want to use what is pre-populated. Once this user submits payment then they are redirected back to the event#show page and see the same messages there as the premium member would
- Note that all demographic information required to sign up for an event should be mandatory on signup for the site. This will simplify things considerably
- see the events_index_layout wireframe
As a user I'd like to be able to share knowledge posts
- Users can visit knowledge/new and select the type of post they want to create (text, link, video, audio, or file)
As a user I would like to be able to post knowledge as a text post
- Users can add new knowledge at something like knowledge/new/text
- Users can add a title
- Users are given a text field with the same WYSIWYG editor as used on the blog
- Users can add photos to the text post
- There's a button to save the post and there's a button to cancel the post
- Users can edit posts they created
- Users can tag post to an event, question, group, or partner that already exists on the site
- Users can tag posts however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
- see this text-post example screenshot - https://skitch.com/leemcalilly/frre9/
As a user I would like to be able to post knowledge as a link
- Users can add new knowledge at something like knowledge/new/link
- Users can add a title
- Users can add the url via the url field
- We either strip or add the http:// part of the url so that users don't have to think about this
- Users are given a text field for an optional description with the same WYSIWYG editor as used on the blog (adding photos here is not necessary but is ok if we are just going to reuse the tinymce code throughout the site)
- There's a button to save the post and there's a button to cancel the post
- Users can edit posts they created
- Users can tag post to an event, question, group, or partner that already exists on the site
- Users can tag posts however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
- see this link-post example screenshot - https://skitch.com/leemcalilly/frrej/add-link-example
As a user I would like to be able to post knowledge as video
- Users can add new knowledge at something like knowledge/new/video
- Users can add a title
- Users can either input a vimeo or youtube url for automatic embedding, or they can opt to drop an embed code into a field
- Users are given a text field for an optional description with the same WYSIWYG editor as used on the blog (adding photos here is not necessary but is ok if we are just going to reuse the tinymce code throughout the site)
- There's a button to save the post and there's a button to cancel the post
- Users can edit posts they created
- Users can tag post to an event, question, group, or partner that already exists on the site
- Users can tag posts however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
- see this video-post example screenshot - https://skitch.com/leemcalilly/frrmt/video-post
As a user I would like to be able to post knowledge as audio
- Users can add new knowledge at something like knowledge/new/audio
- Users can add a title
- Users can add an audio by sharing a url from SoundCloud.com or a direct link from an mp3 file, or they can upload an mp3 file
- Users are given a text field for an optional description with the same WYSIWYG editor as used on the blog (adding photos here is not necessary but is ok if we are just going to reuse the tinymce code throughout the site)
- We use a simple audio player for displaying audio on the front-end, something like what you see here http://5by5.tv/talkshow/46/audio_popup
- There's a button to save the post and there's a button to cancel the post
- Users can edit posts they created
- Users can tag post to an event, question, group, or partner that already exists on the site
- Users can tag posts however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
- see this audio-post example screenshot - https://skitch.com/leemcalilly/frrpu/audio-post
As a user I would like to be able to post knowledge as a file. The use case for this is sharing something like a pdf or powerpoint file. We don't need to worry about file types. It's up to the user to handle this.
- Users can add new knowledge at something like knowledge/new/file
- Users can add a title
- Users can upload a file using a simple file upload form
- Users see the current file name next to the form if they decide to edit the post and replace it with a new file (sort of how profile photos show you your current thumbnail)
- Original filenames remain in tact on download
- Users are given a text field for an optional description with the same WYSIWYG editor as used on the blog (adding photos here is not necessary but is ok if we are just going to reuse the tinymce code throughout the site)
- There's a button to save the post and there's a button to cancel the post
- Users can edit posts they created
- Users can tag post to an event, question, group, or partner that already exists on the site
- Users can tag posts however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
As a user I'd like to view all of the available knowledge posts
- Users can visit /knowledge and view previews of knowledge posts
- In the lefthand column there's a list of recommended knowledge (we can fake it for now). These have a title that links to the individual post and an icon that switches based on the type of content (link, video, etc.)
- In the righthand column there's a similar list for recent knowledge (most recent posts) and most popular (based on page views)
As a user I would like to be able to view knowledge posts that have been created.
- Each type of post will display with a slightly different style
As a user I'd like to be able to ask questions that other members can answer
- Users can visit questions/new and create a new question
- There's a question field (sort of like a title field)
- There's a field for additional detail
- There's a button to save the question and there's a button to cancel the question
- Users can edit questions they created
- Users can tag questions to an event, question, group, or partner that already exists on the site
- Users can tag questions however they see fit with jquery tokeninput. Jquery token input suggests tags based on previous tags that user has created
As a user I'd like to view all of the available questions
- Users can visit /questions and view previews of questions
- In the lefthand column there's a list of recommended questions (we can fake it for now by randomizing this). These have the main question (title) that links to the individual question page. The person who asked the question has a profile pic, name, title, and company. Below this the top 3 answers are displayed. Below this are buttons to view the question page or answer the question
- In the righthand column there's a similar list for popular questions (based on page views) and recent questions (based on created_at). These only need to show the questions (title) and link away to individual question page
As a user I would like to be able to view questions that have been created.
- Individual Question and answers show on this page
- User profile photos, name, title and company appear beside the person's question and the answers
As a user I would like to promote or demote answers that I think are good or bad. This works just like on stack overflow. For now there's no need for the concept of a checkmark for "accepted" answers though.
- Users can vote an answer up or down (up is +1, down is -1 points) on the individual question page
- Current point totals are displayed next to each answer
- Answers are displayed based on point total and then based on most recently updated_at when answers have the same point totals
Users have their own homepage with content and an activity feed when logged in and visiting /
- On the main lefthand column there's a section called "Community Activity" This is an activity feed that displays recent activity that people they follow. These should display the user's profile photo, A title that links to the individual item, a description or basic info, and the relevant action to take (e.g. add an answer to a question or register for an event). These change based on the type of content the person is interacting with. This should also be supplemented by AXR and will be totally driven by AXR for the time being. For now we can display some random activity but give preference to activity by users that the person follows.
- On the righthand column there's space for recommended events at the top. This displays the event name (hyperlinked) and the date and location
- On the righthand column below recommended events there's a space for recommended connections. This should display 4 people. It can be random at first but will eventually be AXR recommended. It should display the profile photo, username, title, and company.
- On the righthand side below connections it should display recommended knowledge with the title linking to the post and an icon based on the type of knowledge.
- Below Recommended knowledge there should be recommended questions on the right hand side. These can be just the question hyperlinked away. This will be AXR eventually but can be random for now.
- Wireframe - https://skitch.com/leemcalilly/frrap/home-layout
- Note that this wireframe has the correct placement of the alert box
Went ahead and moved all of this into Pivotal tracker so we can start making any comments there