-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Item12119: Initial checkin of TaskManagementContrib
git-svn-id: http://svn.foswiki.org/trunk/TaskManagementContrib@15512 0b4bb1d4-4e5a-0410-9cc4-b2b747904278
- Loading branch information
AlexisHazell
authored and
AlexisHazell
committed
Oct 5, 2012
0 parents
commit 3950d86
Showing
28 changed files
with
1,456 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
<!-- | ||
One line description, required for extensions repository catalog. | ||
* Set SHORTDESCRIPTION = A simple Task Management System Wiki App. | ||
--> | ||
---+!! TaskManagementContrib | ||
|
||
%SHORTDESCRIPTION% | ||
|
||
%TOC% | ||
|
||
---++ Features | ||
|
||
* Create tasks and subtasks. | ||
* Specify task deadline, priority, task lead, current status and more. | ||
* Assign one or more tags to tasks. | ||
* Additionally specify particular tasks as being available to volunteers from the general public. | ||
* Filter and sort tasks by various criteria, including task lead, task assistants, tags, deadline and priority. | ||
* UI designed with smartphones in mind. | ||
* Easily modify presentation of particular UI components via CSS. | ||
|
||
---++ Installation | ||
|
||
After installation, information about setup and use can be found in TMS.TMSAdministratorHelp and TMS.TMSUserHelp. | ||
|
||
---++ Info | ||
|
||
| Author: | AlexisHazell | | ||
| Copyright ©: | Alexis Hazell | | ||
| License: | GPL ([[http://www.gnu.org/copyleft/gpl.html][GNU General Public License]]) | | ||
| Dependencies: | http://foswiki.org/Extensions/FilterPlugin, http://foswiki.org/Extensions/JQueryPlugin, http://foswiki.org/Extensions/RenderPlugin, http://foswiki.org/Extensions/SetVariablePlugin, http://foswiki.org/Extensions/TwistyPlugin | | ||
| Version: | 0.1.0 | | ||
| Change History: | 0.1.0 (05 Oct 2012) | | ||
| 0.1.0 (05 Oct 2012): | Initial version | | ||
| Home: | http://foswiki.org/Extensions/%TOPIC% | | ||
| Support: | http://foswiki.org/Support/%TOPIC% | | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
%META:TOPICPARENT{name="WebHome"}% | ||
%ADDTOZONE{ | ||
"head" | ||
topic="%TMSWEBNAME%.PublicTasksAvailableCSS" | ||
}%<!-- | ||
* Set VIEW_TEMPLATE = PublicTasksAvailableView | ||
* Set ALLOWTOPICVIEW = WikiGuest | ||
* Set ALLOWTOPICCHANGE = AdminGroup | ||
* Set ALLOWTOPICRENAME = AdminGroup | ||
--> | ||
<div id="IntroText"> | ||
<p>[ Currently displaying %IF{"defined tag" then="tasks tagged '%URLPARAM{"tag"}%'" else="all available tasks"}%. ]</p> | ||
<br /> | ||
</div> | ||
<div id="Filter"> | ||
<span class="label">Filter tasks by tag: </span> | ||
<form action="http://gendercentre.com/foswiki/bin/view/%TMSWEBNAME%/PublicTasksAvailable" method="get"> | ||
<select id="TagsFilter" class="filter" name="tag"> | ||
<option value="*">Any</option> | ||
%FORMATLIST{"%SEARCH{"name ~ 'TaskID*'" type="query" web="%TMSWEBNAME%" nonoise="on" separator="," format="$formfield(Tags)" }%" | ||
unique="on" | ||
sort="alpha" | ||
separator="%BR%" | ||
format=" <option class='foswikiOption' value='$1'>$1</option>" | ||
}% | ||
</select> | ||
<input type="submit" value="Go" /> | ||
</form> | ||
</div> | ||
|
||
<div id="TaskList"> | ||
%SEARCH{ | ||
"name~'TaskID*' AND Visibility='Public' AND fields[name=\"Tags\"].value~%IF{"defined tag" then="'*%URLPARAM{"tag"}%*'" else="'*'"}%" | ||
web="%TMSWEBNAME%" | ||
type="query" | ||
order="formfield(Priority)" | ||
nonoise="on" | ||
zeroresults="No matching tasks were found." | ||
format="<hr> | ||
<span class='tasksummary'>$formfield(Summary)</span><br /> | ||
<span class='label'>Priority:</span> $formfield(Priority)<br /> | ||
<span class='label'>Tags</span>: $formfield(Tags)<br /> | ||
$percentTWISTY{showlink=$quotMore info$quot hidelink=$quotLess info$quot showimgleft=$quot$percentICONURLPATH{toggleopen-small}$percent$quot hideimgleft=$quot$percentICONURLPATH{toggleclose-small}$percent$quot}$percent | ||
<span class='label'>Details:</span> $formfield(Details)<br /> | ||
<span class='label'>Contact:</span> $formfield(Contact)<br /> | ||
$percentENDTWISTY$percent" | ||
}% | ||
</div> | ||
--- | ||
|
||
%META:PREFERENCE{name="SKIN" title="SKIN" type="Set" value="PlainSkin"}% |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
%META:TOPICPARENT{name="PublicTasksAvailable"}% | ||
<!-- | ||
* Set ALLOWTOPICVIEW = WikiGuest | ||
* Set ALLOWTOPICCHANGE = AdminGroup | ||
* Set ALLOWTOPICRENAME = AdminGroup | ||
--> | ||
<style type="text/css"> | ||
div#Filter { | ||
color: #373737; | ||
font-family: 'Trebuchet MS', Arial, Helvetica; | ||
font-size: 12px; | ||
font-style: normal; | ||
font-variant: normal; | ||
font-weight: normal; | ||
} | ||
div#IntroText { | ||
color: #373737; | ||
font-family: 'Trebuchet MS', Arial, Helvetica; | ||
font-size: 12px; | ||
font-style: normal; | ||
font-variant: normal; | ||
font-weight: normal; | ||
} | ||
div#TaskList { | ||
color: #373737; | ||
font-family: 'Trebuchet MS', Arial, Helvetica; | ||
font-size: 12px; | ||
font-style: normal; | ||
font-variant: normal; | ||
font-weight: normal; | ||
} | ||
span.label { | ||
font-style: italic; | ||
} | ||
span.tasksummary{ | ||
font-weight: bold; | ||
} | ||
</style> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
%META:TOPICPARENT{name="PublicTasksAvailable"}% | ||
<!-- | ||
* Set ALLOWTOPICVIEW = WikiGuest | ||
--> | ||
%TMPL:INCLUDE{"view.plain"}% |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
---+!! %SPACEOUT{"%TOPIC%"}% | ||
|
||
%TOC% | ||
|
||
---++ Introduction | ||
|
||
TMS administrators should begin by reading the TMSDesignDecisions document, followed by the TMSKnownIssues document. | ||
|
||
---++ Setup and configuration | ||
|
||
Administrators need to: | ||
|
||
1. Add a preference in !Main.SitePreferences specifying the name of the TMS web (which upon installation is 'TMS'). If you rename the TMS web (e.g. to 'Tasks'), this setting must be changed accordingly. | ||
<verbatim>Set TMSWEBNAME = TMS</verbatim> | ||
1. Add a preference in !Main.SitePreferences specifying a default set of tags available for TMS tasks. Each tag must consist of lower-case alphanumeric characters, with no in-tag spaces; tags must be separated by a comma, optionally followed by a space character. This can be left empty if no default set is required. | ||
<verbatim>Set TMSDEFAULTTAGS = </verbatim> | ||
1. Create a !WikiGroup called 'TMSUsersGroup'. Members of this group will be listed in the 'Lead' and 'Assistants' drop-downs on the Task Details page, so members need to be added accordingly. | ||
|
||
A "public tasks" interface, suitable for including in non-Foswiki pages via e.g. an IFRAME HTML tag, is provided via the PublicTasksAvailable page. The style of this page can be customised via the PublicTasksAvailableCSS topic. | ||
|
||
---++ General usage notes | ||
|
||
Each 'task' is assigned its own topic page, with a title generated by Foswiki's AUTOINC numbering system. Consequently, deleting a task topic makes the task ID number available again for new tasks. Given the potential confusion that could result from this, task topic deletion functionality has not been made directly available to end-users. Instead, Foswiki administrators must visit the relevant task topic via e.g. WebTopicList and delete the topic via the standard Foswiki process. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
%META:TOPICPARENT{name="WebHome"}% | ||
---+ %SPACEOUT{"%TOPIC%"}% | ||
|
||
* The TMS makes use of skin templates rather than !ViewTemplates in certain places in order to avoid !ViewTemplates becoming the parent task topic of subtask topics. | ||
* The Task List only displays a restricted number of fields from each task in order to minimise space usage and keep the list more smartphone-friendly. | ||
* The TMS has no 'Category' field as well as 'Tags' field, to avoid end-user confusion between classifying via 'Category' in addition to via 'Tags'. Further, categories would force tasks into a fixed ontology; tags avoid this. | ||
* The 'Deadline' and 'InitiatedOn' fields require dates in yyyy.mm.dd.23.59 format to ease date sorting, and to be compatible with date formats accepted by Foswiki 1.1.4 forms. | ||
* No validation check is performed on the 'Deadline' field, so that users do not have to keep modifying the deadline to a later date should a task not be completed by the original deadline. | ||
* No validation check is performed on the 'InitiatedOn' field, to allow for the possibility of the task having been initiated prior to the day the task was first entered into the TMS. | ||
* The 'InitiatedBy' field is freeform text, rather than drawing on !WikiNames, to allow for the possibility of non-wiki users having initiated tasks. | ||
* Task tags can only consist of lower-case alphanumerics, without spaces, in order to avoid creation of semantically similar tags that are seen as distinct by the system. For example: to avoiding creation of a series of tags like 'QuickTask', 'quick Task', 'Quick task' etc. | ||
* !PublicTasksAvailable doesn't use AJAX for filtering functionality, as doing so would require the 'rest' script to be made available to unauthenticated users, possibly creating security vulnerabilities. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
%META:TOPICPARENT{name="WebHome"}% | ||
---+ %SPACEOUT{"%TOPIC%"}% | ||
|
||
This Task Management System has been developed by Alexis Hazell. Responsibility for any issues regarding design and implementation rests solely with her. | ||
|
||
Many thanks to: | ||
|
||
* Tom Cho, for his testing work, and for providing feedback regarding functionality and UI. | ||
* Several Foswiki developers, who provided invaluable assistance with various technical issues: | ||
* George Clark | ||
* Crawford Currie | ||
* Sven Dowideit | ||
* Paul Harvey | ||
* Olivier Raginel | ||
* Zoe Belle Gender Centre, for contributing funding towards the system's development. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
%META:TOPICPARENT{name="WebHome"}% | ||
---+ %SPACEOUT{"%TOPIC%"}% | ||
|
||
The following are known issues with [[%TMSWEBNAME%.TaskList][the Task Management System]]: | ||
|
||
---++ Visual issues | ||
|
||
* On 'PublicTasksAvailable' page, selecting "More info" for a task display at the bottom of the browser window does not reposition the task so that all task particulars are visible. | ||
* Should be able to view a hierarchical tree of tasks, sub-tasks, sub-sub-tasks etc. | ||
|
||
---++ Behavioural issues | ||
|
||
* Datepicker widget is occasionally not available on the 'Deadline' field on the Task Details page. Forcing the browser to refresh the page can fix the problem. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
%META:TOPICPARENT{name="WebHome"}% | ||
%ADDTOZONE{ | ||
"head" | ||
text=" | ||
<style type='text/css'> | ||
p.note { | ||
background: #f5f5f5; | ||
border-bottom: solid 1px #dddddd; | ||
border-top: solid 1px #dddddd; | ||
margin-left: 0; | ||
margin-right: 0; | ||
padding-bottom: 1ex; | ||
padding-left: 2ex; | ||
padding-right: 2ex; | ||
padding-top: 1ex; | ||
} | ||
</style> | ||
" | ||
}% | ||
---+!! %SPACEOUT{"%TOPIC%"}% | ||
|
||
<p class="note">%ICON{"warning"}% Users and administrators need to read TMSKnownIssues before using the system. Administrators need to read TMSAdministratorHelp before making the system available to users.</p> | ||
|
||
%TOC% | ||
|
||
This Task Management System ("TMS") provides basic functionality for tracking tasks. | ||
|
||
---++ The Task List | ||
|
||
The central page in the TMS is the TaskList. You use this page to view and sort (that is, 'filter') tasks in various ways (for example, displaying only completed tasks, or sorting tasks by their deadline). To filter tasks: | ||
* open the "%ICON{"toggleopen-small"}% Filter tasks" twisty (you do this by clicking the "%ICON{"toggleopen-small"}%" icon) | ||
* choose your filter criteria | ||
* click the *Go* button. | ||
|
||
The Task List will redisplay according to your selected criteria. | ||
|
||
---++ Creating new tasks | ||
|
||
Any task can have one or more subtasks associated with it. The procedure for creating a top-level task is different to creating a sub-task. | ||
---+++ Create a new top-level task | ||
|
||
You create a new task at the TaskList page. | ||
* Click the *Create new top-level task* button | ||
A new page called <i>Task Details </i>appears. | ||
* Specify the details of the new task. Extra help is available for many of the fields via a "%ICON{"toggleopen-small"}% Help" twisty | ||
* Save or cancel any changes you make via the *Save* and *Cancel* buttons at the bottom of the _Task Details_ page | ||
* When you save the task, the system will check the data you have entered. If there are problems with the data, a popup window will appear. | ||
|
||
<p class="note">%ICON{"warning"}% Make sure you definitely want to create a task before saving it! Since accidentally deleting a task could create problems for system integrity, users cannot directly delete tasks (only mark a task as 'Completed'). Administrators can delete task topics if required, after reading TMSAdministratorHelp first.</p> | ||
|
||
---+++ Create a new subtask | ||
|
||
At the TaskList page: | ||
* Click the task that will be the 'parent' of the sub-task you wish to create. | ||
|
||
The _Task Details_ page for that task appears. Now you can create the sub-task of this task that you're currently viewing. To do this: | ||
* open the "%ICON{"toggleopen-small"}% Subtasks" twisty (you do this by selecting the "%ICON{"toggleopen-small"}%" icon) | ||
* select the *Create new subtask of this task* button. | ||
|
||
A new _Task Details_ page will appear. | ||
* Specify the details of the new sub-task. Extra help is available for many of the fields via a "%ICON{"toggleopen-small"}% Help" twisty | ||
* Save or cancel any changes you make via the *Save* and *Cancel* buttons at the bottom of the _Task Details_ page. | ||
* When you save the sub-task, the system will check the data you have entered. If there are problems with the data, a popup window will appear. | ||
|
||
<p class="note">%ICON{"warning"}% Make sure to save any changes you've made to a task before trying to create a new subtask! Otherwise, those changes will be lost.</p> | ||
|
||
---++ Known issues | ||
|
||
There are a number of [[TMSKnownIssues][known issues]] with the TMS. If you encounter any further problems, please report them to your Foswiki administrator. They will pass them on to the TMS developers. | ||
|
||
---++ Credits | ||
|
||
Information about those who have contributed to the development of this TMS is available on the TMSDevelopmentCredits page. |
Oops, something went wrong.