public static function setApprovedFileInDB($title, $timestamp, $sha1) { $parser = new Parser(); $parser->setTitle($title); $dbr = wfGetDB(DB_MASTER); $fileTitle = $title->getDBkey(); $oldFileTitle = $dbr->selectField('approved_revs_files', 'file_title', array('file_title' => $fileTitle)); if ($oldFileTitle) { $dbr->update('approved_revs_files', array('approved_timestamp' => $timestamp, 'approved_sha1' => $sha1), array('file_title' => $fileTitle)); } else { $dbr->insert('approved_revs_files', array('file_title' => $fileTitle, 'approved_timestamp' => $timestamp, 'approved_sha1' => $sha1)); } // Update "cache" in memory self::$mApprovedFileInfo[$fileTitle] = array($timestamp, $sha1); $log = new LogPage('approval'); $imagepage = ImagePage::newFromID($title->getArticleID()); $displayedFileUrl = $imagepage->getDisplayedFile()->getFullURL(); $revisionAnchorTag = Xml::element('a', array('href' => $displayedFileUrl, 'title' => 'unique identifier: ' . $sha1), substr($sha1, 0, 8)); $logParams = array($revisionAnchorTag); $log->addEntry('approve', $title, '', $logParams); wfRunHooks('ApprovedRevsFileRevisionApproved', array($parser, $title, $timestamp, $sha1)); }
public static function SetApprovedFileInDB($title, $timestamp, $sha1) { $dbr = wfGetDB(DB_MASTER); $file_title = $title->getDBkey(); $old_file_title = $dbr->selectField('approved_revs_files', 'file_title', array('file_title' => $file_title)); if ($old_file_title) { $dbr->update('approved_revs_files', array('approved_timestamp' => $timestamp, 'approved_sha1' => $sha1), array('file_title' => $file_title)); } else { $dbr->insert('approved_revs_files', array('file_title' => $file_title, 'approved_timestamp' => $timestamp, 'approved_sha1' => $sha1)); } // Update "cache" in memory self::$mApprovedFileInfo[$file_title] = array($timestamp, $sha1); $log = new LogPage('approval'); $imagepage = ImagePage::newFromID($title->getArticleID()); $display_file_url = $imagepage->getDisplayedFile()->getFullURL(); // $url = $title->getDisplayedFile()->getFullURL(); // link to the imagepage, or directly to the approved file? // $url = $file_obj->getFullURL(); $rev_link = Xml::element('a', array('href' => $display_file_url, 'title' => 'unique identifier: ' . $sha1), substr($sha1, 0, 8)); $logParams = array($rev_link); $log->addEntry('approve', $title, '', $logParams); // Run this hook like for 'approve', create new hook, or do nothing? // wfRunHooks( 'ApprovedRevsRevisionApproved', array( $parser, $title, $rev_id ) ); }