From e8a6bae47b5a0f6f1ddc41fb4e64071f9c9ae047 Mon Sep 17 00:00:00 2001
From: chris <chris@jalakai.co.uk>
Date: Thu, 11 May 2006 10:32:09 +0200
Subject: [PATCH] add config plugin support for plugin defined setting classes

darcs-hash:20060511083209-9b6ab-418fb83530be356bb40307c4a95a9c03954fc725.gz
---
 lib/plugins/config/settings/config.class.php    | 4 +++-
 lib/plugins/config/settings/config.metadata.php | 3 ++-
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/lib/plugins/config/settings/config.class.php b/lib/plugins/config/settings/config.class.php
index a8665c6ea..1ef1662ef 100644
--- a/lib/plugins/config/settings/config.class.php
+++ b/lib/plugins/config/settings/config.class.php
@@ -212,6 +212,7 @@ if (!class_exists('configuration')) {
      */
     function get_plugintpl_metadata($tpl){
       $file     = '/conf/metadata.php';
+      $class    = '/conf/settings.class.php';
       $metadata = array();
 
       if ($dh = opendir(DOKU_PLUGIN)) {
@@ -222,6 +223,7 @@ if (!class_exists('configuration')) {
           if (@file_exists(DOKU_PLUGIN.$plugin.$file)){
             $meta = array();
             @include(DOKU_PLUGIN.$plugin.$file);
+						@include(DOKU_PLUGIN.$plugin.$class);
             if (!empty($meta)) {
               $metadata['plugin'.CM_KEYMARKER.$plugin.CM_KEYMARKER.'plugin_settings_name'] = array('fieldset');
             }
@@ -308,7 +310,7 @@ if (!class_exists('setting')) {
     }
 
     /**
-     *  recieves current values for the setting $key
+     *  receives current values for the setting $key
      */
     function initialize($default, $local, $protected) {
         if (isset($default)) $this->_default = $default;
diff --git a/lib/plugins/config/settings/config.metadata.php b/lib/plugins/config/settings/config.metadata.php
index 73132aaea..bf2b74ff5 100644
--- a/lib/plugins/config/settings/config.metadata.php
+++ b/lib/plugins/config/settings/config.metadata.php
@@ -13,7 +13,8 @@
  * Defined classes:
  *   Generic
  *   -------------
- *   ''             - default class ('setting'), text input, minimal input validation, setting output in quotes
+ *   ''             - default class ('setting'), textarea, minimal input validation, setting output in quotes
+ *   'string'       - single line text input, minimal input validation, setting output in quotes
  *   'numeric'      - text input, accepts numbers and arithmetic operators, setting output without quotes
  *   'onoff'        - checkbox input, setting output  0|1
  *   'multichoice'  - select input (single choice), setting output with quotes, required _choices parameter
-- 
GitLab