function content_delete($course) { require(AT_INCLUDE_PATH.'../mods/_core/imsafa/classes/A4a.class.php'); global $db; // related_content + content: $sql = "SELECT content_id FROM ".TABLE_PREFIX."content WHERE course_id=$course"; $result = mysql_query($sql, $db); while ($row = mysql_fetch_array($result)) { $sql = "DELETE FROM ".TABLE_PREFIX."related_content WHERE content_id=$row[0]"; $result2 = mysql_query($sql, $db); $sql3 = "DELETE FROM ".TABLE_PREFIX."member_track WHERE content_id=$row[0]"; $result3 = mysql_query($sql3, $db); $sql = "DELETE FROM ".TABLE_PREFIX."content_tests_assoc WHERE content_id=$row[0]"; $result4 = mysql_query($sql, $db); // Delete all AccessForAll contents $a4a = new A4a($row[0]); $a4a->deleteA4a(); } $sql = "DELETE FROM ".TABLE_PREFIX."content WHERE course_id=$course"; $result = mysql_query($sql,$db); $sql = "OPTIMIZE TABLE ".TABLE_PREFIX."content"; $result = @mysql_query($sql, $db); }
function content_delete($course) { require AT_INCLUDE_PATH . '../mods/_core/imsafa/classes/A4a.class.php'; // related_content + content: $sql = "SELECT content_id FROM %scontent WHERE course_id=%d"; $rows_content = queryDB($sql, array(TABLE_PREFIX, $course)); foreach ($rows_content as $row) { $sql = "DELETE FROM %srelated_content WHERE content_id=%d"; $result2 = queryDB($sql, array(TABLE_PREFIX, $row['0'])); $sql3 = "DELETE FROM %smember_track WHERE content_id=%d"; $result3 = queryDB($sql3, array(TABLE_PREFIX, $row['0'])); $sql = "DELETE FROM %scontent_tests_assoc WHERE content_id=%d"; $result4 = queryDB($sql, array(TABLE_PREFIX, $row['0'])); // Delete all AccessForAll contents $a4a = new A4a($row[0]); $a4a->deleteA4a(); } $sql = "DELETE FROM %scontent WHERE course_id=%d"; $result = queryDB($sql, array(TABLE_PREFIX, $course)); $sql = "OPTIMIZE TABLE %scontent"; $result = queryDB($sql, array(TABLE_PREFIX)); }
function deleteContent($content_id) { if (!authenticate(AT_PRIV_CONTENT, AT_PRIV_RETURN)) { return false; } /* check if exists */ $sql = "SELECT ordering, content_parent_id FROM " . TABLE_PREFIX . "content WHERE content_id={$content_id} AND course_id={$_SESSION['course_id']}"; $result = mysql_query($sql, $this->db); if (!($row = @mysql_fetch_assoc($result))) { return false; } $ordering = $row['ordering']; $content_parent_id = $row['content_parent_id']; /* check if this content has sub content */ $children = $this->_menu[$content_id]; if (is_array($children) && count($children) > 0) { /* delete its children recursively first*/ foreach ($children as $x => $info) { $this->deleteContentRecursive($info['content_id']); } } /* delete this content page */ $sql = "DELETE FROM " . TABLE_PREFIX . "content WHERE content_id={$content_id} AND course_id={$_SESSION['course_id']}"; $result = mysql_query($sql, $this->db); /* delete this content from member tracking page */ $sql = "DELETE FROM " . TABLE_PREFIX . "member_track WHERE content_id={$content_id} AND course_id={$_SESSION['course_id']}"; $result = mysql_query($sql, $this->db); $sql = "DELETE FROM " . TABLE_PREFIX . "related_content WHERE content_id={$content_id} OR related_content_id={$content_id}"; $result = mysql_query($sql, $this->db); /* delete the content tests association */ $sql = "DELETE FROM " . TABLE_PREFIX . "content_tests_assoc WHERE content_id={$content_id}"; $result = mysql_query($sql, $this->db); /* delete the content forum association */ $sql = "DELETE FROM " . TABLE_PREFIX . "content_forums_assoc WHERE content_id={$content_id}"; $result = mysql_query($sql, $this->db); /* Delete all AccessForAll contents */ require_once AT_INCLUDE_PATH . '../mods/_core/imsafa/classes/A4a.class.php'; $a4a = new A4a($content_id); $a4a->deleteA4a(); /* re-order the rest of the content */ $sql = "UPDATE " . TABLE_PREFIX . "content SET ordering=ordering-1 WHERE ordering>={$ordering} AND content_parent_id={$content_parent_id} AND course_id={$_SESSION['course_id']}"; $result = mysql_query($sql, $this->db); /* end moving block */ /* remove the "resume" to this page, b/c it was deleted */ $sql = "UPDATE " . TABLE_PREFIX . "course_enrollment SET last_cid=0 WHERE course_id={$_SESSION['course_id']} AND last_cid={$content_id}"; $result = mysql_query($sql, $this->db); return true; }
/** * Delete content * @access public * @param content ID * @return true, if successful * false and add error into global var $msg, if unsuccessful * @author Cindy Qi Li */ public function Delete($contentID) { global $msg; require_once TR_INCLUDE_PATH . 'classes/A4a/A4a.class.php'; $a4a = new A4a($contentID); $a4a->deleteA4a(); // delete the content tests association include_once TR_INCLUDE_PATH . 'classes/DAO/ContentTestsAssocDAO.class.php'; $contentTestsAssocDAO = new ContentTestsAssocDAO(); $contentTestsAssocDAO->DeleteByContentID($contentID); // delete the content forums association include_once TR_INCLUDE_PATH . 'classes/DAO/ContentForumsAssocDAO.class.php'; $contentForumsAssocDAO = new ContentForumsAssocDAO(); $contentForumsAssocDAO->DeleteByContentID($contentID); $sql = "DELETE FROM " . TABLE_PREFIX . "content WHERE content_id = " . $contentID; if ($this->execute($sql)) { // update the courses.modified_date to the current timestamp include_once TR_INCLUDE_PATH . 'classes/DAO/CoursesDAO.class.php'; $coursesDAO = new CoursesDAO(); $coursesDAO->updateModifiedDate($contentID, "content_id"); return true; } else { $msg->addError('DB_NOT_UPDATED'); return false; } }