diff options
author | Jakob Sack <kde@jakobsack.de> | 2011-03-12 10:28:10 +0100 |
---|---|---|
committer | Jakob Sack <kde@jakobsack.de> | 2011-03-12 10:28:10 +0100 |
commit | 1aa7fd98c2e9fc20ede32fb6716e35b0827b6a91 (patch) | |
tree | 40e14348efbec8cdecf2d5ea406c68a4061838e8 /lib/appconfig.php | |
parent | 883c7a582de8e9f9455751927069755e74fbd1e3 (diff) | |
download | nextcloud-server-1aa7fd98c2e9fc20ede32fb6716e35b0827b6a91.tar.gz nextcloud-server-1aa7fd98c2e9fc20ede32fb6716e35b0827b6a91.zip |
Refactoring OC_APPCONFIG and OC_PREFERENCES, minor changes to OC_APP. These libraries are skeletons only, the functions need to be written.
Diffstat (limited to 'lib/appconfig.php')
-rw-r--r-- | lib/appconfig.php | 116 |
1 files changed, 101 insertions, 15 deletions
diff --git a/lib/appconfig.php b/lib/appconfig.php index 844d4cf54e8..e8c6960e674 100644 --- a/lib/appconfig.php +++ b/lib/appconfig.php @@ -1,33 +1,119 @@ <?php +/** + * ownCloud + * + * @author Frank Karlitschek + * @author Jakob Sack + * @copyright 2010 Frank Karlitschek karlitschek@kde.org + * + * 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 <http://www.gnu.org/licenses/>. + * + */ +/* + * + * The following SQL statement is just a help for developers and will not be + * executed! + * + * CREATE TABLE `appconfig` ( + * `appid` VARCHAR( 255 ) NOT NULL , + * `key` VARCHAR( 255 ) NOT NULL , + * `value` VARCHAR( 255 ) NOT NULL + * ) + * + */ + +/** + * This class provides an easy way for apps to store config values in the + * database. + */ class OC_APPCONFIG{ /** - * Get the available keys for an application - * @param string application + * @brief Get all apps using the config + * @returns array with app ids + * + * This function returns a list of all apps that have at least one + * entry in the appconfig table. */ - public static function getKeys( $application ){ - // OC_DB::query( $query); + public static function getApps(){ + // TODO: write function return array(); } /** - * Get the config value - * @param string application - * @param string key - * @param string default + * @brief Get the available keys for an app + * @param $app the app we are looking for + * @returns array with key names + * + * This function gets all keys of an app. Please note that the values are + * not returned. */ - public static function getValue( $application, $key, $default ){ + public static function getKeys( $app ){ + // TODO: write function + return array(); + } + + /** + * @brief Gets the config value + * @param $app app + * @param $key key + * @param $default = null, default value if the key does not exist + * @returns the value or $default + * + * This function gets a value from the appconfig table. If the key does + * not exist the default value will be returnes + */ + public static function getValue( $app, $key, $default = null ){ // OC_DB::query( $query); return $default; } /** - * Set the config value - * @param string application - * @param string key - * @param string value + * @brief sets a value in the appconfig + * @param $app app + * @param $key key + * @param $value value + * @returns true/false + * + * Sets a value. If the key did not exist before it will be created. */ - public static function setValue( $application, $name, $url ){ - // OC_DB::query( $query); + public static function setValue( $app, $key, $value ){ + // TODO: write function + return true; + } + + /** + * @brief Deletes a key + * @param $app app + * @param $key key + * @returns true/false + * + * Deletes a key. + */ + public static function deleteKey( $app, $key ){ + // TODO: write function + return true; + } + + /** + * @brief Remove app from appconfig + * @param $app app + * @returns true/false + * + * Removes all keys in appconfig belonging to the app. + */ + public static function deleteApp( $app ){ + // TODO: write function return true; } } |