[pmwiki-users] Modified Calendar Question

Knut Alboldt pmwiki at alboldt.de
Sun Jul 9 01:00:55 CDT 2006


The Editor schrieb:
> Hi all,
> 
> I'm exploring ways to set up a personal project management system that
> works a bit different from existing calendar setups, but need some
> help.  I'm not worried about a graphical calendar interface, just want
> to be able to print up a list of things to do each day, drawn from to
> do lists for multiple projects.
> 
> Part 1
> Basically, my plan is to set up a "projects" group, each page
> consisting of a list of to do items for some project. Then I want to
> tag each to do item with its own date. Unless someone has a better
> suggestion, I'm thinking of using categories and anchors--i.e.

I'm looking for quiet the same function. I'm not happy with the pmwki 
calender solution (for this task), cause my aim is to have a page with 
todo's related to a project and not to a date.

e.g. if I use a page per task-item containing the date within the 
pagename (e.g.: Projects.20060507) to be used for the calendar-input, 
it's rather difficult to change a date of a task-item (which might be 
happen often in a project :-).  It had to be processed by renaming the 
page when changing the date (within the pagetext).


I'd rather think of a page per task or subtask using markups to define a 
task. Something like:

Page Projects.MyTask-FirstSubtask containing somethink like:


TASKLIST:Projectname etc

TASK:tasktitle
WHEN:date / daterange
WHO:namelist
STATUS:...
DETAILS:* text
* more text

(repeated for each task / subtask)

END:

or if you like to

(:TASKLIST:

(:TASK:)tasktitle
(:WHEN:)date / daterange
(:WHO:)namelist
(:STATUS:)...
(:DETAILS:)* text
* more text

(repeated for each task / subtask)

(:END:)


This will be converted into (:cell:) markups, TASKLIST: will be 
converted inbto a (:TABLE:)-markup, TASK: will be converted into 
(:cellnr:) markup etc. This is running so far and I'm getting a pretty 
good table output for a task plan. It's also flexible by using included 
pages for subtasks etc.

To get all tasks of all (specified) projects extracted into one page per 
day / month etc I thought about a edit-function (or a browse-function 
i.e. markup) which extracts the needed data from the markup's above into 
a textfile / sql-stmts to feed a index-file or database which can be 
queried for the calendar.
This way calender-pages could be created by queries rather simple (e.g. 
using part of the code of the mysql-cookbook).

The second thing what I wanted to get are gantt's. So I set up a trial 
with a team-vacation plan (it's good to start with this, cause there is 
only a small number of pages to be scanned for dates).
The status of this pmwiki-development-task is:
- a vacation period is defined with markups like mentioned above
- the extract of the needed data (date, name etc) has to be done. The 
data will be extracted e.g. by a (:vacation:) markup creating a 
php-array with named entries like $Gantts["vacation-me"]["start"] = ... etc
- the date-data is processed by a (:gantt:) markup having parameters 
with the data-tables passed, e.g. (:gantt vacaction-me,vacation-you,...:)
- right now I'm using a fixed php-array for testing (looking like that:

   $Gantts['Ferien2006']['entries'][$i]['title']   = 'Ferien 2006';
   $Gantts['Ferien2006']['entries'][$i]['start']   = '2006-02-15';
   $Gantts['Ferien2006']['entries'][$i]['end']     = '2006-02-20';
   $Gantts['Ferien2006']['entries'][$i]['caption'] = 'Winter';
   $Gantts['Ferien2006']['entries'][$i]['ctr']     = $j;
   $Gantts['Ferien2006']['entries'][$i]['color']   = 'blue';

- this array is used to create a jpgraph-gantt (this is already running) 
to create a image of the gantt in the attachment-directory and then 
displaying it by simply using  the attach-markup

The development of this is rather slowly (but I hope to get more time in 
the summer-vacation). I'm working on the part of the date-extraction 
(looks like there is a lot of regex-parsing tbd) and the query, still 
not knowing how to solve this in an elegant and flexible way so it could 
be used as a cookbook recipe (right now is bound very tight to my own 
customized pmwiki installation). Also I have to re-setup my public 
website to have a test / demo site available for common discussion.

A nice add on would be using a(n existing) form-recipe to enter the 
task-items ...


Knut

> 
> [[!20060708]][[#20060708]] Task 1....
> 
> [[!20060710]][[#20060710]] Task 2....
> 
> Next, I want to pull up a page from my "category" group (really a
> calendar group) with a given day's date and have it list just those to
> do tasks with that date from across all the project pages, using a
> custom pagelist. ie (:pagelist link=Category.{$Name} list=projects:)
> Anyone know the syntax for having a pagelist that just shows the
> content between two anchors?
> 
> Part 2
> I'm thinking I could also create in the pagelist a link back to the
> various project pages, so I could simply delete the category tag
> beside a task to essentially mark that task complete. If so, I'd like
> a pagelist that shows all tasks left undone  (ie from dates < current
> date that are still tagged).  And a third pagelist showing a list of
> all tasks of all tasks coming up over the next seven days (ie from
> dates > current date and < current date + 7). Can someone help with
> the conditionals for such pagelists?
> 
> Cheers,
> Caveman
> 
> _______________________________________________
> pmwiki-users mailing list
> pmwiki-users at pmichaud.com
> http://host.pmichaud.com/mailman/listinfo/pmwiki-users
> 
> 




More information about the pmwiki-users mailing list