[evolvis-commits] r8081: adding task mgr integration to tracker↵?==?UTF-8?Q?
mirabilos at evolvis.org
mirabilos at evolvis.org
Thu Feb 24 15:56:39 CET 2011
Author: mirabilos
Date: 2011-02-24 15:56:39 +0100 (Thu, 24 Feb 2011)
New Revision: 8081
Added:
trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/taskmgr.php
Log:
adding task mgr integration to tracker
Added: trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/taskmgr.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/taskmgr.php (rev 0)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/tracker/taskmgr.php 2011-02-24 14:56:39 UTC (rev 8081)
@@ -0,0 +1,129 @@
+<?php
+/**
+ * GForge Task Mgr And Tracker Integration
+ *
+ * Copyright 2003 GForge, LLC
+ * http://gforge.org/
+ *
+ * @version $Id$
+ */
+
+/*existing
+
+http://dev.gforge.org/pm/task.php?func=addartifact
+ &add_artifact_id=$add_artifact_id
+ &project_task_id=27
+ &group_id=1
+ &group_project_id=3
+
+//add
+//http://dev.gforge.org/pm/task.php?group_id=1&group_project_id=3&func=addtask
+//$related_artifact_summary
+//$related_artifact_id
+*/
+
+require_once('pre.php');
+require_once('common/pm/ProjectGroupFactory.class');
+require_once('common/pm/ProjectTaskFactory.class');
+
+$a=new Artifact($ath,$aid);
+if (!$a || !is_object($a)) {
+ exit_error('ERROR','Artifact Could Not Be Created');
+}
+
+//
+// Add a relationship from this artifact to an existing task
+//
+if ($add_to_task) {
+ $pg=new ProjectGroup($group,$group_project_id);
+ if (!$pg || !is_object($pg)) {
+ exit_error('Error','Could Not Get ProjectGroup');
+ } elseif ($pg->isError()) {
+ exit_error('Error',$pg->getErrorMessage());
+ }
+
+
+ $ptf = new ProjectTaskFactory($pg);
+ if (!$ptf || !is_object($ptf)) {
+ exit_error('Error','Could Not Get ProjectTaskFactory');
+ } elseif ($ptf->isError()) {
+ exit_error('Error',$ptf->getErrorMessage());
+ }
+
+ $ptf->setup($offset,$_order,$max_rows,$set,$_assigned_to,$_status,$_category_id);
+ if ($ptf->isError()) {
+ exit_error('Error',$ptf->getErrorMessage());
+ }
+
+ $pt_arr =& $ptf->getTasks();
+ if (!$pt_arr || $ptf->isError()) {
+ exit_error('Error',$ptf->getErrorMessage());
+ }
+
+ $ath->header(array('titlevals'=>array($ath->getName()),'pagename'=>'tracker_browse',
+ 'atid'=>$ath->getID(),'sectionvals'=>array($group->getPublicName())));
+
+ echo '<form name="foo" action="'. $PHP_SELF .'?func=taskmgr&group_id='.$group_id.'&atid='.$atid.'&aid='.$aid.'" method="post">
+ <b>Task Manager Project:</b><br>';
+ echo $pg->getName().'
+ <input type="hidden" name="group_project_id" value="'.$pg->getID().'">
+ <p>
+ <b>Task:</b><br>
+ <select name="project_task_id">';
+ for ($i=0; $i<count($pt_arr); $i++) {
+ echo '<option value="'.$pt_arr[$i]->getID().'">'.$pt_arr[$i]->getSummary().'</option>';
+ }
+ echo '</select><br>
+ <input type="submit" name="done_adding" value="Add Relationship To Selected Task">
+ </form>';
+
+//
+// Add the relationship and display finished message
+//
+} elseif ($done_adding) {
+
+ Header ('Location: /pm/task.php?group_id='.$group_id.'&group_project_id='.$group_project_id.'&project_task_id='.$project_task_id.'&func=addartifact&add_artifact_id[]='. $a->getID() );
+
+//
+// Create a new task and relate it to this artifact
+//
+} elseif ($new_task) {
+
+ Header ('Location: /pm/task.php?group_id='.$group_id.'&group_project_id='.$group_project_id.'&func=addtask&related_artifact_summary='. urlencode($a->getSummary()) .'&related_artifact_id='. $a->getID() );
+
+//
+// Show the list of ProjectGroups available
+//
+} else {
+
+ $pgf=new ProjectGroupFactory($group);
+ if (!$pgf || !is_object($pgf)) {
+ exit_error('Error','Could Not Get Factory');
+ } elseif ($pgf->isError()) {
+ exit_error('Error',$pgf->getErrorMessage());
+ }
+
+ $pg_arr =& $pgf->getProjectGroups();
+ if (!$pg_arr || $pgf->isError()) {
+ exit_error('Error',$pgf->getErrorMessage());
+ }
+
+ $ath->header(array('titlevals'=>array($ath->getName()),'pagename'=>'tracker_browse',
+ 'atid'=>$ath->getID(),'sectionvals'=>array($group->getPublicName())));
+
+ echo '<form name="foo" action="'. $PHP_SELF .'?func=taskmgr&group_id='.$group_id.'&atid='.$atid.'&aid='.$aid.'" method="post">
+ <b>Task Manager Project:</b><br>
+ <select name="group_project_id">';
+ for ($i=0; $i<count($pg_arr); $i++) {
+ echo '<option value="'.$pg_arr[$i]->getID().'">'.$pg_arr[$i]->getName().'</option>';
+ }
+ echo '</select><br>
+ <input type="submit" name="add_to_task" value="Add To Existing Task"><br>
+ <input type="submit" name="new_task" value="Create New Task">
+ </form>';
+
+}
+
+$ath->footer(array());
+
+?>
More information about the evolvis-commits
mailing list