agile-alliance-brazil/submissions

View on GitHub
BACKLOG_HISTORY

Summary

Maintainability
Test Coverage
== Agile Brazil Submission System

KNOWN ISSUES AFTER UPGRADE:

 * Fix named_scope specs (problem with remarkable and rails3/arel, pending for now)

TODO:

--- 2011
 - Refactor email sending from controller into state transitions
 
 * Remove "email_sent" status fields and replace with Hoptoad notification
 
 * Refactor sorting behaviour

 * Show a better error message if a 'second' author tries to confirm/withdraw an already confirmed/withdrawn proposal (currently - not authorized)
 * Stop adding review if review count is more than 75% of limit/person
 -- lower priority
 * Reviewer add/remove role on update/destroy
 * Remove hard-coded dates on deadlines for each phase of the conference
 * Edit preferred language on user's profile

--- 2010
 --- Medium term
 * Organizers can create program
 * Sort by author, second_author and track on reviewer_reviews
 --- Lower priority
 * Allow reviewers to remove a session from the list of session they can review
 * Display personal review count on progress bar
 * Reviewer can edit a review
 * Search submissions
 * Add cucumber features to test end-to-end journeys
 * Manage Roles (admin only)
 - send emails on background job (delayed_job?)
 * Upload picture to profile
 * Forbid to add an organizer to a track in which he has submissions (main or second author)
 * Allow reviewers who removed a session from their list of session to re-add those sessions

IN PROGRESS:

 * [task] -- [person]
 
DONE:

 * Status page for group registration -- Danilo 
 * Group Confirmation -- Danilo
 * Change workflow to send e-mails after paid, and when confirmed -- Danilo
 * Automatically confirm attendees with valid paypal payments -- Danilo
 * Do not email payment information for attendees with free registration and no courses -- Hugo
 * Allow free registrations for speakers and sponsors -- Hugo
 * Add a summary table showing payment informations for all registered users -- Hugo
 * Status page for group registration -- Danilo 
 * Group Confirmation -- Danilo
 * Test scenarios for speaker registration within group -- Danilo
 * Registration for authors -- Hugo & Danilo
 * Registration for sponsors -- Hugo & Danilo
 * E-mail to current pending users to use the status page -- Danilo
 * Standardizing group name into company -- Danilo
 * Registration e-mails should link to status page -- Danilo
 * Improve text on status pages (pending/paid/confirmed) -- Danilo
 * Display Log of Payment Notifications on registered attendees (for registrar) -- Danilo
 * Integrating with PayPal for registration payment -- Danilo
 * Added Google config for tracking conversion -- Danilo
 * Visibility for author to know if he confirmed his presence or not (both authors) -- Danilo
 * Migrate email from smtp to amazon SES -- Danilo
 * Filter registered attendees by status -- Danilo
 * Search registered attendees by name -- Danilo
 * Admin page to confirm registrations -- Danilo
 * Notification of exceptions with Hoptoad -- Danilo
 * Registration as a group/company -- Danilo
 * Test cpf/state validation on attendee -- Danilo
 * Limit course attendance to 30 -- Danilo
 * Limit JS discount calculation to according registration period -- Hugo
 * Scope emails to ignore case when checking for pre-registration -- Hugo
 * Update prices on form upon email completion (if email is pre-registered) -- Hugo
 * Add link to registration page on actions -- Hugo
 * Display course price and information on the e-mail -- Hugo
 * Display total on form -- Hugo
 * Use FasterCSV instead of CSV -- Hugo
 * Check for pre-registered users on registration -- Hugo
 * Calculate totals -- Danilo/Hugo
 * Limit course choices based on duration (1 or 2 days) -- Danilo
 * Create Course model -- Hugo
 * Confirm organizer e-mail (Production) -- Hugo
 * Confirm bank details on e-mail -- Hugo
 * E-mail registration confirmation and payment instructions -- Hugo/Danilo
 * Confirm e-mail field (to avoid typo) -- Danilo
 * Uniqueness of CPF -- Danilo
 * Form to capture attendee registration as individual/student -- Danilo
 * Create Attendee model -- Hugo/Danilo
 * Remove access to adding review decision before end of review deadline -- Danilo
 * Deadline for adding reviews -- Danilo
 * Update deployment scripts (production) -- Danilo
 ** email settings (enable_starttls_auto: false) -- Danilo
 * Update e-mail texts to remove hard-coded conference name -- Danilo
 * Update static page text and home page text -- Danilo
 * Access last year's sessions -- Danilo
 * Lightning talk and experience report validation -- Danilo
 * Update durations (10, 50, 110) -- Danilo
 * Updated deadlines for 2011 conference -- Danilo
 * Create a Conference model and scope all data to it -- Danilo
 * Update images and text referencing "Agile Brazil 2010" -- Hugo
 * Add new SessionType for Lightning Talks (seed) -- Hugo
 * Update deployment scripts (staging) -- Danilo
 * Rails 3 Upgrade -- Danilo
