[LRA-39] Create the ToDos portlet Created: 15/Jan/14  Updated: 26/Feb/14  Resolved: 12/Feb/14

Status: Resolved
Project: Liferay Apps
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Minor
Reporter: mcalvo Assignee: oscar.solano
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File To-Do.png     PNG File secissue.png    

 Description   
Create the To-Do portlet. The front end piece is still in development. We will have 4 panels to organize the Task according to their date. For each task we need to capture: name, description, date, status (done or not). The back end should be able to: add / edit / delete task. Return the correct tasks for each of the panels. See attached screen shot.

 Comments   
Comment by Christopher Jimenez [X] (Inactive) [ 16/Jan/14 ]
waiting for oscar
Comment by mcalvo [ 23/Jan/14 ]
This portlet should be renamed to ToDos portlet. Make the required code changes to reflect that but don't change the SVN project name

Additionally, once the code is ready, remember to Enable the Security Manager, following the steps outlined here:
http://wiki.rivetlogic.com/display/Liferay/Enabling+Security+Manager+for+Liferay+plugins

These bugs/improvements were found:
1) Creating a new event shows "This field is required" on selecting todays date.
   Saving is successful but marks the task as past due with a date of 0002-12-31.
   Setting the date to today seems to save the date properly.

2) The Date field changes green only on tabbing to submit.
   We probably need to mark it green as soon as valid value is entered.

3) The month selector does no have a easy to go to next month

4) It will be useful to have a way to indicate how many items in each section.
   Past due 5
   Due Today 10
   Due Tomorrow 4
   Future 15

5) We should always have confirmation before delete.
   
6) We need to add the GNU GPL rivet logic copy right and disclaimer to all the jsp, js etc.
   This applies to all portlets
  
7) Define constants and use them in TodoPortlet.java instead of "something…."

8) All the utility methods in TaskLocalServiceImpl is hitting the DB and getting all tasks.
   public List<Task> getTasksByDateAndUserId(Long userId, Calendar calendar){
   We should just get all tasks once and split them up once in a TaskBean class to generate the JSON.
   The other methods in LocalServiceImpl can be removed at this time.
   If we would like to use them in future we will delegate the param to DB using Liferay finder where userId=123 and date = ?

9) Liferay plugin package needs to be updated with rivet logic url

10) Fix security issue shown in secissue.png
Comment by mcalvo [ 03/Feb/14 ]
Please work on issues 2, 3 and 1 only
Comment by mcalvo [ 06/Feb/14 ]
Please work on back end issues from 4 to 9. Leave the security issue (10) for now.
Comment by Katalina Marcos [ 06/Feb/14 ]
Reopen to complete/fix some issues
Comment by Katalina Marcos [ 07/Feb/14 ]
Points from 4 to 9 Completed. Other minor bugs founded were solved.

Points from 1 to 3 and 10 are still pending.
Comment by oscar.solano [ 11/Feb/14 ]
Fixed issues 1 to 3: Added buttons to move from month to month, corrected validation error that was being triggered even when the field was filled, and error on adding a task TODAY which was adding it in the past with a weird date. 10 still pending
Comment by Juan Carrillo [X] (Inactive) [ 26/Feb/14 ]
pull request accepted
Generated at Sat Feb 10 05:48:03 GMT 2024 using Jira 8.1.3#801003-sha1:6b6f07cffadda9a0d6efe24639daed8ce94dcdd6.