/** * Changes this global field to a page field * * @param array $fieldInput * @param array $pageInput * @return DvsField */ protected function changeToPageField($fieldInput, $pageInput) { $field = $this->FieldsRepository->findTrashedFieldByKeyAndPageVersion($fieldInput['key'], $pageInput['page_version_id']); if ($field) { $field->restore(); return $field; } $field = $this->FieldsRepository->findFieldByKeyAndPageVersion($fieldInput['key'], $pageInput['page_version_id'], null); return $field ?: $this->newPageField($pageInput['page_version_id'], $fieldInput['key'], $fieldInput['type'], $fieldInput['human_name']); }
/** * Marks all page's fields with a "true" content_requested value as complete * * @param int $pageVersionId * @param array $input * @return string */ public function markContentRequestedFieldsComplete($pageId) { $page = $this->Page->findOrFail($pageId); $pageVersions = $this->PageVersionsRepository->getVersionsListForPage($page); foreach ($pageVersions as $pageVersion => $name) { $requestedFieldIds = $this->FieldsRepository->findContentRequestedFieldsList($pageVersion); if (!$this->FieldManager->markNoContentRequested($requestedFieldIds)) { return json_encode(false); } } return json_encode(true); }