--- 2010
 * Feedback for organizers to know if author agreed to give the rights to use his image -- Danilo
 * Fixing email templates and tests -- Hugo
 * Once author has confirmed or withdrawn session, track organizers should not be able to edit review decision -- Hugo
 * Update withdraw terms/text -- Mari and Hugo
 * Update accept/withdraw e-mail text and agreement acceptance text -- Mari and Hugo
 * Only first author can accept/withdraw -- Danilo
 * Deadline to confirm a proposal approval (and confirm that author will register) -- Danilo
 * Update agreement terms -- Danilo
 * Author can edit some fields of the proposal (title, summary, audience_limit) according to the feedback when confirming -- Danilo
 * Authorization for authors to be able to see their reviews once published by organizer -- Danilo
 * Add a boolean to capture that e-mail has been sent -- Danilo
 * Admin can send all acceptance/rejection e-mails at once -- Danilo
 * E-mail template for rejected sessions -- Danilo
 * Authors can view the review decision as well as the organizer note in the review page for their session -- Hugo
 * E-mail template for accepted sessions -- Danilo
 * Organizers can enter review decision on sessions -- Danilo
 * Authors can confirm/withdraw approval -- Danilo 
 * Organizers can edit proposals outcome and note -- Hugo
 * Author can only view reviews after deadline of 27/04/2010 -- Danilo
 * Organizers can choose approved/rejected proposals, adding note to author -- Danilo
 * Authors can view the reviews for their proposals (omitting reviewer name as well as recommendation and justification) -- Hugo
 * Add default language to each user (to allow email on the correct language) -- Danilo
 * Create time slots on agenda -- Danilo
 * Improve sorting by reviews count using SQL (currently Ruby done) -- Hugo
 * Listing of reviews of each proposal -- Hugo
 * Sorting proposals by recommendation and session id in the reviewer listing -- Hugo
 * Sorting proposals by any field in the organizer listing -- Hugo
 * Do not paginate reviewers on organizer's view -- Hugo
 * Adding reviewer review count to list of reviewers -- Hugo
 * Adding reviewer preference to list of reviewers -- Hugo
 * Display progress bar with total number of reviews -- Danilo
 * Reviewer can't choose preference on track(s) he/she is organizing -- Danilo
 * 'My reviews' listing for each reviewer -- Hugo
 * Improve new review form layout -- Hugo/Danilo
 * Session state machine -- Danilo
 * Organizers can view list of reviewers -- Danilo
 * Reviewer can view a list of sessions to review (missing limit by number of reviews) -- Danilo
 * Improve show review layout -- Hugo
 * Reviewer can add a review -- Hugo
 * Add link to create a review in the reviewer session listing -- Danilo
 * Change reviews to refer to a user instead of a reviewer -- Danilo
 * Include the user id while creating a new review (currently forbidding to save) -- Danilo
 * Add restriction access to review new and create -- Danilo
 * Reviewer can view a list of sessions to review -- Danilo
 * Organizers can view list of session on track -- Danilo
 * Organizer can cancel session on his/her track -- Danilo
 * Javascript enhancements on user invitation preferences page -- Danilo
 * Reviewer provides preferences when accepting invitation -- Danilo
 * Reviewer can accept/reject invitation -- Danilo
 * Organizers can remove reviewer -- Danilo
 * Organizers can invite reviewers (send e-mail) -- Danilo
 * Admin can manage organizers -- Danilo
 * Organizer role for a track -- Danilo
 * Changing color scheme and logo -- Danilo
 * Change vote -- Hugo
 * Voting deadline -- Danilo
 * Logo voting -- Danilo
 * Simplified registration for voters -- Danilo
 * Add comments -- Danilo
 - auto-select duration/session type if track is experience reports -- Danilo
 - Melhorias de usabilidade com javascript (por exemplo, desabilitando campos desnecessários ou escolhendo valores padrão quando não tem escolha) -- Danilo
 - allow resizing of long text fields -- Danilo
 - auto-focus on form field -- Danilo
 - Error page for 404/500 -- Danilo
 - Sending email as multipart (content-type) with html and plain txt version -- Danilo
 * E-mail when session is submitted -- Danilo
 * Password reset -- Danilo
 - Add error summary (or flash message) when validation fails (to avoid scrolling and missing error) -- Danilo
 - Translate homepage to english -- Danilo
 * Sending e-mail when user registers -- Danilo
 * Configure production environment (preciso da ajuda do Hugo pra configurar o Dreamhost e criar o BD) -- Hugo/Danilo
 - link keywords to search on submissions -- Danilo
 - Contact email address on footer -- Danilo
 - mini-help with wiki-syntax example -- Mari/Danilo
 - link on help text opens in a new window to avoid losing form data -- Danilo
 - link to rules page is broken (link to call for papers page?) -- Danilo
 - Guidelines static-page -- Mari/Danilo
 - O campo de mini-cv deveria ter um número mínimo de caracteres (quantos? e os outros campos longos?) -- Danilo
 - Improve Layout (CSS, I'm not an expert on design, but I think the markup is pretty decent) -- Mari/Hugo
 - Added next important deadline to layout -- Mari/Hugo
 - Improved text on home-page -- Mari/Hugo
 - Wiki-like syntax on long text fields -- Hugo
 * Add country to user (Brazil default) so state becomes optional if not brazil -- Danilo
 - Campo: limite de participantes (somente numérico? obrigatório pra qual tipo de sessão?) -- Danilo
 * Limit edit by deadlines -- Danilo
 * Edit session -- Danilo
 - Styling and i18n for pagination -- Danilo
 * Edit user profile -- Danilo
 * Authorization model (can-can gem) -- Danilo
 * Add role to user -- Danilo
 * My submissions -- Danilo
 - Improving URLs (permalink) -- Danilo
 * Keywords -- Danilo
 * Tagging -- Danilo
 - Spinner while autocomplete is loading -- Danilo
 * Second author -- Danilo
 * Reference data: SessionLevel (beginner, practitioner, experienced) -- Danilo
 * Reference data: SessionDuration (45 / 90 minutes) -- Danilo
 * Reference data: SessionType (tutorial, talk, workshop) -- Danilo
 * Reference data: Track (engineering, management, experience report, general interest) -- Frank/Danilo
 * Resource: Session -- Danilo
 * User profile page -- Danilo
 * Capistrano deploy recipes (staging) -- Danilo
 * Add attributes to user (mini-bio, etc...) -- Danilo
 * Create database (UTF-8 encoding) -- Danilo
 * Setup Rails project (gems/plugins) -- Danilo
 * Simple Authentication (create user/login/logout) -- Danilo
 * I18N support (available in :en and :pt, :pt default) -- Danilo
 * Homepage -- Danilo
 * Github project -- Frank

BUGS:

--- 2010
* After I have logged in, I then change my password, when I click on update, I am logged out....

* new_session_review(nil) works iff locale is not explicit
* Sorting by author, second author and track sort weirdly (using ids instead of names) on organizer_sessions
* Sorting by session sorts weirdly (using ids instead of names) on reviewer_reviews

* After I have logged in, I should not see "Register a new account" on the main text, How to submit a session to Agile Brazil 2010.  The registered user should not be asked to register again, in other words. [won't fix]
* Should not allow numerical characters in City field. [won't fix]
* Should not allow numerical characters in First name and Last name fields. [won't fix]
* Should not allow tags, for example, <h1>, to be inserted in any field. [won't fix]
* Should not allow !@£$%^&*() characters in First name and Last name fields [won't fix]
* Edit profile page: should not be able to insert <H1> / <H2> tags in Bio field. [won't fix]
* Should allow / not allow numbers and characters in target audience field? [won't fix]

--- 2011
* Given I entered an invalid username and blank password, and I click on log in and see the error message, When I click on "English", Then I should not see a Google Oops page.  Then I should see the English version of the Agile Brazil home page.

FIXED:
* User signs out after going to registration page (being logged in) -- Danilo (Rails JQuery adapter was not sending CSRF token on AJAX requests. Had to use jquery-rails gem and rails g jquery:install)
* Fix public profile page when user is not logged in -- Danilo
* Send registration e-mail on language based of chosen country -- Danilo
* Users non-authors were having troubles resetting password as reviewer -- Danilo
* When I have just submitted a session, the confirmation message "Sessão submetida com sucesso." should be in English -- Danilo
* When I am viewing my profile, "Session proposals" link needs to be rename to "My session proposals" -- Danilo
* (Cosmetic tweak) Propose a session page: the Copyleft text is too close to the edge of the page at the end.  All other pages have a gap under the copyleft statement -- Danilo
* When I click on Log in button with blank username and password fields, the "Você não passou detalhes para autenticação" message should be in English -- Danilo
* When I am viewing my profile, "Edit" link needs to be renamed to "Edit profile".  Currently the edit link is just after the session proposals link, which made it look like it's a link to edit the session proposal but it's actually a link to edit my profile page -- Danilo
* When I add an invalid username as my second author, error message "does not exist -- has incomplete author profile" needs to be changed to "does not exist" (because the non-existent user trumps whether it's an author or not, so there is no need to further specify that this is a light user profile, when user does not even exist in the system) -- Danilo
* Edit user profile: "De preferência um celular." should be in English -- Danilo
* "has incomplete author profile" changed to "user is currently not an author" -- Danilo
* When logging in with an invalid username and / or password in English, the error message should not be in Portuguese -- Danilo
* In comments field, I should not be able to put HTML tags, such as scripts tags, or <h1>H1 text</h1> -- Danilo
* After clicking on Forgotten Password and entered my email address, I should not get a Portuguese feedback message.  In my inbox, I should not see the email in Portuguese either. -- Danilo
* "My sessions" link disapeared after session submission deadline expired -- Hugo/Mari
* Session ID on the reviewer session listing is wrong [column removed] -- Hugo
* Login brings you to the review count js [fixed] -- Hugo/Danilo
* Link to "My reviews" is bugged when locale is set [fixed] -- Hugo
* If I try to log in using an invalid account, I get an error message "is not valid" - could that be aligned under the user name text field? [fixed]
* How to submit a session > "Create a user" link on the main page and "Register new
account" link on the left hand column.  They point to the same link but used different words.  Should we use the same words?  i.e. stick to one. [fixed]
* Register new account button does not go anywhere [fixed]
* When I press log in without entering any username or password, I get the error message "You did not provide any details for authentication".  I then click on register new account link (or create a user link), I go to a different page, but the error message is still there.  I should not see this error message. [fixed]
* Error message for Username
"should use only letters, numbers, spaces, and .-_@ please" needs to change to
"please use only letters, numbers, spaces and . - _ @" [fixed]
* Error message for password field
"doesn't match confirmation" change to
"passwords do not match" [fixed]
* When I update my profile, I see the message "User was successfully updated." this needs to say "Profile was successfully updated". [fixed]
* After I have logged in, "Propose a session" needs to be an active link, and not just plain text [fixed]
* Second author's username, description: "Please provide the second author's username on this field." change to "Please provide the second author's username in this field." [fixed]
* The log out link is not very visible, at the moment it is buried between the links on the left hand column. [fixed]
* Links on the left hand side: Should we rename "account profile" to profile?  My account profile and Edit my account profile sounds too long winded? My profile & Edit my profile seem shorter & neater? [fixed]
* After I have logged in, I then change my password, when I click on update, I am logged out.... But I should not see session proposals link on the page (because I would get this error message too "You must first log in or sign up before accessing this page.") [fixed]
* When I have logged in, I can click on the create a user link, but then I an error message "This page is only available when you're logged out.".  Perhaps I shouldn't even see this link in the first place? [fixed]
* Should we trim leading & trailing spaces in all text fields? For example:  "     Jenny     " is valid [fixed]
* Given I have created a user "user1", I should not be able to create another user "user1 " with a space behind it. (Usernames should not have a trailing space) [fixed]
* Also, remove the space before colon [fixed]
* State field should not be a mandatory field.  What if I am travelling from out of Brazil? [fixed]
* Should not allow <tags> to be entered / rendered on submit proposals form. [fixed]
* Should we allow links to be in the submit proposals form? That are not website forms?  I could link to google.com, for example. [fixed]
* Should max number of character for username be 100?  Is this feasible? [fixed]
* More spacing in Session Track, Session Types and Audience Levels pages?  It was slightly difficult to read the 4 bullet points when they are all squashed together [fixed]
? After I have edited my profile (changed password), when I click on Update profile, I should not be logged out.  But if I have only changed, say, Bio section and updated, it does not log me out. [fixed]
* There needs to be more white space before the Copyleft / footer statement.  Ideally the copyleft should always align at the bottom of the page, and not at the end of the text. [fixed]
* Need more spacing on the "How to submit a session to Agile Brazil 2010" page between paragraphs [fixed]
* The date formats expressed on the site do not follow the same rule.  At the top-left corner, it is YYYY-MM-DD, but in body text, it is DD/MM/YYYY. [fixed]
* Create a session proposal: When I click on the link under the second author's field, http://agilebrazil2010.dtsato.com/users/new?locale=en, I get an error message "This page is only available when you're logged out."  This should not happen and I should see all registered users without having to log out.  At least I think this is the intended use for this link. [fixed]
* When I create a new user, and I enter an email address of an existing user, the error message should not be "has already been taken".  It should be "Another user has an account with the same email address.  Please enter another." .... or some sort. [fixed]
* I should not be able to enter letters in Phone field. [fixed]
* I should not be able to enter non-letter and non-numerical characters in Phone field.  i.e. !@£$%^&*?/<>\|'"`~§±€ BUT + () and . is acceptable. [fixed]
* When you are viewing a particular proposal, Should general information and keyword be smaller, in terms of font-size? [fixed]
* Wrap text? [See AgileBrazilQA-01.tiff] [fixed]
* State field on the create user form: still does not have a "Not applicable" value in the drop down. [fixed]
* When creating a session proposal, should there be some help / description in Target audience field? [fixed]
* Agile Brazil 2010 is inviting the members of the community .... [JW] Remove the word "the" in this sentence. [fixed]
* Once you voted ... [JW] Add word: "Once you have voted ..." [fixed]
* Should not see "Are you sure you want to vote for logo undefined? You are only allowed to vote once." message, when the user did not select a logo and clicked on the Vote button. [fixed]
* The site allows the user to vote as many times as they like before the closing date.  Therefore there is no need to warn users (on the confirmation message) that they are only allowed to vote once. [fixed]
* Changing your vote: once a user has voted for a logo, they can remain on the same page, and click on "Change vote" for as many times as they like. [fixed]
* If a user has voted for logo 1, they then click on logo 2 and Change vote button, but at the confirmation message click on "Cancel" -- the green box should remain on logo 1 and NOT logo 2.  The button text should only be enabled when the user makes a different selection. [fixed]
* Why is there no indication whether a user has voted or not?  It looks like we are forever asking for the user to cast a vote when they have already done so.  Can we say something like "You have voted", somewhere on the page?  If not, it is okay to have the green box on the logo the user has voted. [fixed]
* To edit the session, the author has to click on the "Edit" link that is next to their name (also as a link).  This is slightly confusing as it appears to be a link to edit the author profile, or it could be editing the session page.  Suggested solution: use link text "Edit session" to prevent ambiguity. [fixed]
* Exception when inviting user with simple profile to be a reviewer/organizer [fixed]
* Adding review should call session.reviewing to change it's state [fixed]
* Cannot review same session again (validation on review and permission) [fixed]
* Reviewer can't choose preference on track(s) he/she is organizing [fixed]
* Reviewer can review any session (even if not part of his preferences) [fixed]
* Organizer can cancel already cancelled session [fixed]
* Review count on reviewers page is wrong [fixed]
* Progress bar changes color with progress [fixed]

FIXED UPGRADE ISSUES:

 * ActionMailer bug when setting I18n (see config/initializers/rails3_abstract_controller_rendering_fix.rb)
 * Controller Macro to check if user is logged_in/logged_out (see spec/support/controller_macros.rb)
 * Controller specs failing on authorization (see spec/support/disable_authorization.rb)
 * Validates_existence specs (using a patched gem with custom RSpec macros, see Gemfile)
 * Label with HTML are rendering without links (e.g. session/new) (see config/initializers/formtastic.rb)
 * Styling and I18n label on will_paginate (see application.scss and application_helper.rb)
 * Fix I18N on model specs (organizer_spec passes if ran in isolation, fails if ran through 'rake spec', see config/initializers/default_locale.rb)
 * XSS on textile rendering (using RedCloth on application_helper instead of :textile HAML filter)
 * Custom error pages not working (added goalie and moved custom error pages to app/views/public_errors + controller)
 * Authlogic throwing lots of deprecation warnings (replaced with devise)
 * I18n on edit profile/reset password, after error - password fields lose correct translation (added translation for actions create/update)
 * I18N for yes/no radio buttons
 * Checkbox defaults to checked on error when accept invitation (bug on formtastic, see Gemfile)