[evolvis-commits] r7977: removing some old files for old task mgr?==?UTF-8?Q?↵

mirabilos at evolvis.org mirabilos at evolvis.org
Thu Feb 24 15:54:30 CET 2011


Author: mirabilos
Date: 2011-02-24 15:54:29 +0100 (Thu, 24 Feb 2011)
New Revision: 7977

Removed:
   trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/pm_data.php
   trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/db-scheme.sql
   trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm-er-diagram.sda
   trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm_utils.php
Log:
removing some old files for old task mgr


Deleted: trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/pm_data.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/pm_data.php	2011-02-24 14:54:28 UTC (rev 7976)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/common/pm/pm_data.php	2011-02-24 14:54:29 UTC (rev 7977)
@@ -1,638 +0,0 @@
-<?php
-/**
- * pm_data.php - Project Manager function library
- *
- * SourceForge: Breaking Down the Barriers to Open Source Development
- * Copyright 1999-2001 (c) VA Linux Systems
- * http://sourceforge.net
- *
- * @version   $Id: pm_data.php,v 1.5 2001/06/06 21:38:46 dbrogdon Exp $
- *
- */
-
-/**
- * pm_data_get_tasks() - Return a result set of the 100 most recent tasks in this subproject
- *
- * @param		int		The ID of the project group
- * @returns Database result set
- *
- */
-function pm_data_get_tasks ($group_project_id) {
-	global $pm_data_tasks;
-	if (!$pm_data_tasks["$group_project_id"]) {
-		$sql="SELECT project_task_id,summary ".
-			"FROM project_task ".
-			"WHERE group_project_id='$group_project_id' ".
-			"AND status_id <> '3' ORDER BY project_task_id DESC";
-		$pm_data_tasks["$group_project_id"]=db_query($sql,100);
-	}
-	return $pm_data_tasks["$group_project_id"];
-}
-
-/**
- * pm_data_get_subprojects() - Return a result set of subprojects for this group
- *
- * @param		int		The ID of the group
- * @returns Database result set
- *
- */
-function pm_data_get_subprojects ($group_id) {
-	global $pm_data_subprojects;
-	if (!$pm_data_subprojects["$group_id"]) {
-		$sql="SELECT group_project_id,project_name ".
-			"FROM project_group_list WHERE group_id='$group_id'";
-		$pm_data_subprojects["$group_id"]=db_query($sql);
-	}
-	return $pm_data_subprojects["$group_id"];
-}
-
-/**
- * pm_data_get_other_tasks() - Return a result set of tasks in this subproject that do not equal 
- *	the passed in task_id
- *
- * @param		int		The ID of the project group
- * @param		int		The ID of the task
- * @returns Database result set
- *
- */
-function pm_data_get_other_tasks ($group_project_id,$project_task_id) {
-	$sql="SELECT project_task_id,summary ".
-		"FROM project_task ".
-		"WHERE group_project_id='$group_project_id' ".
-		"AND status_id <> '3' ".
-		"AND project_task_id <> '$project_task_id' ORDER BY project_task_id DESC";
-	return db_query($sql,100);
-}
-
-/**
- * pm_data_get_technicians() - Return a result set of pm technicians in this group
- *
- * @param		int		The ID of the group
- * @returns Datbase result set
- *
- */
-function pm_data_get_technicians ($group_id) {
-	global $pm_data_technicians;
-	if (!$pm_data_technicians["$group_id"]) {
-		$sql="SELECT users.user_id,users.user_name ".
-			"FROM users,user_group ".
-			"WHERE users.user_id=user_group.user_id ".
-			"AND user_group.group_id='$group_id' ".
-			"AND user_group.project_flags IN (1,2) ".
-			"ORDER BY users.user_name";
-		$pm_data_technicians["$group_id"]=db_query($sql);
-	}
-	return $pm_data_technicians["$group_id"];
-}
-
-/**
- * pm_data_get_dependent_tasks() - Return result set of ids of tasks that are dependent on this task
- *
- * @param		int		The project task ID
- * @returns Database result set
- *
- */
-function pm_data_get_dependent_tasks ($project_task_id) {
-	$sql="SELECT is_dependent_on_task_id ".
-		"FROM project_dependencies ".
-		"WHERE project_task_id='$project_task_id'";
-	return db_query($sql);
-}
-
-/**
- * pm_data_get_assigned_to() - Return result set of user_ids that are assigned this task
- *
- * @param		int		The project task ID
- * @returns Database result set
- *
- */
-function pm_data_get_assigned_to ($project_task_id) {
-	$sql="SELECT assigned_to_id ".
-		"FROM project_assigned_to ".
-		"WHERE project_task_id='$project_task_id'";
-	return db_query($sql);
-}
-
-/**
- * pm_data_get_statuses() - Return result set of statuses
- *
- * @returns Database result set
- *
- */
-function pm_data_get_statuses () {
-	global $pm_data_statuses;
-	if (!$pm_data_statuses) {
-		$sql='SELECT * FROM project_status';
-		$pm_data_statuses=db_query($sql);
-	}
-	return $pm_data_statuses;
-}
-
-/**
- * pm_data_get_status_name() - Simply return status_name from bug_status
- *
- * @param		string	Status ID 
- * @returns Databse result set on success/Error string on error
- *
- */
-function pm_data_get_status_name($string) {
-	$sql="SELECT * FROM project_status WHERE status_id='$string'";
-	$result=db_query($sql);
-	if ($result && db_numrows($result) > 0) {
-		return db_result($result,0,'status_name');
-	} else {
-		return 'Error - Not Found';
-	}
-}
-
-/**
- * pm_data_get_group_name() - Simply return the resolution name for this id
- *
- * @param		int		The group project ID
- * @returns Database result set on success/Error string one rror
- *
- */
-function pm_data_get_group_name($group_project_id) {
-	$sql="SELECT * FROM project_group_list WHERE group_project_id='$group_project_id'";
-	$result=db_query($sql);
-	if ($result && db_numrows($result) > 0) {
-		return db_result($result,0,'project_name');
-	} else {
-		return 'Error - Not Found';
-	}
-}
-
-/**
- * pm_data_create_history() - Handle the insertion of history for these parameters
- *
- * @param		string	The field name
- * @param		string	The old value
- * @param		int		The project task ID
- * @returns true on success/false on error
- *
- */
-function pm_data_create_history ($field_name,$old_value,$project_task_id) {
-	global $feedback;
-	
-	$sql="insert into project_history(project_task_id,field_name,old_value,mod_by,date) ".
-		"VALUES ('$project_task_id','$field_name','$old_value','".user_getid()."','".time()."')";
-	$result=db_query($sql);
-	if (!$result) {
-		$feedback .= ' ERROR IN AUDIT TRAIL - '.db_error();
-		return false;
-	} else {
-		return true;
-	}
-}
-
-/**
- * pm_data_insert_assigned_to() - Insert the people this task is assigned to
- *
- * @param		array	An array of project ID's
- * @param		int		The project task ID
- * @returns true on success/false on error
- *
- */
-function pm_data_insert_assigned_to($array,$project_task_id) {
-	global $feedback;
-		
-	$user_count=count($array);
-	if ($user_count < 1) {
-		//if no users selected, insert user "none"
-		$sql="INSERT INTO project_assigned_to (project_task_id,assigned_to_id) 
-			VALUES ('$project_task_id','100')";
-		$result=db_query($sql);
-		if (!$result) {
-			return false;
-		} else {
-			return true;
-		}
-	} else {
-		for ($i=0; $i<$user_count; $i++) {
-			if (($user_count > 1) && ($array[$i]==100)) {
-				//don't insert the row if there's more 
-				//than 1 item selected and this item is the "none user"
-			} else {
-				$sql="INSERT INTO project_assigned_to (project_task_id,assigned_to_id) 
-					VALUES ('$project_task_id','$array[$i]')";
-				//echo "\n$sql";
-				$result=db_query($sql);
-				if (!$result) {
-					$feedback .= ' ERROR inserting project_assigned_to '.db_error();
-					return false;
-				}
-			}
-		}
-		return true;
-	}
-}
-
-/**
- * pm_data_update_assigned_to() - Delete then Insert the people this task is assigned to
- *
- * @param		array	An array of project ID's
- * @param		int		The project task ID
- * @returns Return value of pm_data_insert_assigned_to()
- * @see pm_data_insert_assigned_do()
- *
- */
-function pm_data_update_assigned_to($array,$project_task_id) {
-	$toss=db_query("DELETE FROM project_assigned_to WHERE project_task_id='$project_task_id'");
-	return pm_data_insert_assigned_to($array,$project_task_id);
-}
-
-/**
- * pm_data_insert_dependent_tasks() - Insert the list of dependencies
- *
- * @param		array	An array of project ID's
- * @param		int		The project task ID
- * @returns true on success/false on error
- *
- */
-function pm_data_insert_dependent_tasks($array,$project_task_id) {
-	global $feedback;
-		
-	$depend_count=count($array);
-	if ($depend_count < 1) {
-		//if no tasks selected, insert task "none"
-		$sql="INSERT INTO project_dependencies (project_task_id,is_dependent_on_task_id) 
-			VALUES ('$project_task_id','100')";
-		$result=db_query($sql);
-		if (!$result) {
-			return false;
-		} else {
-			return true;
-		}
-	} else {
-		for ($i=0; $i<$depend_count; $i++) {
-			if (($depend_count > 1) && ($array[$i]==100)) {
-				//don't insert the row if there's more
-				//than 1 item selected and this item is the "none task"
-			} else {
-				$sql="INSERT INTO project_dependencies (project_task_id,is_dependent_on_task_id) 
-					VALUES ('$project_task_id','$array[$i]')";
-				//echo "\n$sql";
-				$result=db_query($sql);
-	
-				if (!$result) {
-					$feedback .= ' ERROR inserting dependent_tasks '.db_error();
-					return false;
-				}
-			}
-		}
-		return true;
-	}
-}
-
-/**
- * pm_data_update_dependend_tasks() - Delete then Insert the list of dependencies
- *
- * @param		array	An array of project ID's
- * @param		int		The project task ID
- * @returns true on success/false on error
- *
- */
-function pm_data_update_dependent_tasks($array,$project_task_id) {
-	$toss=db_query("DELETE FROM project_dependencies WHERE project_task_id='$project_task_id'");
-	return pm_data_insert_dependent_tasks($array,$project_task_id);
-}
-
-/**
- * pm_data_create_task() - Creates a new task in the task mgr
- * NOTE: Does no handle security!!
- *
- * @param		int		The group project ID
- * @param		int		The starting month
- * @param		int		The starting day
- * @param		int		The starting year
- * @param		int		The starting hour
- * @param		int		The starting minute
- * @param		int		The ending month
- * @param		int		The ending day
- * @param		int		The ending year
- * @param		int		The ending hour
- * @param		int 		The ending minute
- * @param		string		The task summary
- * @param		string		Details of the task
- * @param		int		The completed percentage of the task
- * @param		int		The task priority
- * @param		int		The number of hours exptected to complete this task
- * @param		int		The user ID of the person to which this task is assigned
- * @param		int		on The task ID on which this task depends
- * @returns Nnew project_task_id or false and $feedback
- *
- */
-function pm_data_create_task ($group_project_id,$start_month,$start_day,$start_year,$start_hour,$start_minute,$end_month,$end_day,
-		$end_year,$end_hour,$end_minute,$summary,$details,$percent_complete,$priority,$hours,$assigned_to,$dependent_on) {
-
-	global $feedback;
-	if (!$group_project_id || !$start_month || !$start_day || !$start_year || !$end_month || !$end_day || 
-		!$end_year || !$summary || !$details || !$priority) {
-		$feedback .= ' ERROR - Missing Required Parameters ';
-		return false;
-	}
-
-	if (mktime($start_hour,$start_minute,0,$start_month,$start_day,$start_year) > mktime($end_hour,$end_minute,0,$end_month,
-		$end_day,$end_year)) {
-		exit_error('Error','End Date Must Be Greater Than Begin Date');
-	}
-
-	db_begin();
-	db_query("SET TRANSACTION ISOLATION LEVEL SERIALIZABLE");
-//	echo "SERIALIZABLE ERROR: ".db_error();
-
-	$res=db_query("SELECT nextval('project_task_pk_seq') AS id");
-	$project_task_id=db_result($res,0,'id');
-
-//echo "<BR>$project_task_id";
-
-    if (!pm_data_insert_dependent_tasks($dependent_on,$project_task_id)) {
-        db_rollback();
-        $feedback .= ' ERROR inserting assigned to ';
-        return false;
-    }
-
-	$sql="INSERT INTO project_task (group_project_id,project_task_id,summary,details,percent_complete,".
-		"priority,hours,start_date,end_date,".
-		"created_by,status_id) VALUES ('$group_project_id','$project_task_id','".htmlspecialchars($summary)."',".
-		"'".htmlspecialchars($details)."','$percent_complete','$priority','$hours','".
-		mktime($start_hour,$start_minute,0,$start_month,$start_day,$start_year)."','".
-		mktime($end_hour,$end_minute,0,$end_month,$end_day,$end_year)."','".user_getid()."','1')";
-
-
-	$result=db_query($sql);
-//	$project_task_id=db_insertid($result,'project_task','project_task_id');
-	echo db_error();
-
-	if (!$result || !$project_task_id) {
-		$feedback .= ' ERROR INSERTING ROW '.db_error();
-		db_rollback();
-		return false;
-	} else {
-		$feedback .= ' Successfully added task ';
-		if (!pm_data_insert_assigned_to($assigned_to,$project_task_id)) {
-			db_rollback();
-			$feedback .= ' ERROR inserting assigned to ';
-			return false;
-		}
-/*		if (!pm_data_insert_dependent_tasks($dependent_on,$project_task_id)) {
-			db_rollback();
-			$feedback .= ' ERROR inserting assigned to ';
-			return false;
-		}
-*/		mail_followup($project_task_id,$group_project_id,false,1);
-		db_commit();
-		return $project_task_id;
-	}
-}
-
-/**
- * pm_data_update_task() - Update a task
- * NOTE: Does not handle security at this time!
- * This assumes that you have verified this $group_project_id truly belongs to this $group_id
- * AND that this user is a project_task_admin
- *
- * @param		int		The group project ID
- * @param		int		The starting month
- * @param		int		The starting day
- * @param		int		The starting hour
- * @param		int		The ending month
- * @param		int		The ending day
- * @param		int		The ending year
- * @param		int 		The ending hour
- * @param		string		The task summary
- * @param		string		Details of the task
- * @param		int		The completed percentage of the task
- * @param		int		The task priority
- * @param		int		The number of hours exptected to complete this task
- * @param		int		The user ID of the person to which this task is assigned
- * @param		int		The task ID on which this task depends
- * @returns Nnew project_task_id or false and $feedback
- * @returns true/false and $feedback string
- *
- */
-function pm_data_update_task ($group_project_id,$project_task_id,$start_month,$start_day,$start_year,
-		$start_hour,$start_minute,$end_month,$end_day,$end_year,$end_hour,$end_minute,$summary,$details,$percent_complete,
-		$priority,$hours,$status_id,$assigned_to,$dependent_on,$new_group_project_id,$group_id) {
-
-	global $feedback;
-	if (!$group_project_id || !$project_task_id || !$status_id || !$start_month || !$start_day || !$start_year || 
-		!$end_month || !$end_day || !$end_year || !$summary || !$priority || !$new_group_project_id || !$group_id ) {
-		$feedback .= ' ERROR - Missing Parameters: YEah! ';
-		return false;
-	}
-	$sql="SELECT * FROM project_task WHERE project_task_id='$project_task_id' AND group_project_id='$group_project_id'";
-
-	$result=db_query($sql);
-
-	if (db_numrows($result) < 1) {
-		$feedback .= ' ERROR - Task Doesn\'t Exist In This Subproject ';
-		return false;
-	}
-
-	/*
-		Enforce start date > end date
-	*/
-	if (mktime($start_hour,$start_minute,0,$start_month,$start_day,$start_year) > mktime($end_hour,$end_minute,0,$end_month,$end_day,$end_year)) {
-		$feedback .= ' ERROR - End Date Must Be Greater Than Start Date ';
-		return false;
-	}
-
-	db_begin();
-	db_query("SET TRANSACTION ISOLATION LEVEL SERIALIZABLE");
-	if (!pm_data_update_dependent_tasks($dependent_on,$project_task_id)) {
-		db_rollback();
-		$feedback .= ' ERROR updating dependent tasks ';
-		return false;
-	}
-
-	/*
-		If changing subproject, verify the new subproject belongs to this project
-	*/
-	if ($group_project_id != $new_group_project_id) {
-		$sql = "SELECT group_id FROM project_group_list WHERE group_project_id='$new_group_project_id'";
-		
-		if (db_result(db_query($sql),0,'group_id') != $group_id) {
-			$feedback .= ' You can not put this task into the subproject of another group. ';
-			db_rollback();
-			return false;
-		} else {
-			pm_data_create_history ('subproject_id',$group_project_id,$project_task_id);
-		}
-	}
-
-	/*
-		See which fields changed during the modification
-		and create audit trail
-	*/
-
-	if (db_result($result,0,'status_id') != $status_id)
-		{ pm_data_create_history ('status_id',db_result($result,0,'status_id'),$project_task_id);  }
-
-	if (db_result($result,0,'priority') != $priority)
-		{ pm_data_create_history ('priority',db_result($result,0,'priority'),$project_task_id);  }
-
-	if (db_result($result,0,'summary') != htmlspecialchars(stripslashes($summary)))
-		{ pm_data_create_history ('summary',addslashes(db_result($result,0,'summary')),$project_task_id);  }
-
-	if (db_result($result,0,'percent_complete') != $percent_complete)
-		{ pm_data_create_history ('percent_complete',db_result($result,0,'percent_complete'),$project_task_id);  }
-
-	if (db_result($result,0,'hours') != $hours)
-		{ pm_data_create_history ('hours',db_result($result,0,'hours'),$project_task_id);  }
-
-	if (db_result($result,0,'start_date') != mktime($start_hour,$start_minute,0,$start_month,$start_day,$start_year))
-		{ pm_data_create_history ('start_date',db_result($result,0,'start_date'),$project_task_id);  }
-
-	if (db_result($result,0,'end_date') != mktime($end_hour,$end_minute,0,$end_month,$end_day,$end_year))
-		{ pm_data_create_history ('end_date',db_result($result,0,'end_date'),$project_task_id);  }
-
-	/*
-		Details field is handled a little differently
-
-		Details are comments attached to bugs
-		They are still stored in the project_history (audit trail)
-		system, but they are not shown in the regular audit trail
-
-		Someday, these should technically be split into their own table.
-	*/
-	if ($details != '') 
-		{ pm_data_create_history ('details',htmlspecialchars($details),$project_task_id);  }
-
-	if (!pm_data_update_assigned_to($assigned_to,$project_task_id)) {
-		db_rollback();
-		$feedback .= ' ERROR updating assigned to ';
-		return false;
-	}
-
-	/*
-		Update the actual db record
-	*/
-	$sql="UPDATE project_task SET status_id='$status_id', priority='$priority',".
-		"summary='".htmlspecialchars($summary)."',start_date='".
-		mktime($start_hour,$start_minute,0,$start_month,$start_day,$start_year)."',end_date='".
-		mktime($end_hour,$end_minute,0,$end_month,$end_day,$end_year)."',hours='$hours',".
-		"percent_complete='$percent_complete', ".
-		"group_project_id='$new_group_project_id' ".
-		"WHERE project_task_id='$project_task_id' AND group_project_id='$group_project_id'";
-
-	$result=db_query($sql);
-	if (!$result) {
-		$feedback .= ' ERROR - Database Update Failed '.db_error();
-		db_rollback();
-		return false;
-	} else {
-		$feedback .= ' Successfully Modified Task ';
-		mail_followup($project_task_id,$new_group_project_id);
-		db_commit();
-		return true;
-	}
-
-}
-
-/**
- * mail_followup() - Send a message to the person who opened this task and the person(s) it is assigned to
- * Accepts the unique id of a task, its group project id and optionally a list of additional addresses to send to
- *
- * @param		int		The project task ID
- * @param		int		The group project ID
- * @param		string	The additional addresses to send the followup
- * @param		bool	The flag of whether this is a new task or not
- *
- */
-function mail_followup($project_task_id,$group_project_id,$more_addresses=false,$new_task=0) {
-	global $sys_datefmt,$feedback;
-
-	$sql="SELECT project_task.*, project_group_list.*, groups.group_name,groups.new_task_address, ".
-		"groups.send_all_tasks,project_status.status_name,users.email, ".
-                "users.user_name AS creator_name ".
-		"FROM project_task,project_group_list,project_status,users,groups ".
-		"WHERE project_task_id='$project_task_id' ".
-		"AND project_task.group_project_id='$group_project_id' ".
-		"AND project_task.status_id=project_status.status_id ".
-		"AND project_task.group_project_id=project_group_list.group_project_id ".
-		"AND groups.group_id=project_group_list.group_id ".
-		"AND project_task.created_by=users.user_id";
-		
-	$result=db_query($sql);
-	
-	if ($result && db_numrows($result) > 0) {
-	
-		// Send a message to the task creator
-		$to = db_result($result,0,'email');
-
-		// Build the list of developers assigned this task
-		$sql="SELECT users.email AS Email,users.user_name ".
-			"FROM users,project_assigned_to ".
-			"WHERE project_assigned_to.project_task_id='$project_task_id' ".
-			"AND users.user_id=project_assigned_to.assigned_to_id";
-
-		$result3=db_query($sql);
-		$rows=db_numrows($result3);
-		if ($result3 && $rows > 0) {
-			$to .= ', ' . implode(result_column_to_array($result3),', ');
-			$assignees = implode(result_column_to_array($result3, 1),', ');
-		}
-
-		$body = "Task #".db_result($result,0,"project_task_id")." has been updated. ".
-			"\n\nProject: ".db_result($result,0,'group_name').
-			"\nSubproject: ".db_result($result,0,'project_name').
-			"\nSummary: ".util_unconvert_htmlspecialchars(db_result($result,0,'summary')).
-			"\nComplete: ".db_result($result,0,'percent_complete')."%".
-			"\nStatus: ".db_result($result,0,'status_name').
-			"\nAuthority  : ".db_result($result,0,'creator_name').
-			"\nAssigned to: ".$assignees.
-			"\n\nDescription: ".db_result($result,0,'details');
-			
-		/*      
-			Now get the followups to this task
-		*/
-		$sql="SELECT project_history.field_name,project_history.old_value,project_history.date,users.user_name ".
-			"FROM project_history,users ".
-			"WHERE project_history.mod_by=users.user_id AND project_history.field_name = 'details' ".
-			"AND project_task_id='$project_task_id' ORDER BY project_history.date DESC";
-		$result2=db_query($sql);
-		$rows=db_numrows($result2);
-		if ($result2 && $rows > 0) {
-			$body .= "\n\nFollow-Ups:";
-			for ($i=0; $i<$rows;$i++) {
-				$body .= "\n\n-------------------------------------------------------";
-				$body .= "\nDate: ".date($sys_datefmt,db_result($result2,$i,'date'));
-				$body .= "\nBy: ".db_result($result2,$i,'user_name');
-				$body .= "\n\nComment:\n".util_unconvert_htmlspecialchars(db_result($result2,$i,'old_value'));
-			}
-		}
-		$body .= "\n\n-------------------------------------------------------".
-			"\nFor more info, visit:".
-			"\n\nhttp://$GLOBALS[sys_default_domain]/pm/task.php?func=detailtask&project_task_id=".
-				db_result($result,0,'project_task_id')."&group_id=".
-				db_result($result,0,'group_id')."&group_project_id=".db_result($result,0,'group_project_id');
-		
-		$subject="[Task #".db_result($result,0,'project_task_id').'] '.
-			util_unconvert_htmlspecialchars(db_result($result,0,'summary'));
-		
-		
-		// Append the list of additional receiptients
-		if ($more_addresses) {
-			$to .= ', ' . $more_addresses;
-		}
-		
-		// If this is a new task, or if send all tasks == 1,
-		// append the new_task_address for the group
-		if (($new_task && db_result($result,0,'new_task_address')) || db_result($result,0,'send_all_tasks')) {
-			$to .= ', ' . db_result($result,0,'new_task_address');
-		}
-		
-		util_send_message($to,$subject,$body);
-		
-		$feedback .= " Task Update Sent ";
-		
-	} else {	
-	
-		$feedback .= " Could Not Send Task Update ";
-		echo db_error();
-		
-	}       
-}       
-
-?>

