6.0.0-alpha14
6/24/25

[#2150] Add support for recurring tasks
Summary Add support for recurring tasks
Queue Nag
Queue Version Git master
Type Enhancement
State Resolved
Priority 1. Low
Owners jan (at) horde (dot) org
Requester kevin_myer (at) iu13 (dot) org
Created 06/17/2005 (7312 days ago)
Due
Updated 08/29/2012 (4682 days ago)
Assigned 11/06/2008 (6074 days ago)
Resolved 04/02/2012 (4831 days ago)
Milestone 4
Patch No

History
08/29/2012 12:35:28 PM Git Commit Comment #17 Reply to this comment
Changes have been made in Git (master):

commit 563421795d6e9a6a7d5fa552643b90e04fc87d3d
Author: Jan Schneider <jan@horde.org>
Date:   Mon Apr 2 19:59:02 2012 +0200

     Add recurring tasks - frontend part, ajax only (Request #2150).

  kronolith/docs/CHANGES             |    2 +-
  kronolith/js/kronolith.js          |  184 ++++++++++++++++++---------
  kronolith/lib/Ajax/Application.php |   37 +++---
  kronolith/lib/Event.php            |  252 
+++++++++++++++++++-----------------
  kronolith/lib/Event/Horde.php      |   11 ++-
  kronolith/lib/Kronolith.php        |    4 +
  kronolith/templates/index/task.inc |   58 ++++++++
  nag/docs/CHANGES                   |    1 +
  nag/lib/Api.php                    |   24 ++++
  nag/lib/Driver.php                 |   23 ++++
  nag/lib/Task.php                   |   22 +++-
  nag/package.xml                    |    1 +
  12 files changed, 413 insertions(+), 206 deletions(-)

http://git.horde.org/horde-git/-/commit/563421795d6e9a6a7d5fa552643b90e04fc87d3d
08/29/2012 12:35:21 PM Git Commit Comment #16 Reply to this comment
Changes have been made in Git (master):

commit 6bb5bcc17e44b2defa22896aa4c55489bb19e09a
Author: Jan Schneider <jan@horde.org>
Date:   Mon Apr 2 14:05:00 2012 +0200

     Add recurring tasks - backend part (Request #2150).

  nag/app/controllers/CompleteTask.php       |    8 +--
  nag/lib/Api.php                            |   10 +--
  nag/lib/Driver.php                         |    7 ++-
  nag/lib/Driver/Kolab.php                   |   17 +++++
  nag/lib/Driver/Sql.php                     |  109 
++++++++++++++++++++++++++--
  nag/lib/Task.php                           |   93 +++++++++++++++++++++++-
  nag/migration/9_nag_upgrade_recurrence.php |    4 +
  nag/test/Nag/Unit/Driver/Base.php          |   23 ++++++
  8 files changed, 243 insertions(+), 28 deletions(-)

http://git.horde.org/horde-git/-/commit/6bb5bcc17e44b2defa22896aa4c55489bb19e09a
04/02/2012 07:10:45 PM Jan Schneider Comment #15
State ⇒ Resolved
Reply to this comment
May be added to the traditional view in the future, but that's it for now.
04/02/2012 06:01:30 PM Git Commit Comment #14 Reply to this comment
Changes have been made in Git (develop):

commit 563421795d6e9a6a7d5fa552643b90e04fc87d3d
Author: Jan Schneider <jan@horde.org>
Date:   Mon Apr 2 19:59:02 2012 +0200

     Add recurring tasks - frontend part, ajax only (Request #2150).

  kronolith/docs/CHANGES             |    2 +-
  kronolith/js/kronolith.js          |  184 ++++++++++++++++++---------
  kronolith/lib/Ajax/Application.php |   37 +++---
  kronolith/lib/Event.php            |  252 
+++++++++++++++++++-----------------
  kronolith/lib/Event/Horde.php      |   11 ++-
  kronolith/lib/Kronolith.php        |    4 +
  kronolith/templates/index/task.inc |   58 ++++++++
  nag/docs/CHANGES                   |    1 +
  nag/lib/Api.php                    |   24 ++++
  nag/lib/Driver.php                 |   23 ++++
  nag/lib/Task.php                   |   22 +++-
  nag/package.xml                    |    1 +
  12 files changed, 413 insertions(+), 206 deletions(-)

http://git.horde.org/horde-git/-/commit/563421795d6e9a6a7d5fa552643b90e04fc87d3d
04/02/2012 06:01:24 PM Git Commit Comment #13 Reply to this comment
Changes have been made in Git (develop):

commit 6bb5bcc17e44b2defa22896aa4c55489bb19e09a
Author: Jan Schneider <jan@horde.org>
Date:   Mon Apr 2 14:05:00 2012 +0200

     Add recurring tasks - backend part (Request #2150).

  nag/app/controllers/CompleteTask.php       |    8 +--
  nag/lib/Api.php                            |   10 +--
  nag/lib/Driver.php                         |    7 ++-
  nag/lib/Driver/Kolab.php                   |   17 +++++
  nag/lib/Driver/Sql.php                     |  109 
++++++++++++++++++++++++++--
  nag/lib/Task.php                           |   93 +++++++++++++++++++++++-
  nag/migration/9_nag_upgrade_recurrence.php |    4 +
  nag/test/Nag/Unit/Driver/Base.php          |   23 ++++++
  8 files changed, 243 insertions(+), 28 deletions(-)

http://git.horde.org/horde-git/-/commit/6bb5bcc17e44b2defa22896aa4c55489bb19e09a
03/27/2012 05:20:49 PM Jan Schneider Assigned to Jan Schneider
Taken from Gunnar Wrobel
Milestone ⇒ 4
 
01/27/2011 04:12:53 PM Michael Rubinsky Comment #12
Version ⇒ Git master
Milestone ⇒ 3.1
Reply to this comment
This feature has been postponed until the next minor feature release.
11/06/2008 02:27:52 AM Chuck Hagenbuch Assigned to Gunnar Wrobel
State ⇒ Assigned
Patch ⇒ No
 
10/24/2008 10:47:19 AM Jan Schneider Comment #11
State ⇒ Feedback
Reply to this comment
It's still missing support in the SQL driver, and the form field 
renderer still includes HTML code that doesn't belong there. Field 
renderers must only contain the code for the actual fields. You add 
all kind of form row layout that is the job of the form renders (as 
opposed to the field renderer). If you want to add more then one 
(html) field in the form field renderer, separate them by simple 
breaks, or what ever fit your needs, but don't re-use or interrupt the 
regular form rendering with tables (because other renderers than the 
default might use a different rendering technique than tables).
10/24/2008 10:41:54 AM Jan Schneider Deleted Original Message
 
09/16/2008 08:45:59 AM Gunnar Wrobel Comment #10
State ⇒ Assigned
New Attachment: HK-GW-Recurrence[3].patch Download
Reply to this comment
Updated to the latest CVS.



I added the required JavaScript functionality now. So the patch should 
be complete feature wise.



I'm still a layman when it comes to JS and Horde Forms. So there might 
be some JS corrections necessary. As usual I'm open to suggestions :)



Thanks!
07/15/2008 12:00:44 PM Jan Schneider Deleted Original Message
 
07/15/2008 11:04:38 AM Gunnar Wrobel Comment #9
New Attachment: HK-GW-Recurrence[2].patch
Reply to this comment
Updated the patch. The var renderers are hopefully okay now.



There are some java script issues left and the whole recurrence part 
should only be shown if there exists a due date for the task. Maybe it 
is already okay for a first commit and some polishing in CVS.
07/13/2008 12:36:43 PM Jan Schneider Comment #8 Reply to this comment
I already committed Recurrence.php.
07/13/2008 12:36:05 PM CVS Commit Comment #7 Reply to this comment
Changes have been made in CVS for this ticket:

http://cvs.horde.org/co.php/nag/lib/Recurrence.php?r=1.1
07/07/2008 08:58:09 AM Jan Schneider Deleted Original Message
 
07/07/2008 04:47:44 AM Gunnar Wrobel Comment #6 Reply to this comment
Horde_Form_Type_nag_recurrence should use $vars instead of
Util::getFormData() and Nag_Recurrence instead of
Horde_Date_Recurrance. And we probably have to use different constant
names to avoid collisions when showing tasks in Kronolith. I just see
you already did this, but you don't use them everywhere yet.
Fixed.
The varrenderers won't work the way you implemented them though.
Either you need different form fields for the different recurrence
settings, or you have to implement the complete widget in a single
cell, like any other form field.
This is not yet fixed. I'll need to take a closer look at how var 
renderers work.
And you shouldn't create new tasks when completing one recurrence
instance. Instead, you should store the completion of a single
recurrence, similar to how exceptions are stored at the moment. And
of course we should (at some point, not necessarily from the start)
add the ability to actually create exceptions.
Adapted the patch to the new completion support in the recurrence library.
07/07/2008 04:46:28 AM Gunnar Wrobel Comment #5
New Attachment: HK-GW-Recurrence[1].patch
Reply to this comment
Second draft version.
07/06/2008 01:58:40 PM Gunnar Wrobel Comment #4 Reply to this comment
And you shouldn't create new tasks when completing one recurrence
instance. Instead, you should store the completion of a single
recurrence, similar to how exceptions are stored at the moment. And
of course we should (at some point, not necessarily from the start)
add the ability to actually create exceptions.
Makes a lot of sense. I submitted a suggestion as for completion 
support in recurrences as bug #7029


07/04/2008 03:06:51 PM Jan Schneider Comment #3
Patch ⇒ Yes
State ⇒ Feedback
Milestone ⇒ 3
Reply to this comment
Horde_Form_Type_nag_recurrence should use $vars instead of 
Util::getFormData() and Nag_Recurrence instead of 
Horde_Date_Recurrance. And we probably have to use different constant 
names to avoid collisions when showing tasks in Kronolith. I just see 
you already did this, but you don't use them everywhere yet.



The varrenderers won't work the way you implemented them though. 
Either you need different form fields for the different recurrence 
settings, or you have to implement the complete widget in a single 
cell, like any other form field.



And you shouldn't create new tasks when completing one recurrence 
instance. Instead, you should store the completion of a single 
recurrence, similar to how exceptions are stored at the moment. And of 
course we should (at some point, not necessarily from the start) add 
the ability to actually create exceptions.



But beside that, it looks very promising, nice work!
07/04/2008 02:28:57 PM Gunnar Wrobel Comment #2
New Attachment: HK-GW-Recurrence.patch
Reply to this comment
A draft for implementing recurrence in Nag. I did only implement it 
for the kolab driver so far. Does this go into the right direction?
07/30/2007 04:01:49 PM Chuck Hagenbuch State ⇒ Stalled
 
07/28/2005 10:35:58 AM Jan Schneider State ⇒ Accepted
 
06/17/2005 02:56:50 PM kevin_myer (at) iu13 (dot) org Comment #1
Priority ⇒ 1. Low
State ⇒ New
Queue ⇒ Nag
Type ⇒ Enhancement
Summary ⇒ Add support for recurring tasks
Reply to this comment
Support recurrence in tasks.  Should just be a matter of extending Nag 
to use the recurrence portion of the iCalendar spec.

Saved Queries