lib/client lib/kolab_client_task.php lib/locale public_html/js

Aleksander Machniak machniak at kolabsys.com
Fri Oct 24 12:52:18 CEST 2014


 lib/client/kolab_client_task_resource.php |    5 +++++
 lib/client/kolab_client_task_settings.php |    2 +-
 lib/kolab_client_task.php                 |    5 +++++
 lib/locale/en_US.php                      |    1 +
 public_html/js/kolab_admin.js             |    5 +++++
 5 files changed, 17 insertions(+), 1 deletion(-)

New commits:
commit 5735a3439dad86af05e6649bc8b42c67a0e119a2
Author: Aleksander Machniak <machniak at kolabsys.com>
Date:   Fri Oct 24 06:51:00 2014 -0400

    Added text-separated field type to support attributes that expect array of strings (#3820)
    Added localization label for kolabDescAttribute attribute

diff --git a/lib/client/kolab_client_task_resource.php b/lib/client/kolab_client_task_resource.php
index d24eb85..d272354 100644
--- a/lib/client/kolab_client_task_resource.php
+++ b/lib/client/kolab_client_task_resource.php
@@ -101,6 +101,8 @@ class kolab_client_task_resource extends kolab_client_task
             'alias'                     => 'system',
             'mailalternateaddress'      => 'system',
 
+            'owner'                     => 'system',
+
             'member'                    => 'system',
             'uniquemember'              => 'system',
             'memberurl'                 => 'system',
@@ -117,6 +119,9 @@ class kolab_client_task_resource extends kolab_client_task
             'kolabdelegate'             => 'system',
             'kolaballowsmtprecipient'   => 'system',
             'kolaballowsmtpsender'      => 'system',
+            'kolabtargetfolder'         => 'system',
+
+            'kolabdescattribute'        => 'other',
         );
 
         // Prepare fields
diff --git a/lib/client/kolab_client_task_settings.php b/lib/client/kolab_client_task_settings.php
index 0a036a1..0977599 100644
--- a/lib/client/kolab_client_task_settings.php
+++ b/lib/client/kolab_client_task_settings.php
@@ -32,7 +32,7 @@ class kolab_client_task_settings extends kolab_client_task
     );
 
     protected $form_element_types = array(
-        'text', 'select', 'multiselect', 'list', 'list-autocomplete', 'checkbox', 'password', 'ldap_url',
+        'text', 'text-separated', 'select', 'multiselect', 'list', 'list-autocomplete', 'checkbox', 'password', 'ldap_url',
         'text-quota', 'aci', 'imap_acl',
     );
 
diff --git a/lib/kolab_client_task.php b/lib/kolab_client_task.php
index 5713a5b..87d8b62 100644
--- a/lib/kolab_client_task.php
+++ b/lib/kolab_client_task.php
@@ -912,6 +912,11 @@ class kolab_client_task
             );
             break;
 
+        case 'text-separated':
+            $result['type']      = kolab_form::INPUT_TEXTAREA;
+            $result['data-type'] = 'separated';
+            break;
+
         default:
             $result['type'] = kolab_form::INPUT_TEXT;
 
diff --git a/lib/locale/en_US.php b/lib/locale/en_US.php
index be4ffef..1d77fd3 100644
--- a/lib/locale/en_US.php
+++ b/lib/locale/en_US.php
@@ -243,6 +243,7 @@ $LANG['resource.edit'] = 'Edit Resource';
 $LANG['resource.edit.success'] = 'Resource updated successfully.';
 $LANG['resource.kolabtargetfolder'] = 'Target Folder';
 $LANG['resource.kolabinvitationpolicy'] = 'Invitation Policy';
+$LANG['resource.kolabdescattribute'] = 'Attributes';
 $LANG['resource.list'] = 'Resource (Collection) List';
 $LANG['resource.mail'] = 'Mail Address';
 $LANG['resource.member'] = 'Collection Members';
diff --git a/public_html/js/kolab_admin.js b/public_html/js/kolab_admin.js
index abc2498..e2bc8b2 100644
--- a/public_html/js/kolab_admin.js
+++ b/public_html/js/kolab_admin.js
@@ -806,6 +806,11 @@ function kolab_admin()
       data.json = kadm.form_aci_element_submit(this.name, data.json, form);
     });
 
+    // text-separated fields (convert text into array)
+    $('textarea[data-type="separated"]:not(:disabled)', form).each(function() {
+      data.json[this.name] = data.json[this.name] ? data.json[this.name].split(/[\r\n]+/) : '';
+    });
+
     // quota inputs
     $('input[data-type="quota"]', form).each(function() {
       var unit = $('select[name="' + this.name + '-unit"]').val();




More information about the commits mailing list