public function actionSaveDefault() { $this->requirePostRequest(); // check if this is a new or existing default if (craft()->request->getPost('sproutseo_fields[id]') == null) { $id = false; } else { $id = craft()->request->getPost('sproutseo_fields[id]'); } $model = new SproutSeo_MetaModel(); $model->id = $id; $defaultFields = craft()->request->getPost('sproutseo_fields'); // Convert Checkbox Array into comma-delimited String if (isset($defaultFields['robots'])) { $defaultFields['robots'] = SproutSeoMetaHelper::prepRobotsAsString($defaultFields['robots']); } // Make our images single IDs instead of an array $defaultFields['ogImage'] = !empty($defaultFields['ogImage']) ? $defaultFields['ogImage'][0] : null; $defaultFields['twitterImage'] = !empty($defaultFields['twitterImage']) ? $defaultFields['twitterImage'][0] : null; $model->setAttributes($defaultFields); if (sproutSeo()->defaults->saveDefault($model)) { craft()->userSession->setNotice(Craft::t('New default saved.')); $this->redirectToPostedUrl(); } else { craft()->userSession->setError(Craft::t("Couldn't save the default.")); // Send the field back to the template craft()->urlManager->setRouteVariables(array('default' => $model)); } }
/** * Determines if a global fallback setting already exists * * @return id | null */ public function globalFallbackId() { $globalFallbackMetaModel = new SproutSeo_MetaModel(); $globalFallbackMetaModel->setMeta('fallback'); if ($globalFallbackMetaModel->id) { return $globalFallbackMetaModel->id; } return null; }