Deleted: trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/db-scheme.sql
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/db-scheme.sql	2011-02-24 14:54:28 UTC (rev 7976)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/db-scheme.sql	2011-02-24 14:54:29 UTC (rev 7977)
@@ -1,62 +0,0 @@
-create table project_group_list (
-group_project_id int not null primary key auto_increment,
-group_id int not null,
-project_name text not null
-);
-
-create index idx_project_group_list_group_id on project_group_list(group_id);
-
-create table project_task (
-project_task_id int not null primary key auto_increment,
-group_project_id int not null,
-summary text not null,
-details text not null,
-percent_complete int not null,
-priority int not null,
-hours int not null,
-start_date int not null,
-end_date int not null,
-created_by int not null,
-status_id int not null
-);
-
-create index idx_project_task_group_project_id on project_task(group_project_id);
-
-create table project_dependencies (
-project_depend_id int not null auto_increment primary key,
-project_task_id int not null,
-is_dependent_on_task_id int not null
-);
-
-create index idx_project_dependencies_task_id on project_dependencies(project_task_id);
-create index idx_project_is_dependent_on_task_id on project_dependencies(is_dependent_on_task_id);
-
-create table project_assigned_to (
-project_assigned_id int not null auto_increment primary key,
-project_task_id int not null,
-assigned_to_id int not null
-);
-
-create index idx_project_assigned_to_task_id on project_assigned_to(project_task_id);
-create index idx_project_assigned_to_assigned_to on project_assigned_to(assigned_to_id);
-
-create table project_history (
-project_history_id int not null auto_increment primary key,
-project_task_id int not null,
-field_changed text not null,
-old_value text not null,
-mod_by int not null,
-date int not null
-);
-
-create index idx_project_history_task_id on project_history(project_task_id);
-
-create table project_status (
-status_id int not null primary key auto_increment,
-status_name text not null
-);
-
-insert into project_status values ('','Open');
-insert into project_status values ('','Closed');
-insert into project_status values ('100','None');
-

