Example #1
0
 /**
  * Method used to remove a given set of projects from the system.
  *
  * @access  public
  * @return  boolean
  */
 function remove()
 {
     global $HTTP_POST_VARS;
     $items = @implode(", ", Misc::escapeInteger($HTTP_POST_VARS["items"]));
     $stmt = "DELETE FROM\n                    " . APP_DEFAULT_DB . "." . APP_TABLE_PREFIX . "project\n                 WHERE\n                    prj_id IN ({$items})";
     $res = $GLOBALS["db_api"]->dbh->query($stmt);
     if (PEAR::isError($res)) {
         Error_Handler::logError(array($res->getMessage(), $res->getDebugInfo()), __FILE__, __LINE__);
         return false;
     } else {
         Project::removeUserByProjects($HTTP_POST_VARS["items"]);
         Category::removeByProjects($HTTP_POST_VARS["items"]);
         Release::removeByProjects($HTTP_POST_VARS["items"]);
         Filter::removeByProjects($HTTP_POST_VARS["items"]);
         Email_Account::removeAccountByProjects($HTTP_POST_VARS["items"]);
         Issue::removeByProjects($HTTP_POST_VARS["items"]);
         Custom_Field::removeByProjects($HTTP_POST_VARS["items"]);
         $statuses = array_keys(Status::getAssocStatusList($HTTP_POST_VARS["items"]));
         foreach ($HTTP_POST_VARS["items"] as $prj_id) {
             Status::removeProjectAssociations($statuses, $prj_id);
         }
         Group::disassociateProjects($HTTP_POST_VARS["items"]);
         return true;
     }
 }
Example #2
0
 /**
  * Method used to remove a given set of projects from the system.
  *
  * @return  boolean
  */
 public static function remove()
 {
     $items = $_POST['items'];
     $stmt = 'DELETE FROM
                 {{%project}}
              WHERE
                 prj_id IN (' . DB_Helper::buildList($items) . ')';
     try {
         DB_Helper::getInstance()->query($stmt, $items);
     } catch (DbException $e) {
         return -1;
     }
     self::removeUserByProjects($items);
     Category::removeByProjects($items);
     Release::removeByProjects($items);
     Filter::removeByProjects($items);
     Email_Account::removeAccountByProjects($items);
     Issue::removeByProjects($items);
     Custom_Field::removeByProjects($items);
     $statuses = array_keys(Status::getAssocStatusList($items));
     foreach ($items as $prj_id) {
         Status::removeProjectAssociations($statuses, $prj_id);
     }
     Group::disassociateProjects($items);
     return 1;
 }