本文整理汇总了PHP中KunenaAttachmentHelper::cleanup方法的典型用法代码示例。如果您正苦于以下问题:PHP KunenaAttachmentHelper::cleanup方法的具体用法?PHP KunenaAttachmentHelper::cleanup怎么用?PHP KunenaAttachmentHelper::cleanup使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KunenaAttachmentHelper
的用法示例。
在下文中一共展示了KunenaAttachmentHelper::cleanup方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: delete
/**
* Method to delete the KunenaForumTopic object from the database.
*
* @param bool $recount
*
* @return bool True on success.
*/
public function delete($recount = true)
{
if (!$this->exists()) {
return true;
}
if (!parent::delete()) {
return false;
}
// Clear authentication cache
$this->_authfcache = $this->_authccache = $this->_authcache = array();
// NOTE: shadow topic doesn't exist, DO NOT DELETE OR CHANGE ANY EXTERNAL INFORMATION
if ($this->moved_id == 0) {
$db = JFactory::getDBO();
// Delete user topics
$queries[] = "DELETE FROM #__kunena_user_topics WHERE topic_id={$db->quote($this->id)}";
// Delete user read
$queries[] = "DELETE FROM #__kunena_user_read WHERE topic_id={$db->quote($this->id)}";
// Delete poll (users)
$queries[] = "DELETE FROM #__kunena_polls_users WHERE pollid={$db->quote($this->poll_id)}";
// Delete poll (options)
$queries[] = "DELETE FROM #__kunena_polls_options WHERE pollid={$db->quote($this->poll_id)}";
// Delete poll
$queries[] = "DELETE FROM #__kunena_polls WHERE id={$db->quote($this->poll_id)}";
// Delete thank yous
$queries[] = "DELETE t FROM #__kunena_thankyou AS t INNER JOIN #__kunena_messages AS m ON m.id=t.postid WHERE m.thread={$db->quote($this->id)}";
// Delete all messages
$queries[] = "DELETE m, t FROM #__kunena_messages AS m INNER JOIN #__kunena_messages_text AS t ON m.id=t.mesid WHERE m.thread={$db->quote($this->id)}";
foreach ($queries as $query) {
$db->setQuery($query);
$db->query();
KunenaError::checkDatabaseError();
}
// FIXME: add recount statistics
if ($recount) {
KunenaUserHelper::recount();
KunenaForumCategoryHelper::recount();
KunenaAttachmentHelper::cleanup();
KunenaForumMessageThankyouHelper::recount();
}
}
return true;
}
示例2: purge
/**
* Purge old topics from this category. Removes topics from the database.
*
* @param $time
* @param array $params
* @param int $limit
*
* @return int Number of purged topics.
*/
public function purge($time, $params = array(), $limit = 1000)
{
// FIXME: why time isn't used?
if (!$this->exists()) {
return 0;
}
$where = isset($params['where']) ? (string) $params['where'] : '';
$db = JFactory::getDBO();
$query = "SELECT id FROM #__kunena_topics AS tt WHERE tt.category_id={$this->id} {$where} ORDER BY tt.last_post_time ASC";
$db->setQuery($query, 0, $limit);
$ids = $db->loadColumn();
KunenaError::checkDatabaseError();
if (empty($ids)) {
return 0;
}
$count = KunenaForumTopicHelper::delete($ids);
KunenaUserHelper::recount();
KunenaForumCategoryHelper::recount($this->id);
KunenaAttachmentHelper::cleanup();
return $count;
}