]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Storage/IStorage.php
Replaced quotes
[friendica.git] / src / Model / Storage / IStorage.php
index deacb8ffc9d5524cdfe81d6439122149eb6a2294..1b0129e5e6960503b1ff7cdf89e44f5105e8255c 100644 (file)
@@ -32,4 +32,58 @@ interface IStorage
         * @return boolean  True on success
         */
        public static function delete($ref);
+       
+       /**
+        * @brief Get info about storage options
+        *
+        * @return array
+        *
+        * This method return an array with informations about storage options
+        * from which the form presented to the user is build.
+        *
+        * The returned array is:
+        *
+        *    [
+        *      'option1name' => [ ..info.. ],
+        *      'option2name' => [ ..info.. ],
+        *      ...
+        *    ]
+        *
+        * An empty array can be returned if backend doesn't have any options
+        *
+        * The info array for each option MUST be as follows:
+        *
+        *    [
+        *      'type',      // define the field used in form, and the type of data.
+        *                   // one of 'checkbox', 'combobox', 'custom', 'datetime',
+        *                   // 'input', 'intcheckbox', 'password', 'radio', 'richtext'
+        *                   // 'select', 'select_raw', 'textarea', 'yesno'
+        *
+        *      'label',     // Translatable label of the field
+        *      'value',     // Current value
+        *      'help text', // Translatable description for the field
+        *      extra data   // Optional. Depends on 'type':
+        *                   // select: array [ value => label ] of choices
+        *                   // intcheckbox: value of input element
+        *                   // select_raw: prebuild html string of < option > tags
+        *                   // yesno: array [ 'label no', 'label yes']
+        *    ]
+        *
+        * See https://github.com/friendica/friendica/wiki/Quick-Template-Guide
+        */
+       public static function getOptions();
+       
+       /**
+        * @brief Validate and save options
+        *
+        * @param array  $data  Array [optionname => value] to be saved
+        *
+        * @return array  Validation errors: [optionname => error message]
+        *
+        * Return array must be empty if no error.
+        */
+       public static function saveOptions($data);
+       
 }
+
+