public function actionSaveSocial()
{
$this->requirePostRequest();
$locale = craft()->request->getPost('locale');
if (!$locale) {
$locale = craft()->language;
}
$record = Seomatic_SettingsRecord::model()->findByAttributes(array('locale' => $locale));
if (!$record) {
throw new Exception(Craft::t('No SEOmatic Settings Record exists'));
}
/* -- Set the Social attributes, defaulting to the existing values for whatever is missing from the post data */
$record->twitterHandle = craft()->request->getPost('twitterHandle', $record->twitterHandle);
$record->facebookHandle = craft()->request->getPost('facebookHandle', $record->facebookHandle);
$record->facebookProfileId = craft()->request->getPost('facebookProfileId', $record->facebookProfileId);
$record->facebookAppId = craft()->request->getPost('facebookAppId', $record->facebookAppId);
$record->linkedInHandle = craft()->request->getPost('linkedInHandle', $record->linkedInHandle);
$record->googlePlusHandle = craft()->request->getPost('googlePlusHandle', $record->googlePlusHandle);
$record->youtubeHandle = craft()->request->getPost('youtubeHandle', $record->youtubeHandle);
$record->youtubeChannelHandle = craft()->request->getPost('youtubeChannelHandle', $record->youtubeChannelHandle);
$record->instagramHandle = craft()->request->getPost('instagramHandle', $record->instagramHandle);
$record->pinterestHandle = craft()->request->getPost('pinterestHandle', $record->pinterestHandle);
$record->githubHandle = craft()->request->getPost('githubHandle', $record->githubHandle);
$record->vimeoHandle = craft()->request->getPost('vimeoHandle', $record->vimeoHandle);
if ($record->save()) {
craft()->userSession->setNotice(Craft::t('SEOmatic Social Media saved.'));
$this->redirectToPostedUrl($record);
} else {
craft()->userSession->setError(Craft::t('Couldn’t save SEOmatic Social Media.'));
$this->redirectToPostedUrl($record);
}
}