]> wagnertech.de Git - timetracker.git/blobdiff - WEB-INF/lib/ttProjectHelper.class.php
A bit more refactoring for subgroups.
[timetracker.git] / WEB-INF / lib / ttProjectHelper.class.php
index 2a439dd9fda52b0409be76d2b6210666fef0bf2d..06dcd28667b3623a71b03164bc0f0ba8edfa0d91 100644 (file)
@@ -28,6 +28,7 @@
 
 import('ttTeamHelper');
 import('ttUserHelper');
+import('ttGroupHelper');
 
 // Class ttProjectHelper is used to help with project related tasks.
 class ttProjectHelper {
@@ -183,16 +184,23 @@ class ttProjectHelper {
     if (is_a($affected, 'PEAR_Error'))
       return false;
 
+    // Delete client binds to this project.
+    $sql = "delete from tt_client_project_binds where project_id = $id and group_id = $group_id and org_id = $org_id";
+    $affected = $mdb2->exec($sql);
+    if (is_a($affected, 'PEAR_Error'))
+      return false;
+
     return true;
   }
   
   // insert function inserts a new project into database.
   static function insert($fields)
   {
+    global $user;
     $mdb2 = getConnection();
 
-    $group_id = (int) $fields['group_id'];
-    $org_id = (int) $fields['org_id'];
+    $group_id = $user->getGroup();
+    $org_id = $user->org_id;
 
     $name = $fields['name'];
     $description = $fields['description'];
@@ -206,15 +214,11 @@ class ttProjectHelper {
     $affected = $mdb2->exec($sql);
     if (is_a($affected, 'PEAR_Error'))
       return false;
-    
-    $last_id = 0;
-    $sql = "select last_insert_id() as last_insert_id";
-    $res = $mdb2->query($sql);
-    $val = $res->fetchRow();
-    $last_id = $val['last_insert_id'];
+
+    $last_id = $mdb2->lastInsertID('tt_projects', 'id');
 
     // Bind the project to users.
-    $active_users = ttTeamHelper::getActiveUsers(array('getAllFields'=>true));
+    $active_users = ttGroupHelper::getActiveUsers(array('getAllFields'=>true));
     foreach ($active_users as $u) {
       if(in_array($u['id'], $users)) {
         $sql = "insert into tt_user_project_binds (project_id, user_id, group_id, org_id, status, rate) values(