Вход Регистрация
Файл: library/XenForo/Model/DeletionLog.php
Строк: 123
<?php

class XenForo_Model_DeletionLog extends XenForo_Model
{
    
/**
     * Gets the deletion log record for a specified piece of content.
     *
     * @param string $contentType
     * @param integer $contentId
     *
     * @return array|false
     */
    
public function getDeletionLog($contentType$contentId)
    {
        return 
$this->_getDb()->fetchRow('
            SELECT *
            FROM xf_deletion_log
            WHERE content_type = ?
                AND content_id = ?
        '
, array($contentType$contentId));
    }

    
/**
     * Logs the deletion of a particular piece of content.
     *
     * @param string $contentType
     * @param integer $contentId
     * @param string $reason
     * @param array|mixed $deleteUser Array of info about user doing deleting, else the visitor
     * @param integer|null $time Time of deletion, else now
     */
    
public function logDeletion($contentType$contentId$reason ''$deleteUser null$time null)
    {
        if (!
$deleteUser)
        {
            
$deleteUser XenForo_Visitor::getInstance()->toArray();
        }
        if (!
$time)
        {
            
$time XenForo_Application::$time;
        }

        
$this->_getDb()->query('
            INSERT IGNORE INTO xf_deletion_log
                (content_type, content_id, delete_date, delete_user_id, delete_username, delete_reason)
            VALUES
                (?, ?, ?, ?, ?, ?)
        '
, array($contentType$contentId$time$deleteUser['user_id'], $deleteUser['username'], $reason));
    }

    
/**
     * Removes the deletion log of a particular piece of content (such as on undeletion).
     * May remove from multiple pieces of content at once
     *
     * @param string $contentType
     * @param array|int $contentIds An array of content IDs or a single one
     */
    
public function removeDeletionLog($contentType$contentIds)
    {
        if (!
is_array($contentIds))
        {
            
$contentIds = array($contentIds);
        }

        if (!
$contentIds)
        {
            return;
        }

        
$db $this->_getDb();

        
$db->delete('xf_deletion_log',
            
'content_type = ' $db->quote($contentType) . ' AND content_id IN (' $db->quote($contentIds) . ')'
        
);
    }
}
Онлайн: 1
Реклама