Projects
Kolab:3.4
kolab-webadmin
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 17
View file
kolab-webadmin.spec
Changed
@@ -34,8 +34,8 @@ %global kolabr_group_id 414 Name: kolab-webadmin -Version: 3.1.0 -Release: 3%{?dist} +Version: 3.1.1 +Release: 1%{?dist} Summary: Kolab Groupware Server Web Administration Interface License: AGPLv3+ Group: Productivity/Office/Organizers @@ -43,8 +43,6 @@ Source0: http://mirror.kolabsys.com/pub/releases/kolab-webadmin-%{version}.tar.gz -Patch1: httpd-2.4-access-control-conf.patch - BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -64,8 +62,6 @@ %prep %setup -q -%patch1 -p1 - rm -rf doc/kolab_wap-3.0.sql %build @@ -145,9 +141,8 @@ %attr(0770,%{httpd_user},%{httpd_group}) %{_var}/log/%{name} %changelog -* Thu Oct 24 2013 Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> - 3.1.0-3 -- Correct httpd 2.4 access control patch which misplaced the - AllowOverride All directive +* Thu Oct 24 2013 Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> - 3.1.1-1 +- New upstream release * Fri Sep 13 2013 Jeroen van Meeuwen <vanmeeuwen@kolabsys.com> - 3.1.0-1 - New upstream release
View file
httpd-2.4-access-control-conf.patch
Deleted
@@ -1,39 +0,0 @@ -diff -ur kolab-webadmin-3.1.0.orig/doc/hosted-kolab.conf kolab-webadmin-3.1.0/doc/hosted-kolab.conf ---- kolab-webadmin-3.1.0.orig/doc/hosted-kolab.conf 2013-09-13 14:35:06.000000000 +0200 -+++ kolab-webadmin-3.1.0/doc/hosted-kolab.conf 2013-10-24 12:48:31.101552704 +0200 -@@ -30,8 +30,13 @@ - - DirectoryIndex index.php - AllowOverride All -- Order Allow,Deny -- Allow from All -+ <ifModule mod_authz_core.c> -+ Require all granted -+ </ifModule> -+ <ifModule !mod_authz_core.c> -+ Order Allow,Deny -+ Allow from All -+ </ifModule> - </Directory> - - -diff -ur kolab-webadmin-3.1.0.orig/doc/kolab-webadmin.conf kolab-webadmin-3.1.0/doc/kolab-webadmin.conf ---- kolab-webadmin-3.1.0.orig/doc/kolab-webadmin.conf 2013-09-13 14:35:06.000000000 +0200 -+++ kolab-webadmin-3.1.0/doc/kolab-webadmin.conf 2013-10-24 12:48:44.439449436 +0200 -@@ -30,8 +30,14 @@ - - DirectoryIndex index.php - AllowOverride All -- Order Allow,Deny -- Allow from All -+ -+ <ifModule mod_authz_core.c> -+ Require all granted -+ </ifModule> -+ <ifModule !mod_authz_core.c> -+ Order Allow,Deny -+ Allow from All -+ </ifModule> - </Directory> - -
View file
debian.changelog
Changed
@@ -1,3 +1,9 @@ +kolab-webadmin (3.1.1-0~kolab1) unstable; urgency=low + + * New upstream version + + -- Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com> Thu, 24 Oct 2013 10:49:12 -0400 + kolab-webadmin (3.1.0-3) unstable; urgency=low * Correct httpd 2.4 access control patch, which misplaced the AllowOverride All
View file
debian.series
Changed
@@ -1,1 +0,0 @@ -httpd-2.4-access-control-conf.patch -p1
View file
kolab-webadmin-3.1.0.tar.gz/doc/hosted-kolab.conf -> kolab-webadmin-3.1.1.tar.gz/doc/hosted-kolab.conf
Changed
@@ -30,8 +30,15 @@ DirectoryIndex index.php AllowOverride All - Order Allow,Deny - Allow from All + + <ifModule mod_authz_core.c> + Require all granted + </ifModule> + <ifModule !mod_authz_core.c> + Order Allow,Deny + Allow from All + </ifModule> + </Directory>
View file
kolab-webadmin-3.1.0.tar.gz/doc/kolab-webadmin.conf -> kolab-webadmin-3.1.1.tar.gz/doc/kolab-webadmin.conf
Changed
@@ -30,8 +30,15 @@ DirectoryIndex index.php AllowOverride All - Order Allow,Deny - Allow from All + + <ifModule mod_authz_core.c> + Require all granted + </ifModule> + <ifModule !mod_authz_core.c> + Order Allow,Deny + Allow from All + </ifModule> + </Directory>
View file
kolab-webadmin-3.1.0.tar.gz/doc/kolab_wap-3.1.sql -> kolab-webadmin-3.1.1.tar.gz/doc/kolab_wap-3.1.sql
Changed
@@ -165,7 +165,7 @@ INSERT INTO `user_types` (`id`, `key`, `name`, `description`, `attributes`, `used_for`) VALUES (1, 'kolab', 'Kolab User', 'A Kolab User', '{"auto_form_fields":{"alias":{"type":"list","data":["givenname","preferredlanguage","sn"]},"cn":{"data":["givenname","sn"]},"displayname":{"data":["givenname","sn"]},"mail":{"data":["givenname","preferredlanguage","sn"]},"mailhost":{"optional":true},"uid":{"data":["givenname","preferredlanguage","sn"]},"userpassword":{"optional":true}},"form_fields":{"alias":{"optional":true},"givenname":[],"initials":{"optional":true},"kolabdelegate":{"type":"list","autocomplete":true,"optional":true},"kolabinvitationpolicy":{"type":"select","values":["","ACT_MANUAL","ACT_REJECT"],"optional":true},"kolaballowsmtprecipient":{"type":"list","optional":true},"kolaballowsmtpsender":{"type":"list","optional":true},"l":{"optional":true},"mailalternateaddress":{"type":"list","optional":true},"mailquota":{"type":"text-quota","optional":true},"mobile":{"optional":true},"nsroledn":{"type":"list","autocomplete":true,"optional":true},"o":{"optional":true},"ou":{"type":"select"},"pager":{"optional":true},"postalcode":{"optional":true},"preferredlanguage":{"type":"select"},"sn":[],"street":{"optional":true},"telephonenumber":{"optional":true},"title":{"optional":true},"userpassword":{"optional":true}},"fields":{"objectclass":["top","inetorgperson","kolabinetorgperson","mailrecipient","organizationalperson","person"]}}', NULL), (2, 'posix', 'POSIX User', 'A POSIX user (with a home directory and shell access)', '{"auto_form_fields":{"cn":{"data":["givenname","sn"]},"displayname":{"data":["givenname","sn"]},"gidnumber":[],"homedirectory":{"data":["givenname","preferredlanguage","sn"]},"uid":{"data":["givenname","preferredlanguage","sn"]},"uidnumber":[],"userpassword":{"optional":true}},"form_fields":{"givenname":[],"initials":{"optional":true},"preferredlanguage":{"type":"select","values":["en_US","de_DE","de_CH","en_GB","fi_FI","fr_FR","hu_HU"]},"loginshell":{"type":"select","values":["/bin/bash","/usr/bin/git-shell","/sbin/nologin"]},"ou":{"type":"select"},"sn":[],"title":{"optional":true},"userpassword":{"optional":true}},"fields":{"objectclass":["top","inetorgperson","organizationalperson","person","posixaccount"]}}', NULL), -(3, 'kolab_posix', 'Mail-enabled POSIX User', 'A mail-enabled POSIX User', '{"auto_form_fields":{"alias":{"data":["givenname","preferredlanguage","sn"]},"cn":{"data":["givenname","preferredlanguage","sn"]},"displayname":{"data":["givenname","preferredlanguage","sn"]},"gidnumber":[],"homedirectory":{"data":["givenname","preferredlanguage","sn"]},"mail":{"data":["givenname","preferredlanguage","sn"]},"mailhost":{"optional":true},"uid":{"data":["givenname","preferredlanguage","sn"]},"uidnumber":[],"userpassword":{"optional":true}},"form_fields":{"alias":{"optional":true},"givenname":[],"initials":{"optional":true},"kolabdelegate":{"type":"list","autocomplete":true,"optional":true},"kolabinvitationpolicy":{"type":"select","values":["","ACT_MANUAL","ACT_REJECT"],"optional":true},"kolaballowsmtprecipient":{"type":"list","optional":true},"kolaballowsmtpsender":{"type":"list","optional":true},"l":{"optional":true},"loginshell":{"type":"select","values":["/bin/bash","/usr/bin/git-shell","/sbin/nologin"]},"mailalternateaddress":{"type":"list","optional":true},"mailquota":{"type":"text-quota","optional":true},"mobile":{"optional":true},"nsroledn":{"type":"list","autocomplete":true,"optional":true},"o":{"optional":true},"ou":{"type":"select"},"pager":{"optional":true},"postalcode":{"optional":true},"preferredlanguage":{"type":"select"},"sn":[],"street":{"optional":true},"telephonenumber":{"optional":true},"title":{"optional":true},"userpassword":{"optional":true}},"fields":{"objectclass":["top","inetorgperson","kolabinetorgperson","mailrecipient","organizationalperson","person","posixaccount"]}}', NULL); +(3, 'kolab_posix', 'Mail-enabled POSIX User', 'A mail-enabled POSIX User', '{"auto_form_fields":{"alias":{"type":"list","data":["givenname","preferredlanguage","sn"]},"cn":{"data":["givenname","preferredlanguage","sn"]},"displayname":{"data":["givenname","preferredlanguage","sn"]},"gidnumber":[],"homedirectory":{"data":["givenname","preferredlanguage","sn"]},"mail":{"data":["givenname","preferredlanguage","sn"]},"mailhost":{"optional":true},"uid":{"data":["givenname","preferredlanguage","sn"]},"uidnumber":[],"userpassword":{"optional":true}},"form_fields":{"alias":{"optional":true},"givenname":[],"initials":{"optional":true},"kolabdelegate":{"type":"list","autocomplete":true,"optional":true},"kolabinvitationpolicy":{"type":"select","values":["","ACT_MANUAL","ACT_REJECT"],"optional":true},"kolaballowsmtprecipient":{"type":"list","optional":true},"kolaballowsmtpsender":{"type":"list","optional":true},"l":{"optional":true},"loginshell":{"type":"select","values":["/bin/bash","/usr/bin/git-shell","/sbin/nologin"]},"mailalternateaddress":{"type":"list","optional":true},"mailquota":{"type":"text-quota","optional":true},"mobile":{"optional":true},"nsroledn":{"type":"list","autocomplete":true,"optional":true},"o":{"optional":true},"ou":{"type":"select"},"pager":{"optional":true},"postalcode":{"optional":true},"preferredlanguage":{"type":"select"},"sn":[],"street":{"optional":true},"telephonenumber":{"optional":true},"title":{"optional":true},"userpassword":{"optional":true}},"fields":{"objectclass":["top","inetorgperson","kolabinetorgperson","mailrecipient","organizationalperson","person","posixaccount"]}}', NULL); /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
View file
kolab-webadmin-3.1.0.tar.gz/doc/sample-insert-user_types.php -> kolab-webadmin-3.1.1.tar.gz/doc/sample-insert-user_types.php
Changed
@@ -97,6 +97,7 @@ "optional" => true, ), "mailquota" => Array( + "type" => "text-quota", "optional" => true, ), "mobile" => Array( @@ -334,6 +335,7 @@ "optional" => true, ), "mailquota" => Array( + "type" => "text-quota", "optional" => true, ), "mobile" => Array(
View file
kolab-webadmin-3.1.0.tar.gz/lib/Auth/LDAP.php -> kolab-webadmin-3.1.1.tar.gz/lib/Auth/LDAP.php
Changed
@@ -1060,7 +1060,7 @@ if (!empty($params['page_size'])) { $this->config_set('page_size', $params['page_size']); } else { - $this->config_get('page_size', 15); + $this->config_set('page_size', 15); } if (!empty($params['page'])) { @@ -1111,7 +1111,8 @@ $entry_dn = $this->entry_dn($entry, $attributes, $base_dn); - if (!$entry_dn) { + // object not found or self deletion + if (!$entry_dn || $entry_dn == $_SESSION['user']->user_bind_dn) { return false; }
View file
kolab-webadmin-3.1.0.tar.gz/lib/api/kolab_api_service_form_value.php -> kolab-webadmin-3.1.1.tar.gz/lib/api/kolab_api_service_form_value.php
Changed
@@ -733,8 +733,9 @@ // TODO: Check for uniqueness. Not sure what to do if not unique. $secondary_mail_addresses = Array(); - $auth = Auth::get_instance(); - $conf = Conf::get_instance(); + $auth = Auth::get_instance(); + $conf = Conf::get_instance(); + $unique_attr = $this->unique_attribute(); // Find the authentication mechanism in order to be able to fall back from a // '[$domain]' section setting for the mail attributes list, to an '[$auth_mech]' @@ -1095,8 +1096,8 @@ private function validate_alias($value) { - $auth = Auth::get_instance(); $conf = Conf::get_instance(); + if (!is_array($value)) { $value = (array)($value); } @@ -1115,15 +1116,11 @@ } } + return 'OK'; } private function validate_associateddomain($value) { - return $value; - - $auth = Auth::get_instance(); - $conf = Conf::get_instance(); - if (!is_array($value)) { $value = (array)($value); } @@ -1131,7 +1128,6 @@ //console("form_value.validate_associateddomain(\$value)", $value); return $value; - } private function validate_astaccountrealmedpassword($value, $postdata) @@ -1153,8 +1149,8 @@ private function validate_mail($value) { - $auth = Auth::get_instance(); $conf = Conf::get_instance(); + if (!is_array($value)) { $value = (array)($value); } @@ -1172,6 +1168,8 @@ } } } + + return 'OK'; } private function validate_mailquota($value) @@ -1190,8 +1188,8 @@ private function validate_mailalternateaddress($value) { - $auth = Auth::get_instance(); $conf = Conf::get_instance(); + if (!is_array($value)) { $value = (array)($value); } @@ -1209,6 +1207,8 @@ } } } + + return 'OK'; } private function _highest_of_two($one, $two)
View file
kolab-webadmin-3.1.0.tar.gz/lib/client/kolab_client_task_settings.php -> kolab-webadmin-3.1.1.tar.gz/lib/client/kolab_client_task_settings.php
Changed
@@ -692,6 +692,7 @@ 'maxcount' => $data['attributes']['form_fields'][$attr]['maxcount'], 'data' => $_data, 'values' => $data['attributes']['form_fields'][$attr]['values'], + 'default' => $data['attributes']['form_fields'][$attr]['default'], ); } @@ -765,6 +766,9 @@ ), 'onchange' => 'kadm.type_attr_value_change(this)', ), + 'default' => array( + 'type' => kolab_form::INPUT_TEXT, + ), 'optional' => array( 'type' => kolab_form::INPUT_CHECKBOX, 'value' => 1,
View file
kolab-webadmin-3.1.0.tar.gz/lib/ext/Net/LDAP3.php -> kolab-webadmin-3.1.1.tar.gz/lib/ext/Net/LDAP3.php
Changed
@@ -1234,7 +1234,6 @@ // Compare each attribute value of the old attrs with the corresponding value // in the new attrs, if any. foreach ($old_attrs as $attr => $old_attr_value) { - if (is_array($old_attr_value)) { if (count($old_attr_value) == 1) { $old_attrs[$attr] = $old_attr_value[0]; @@ -1243,7 +1242,6 @@ } if (array_key_exists($attr, $new_attrs)) { - if (is_array($new_attrs[$attr])) { if (count($new_attrs[$attr]) == 1) { $new_attrs[$attr] = $new_attrs[$attr][0]; @@ -1321,7 +1319,7 @@ } } else { - if (empty($new_attrs[$attr])) { + if (!isset($new_attrs[$attr]) || $new_attrs[$attr] === '' || (is_array($new_attrs[$attr]) && empty($new_attrs[$attr]))) { switch ($attr) { case "userpassword": break; @@ -1354,7 +1352,6 @@ } if (array_key_exists($attr, $old_attrs)) { - if (is_array($old_attrs[$attr])) { if (count($old_attrs[$attr]) == 1) { $old_attrs[$attr] = $old_attrs[$attr][0]; @@ -1371,7 +1368,7 @@ $_sort2 = false; } - if (empty($value)) { + if ($value === null || $value === '' || (is_array($value) && empty($value))) { if (!array_key_exists($attr, $mod_array['del'])) { switch ($attr) { case 'userpassword':
View file
kolab-webadmin-3.1.0.tar.gz/lib/kolab_api_service.php -> kolab-webadmin-3.1.1.tar.gz/lib/kolab_api_service.php
Changed
@@ -286,7 +286,7 @@ $special_attr_validate = Array(); foreach ($validate_result as $attr_name => $value) { - if (!empty($value) && $value !== "OK" && $value !== 0) { + if ($value !== false && $value !== '' && $value !== null && $value !== "OK") { $special_attr_validate[$attr_name] = $value; } }
View file
kolab-webadmin-3.1.0.tar.gz/lib/kolab_client_task.php -> kolab-webadmin-3.1.1.tar.gz/lib/kolab_client_task.php
Changed
@@ -225,6 +225,10 @@ if (is_array($res) && !empty($res)) { $user['language'] = $res['preferredlanguage']; $user['fullname'] = $res['cn']; + + // overwrite user id set in login request, which is user base DN, + // with unique attribute, which suits better to our needs + $user['id'] = $res['id']; } } @@ -835,6 +839,7 @@ $result['type'] = kolab_form::INPUT_SELECT; $result['options'] = $opts['options']; $result['value'] = $opts['default']; + $result['default'] = $field['default']; if ($field['type'] == 'multiselect') { $result['multiple'] = true; @@ -870,14 +875,17 @@ break; case 'text-quota': - $result['type'] = kolab_form::INPUT_TEXTQUOTA; + $result['type'] = kolab_form::INPUT_TEXTQUOTA; + $result['default'] = $field['default']; break; default: $result['type'] = kolab_form::INPUT_TEXT; + if (isset($field['maxlength'])) { $result['maxlength'] = $field['maxlength']; } + if ($field['type'] && $field['type'] != 'text') { $result['data-type'] = $field['type']; if ($field['type'] == 'ldap_url') { @@ -888,6 +896,9 @@ ); } } + else { + $result['default'] = $field['default']; + } } $result['required'] = empty($field['optional']); @@ -1224,7 +1235,6 @@ //console("form_create() \$attribs", $attribs); //console("form_create() \$auto_fields", $auto_fields); - //console("Going to walk through sections", $sections); // Parse elements and add them to the form object @@ -1245,28 +1255,32 @@ $field['section'] = $section_idx; if (empty($field['value']) && !empty($data[$idx])) { - //console("Using data value", $data[$idx], "for value of field $idx"); - - $field['value'] = $data[$idx]; + $value = $data[$idx]; // Convert data for the list field with autocompletion if ($field['data-type'] == kolab_form::TYPE_LIST) { - if (!is_array($data[$idx])) { + if (!is_array($value)) { if (!empty($field['data-autocomplete'])) { - $data[$idx] = array($data[$idx] => $data[$idx]); + $value = array($value => $value); } else { - $data[$idx] = (array) $data[$idx]; + $value = (array) $value; } } - $field['value'] = !empty($field['data-autocomplete']) ? array_keys($data[$idx]) : array_values($data[$idx]); + $value = !empty($field['data-autocomplete']) ? array_keys($value) : array_values($value); } - if (is_array($field['value'])) { - $field['value'] = implode("\n", $field['value']); + if (is_array($value)) { + $value = implode("\n", $value); } + + $field['value'] = $value; + } + else if ($add_mode && !isset($field['value']) && isset($field['default'])) { + $field['value'] = $field['default']; + unset($field['default']); } // @TODO: We assume here that all autocompletion lists are associative @@ -1333,10 +1347,14 @@ if (!empty($data['id']) && in_array('delete', (array) $data['effective_rights']['entry'])) { $id = $data['id']; - $form->add_button(array( - 'value' => kolab_html::escape($this->translate('button.delete')), - 'onclick' => "kadm.{$name}_delete('{$id}')", - )); + + // disable delete for self + if ($id != $_SESSION['user']['id']) { + $form->add_button(array( + 'value' => kolab_html::escape($this->translate('button.delete')), + 'onclick' => "kadm.{$name}_delete('{$id}')", + )); + } } $ac_min_len = $this->config_get('autocomplete_min_length', 1, Conf::INT);
View file
kolab-webadmin-3.1.0.tar.gz/lib/kolab_html.php -> kolab-webadmin-3.1.1.tar.gz/lib/kolab_html.php
Changed
@@ -170,7 +170,7 @@ $attribs['value'] /= 1024; $unit = 'mb'; } - if ($attribs['value'] >= 1024) { + if ($attribs['value'] % 1024 == 0 && $attribs['value'] >= 1024) { $attribs['value'] /= 1024; $unit = 'gb'; }
View file
kolab-webadmin-3.1.0.tar.gz/lib/locale/en_US.php -> kolab-webadmin-3.1.1.tar.gz/lib/locale/en_US.php
Changed
@@ -10,6 +10,7 @@ $LANG['add'] = 'Add'; $LANG['attribute.add'] = 'Add attribute'; +$LANG['attribute.default'] = 'Default value'; $LANG['attribute.static'] = 'Static value'; $LANG['attribute.name'] = 'Attribute'; $LANG['attribute.optional'] = 'Optional';
View file
kolab-webadmin-3.1.0.tar.gz/public_html/js/kolab_admin.js -> kolab-webadmin-3.1.1.tar.gz/public_html/js/kolab_admin.js
Changed
@@ -1811,6 +1811,9 @@ if (attr.maxcount) data.maxcount = attr.maxcount; + if (attr['default'] && attr.valtype == 'normal' && attr.type.match(/^(text|select)/)) + data['default'] = attr['default']; + if (attr.valtype == 'normal' || attr.valtype == 'auto') request.attributes.form_fields[i] = data; if (attr.valtype == 'auto' || attr.valtype == 'auto-readonly') { @@ -1959,6 +1962,10 @@ value = this.t('attribute.value.' + (data.valtype == 'static' ? 'static' : 'auto')) + ': ' + data.data; } + if (form_data.attr_default && data.valtype == 'normal' && data.type.match(/^(text|select)/)) { + data['default'] = form_data.attr_default; + } + // Update table row $('td.name', row).text(this.env.attributes[attr]); $('td.type', row).text(data.type); @@ -1986,9 +1993,10 @@ $('select[name="attr_type"]').val(type); $('select[name="attr_value"]').val(attr ? data.valtype : 'normal'); + $('input[name="attr_default"]').val(data['default'] || ''); $('input[name="attr_optional"]').attr('checked', attr ? data.optional : false); - $('input[name="attr_data"]').val(attr ? data.data : ''); - $('input[name="attr_maxcount"]').val(data.maxcount ? data.maxcount : ''); + $('input[name="attr_data"]').val(data.data || ''); + $('input[name="attr_maxcount"]').val(data.maxcount || ''); $('textarea[name="attr_options"]').val(data.values ? data.values.join("\n") : ''); $('span', name_select.parent()).remove(); @@ -2003,8 +2011,8 @@ } this.form_element_update({name: 'attr_options'}); - this.type_attr_type_change('select[name="attr_type"]'); - this.type_attr_value_change('select[name="attr_value"]'); + this.type_attr_type_change(); + this.type_attr_value_change(); }; // Initialize attribute name selector @@ -2023,13 +2031,14 @@ // Update attribute form on attribute name change this.type_attr_name_change = function(elem) { - this.type_attr_value_change('select[name="attr_value"]'); + this.type_attr_value_change(); }; // Update attribute form on value type change this.type_attr_value_change = function(elem) { - var type = $(elem).val(), + var type = $(elem || 'select[name="attr_value"]').val(), + field_type = $('select[name="attr_type"]').val(), optional = $('#attr_form_row_optional'), select = $('select[name="attr_name"]').val(), attr_name = this.env.attributes[select], @@ -2038,6 +2047,7 @@ $('input[name="attr_data"]')[type != 'normal' ? 'show' : 'hide'](); $('#attr_form_row_readonly')[type != 'static' ? 'show' : 'hide'](); + $('#attr_form_row_default')[type == 'normal' && field_type.match(/^(text|select)/) ? 'show' : 'hide'](); optional[opt ? 'show' : 'hide'](); if (!opt) @@ -2047,9 +2057,12 @@ // Update attribute form on type change this.type_attr_type_change = function(elem) { - var type = $(elem).val(); + var type = $(elem || 'select[name="attr_type"]').val(), + val_type = $('select[name="attr_value"]').val(); + $('#attr_form_row_maxcount')[type == 'list' || type == 'list-autocomplete' ? 'show' : 'hide'](); $('#attr_form_row_options')[type == 'select' || type == 'multiselect' ? 'show' : 'hide'](); + $('#attr_form_row_default')[val_type == 'normal' && type.match(/^(text|select)/) ? 'show' : 'hide'](); }; // Update attributes list on object classes change
View file
kolab-webadmin.dsc
Changed
@@ -2,7 +2,7 @@ Source: kolab-webadmin Binary: kolab-webadmin Architecture: all -Version: 3.1.0-3 +Version: 3.1.1-0~kolab1 Maintainer: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com> Uploaders: Paul Klos <kolab@klos2day.nl> Homepage: http://www.kolab.org/ @@ -13,5 +13,5 @@ Package-List: kolab-webadmin deb admin extra Files: - 00000000000000000000000000000000 0 kolab-webadmin-3.1.0.tar.gz + 00000000000000000000000000000000 0 kolab-webadmin-3.1.1.tar.gz 00000000000000000000000000000000 0 debian.tar.gz
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.