Deleted: trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm-er-diagram.sda
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm-er-diagram.sda	2011-02-24 14:54:28 UTC (rev 7976)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm-er-diagram.sda	2011-02-24 14:54:29 UTC (rev 7977)
@@ -1,269 +0,0 @@
-ÐÏࡱá                ;  þÿ	               B                þÿÿÿ        ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿþÿÿÿ      þÿÿÿ      	   
-         
-                                                             !   "   #   $   %   &   '   (   )   *   +   ,   -   .   þÿÿÿ0   1   2   3   4   5   6   7   8   9   :   ;   <   =   >   ?   @   A   þÿÿÿC   D   þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿR o o t   E n t r y                                               ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ                                                                            ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ                                                                            ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ                                                                            ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ        þÿÿÿþÿÿÿþÿÿÿ               	   
-         
-            þÿÿÿþÿÿÿ            þÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ þÿ
-  ÿÿÿÿ ‰.½…щР€)ä°±   Drawing 
-   StarDraw 5.0                                                                        òñÿÿÀ
-  +R  ˜C                                                SfxDocumentInfo                                    ¢.1¬g                                  ¢.1$ºÚ                                 ¢.1¬‚Ú                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      Info 0                                   Info 1                                   Info 2                                   Info 3                                      ¢.1 ëŒ ˜‚&        <                                       TASK,0,1
- 1,0,100,1,                                          þÿ                        à…ŸòùOh«‘ +'³Ù0   ø      	   h   
-   t      €   
-   Œ      ˜      ¤      °      ¼      È      Ô      à      ì         6   @    _Ù   @   €³ë…©¿@   €ªé'†©¿@   €vg©¿                                                                                                                                                              »» ÿÿ    K     XOutdevItemPool      1   èèéêëìíîïðñòóôõö÷øùúûüý
- è)èéêëìíîïðñùúûüýþ	
-
-&'()*+,-./06789:;UVWXYZ[\] ècèéêëìíîïðñòóôõö÷øùúûüýþÿ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrst ètèéêëìíîïðñòóôõö÷øùúûüýþÿ 	
-
- !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdef”•–—˜™š›œžŸ ¡    d   î   ì    0 ƒ ?  ¹'è       @  q          X  X  º'é    ,   @  ­       ÿÿÿÿ               X  »'ê    :   @  ç           –     2     L   X  X  X  X&  ¼'ë        @         ÿÿÿÿ €      X  ½'ì    å   @         ÿÿÿÿ       Arrowÿÿÿÿ   
-                                   Arrowÿÿÿÿ   d           È                   d              Arrowÿÿÿÿ   }           ú   ú           ú       }           X  X  XS  X–  ¾'í    ª   @  ¾       ÿÿÿÿ       Arrowÿÿÿÿ   d           È                   d              Arrowÿÿÿÿ   }           ú   ú           ú       }           X  X  X_  ¿'î    F   @       ,    ¼    È     ú       X  X  X  X&  X.  À'ï    :   @  R     ,    È     ú       X  X  X  X&  Á'ð       @  ‚        X  X  Â'ñ       @  ¥      X  òò    
-   @   ¿  óó    
-   @   Õ  ôô    
-   @   ë  õõ    
-   @     öö    
-   @     ÷÷    
-   @   -  øø    
-   @   C  ´'ú       @  e          X  X  µ'û    b   @  Ë       ÿÿÿÿ €  ¸¸ÿÿ    ÿÿÿÿ €  €€€€    ÿÿÿÿ €ÿÿÌÌ™™    ÿÿÿÿ €ÿÿÿÿÿÿX  X   X2  XD  ¶'ü   6   @         ÿÿÿÿ        ÿÿÿÿÿÿ      2 2 d d   X  ·'ý    (   @  M       ÿÿÿÿ               X  ¸'þ   "  @  {	       ÿÿÿÿ    BMv      v   (   @   @     SD                   Ä   @      x^íSI
-Ã0ô¯sŒ½å\èzéü ÿ
-ª–46•Z…Bn›8x‘Ç)1²Ì”³.<觔B+ï Ì„¨Þ¢Ï40:prf
-š‡·í|q±ìüâÊ]~½+Háë•~|ðWíF¼ðúúMñbÀöž þâPÙ@úaüoÌCÄ“Ø[½È¡z¼6~U{Û߃<ª½Õ?¥ †ü–{¿rü=+Îý÷ô—|´¨ý•¿.©MåÛxò³åG¦
-Ü«±X  ÿÿ    
-   @   •	        
-   @   «	      
-   @   Á	      
-   @   ×	      
-   @   í	      
-   @   
-      
-   @   
-      
-   @   /
-      
-   @   E
-      
-   @   [
-  		    
-   @   q
-  
-
-    
-   @   ‡
-      
-   @   
-      
-   @   ³
-  
-
-    
-   @   É
-      
-   @   ß
-      
-   @   õ
-      
-   @         
-   @   !      
-   @   7      
-   @   M      
-   @   c      
-   @   y      
-   @     (    
-   @   ¥  (    
-   @   »  (    
-   @   Ñ  (    
-   @   ç  (    
-   @   ý  (    
-   @     (    
-   @   )  (    
-   @   ?  (     
-   @   U  (!    
-   @   k  ("    
-   @     (#    
-   @   —  $$    
-   @   ­  %%    
-   @   Ã  &&    
-   @   Ù  ''    
-   @   ï  ((    
-   @   
-  ))    
-   @   
-  ;(+       @  ;
-        X  X  ,,        @  k
-       ÿÿÿÿ €€€€€€€X  --    "   @  •
-     ,    È   X  X  ..    "   @  Ã
-     ,    È   X  X  //    
-   @   á
-  00    
-   @   ÷
-  11    
-   @   
-  22    
-   @   #  33    
-   @   9  44    
-   @   O  55    
-   @   e  66    
-   @   {  II       @  ™    ž   X  JJ    :   @  Ó     ¸g    A%    \)        X  X  X  X&  KK       @          X  X  (L    
-   @   !  MM    
-   @   7  NN    
-   @   M  OO    
-   @   c  PP    
-   @   y  QQ       @  •      X  RR    
-   @   ¯  SS    "   @  Õ           q  X  X  TT    
-   @   ó  UU       @          X  X  VV       @  =          X  X  WW    
-   @   [  XX    
-   @   q  YY    
-   @   ‡  ZZ    
-   @     [[    
-   @   ³  \\    
-   @   É  ]]    
-   @   ß  ^^    
-   @   õ  __    
-   @     ``    
-   @   !  aa    
-   @   7  bb    
-   @   M  cc    
-   @   c  dd    
-   @   y  ee    
-   @     gg       @  «    	  X  hh    
-   @   Å  ii    
-   @   Û  jj    
-   @   ñ  kk    
-   @     ll    
-   @     mm    
-   @   3  nn       @  O      X  oo    v   @ 	 ±     Z           Éÿÿÿ  w     €    úÿÿ   úÿÿ  Lûÿÿ  pÿÿÿX  X  X  X&  X.  X6  X>  XF  XN  pp    
-   @   ë  qq    
-   @     rr    
-   @     ss    
-   @   -  tt    
-   @   C  uu    
-   @   Y  vv    
-   @   o  ww    
-   @   …  xx    
-   @   ›  yy    
-   @   ±  ùù    ò   @ 
- ‡          è¹'               
- è¹'  éº'  ê»'  ë¼'  ì½'  í¾' î¿'  ïÀ' ðÁ'  ñÂ'     ì½' í¾' î¿' ïÀ'  	  í¾' ïÀ' 	   è¹' ë¼'     ê»' î¿' ïÀ' X  X  X   X&  X,  X2  Xt  X’  X¤  X¶    
-  ¬   @ 	 C          ú´' ûµ'        ûµ'    ûµ'    ú´'  ûµ'  ü¶'  ý·'  þ¸'     ú´' ûµ'  
-      ú´' X  X  X&  X,  X8  XD  Xh  Xz  X€  **    F   @  ¡                    
-       X  X  X  X   X&  X,  77    h   @                                +;(  ,,  --  ..  X  X  X  X   X&  X,  X2  HH  
-  þ   @ 
-           £+'    £+'            ¦' §'    šg*  œœ  Ÿ
-(   @'  ¡A'  ¢1'  £+'  ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'   
-  ¦' §'    ¦' §' 	    X  X  X   X,  X2  X8  XJ  X°  XÂ  XÔ  ff      @  +          QQ  VV     JJ  KK  QQ  VV     JJ KK     JJ KK     JJ  
-  QQ  VV     JJ KK SS  UU  VV    II QQ  VV  	    
-   JJ KK SS UU VV X  X  X&  XD  XV  Xh  Xt  X†  Xª  X  XÈ  zz    Ü   @ 	       nn     nn  oo    nn  oo    nn  oo    gg  nn  oo    gg  nn  oo    gg  nn  oo    nn  oo     nn  oo X  X  X,  X>  XP  Xh  X€  X˜  Xª      8   p   ¶   â   Ó  ‰  Û  !  I  h  ~  ”  ª  À  Ö  ì    ,  š  Ü    >  T  j  €  –  ¬    Ø  î      0  F  \  r  ˆ  ž  ´  Ê  à  ö    "  8  N  d  z    ¦  ¼  Ò  è  þ  	  *	  @	  V	  l	  ‚	  ˜	  ®	  Ä	  Ú	  
-  .
-  \
-  Š
-   
-  ¶
-  Ì
-  â
-  ø
-    $  :  \  ¢  Ê  à  ö    "  8  X  n  œ  ²  Ú  
-  
-  0
-  F
-  \
-  r
-  ˆ
-  ž
-  ´
-  Ê
-  à
-  ö
-    "  8  N  n  „  š  °  Æ  Ü  ò    ”  ª  À  Ö  ì      .  D  Z  p  n  &  x  ì  ö    
-   P   Y  ò%     EditEngineItemPool ¤         Ÿ¯Ÿ¡¢£¤¥¦§¨©ª«¬­±²³ Ÿ³Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°²³´ ´žŸ ¡¢£¤¥¦§©ª«¬­®¯°±²³´µ    6   f   u   0  4<  g*š   >  @  _4      
-              "                     ,    StarBats      N               ÿ                 €      -          " ¨ý°°              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ý`	`	              ,    StarBats      N               ÿ                 €      -          " ¨ý¸¸              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýhh              ,    StarBats      N               ÿ                 €      -          " ¨ýÀÀ              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýpp              ,    StarBats      N               ÿ                 €      -     
-              " X                  ,    StarBats      N               ÿ                 €      -          " ¨ý°°              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ý`	`	              ,    StarBats      N               ÿ                 €      -          " ¨ý¸¸              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýhh              ,    StarBats      N               ÿ                 €      -          " ¨ýÀÀ              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýpp              ,    StarBats      N               ÿ                 €      -     
-              "   È È               ,    StarBats      N               ÿ                 €      -          " ¨ý°°              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ý`	`	              ,    StarBats      N               ÿ                 €      -          " ¨ý¸¸              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýhh              ,    StarBats      N               ÿ                 €      -          " ¨ýÀÀ              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýpp              ,    StarBats      N               ÿ                 €      -     
- Z             •                             €      d          " |ü°°              ,    StarBats      N               ÿ                 €      -          – àü`	`	              ,    StarBats      N               ÿ                 €      K          " ¨ý              ,    StarBats      N               ÿ                 €      -          – ¨ýÀÀ              ,    StarBats      N               ÿ                 €      K          " ¨ýpp              ,    StarBats      N               ÿ                 €      -          " ¨ý                ,    StarBats      N               ÿ                 €      -          " ¨ýÐ Ð               ,    StarBats      N               ÿ                 €      -          " ¨ý€%€%              ,    StarBats      N               ÿ                 €      -          " ¨ý0*0*              ,    StarBats      N               ÿ                 €      -     
-              r                     ,    StarBats                     ÿ                 €      -          r   èè              ,    StarBats                     ÿ                 €      -          r   ÐÐ              ,    StarBats                     ÿ                 €      -          r   ¸¸              ,    StarBats                     ÿ                 €      -          r                   ,    StarBats                     ÿ                 €      -          r   ˆˆ              ,    StarBats                     ÿ                 €      -          r   pp              ,    StarBats                     ÿ                 €      -          r   XX              ,    StarBats                     ÿ                 €      -          r   @@              ,    StarBats                     ÿ                 €      -          r   (#(#              ,    StarBats                     ÿ                 €      -     	              " ¨ýXX              ,    StarBats      i               ÿ                 €      -          " ¨ý°°              ,    StarBats      i               ÿ                 €      -          " ¨ý              ,    StarBats      i               ÿ                 €      -          " ¨ý`	`	              ,    StarBats      i               ÿ                 €      -          " ¨ý¸¸              ,    StarBats      i               ÿ                 €      -          " ¨ý              ,    StarBats      i               ÿ                 €      -          " ¨ýhh              ,    StarBats      i               ÿ                 €      -          " ¨ýÀÀ              ,    StarBats      i               ÿ                 €      -          " ¨ý              ,    StarBats      i               ÿ                 €      -    X  X, XJ Xh XT Xr 6'›    
-   @   4  œœ       @  ¯4          X  X     >   @  ù4     xd   d   d x þ”Yü  d   d üd x X  X'  <(ž       @  5    !   X  
-(Ÿ   µ  @  Æ6       €                      StarBats  °   !"-         €                      StarBats       !"-         €                      StarBats       !r-         €                      StarBats  X   !"-         €                      StarBats  X   !"-         €                      StarBats       !"-         €                      StarBats       !r-     X  XG  X€  X¹  Xò  X+ Xd @'    i  @  8    (   d   d   d        d   d Xd        d È d   d      ,d   d |üd °   @d   d àüd `	   ¸d   d ¨ýd    hd   d ¨ýd À   d   d ¨ýd p   Èd   d ¨ýd   	  xd   d ¨ýd Ð  
-  (#d   d ¨ýd €%   Ø'd   d ¨ýd 0*     d   d ¨ýd X 
-    d   d   d    þ”Y      d   d ¨ýd X X  X!  X4  XG  XZ  Xm  X€  X“  X¦  X¹  XÌ  Xß  Xò  X X A'¡   Š   @  Í8       d   d   d d d d   ¤d Ò d     d ôd     d d     d ,d     d È d  
-   d d d X  X  X&  X2  X>  XJ  XV  Xb  1'¢       @  9     d  È   X  +'£   (   @  :9    
-         X  X  X  '¤    
-   @   \9  !'¥       @  ~9    $ €      X  '¦    ’   @  :   "  timmons   - 	 helvetica   
-  new century schoolbook   
-  
- open look cursor   ®  timmons  X  X   X4  XU  Xp  '§   Î   @  Â:    Nd 
-   4d 
-   d 
-   öd 
-   {d 
-   îd 
-  te§d 
-   hd 
- 	  Ûd 
- 
-  Ád 
-   d 
-   id 
-  )ƒd 
-  ÕDd 
- X  X  X"  X,  X6  X@  XJ  XT  X^  Xh  Xr  X|  X†  X  ?(¨    
-   @   ;  '©       @  0;    $  X  X  'ª       @  S;    $ X  '«       @  r;    $ X  '¬       @  –;    $   X  X  '­       @  ¹;    $ X  '®       @  Ø;    $ X  %'¯    
-   @   ò;  S'°    
-   @   <  "'±    
-   @   <  '²    
-   @   4<      X  n  ˜  â    Ã  8  Î  ó  '  =  c    Û  ñ    8  W    ž  ½  Ó  é  ÿ  ³  P  7A  g*š  
-              " ¨ýXX              ,    StarBats      N               ÿ                 €      -          " ¨ý°°              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ý`	`	              ,    StarBats      N               ÿ                 €      -          " ¨ý¸¸              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýhh              ,    StarBats      N               ÿ                 €      -          " ¨ýÀÀ              ,    StarBats      N               ÿ                 €      -          " ¨ý              ,    StarBats      N               ÿ                 €      -          " ¨ýpp              ,    StarBats      N               ÿ                 €      -  œœ    
-(Ÿ   €                      StarBats  °   !"-     !'¥   €      '¦    timmons  '§ Dd 
-     .  6  q    “ ü    2   î    + £O   Standard   Standard     ¾é  # è¹'  éº'  ê»'  ë¼'  ì½'  í¾'  î¿'  ïÀ'  ðÁ'  ñÂ'  ú´'  ûµ'  ü¶'  ý·'  þ¸'  +;(  ,,  --  ..  šg*  œœ  Ÿ
-(   @'  ¡A'  ¢1'  £+'  ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'         Object with arrow Standard Object with arrow     ¿é   è¹'  ê»' ë¼'  ì½' î¿' ïÀ'  ðÁ'        Object with shadow Standard Object with shadow     Àé   +;( ,,  --  ..         Object without fill Standard Object without fill     Áé   ú´'        Text Standard Text     Âé   è¹' ú´'       	 Text body Standard	 Text body     Ãé   è¹' ú´' §'        Text body justfied Standard Text body justfied     Äé   è¹' ú´' £+'        First line indent Standard First line indent     Åé   è¹' ú´' šg*  @'        Title Standard Title     Æé   è¹' ú´' §'        Title1 Standard Title1     Çé  	 è¹' ú´'  ûµ' +;( ,,  -- .. £+' §'        Title2 Standard Title2     Èé   ê»' ûµ' +;( ,,  -- .. šg*  @' ¡A' £+' §'        Heading Standard Heading     Éé   è¹' ú´' ¡A' §'        Heading1 Standard Heading1     Êé   è¹' ú´' ¡A' §' ©'        Heading2 Standard Heading2     Ëé   è¹' ú´' ¡A' §' ©' ¬'        Dimension Line Standard Dimension Line     Ìé   è¹'  ì½' í¾' î¿' ïÀ' ú´' §'        Home~LT~Gliederung 1   Home~LT~Gliederung 1þ¯ÿß  Ïé   è¹' ú´' šg* œœ  @' ¡A' £+'  ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'         Home~LT~Gliederung 2 Home~LT~Gliederung 1 Home~LT~Gliederung 2þ¯ÿß  Ðé    @' ¡A' §'	        Home~LT~Gliederung 3 Home~LT~Gliederung 2 Home~LT~Gliederung 3þ¯ÿß  Ñé    @' ¡A' §'        Home~LT~Gliederung 4 Home~LT~Gliederung 3 Home~LT~Gliederung 4þ¯ÿß  Òé    @' ¡A' §'
-        Home~LT~Gliederung 5 Home~LT~Gliederung 4 Home~LT~Gliederung 5þ¯ÿß  Óé    @' ¡A' §'
-        Home~LT~Gliederung 6 Home~LT~Gliederung 5 Home~LT~Gliederung 6þ¯ÿß  Ôé    @' ¡A' §'
-        Home~LT~Gliederung 7 Home~LT~Gliederung 6 Home~LT~Gliederung 7þ¯ÿß  Õé    @'	 ¡A' §'
-        Home~LT~Gliederung 8 Home~LT~Gliederung 7 Home~LT~Gliederung 8þ¯ÿß  Öé    @'
- ¡A' §'
-        Home~LT~Gliederung 9 Home~LT~Gliederung 8 Home~LT~Gliederung 9þ¯ÿß  ×é    @' ¡A' §'
-       
- Home~LT~Titel  
- Home~LT~Titelþ¯ÿß  Íé   è¹' ú´' QQ  šg* £+' ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'         Home~LT~Untertitel   Home~LT~Untertitelþ¯ÿß  Ýé   è¹' ú´' QQ  šg*  @' £+' ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'         Home~LT~Notizen   Home~LT~Notizenþ¯ÿß  Úé   è¹' ú´' ¥!'  ¦' §' ©'  ª'  «'  ¬'  ­'  ®'         Home~LT~Hintergrundobjekte   Home~LT~Hintergrundobjekteþ¯ÿß  Øé   +;(  ,,  --  ..         Home~LT~Hintergrund   Home~LT~Hintergrundþ¯ÿß  Ùé   è¹' ú´'        Title   Title  @  Íé           Subtitle   Subtitle  @  Ýé           Background objects   Background objects  @  Øé          
- Background  
- Background  @  Ùé           Notes   Notes  @  Úé          	 Outline 1  	 Outline 1  @  Ïé          	 Outline 2	 Outline 1	 Outline 2  @  Ðé          	 Outline 3	 Outline 2	 Outline 3  @  Ñé          	 Outline 4	 Outline 3	 Outline 4  @  Òé          	 Outline 5	 Outline 4	 Outline 5  @  Óé          	 Outline 6	 Outline 5	 Outline 6  @  Ôé          	 Outline 7	 Outline 6	 Outline 7  @  Õé          	 Outline 8	 Outline 7	 Outline 8  @  Öé          	 Outline 9	 Outline 8	 Outline 9  @  ×é                t  Ð    P  ”  ê  D  €  â  P  –  ä  8  ž  >  ¤  
-  p  Ö  <  ¢  	  n	  ô	  Š
-    f  °  Ò  ú  6  b  „  ®  á  
-  G
-  z
-  ­
-  à
-                                                                                                                                                                                                                                                                                                                                                                                                                                                    DrMd (    JoeMn   0   ¢.18êŒ    ¢.1$ºÚ    ¢.1lJÚ                    ÿÿ                               O  ö   DrLy      LAYER_LAYOUT  DrLy    
- LAYER_BCKGRND  DrLy      LAYER_BACKGRNDOBJ  DrLy     LAYER_CONTROLS  DrLy !    LAYER_MEASURELINES  DrMP À       &  JoeM   Çl  VT  Ð  Ð  Ð  Ð    DrML      DrOb <   SVDr &   ø  Ð  ’(  A&                     DrOb <   SVDr &   3D  Ð  Í[  A&                     DrOb <   SVDr &   ø  .  ’(  „L                     DrOb <   SVDr &   3D  .  Í[  „L                     DrXX     gg                   f                  Home~LT~Gliederung                                        ÿ    DrMP 8       ¶   JoeM   VT  Çl  {  y  ™  —    DrML      DrOb €   SVDr &   {  y  ½Q  0j               '          Home~LT~Hintergrundþ¯   {  y  ½Q  0j               DrXX     gg                   N                  Home~LT~Gliederung                       ÿ     DrMP ‡       ý  JoeM   VT  Çl  Ð  Ð  Ð  Ð    DrML      DrOb Þ   SVDr &   º  ç
-  ›8  '0                 !         
- Home~LT~Titelþ¯ƒ   º  ç
-  ›8  '0          d      xV4B1 O   õ    Click to move the slide
- Home~LT~Titelþ¯   ž<(  Ÿ
-(  @'
-            DrOb é   SVDr &   Ü  Ç3  ˆG  "]                 #          Home~LT~Notizenþ¯Œ   Ü  Ç3  ˆG  "]          m      xV4B1 X   õ    Click to edit the notes format Home~LT~Notizenþ¯  ž<(  Ÿ
-(  @'           DrXX     gg                   V                  Home~LT~Gliederung                            ÿ     DrPg ä        b   JoeM   Çl  VT  Ð  Ð  Ð  Ð    DrML 8    DrMD ,     ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿDrXX     Handoutsgg                   F                  Home~LT~Gliederung                ÿ    DrPg ¢       (  JoeM   VT  Çl  {  y  ™  —    DrML 8    DrMD ,    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿDrOb ß   SVDr &   ¶  h  mA  ½                       	       Standard ‰   ¶  h  mA  ½          j      xV4B1 U   õ    Task Manager Standard  ž<(  Ÿ
-(  @'  ¦' §'  ¦    §            DrOb Ý   SVDr &   „  6  
-  w"                    '          Object without fill |   ª  \  ä  Q"          ]      xV4B1 H   õ    User Object without fill  ž<(  Ÿ
-(  @'  ¦' §'           DrOb ß   SVDr &   „  ø&  
-  92                    '          Object without fill ~   ª  '  ä  2          _      xV4B1 J   õ    Groups Object without fill  ž<(  Ÿ
-(  @'  ¦' §'           DrOb )  SVDr &   7=  {  ½J  ¼                    '          Object without fill È   ]=  ¡  —J  –          ©      xV4B1 ’   õ    Project_ Object without fill  ž<(  Ÿ
-(  @'  ¦' §'    assigned_to Object without fill  ž<(  Ÿ
-(  @'  ¦' §'             DrOb $  SVDr &     :  >>  ·                              Standard            €ÿÿ€ÿÿ          ³   *    ä  Ö  !'  Ö  !'    ]=        DrCn $                         DrCn $                           ;                                               PF     ZDrOb (  SVDr &   Ò  q!  X$  ²,                    '          Object without fill Ç   ø  —!  2$  Œ,          ¨      xV4B1 ‘   õ    Project_ Object without fill  ž<(  Ÿ
-(  @'  ¦' §'   
- group_list Object without fill  ž<(  Ÿ
-(  @'  ¦' §'             DrOb $  SVDr &     0&  Ù  y-                              Standard            €ÿÿ€ÿÿ          ³   *    ä  ˜,  î  ˜,  î  '  ø  '      DrCn $                         DrCn $                           ;                                               PF     ZDrOb å   SVDr &   D)  ç$  Ê6  (0                    '          Object without fill „   j)  
-%  ¤6  0          e      xV4B1 P   õ    Project_task Object without fill  ž<(  Ÿ
-(  @'  ¦' §'           DrOb $  SVDr &   Q#  0&  K*  h+                              Standard            €ÿÿ€ÿÿ          ³   *    2$  '  >&  '  >&  ‡*  j)  ‡*      DrCn $                         DrCn $                          ;                                   pÿÿÿ        PF     ZDrOb "  SVDr &   Ã5  Ê  >>  '                              Standard        ´ûÿÿ€ÿÿ€ÿÿ          ±   *    ¤6  ;&  ô8  ;&  ô8  «  ]=  «      DrCn #                          DrCn #                           ;                                               PF     ZDrOb *  SVDr &   7=  $  ½J  e)                    '          Object without fill É   ]=  J  —J  ?)          ª      xV4B1 “   õ    Project_ Object without fill  ž<(  Ÿ
-(  @'  ¦' §'    dependencies Object without fill  ž<(  Ÿ
-(  @'  ¦' §'             DrOb "  SVDr &   Ã5  #  Û=  )                              Standard        ¨ýÿÿ€ÿÿ€ÿÿ          ±   *    ¤6  /(  F:  /(  F:  æ#  ú<  æ#      DrCn #                        DrCn #                           ;                                   w           PF     ZDrOb è   SVDr &   7=  Ì*  ½J  
-6                    '          Object without fill ‡   ]=  ò*  —J  ç5          h      xV4B1 S   õ    Project_history Object without fill  ž<(  Ÿ
-(  @'  ¦' §'           DrOb ç   SVDr &   7=  N7  ½J  B                    '          Object without fill †   ]=  t7  —J  iB          g      xV4B1 R   õ    Project_status Object without fill  ž<(  Ÿ
-(  @'  ¦' §'           DrOb $  SVDr &   Ã5  ¦)  >>  M1                              Standard            €ÿÿ€ÿÿ          ³   *    ¤6  ‡*  :  ‡*  :  l0  ]=  l0      DrCn $                         DrCn $                           ;                                               PF     ZDrOb "  SVDr &   Ã5  Æ,  >>  Ï=                            	  Standard           €ÿÿ€ÿÿ          ±   *    ]=  î<  ½8  î<  ½8  §-  ¤6  §-      DrCn #                          DrCn #                           ;                                   Éÿÿÿ    PF         ZDrOb #  SVDr &   L/  C  ZK  È%                              Standard            €ÿÿ€ÿÿ          ²   *    0  
-%  0  a  ŸJ  h  ŸJ  þ    DrCn $                          DrCn #                           ;                                       Lûÿÿ(#  xi     ZDrOb Á   SVDr &   kG  ô
-  ÜK  ;
-                       	     
-  Standard k   kG  ô
-  ÜK  ;
-          L      xV4B1 7   õ    Bugs Standard  Ÿ
-(  @'  ¦' §'           DrOb "  SVDr &     é  >>  A3                           	   Standard        ô  €ÿÿ€ÿÿ          ±   *    ä  Ê  {'  Ê  {'  `2  ]=  `2      DrCn #                          DrCn #                           ;                                   Z           PF     ZDrXX     gg                   F                  Home~LT~Gliederung                 ÿ     DrPg        {  JoeM   VT  Çl  Ð  Ð  Ð  Ð    DrML 8    DrMD ,    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿDrOb <   SVDr &   º  ç
-  ›8  '0                      DrOb Ý   SVDr &   Ü  Ç3  ˆG  #]                   #          Home~LT~Notizenþ¯€   Ü  Ç3  ˆG  #]          a      xV4B1 L   õ    Click to add notes Home~LT~Notizenþ¯  ž<(  Ÿ
-(  @'           DrXX     gg                   V                  Home~LT~Gliederung                            ÿ     DrXX   B          þÿÿGeneric Printer                                                                                                                 SGENPRT PostScript                D       VT  $m  áí   ²      VT  $m      d   ,,lpr                                                                                                                                                                                                                                                             default_queue                                                                                                                                                                                                                                                   SGENPRT                                                                                                                                                                                                                                                                                         	     DrVw P     SVDr€  
-   SVDr  :   SVDr    ö  ö  þ   þ   ö     ö                SVDrA  Layout  :   SVDr         è  è         þ      þ         SVDr  Ü        #   SVDr                            SVDr#            SVDr0     SVDr1    SVDr3    SVDr4    SVDr@ SVDr     SVDrD     SVDrP    SVDrQ Â    ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ                                ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿDrHL      DrHL      DrHL       òñÿÿÀ
-  +R  ˜C                                                 
-                                                                                                                                                                                                                                                                                                                                                                                                                          R o o t   E n t r y                                               ÿÿÿÿÿÿÿÿ    ‰.½…щР€)ä°±                       À       C o m p O b j                                                         ÿÿÿÿ                                        =        O l e                                                         
-  ÿÿÿÿÿÿÿÿÿÿÿÿ                                              p e r s i s t   e l e m e n t s                                 "        ÿÿÿÿ                                              S f x D o c u m e n t I n f o                                         ÿÿÿÿÿÿÿÿ                                       u      S f x W i n d o w s                                               ÿÿÿÿ   ÿÿÿÿ                                              S f x S t y l e S h e e t s                                       ÿÿÿÿÿÿÿÿÿÿÿÿ                                       OP       S u m m a r y I n f o r m a t i o n                           (     ÿÿÿÿÿÿÿÿ                                       (      S t a r D r a w D o c u m e n t 3                               $  ÿÿÿÿÿÿÿÿÿÿÿÿ                                    /   j$                                                                          ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ                                                                            ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ                                                                            ÿÿÿÿÿÿÿÿÿÿÿÿ                                    þÿÿÿ        
\ No newline at end of file

Deleted: trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm_utils.php
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm_utils.php	2011-02-24 14:54:28 UTC (rev 7976)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/www/pm/pm_utils.php	2011-02-24 14:54:29 UTC (rev 7977)
@@ -1,462 +0,0 @@
-<?php
-/**
-  *
-  * SourceForge Project/Task Manager (PM)
-  *
-  * SourceForge: Breaking Down the Barriers to Open Source Development
-  * Copyright 1999-2001 (c) VA Linux Systems
-  * http://sourceforge.net
-  *
-  * @version   $Id: pm_utils.php,v 1.83 2001/05/22 16:58:08 pfalcon Exp $
-  *
-  */
-
-
-/*
-
-	Project/Task Manager
-	By Tim Perdue, Sourceforge, 11/99
-	Heavy rewrite by Tim Perdue April 2000
-
-*/
-
-function pm_header($params) {
-	global $group_id,$is_pm_page,$words,$group_project_id,$DOCUMENT_ROOT,$order;
-
-	//required by site_project_header
-	$params['group']=$group_id;
-	$params['toptab']='pm';
-
-	//only projects can use the bug tracker, and only if they have it turned on
-	$project =& group_get_object($group_id);
-    if (!$project || !is_object($project)) {
-        exit_no_group();
-    }   
-
-	if (!$project->isProject()) {
-		exit_error('Error','Only Projects Can Use The Task Manager');
-	}
-	if (!$project->usesPm()) {
-		exit_error('Error','This Project Has Turned Off The Task Manager');
-	}
-
-	site_project_header($params);
-
-	echo "<P><B>";
-
-	echo "<A HREF=\"/pm/?group_id=$group_id\">Subproject List</A>";
-        $need_bar=1;
-	if ($group_project_id) {
-		if (session_loggedin()) {
-                	if ($need_bar) echo ' | ';
-			echo "<A HREF=\"/pm/task.php?group_id=$group_id&group_project_id=$group_project_id&func=addtask\">Add Task</A>";
-			echo " | <A HREF=\"/pm/task.php?group_id=$group_id&group_project_id=$group_project_id&func=browse&set=my\">My Tasks</A>";
-                	$need_bar=1;
-		}
-        	if ($need_bar) echo ' | ';
-		echo "<A HREF=\"/pm/task.php?group_id=$group_id&group_project_id=$group_project_id&func=browse&set=open\">Browse Open Tasks</A>";
-                $need_bar=1;
-	}
-       	if (session_loggedin()) {
-                if ($need_bar) echo ' | ';
-		echo '<A HREF="/pm/reporting/?group_id='.$group_id.'">Reporting</A>';
-                $need_bar=1;
-       	}
-        if ($need_bar) echo ' | ';
-	echo " <A HREF=\"/pm/admin/?group_id=$group_id\">Admin</A>";
-	echo "</B>";
-
-}
-
-function pm_footer($params) {
-	site_project_footer($params);
-}
-
-function pm_status_box($name='status_id',$checked='xyxy',$text_100='None') {
-	$result=pm_data_get_statuses();
-	return html_build_select_box($result,$name,$checked,true,$text_100);
-}
-
-function pm_tech_select_box($name='assigned_to',$group_id=false,$checked='xzxz') {
-	if (!$group_id) {
-		return 'ERROR - no group_id';
-	} else {
-		$result=pm_data_get_technicians ($group_id);
-		return html_build_select_box($result,$name,$checked);
-	}
-}
-
-function pm_multiple_task_depend_box ($name='dependent_on[]',$group_project_id=false,$project_task_id=false) {
-	if (!$group_project_id) {
-		return 'ERROR - no group_project_id';
-	} else {
-		$result=pm_data_get_tasks ($group_project_id);
-		if ($project_task_id) {
-			$result=pm_data_get_other_tasks ($group_project_id,$project_task_id);
-			//get the data so we can mark items as SELECTED
-			$result2=pm_data_get_dependent_tasks ($project_task_id);
-			return html_build_multiple_select_box ($result,$name,util_result_column_to_array($result2));
-		} else {
-			return html_build_multiple_select_box ($result,$name,array());
-		}
-	}
-}
-
-function pm_show_subprojects_box($name='group_project_id',$group_id=false,$group_project_id=false) {
-	if (!$group_id || !$group_project_id) {
-		return 'ERROR - no group_id defined';
-	} else {
-		$result=pm_data_get_subprojects($group_id);
-		return html_build_select_box($result,$name,$group_project_id,false);
-	}       
-}
-
-function pm_multiple_assigned_box ($name='assigned_to[]',$group_id=false,$project_task_id=false) {
-	if (!$group_id) {
-		return 'ERROR - no group_id';
-	} else {
-		$result=pm_data_get_technicians ($group_id);
-		if ($project_task_id) {
-			//get the data so we can mark items as SELECTED
-			$result2=pm_data_get_assigned_to ($project_task_id);
-			return html_build_multiple_select_box ($result,$name,util_result_column_to_array($result2));
-		} else {
-			return html_build_multiple_select_box ($result,$name,array());
-		}
-	}
-}
-
-function pm_show_percent_complete_box($name='percent_complete',$selected=0) {
-	echo '
-		<select name="'.$name.'">';
-	echo '
-		<option value="0">Not Started';
-	for ($i=5; $i<101; $i+=5) {
-		echo '
-			<option value="'.$i.'"';
-		if ($i==$selected) {
-			echo ' SELECTED';
-		}	
-		echo '>'.$i.'%';
-	}
-	echo '
-		</select>';
-}
-
-function pm_show_month_box($name,$select_month=0) {
-
-	echo '
-		<select name="'.$name.'" size="1">';
-	$monthlist = array('1'=>'January',
-			'2'=>'February',
-			'3'=>'March',
-			'4'=>'April',
-			'5'=>'May',
-			'6'=>'June',
-			'7'=>'July',
-			'8'=>'August',
-			'9'=>'September',
-			'10'=>'October',
-			'11'=>'November',
-			'12'=>'December');
-
-	for ($i=1; $i<=count($monthlist); $i++) {
-		if ($i == $select_month) {
-			echo '
-				<option selected value="'.$i.'">'.$monthlist[$i];
-		} else {
-			echo '
-				<option value="'.$i.'">'.$monthlist[$i];
-		}
-	}
-	echo '
-		</SELECT>';
-
-}
-
-function pm_show_day_box($name,$day=1) {
-
-	echo '
-		<select name="'.$name.'" size="1">';
-	for ($i=1; $i<=31; $i++) {
-		if ($i == $day) {
-			echo '
-				<option selected value="'.$i.'">'.$i;
-		} else {
-			echo '
-				<option value="'.$i.'">'.$i;
-		}
-	}
-	echo '
-		</select>';
-
-}
-
-function pm_show_year_box($name,$year=1) {
-
-	echo '
-		<select name="'.$name.'" size="1">';
-	for ($i=1999; $i<=2013; $i++) {
-		if ($i == $year) {
-			echo '
-				<option selected value="'.$i.'">'.$i;
-		} else {
-			echo '
-				<option value="'.$i.'">'.$i;
-		}
-	}
-	echo '
-		</select>';
-
-}
-
-function pm_show_hour_box($name,$hour=1) {
-
-	echo '
-		<select name="'.$name.'" size="1">';
-	for ($i=0; $i<=23; $i++) {
-		if ($i == $hour) {
-			echo '
-				<option selected value="'.$i.'">'.$i;
-		} else {
-			echo '
-				<option value="'.$i.'">'.$i;
-		}
-	}
-	echo '
-		</select>';
-
-}
-
-function pm_show_minute_box($name,$minute=0) {
-
-	echo '	<select name="'.$name.'" size="1">';
-	for ($i=0; $i<=45; $i=$i+15) {
-		if ($i == $minute) {
-			echo '	<option selected value="'.$i.'">'.$i;
-		} else {
-			echo '
-				<option value="'.$i.'">'.$i;
-		}
-	}
-	echo '
-		</select>';
-
-}
-
-
-function pm_show_tasklist ($result,$offset,$set='open') {
-	global $sys_datefmt,$group_id,$group_project_id,$PHP_SELF;
-	/*
-		Accepts a result set from the bugs table. Should include all columns from
-		the table, and it should be joined to USER to get the user_name.
-	*/
-
-	$rows=db_numrows($result);
-
-	$url = "/pm/task.php?group_id=$group_id&group_project_id=$group_project_id&func=browse&set=$set&order=";
-
-	$title_arr=array();
-	$title_arr[]='Task ID';
-	$title_arr[]='Summary';
-	$title_arr[]='Start Date';
-	$title_arr[]='End Date';
-	$title_arr[]='Percent Complete';
-
-	$links_arr=array();
-	$links_arr[]=$url.'project_task_id';
-	$links_arr[]=$url.'summary';
-	$links_arr[]=$url.'start_date';
-	$links_arr[]=$url.'end_date';
-	$links_arr[]=$url.'percent_complete';
-
-	echo $GLOBALS['HTML']->listTableTop ($title_arr,$links_arr);
-
-	$now=time();
-
-	for ($i=0; $i < $rows; $i++) {
-
-		echo '
-			<TR BGCOLOR="'.get_priority_color(db_result($result, $i, 'priority')).'">'.
-			'<TD><A HREF="'.$PHP_SELF.'?func=detailtask'.
-			'&project_task_id='.db_result($result, $i, 'project_task_id').
-			'&group_id='.$group_id.
-			'&group_project_id='.db_result($result, $i, 'group_project_id').'">'.
-			db_result($result, $i, 'project_task_id').'</A></TD>'.
-			'<TD>'.db_result($result, $i, 'summary').'</TD>'.
-			'<TD>'.date('Y-m-d',db_result($result, $i, 'start_date')).'</TD>'.
-			'<TD>'. (($now>db_result($result, $i, 'end_date'))?'<B>* ':'  ') . date('Y-m-d',db_result($result, $i, 'end_date')).'</TD>'.
-			'<TD>'.db_result($result, $i, 'percent_complete').'%</TD></TR>';
-
-	}
-
-	/*
-		Show extra rows for <-- Prev / Next -->
-	*/
-	echo '<TR><TD COLSPAN="2">';
-	if ($offset > 0) {
-		echo '<A HREF="'.$PHP_SELF.'?func=browse&group_project_id='.
-			$group_project_id.'&set='.$set.'&group_id='.$group_id.'&offset='.($offset-50).'">
-			<B><-- Previous 50</B></A>';
-	} else {
-		echo ' ';
-	}
-	echo '</TD><TD> </TD><TD COLSPAN="2">';
-	
-	if ($rows==50) {
-		echo '<A HREF="'.$PHP_SELF.'?func=browse&group_project_id='.
-			$group_project_id.'&set='.$set.'&group_id='.$group_id.'&offset='.($offset+50).
-			'"><B>Next 50 --></B></A>';
-	} else {
-		echo ' ';
-	}
-	echo '</TD></TR>';
-
-	echo $GLOBALS['HTML']->listTableBottom();
-
-}
-
-function pm_show_dependent_tasks ($project_task_id,$group_id,$group_project_id) {
-	$sql="SELECT project_task.project_task_id,project_task.summary ".
-		"FROM project_task,project_dependencies ".
-		"WHERE project_task.project_task_id=project_dependencies.project_task_id ".
-		"AND project_dependencies.is_dependent_on_task_id='$project_task_id'";
-	$result=db_query($sql);
-	$rows=db_numrows($result);
-
-	if ($rows > 0) {
-		echo '
-		<H3>Tasks That Depend on This Task</H3>
-		<P>';
-
-		$title_arr=array();
-		$title_arr[]='Task ID';
-		$title_arr[]='Summary';
-
-		echo $GLOBALS['HTML']->listTableTop ($title_arr);
-
-		for ($i=0; $i < $rows; $i++) {
-			echo '
-			<TR '. $GLOBALS['HTML']->boxGetAltRowStyle($i) .'>
-				<TD><A HREF="/pm/task.php?func=detailtask&project_task_id='.
-				db_result($result, $i, 'project_task_id').
-				'&group_id='.$group_id.
-				'&group_project_id='.$group_project_id.'">'.
-				db_result($result, $i, 'project_task_id').'</TD>
-				<TD>'.db_result($result, $i, 'summary').'</TD></TR>';
-		}
-
-		echo $GLOBALS['HTML']->listTableBottom();
-
-	} else {
-		echo '
-			<H3>No Tasks are Dependent on This Task</H3>';
-		echo db_error();
-	}
-}
-
-function pm_show_task_details ($project_task_id) {
-	/*
-		Show the details rows from task_history
-	*/
-	global $sys_datefmt;
-	$sql="SELECT project_history.field_name,project_history.old_value,project_history.date,users.user_name ".
-		"FROM project_history,users ".
-		"WHERE project_history.mod_by=users.user_id AND project_history.field_name = 'details' ".
-		"AND project_task_id='$project_task_id' ORDER BY project_history.date DESC";
-	$result=db_query($sql);
-	$rows=db_numrows($result);
-
-	if ($rows > 0) {
-		echo '
-		<H3>Followups</H3>
-		<P>';
-
-		$title_arr=array();
-		$title_arr[]='Comment';
-		$title_arr[]='Date';
-		$title_arr[]='By';
-		
-		echo $GLOBALS['HTML']->listTableTop ($title_arr);
-
-		for ($i=0; $i < $rows; $i++) {
-			echo '
-			<TR '. $GLOBALS['HTML']->boxGetAltRowStyle($i) .'>
-				<TD>'. nl2br(db_result($result, $i, 'old_value')).'</TD>
-				<TD VALIGN="TOP">'.date($sys_datefmt,db_result($result, $i, 'date')).'</TD>
-				<TD VALIGN="TOP">'.db_result($result, $i, 'user_name').'</TD></TR>';
-		}
-
-		echo $GLOBALS['HTML']->listTableBottom();
-
-	} else {
-		echo '
-			<H3>No Comments Have Been Added</H3>';
-	}
-	
-}
-
-function pm_show_task_history ($project_task_id) {
-	/*
-		show the project_history rows that are 
-		relevant to this project_task_id, excluding details
-	*/
-	global $sys_datefmt;
-	$sql="select project_history.field_name,project_history.old_value,project_history.date,users.user_name ".
-		"FROM project_history,users ".
-		"WHERE project_history.mod_by=users.user_id AND ".
-		"project_history.field_name <> 'details' AND project_task_id='$project_task_id' ORDER BY project_history.date DESC";
-	$result=db_query($sql);
-	$rows=db_numrows($result);
-
-	if ($rows > 0) {
-
-		echo '
-		<H3>Task Change History</H3>
-		<P>';
-
-		$title_arr=array();
-		$title_arr[]='Field';
-		$title_arr[]='Old Value';
-		$title_arr[]='Date';
-		$title_arr[]='By';
-
-		echo $GLOBALS['HTML']->listTableTop ($title_arr);
-
-		for ($i=0; $i < $rows; $i++) {
-			$field=db_result($result, $i, 'field_name');
-
-			echo '
-				<TR '. $GLOBALS['HTML']->boxGetAltRowStyle($i) .'><TD>'.$field.'</TD><TD>';
-
-			if ($field == 'status_id') {
-
-				echo pm_data_get_status_name(db_result($result, $i, 'old_value'));
-
-			} else if ($field == 'start_date') {
-
-				echo date('Y-m-d',db_result($result, $i, 'old_value'));
-
-			} else if ($field == 'end_date') {
-
-				echo date('Y-m-d',db_result($result, $i, 'old_value'));
-
-			} else {
-
-				echo db_result($result, $i, 'old_value');
-
-			}
-			echo '</TD>
-				<TD>'.date($sys_datefmt,db_result($result, $i, 'date')).'</TD>
-				<TD>'.db_result($result, $i, 'user_name').'</TD></TR>';
-		}
-
-		echo $GLOBALS['HTML']->listTableBottom();
-
-	} else {
-		echo '
-			<H3>No Changes Have Been Made</H3>';
-	}
-}
-
-?>



More information about the evolvis-commits mailing list