diff --git a/ajax/setpreference.php b/ajax/setpreference.php new file mode 100644 index 00000000..6f485bba --- /dev/null +++ b/ajax/setpreference.php @@ -0,0 +1,55 @@ + + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE + * License as published by the Free Software Foundation; either + * version 3 of the License, or any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU AFFERO GENERAL PUBLIC LICENSE for more details. + * + * You should have received a copy of the GNU Affero General Public + * License along with this library. If not, see . + * + */ + +/** + * @brief Set user preference. + * @param $key + * @param $value + */ + +OCP\JSON::checkLoggedIn(); +OCP\JSON::checkAppEnabled('contacts'); +OCP\JSON::callCheck(); + +require_once 'loghandler.php'; + +$key = isset($_POST['key'])?$_POST['key']:null; +$value = isset($_POST['value'])?$_POST['value']:null; +if(is_null($key)) { + bailOut(OC_Contacts_App::$l10n->t('Key is not set for: '.$value)); +} + +if(is_null($value)) { + bailOut(OC_Contacts_App::$l10n->t('Value is not set for: '.$key)); +} + +if(OCP\Config::setUserValue(OCP\USER::getUser(), 'contacts', $key, $value)) { + OCP\JSON::success(array( + 'data' => array( + 'key' => $key, + 'value' => $value) + ) + ); +} else { + bailOut(OC_Contacts_App::$l10n->t( + 'Could not set preference: ' . $key . ':' . $value) + ); +}