gforge-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gforge-commits] gforge/common/pm ProjectTask.class,1.30,1.31


From: tperdue
Subject: [Gforge-commits] gforge/common/pm ProjectTask.class,1.30,1.31
Date: Wed, 08 Dec 2004 13:08:27 -0600

Update of /cvsroot/gforge/gforge/common/pm
In directory db.perdue.net:/home/tperdue/share/dev.gforge.org/common/pm

Modified Files:
        ProjectTask.class 
Log Message:
couple bugs in task mgr

Index: ProjectTask.class
===================================================================
RCS file: /cvsroot/gforge/gforge/common/pm/ProjectTask.class,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- ProjectTask.class   29 Nov 2004 16:26:27 -0000      1.30
+++ ProjectTask.class   8 Dec 2004 19:08:24 -0000       1.31
@@ -475,8 +475,17 @@
                return true;
        }
 
-       function delete() {
-
+       /**
+        *  delete - delete this tracker and all its related data.
+        *
+        *  @param  bool        I'm Sure.
+        *  @return bool true/false;
+        */
+       function delete($sure) {
+               if (!$sure) {
+                       $this->setMissingParamsError();
+                       return false;
+               }
                if (!$this->ProjectGroup->userIsAdmin()) {
                        $this->setPermissionDeniedError();
                        return false;
@@ -572,12 +581,23 @@
         * @returns     boolean success.
         */
        function addMessage($message) {
-               $sql="INSERT INTO project_messages 
(project_task_id,body,posted_by,postdate) 
-                       VALUES ('". $this->getID() ."','". 
htmlspecialchars($message) ."','".user_getid()."','". time() ."')";
-               $res=db_query($sql);
-               if (!$res || db_affected_rows($res) < 1) {
-                       $this->setError('AddMessage():: '.db_error());
-                       return false;
+               //prevent posting the same message
+               if ($this->getDetails() == htmlspecialchars($message)) {
+                       return true;
+               }
+               $res=db_query("SELECT * FROM project_messages 
+                       WHERE project_task_id='".$this->getID()."'
+                       AND body='". htmlspecialchars($message) ."'");
+               if (!$res || db_numrows($res) < 1) {
+                       $sql="INSERT INTO project_messages 
(project_task_id,body,posted_by,postdate) 
+                               VALUES ('". $this->getID() ."','". 
htmlspecialchars($message) ."','".user_getid()."','". time() ."')";
+                       $res=db_query($sql);
+                       if (!$res || db_affected_rows($res) < 1) {
+                               $this->setError('AddMessage():: '.db_error());
+                               return false;
+                       } else {
+                               return true;
+                       }
                } else {
                        return true;
                }
@@ -640,6 +660,9 @@
 //
 //     IMPORTANT - MUST VERIFY NO CIRCULAR DEPENDENCY!! 
 //
+               if (!$arr_ || empty($arr_)) {
+                       $arr_=array('100'=>PM_LINK_DEFAULT);
+               }
                $arr =& array_keys($arr_);
                //get existing dependencies to diff against
                $arr2 =& array_keys($this->getDependentOn());





reply via email to

[Prev in Thread] Current Thread [Next in Thread]