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