/** * Get the page model * * @param int $id * * @return PageModel|null */ protected function getPageModel($id) { if (($newsModel = NewsModel::findByPk($id)) === null) { return null; } if (($newsArchiveModel = NewsArchiveModel::findByPk($newsModel->pid)) === null) { return null; } return PageModel::findByPk($newsArchiveModel->jumpTo); }
/** * Generate missing translation warning for news child records. * * @param array $args * @param mixed $previousResult * * @return string */ public function onNewsChildRecords(array $args, $previousResult = null) { $row = $args[0]; $label = (string) $previousResult; $archive = NewsArchiveModel::findByPk($row['pid']); if ($archive->master && (!$row['languageMain'] || null === NewsModel::findByPk($row['languageMain']))) { return $this->generateLabelWithWarning($label); } return $label; }