/** * Set the page field data loaded from some source * @param $data Database row object or "fromdb" * @return void */ public function loadPageData($data = 'fromdb') { $this->mDataLoaded = true; // sanity # Fetch data from DB as needed... if ($data === 'fromdb' || $data === 'fromdbmaster') { $db = $data == 'fromdbmaster' ? wfGetDB(DB_MASTER) : wfGetDB(DB_SLAVE); $data = $this->pageDataFromTitle($db, $this->mTitle); } # Load in primary page data... parent::loadPageData($data); # Load in FlaggedRevs page data... $this->stable = 0; // 0 => "found nothing" $this->stableRev = null; // defer this one... $this->revsArePending = false; // false => "found nothing" or "none pending" $this->pendingRevCount = null; // defer this one... $this->pageConfig = FRPageConfig::getDefaultVisibilitySettings(); // default $this->syncedInTracking = true; // false => "unreviewed" or "synced" # Load in flaggedrevs Row data if the page exists...(sanity check NS) if ($data && FlaggedRevs::inReviewNamespace($this->mTitle)) { if ($data->fpc_override !== null) { // page config row found $this->pageConfig = FRPageConfig::getVisibilitySettingsFromRow($data); } if ($data->fp_stable !== null) { // stable rev found $this->stable = (int) $data->fp_stable; $this->revsArePending = $data->fp_pending_since !== null; // revs await review $this->syncedInTracking = (bool) $data->fp_reviewed; } } }
/** * Record a log entry on the stability config change action * @param Title $title * @param array $config * @param array $oldConfig * @param string $reason */ public static function updateStabilityLog(Title $title, array $config, array $oldConfig, $reason) { $log = new LogPage('stable'); if (FRPageConfig::configIsReset($config)) { # We are going back to default settings $log->addEntry('reset', $title, $reason); } else { # We are changing to non-default settings $action = $oldConfig === FRPageConfig::getDefaultVisibilitySettings() ? 'config' : 'modify'; // modified an existing custom configuration $log->addEntry($action, $title, $reason, FlaggedRevsLog::collapseParams(self::stabilityLogParams($config))); } }