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;
     }
 }