Changes to 'refs/tags/kolab-webadmin-2.4.0'

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Fri Apr 13 10:20:16 CEST 2012


Tag 'kolab-webadmin-2.4.0' created by Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com> at 2012-04-13 09:20 +0200

Release kolab-webadmin-2.4.0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEABECAAYFAk+H4bcACgkQKN6f2pNCvwiXXwCgp2K9myTRuEp+DJlWOUw0YwBx
thQAnjykOJ2qk8z7XVhy8D7oAlSIicIG
=VLF7
-----END PGP SIGNATURE-----

Changes since the dawn of time:
Aleksander Machniak (235):
      - Initial commit
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      - Add session.use_cookies to critical PHP settings check
      Merge branch 'master' of ssh://git.klab.cc/git/vanmeeuwen/kolab-wap
      Improvements in kolab_html class, form functionality moved into separate class
      Smarty 3.1.7
      Style improvements, good-looking search box, watermark
      Support kolab_form::INPUT_SELECT
      Improvements in kolab_html class, form functionality moved into separate class
      Improvements in kolab_html class, form functionality moved into separate class
      More style improvements, extended user form, more phpdoc
      Improvements in kolab_html class, form functionality moved into separate class
      Improvements in kolab_html class, form functionality moved into separate class
      Style improvements, good-looking search box, watermark
      Merge branch 'master' of ssh://git.klab.cc/git/vanmeeuwen/kolab-wap
      Restructured directory tree and class names (I'm not happy with it still)
      Renamed classes (use kolab_) prefix
      Merge branch 'master' of ssh://git.klab.cc/git/vanmeeuwen/kolab-wap
      Improved form: title, tabs, buttons
      Merge branch 'master' of ssh://git.klab.cc/git/vanmeeuwen/kolab-wap
      Merge branch 'master' of ssh://git.klab.cc/git/vanmeeuwen/kolab-wap
      Remove unused functions
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      Fixed handling of expired sessions, fixed error logging
      Rename kolab_api -> kolab_client_api, kolab_api_result -> kolab_client_api_result
      Get rid of Smarty plugins, use engine methods directly for better performance
      Added search form events
      Some style improvements
      Disabled some logging
      Fixed floated div width issue in Chrome
      Style improvements here and there, new logout button
      Extended search form
      CS fixes
      Removed admin_ part of file/class names
      Remove debug code
      Typo
      - Allow setting users list attributes
      Fix typo in log message
      Fix wrong assignment
      Fix filtering list attributes
      Print displayname on users list
      Users searching
      User search
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      Users list sorting
      Users list sorting, CS fixes
      Users list pagination support
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      Users list pagination
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      CS fixes
      Lang fix
      Fix sql injections
      Fix some whitespaces
      Support pagination in groups.list and domains.list
      Fixed possible SQL Injection
      List attributes parameter support in groups.list
      Small improvements
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      Fixed domain name in systsem.capabilities response
      Unify user_types and capabilities responses (list and count items)
      Some improvements
      Dashboard
      Fix escaping form elements attributes
      Some improvements for main page look
      Allow any attributes with data- prefix
      Add footer on login page too
      - Some improvements in form fields handling
      Added proxy functionality - allows direct API calls
      API localization
      Add mysql_fetch_assoc() wrapper in SQL class
      Added smart form elements
      Support form_fields value, add password prepopulation
      Class filenames unification
      Fixed parse error
      Fixed proxy feature, some fixes here and there
      Support auto_form_fields update
      Simplified code with user_type_attributes() method
      Fix on user_type_id
      Fix typo
      Fix form type detection
      Small improvements in generate_* methods
      Fixed typo in serialize_form()
      Don't hardcode user_type_id
      Some improvements in forms
      Fix call to undefined method
      Fix SQL error
      Added simple SQL error handling/logging
      Generate empty auto-fields in user.add
      Rename password to userpassword
      Merge branch 'master' of ssh://git.klab.cc/git/machniak/kolab-wap
      Don't show password in user edit form
      Fixed css issue with long users list
      Implemented user.delete action, some improvements in user.add
      Handle better cn=* logins
      Don't require password fields in user edit form
      Added license headers and LICENSE file
      Fixed list paging issues
      Fixed indentation
      Improved API reponse handler
      Added system.configure action
      Added protocol detection to build proper API URL
      Fixed methods' argument description
      Added phpdoc
      More phpdoc
      Session validation is redundant in system.configure, removed
      Logout on invalid-session (403) response from the API
      Functionality related to user-type change
      Fixed listarea widget in IE8
      Unified form_value.generate API method (#625)
      Generate correct email address when sn is empty
      Hide all attribute fields that are not listed in 'form_fields' or 'auto_form_fields'
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix service method existance check - exclude private methods
      Move user type detection to service class, return type id in user.info result
      Improve performance by caching group/user types in memory
      Fix typo in user_type_attributes()
      More input checks in user_find_by_attribute() to skip "empty" searches
      From now attributes in DB aren't serialized
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Support select field options from "form_fields"
      Add autofocus attribute for username input in login form
      Add more attributes to the map
      Move user type selector to Personal fieldset
      Fix password fields handling
      Fix PHP warning when values of the select field aren't defined
      Improve form_value.generate to support many attributes at a time
      Fix fieldset selection on type change
      Add form_value.validate
      Small improvement for .listelement
      Improvements in form generation, fixed user_type_id for edit form
      Regenerate auto_form_fields values on user type change (#626)
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix hidden fields handling (#633)
      Fix list widget
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Display account type in user edit form (#633)
      Implement form_value.select_options
      Use form_value.select_options
      Move generic form generation code to kolab_client_task class (would be shared by 'group' and other modules)
      Fix handling of disabled (auto-generated) fields (#635)
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix parse error
      Support maxlength in listelement widget
      Groups UI
      Fixed typos in group_info() and group_members_list()
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Group add/edit forms
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix listelement serialization (#637)
      Fix group.member_list response
      Fix group members listing
      Implemented form_value.list_options with uniquemember autocompletion
      Improved Groups UI
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Autocompletion list widget
      Fix users search (#641)
      Move form widgets into main application script
      Unified input elements width
      jQuery 1.7.2
      Implement groups searching
      Implement groups search (UI)
      Unified debug information in edit forms
      Unify 'dn' item usage
      Add created/modified by information in edit form
      Small improvement in unknown user name handling
      Fixed/Improved result normalization (with DN attribute handling)
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Support new result type of *.info API calls
      Support multiselect fields with fix for form serialization
      Improved multiselect style
      Make debug information optional, provide devel_mode config option
      Fix typo in last change
      Don't store user_types in session when working in devel_mode
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Improved search box styles
      Implemented 'roles' service and autocompletion for nsrole attribute
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Added more phpdoc comments
      Code cleanup and some fixes
      Limit ldap_bind() calls
      Limit ldap_search() calls by fetching all extra user attributes in one call
      Fix identation
      Improved LDAP connection handling
      Fix so user roles names are listed instead of DNs
      Group type ID detection (#660)
      Fix PHP warning
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Unified some methods: Use object_type_*() instead of separate user_type_*/group_type_*/<any>_type_*.
      Fix typo
      Fix Fatal error
      Some fixes
      Removed debug code
      Fix typo
      Use 'id' as unique identifier (and entrydn), so API client don't need to know what real attribute name is
      Unify function names (remove duplicated code)
      Simplify some code, don't check userpassword2 on API backend
      Use optional flag to mark required fields in UI
      Make sure we always return valid email addresses
      Check required fields on client side
      Move some shared code to service (parent) class
      Unify input attributes handling including unique attribute
      Move user_edit/group_edit code into LDAP class, keep service classes backend-unaware
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Remove some redundant connect() calls.
      Use unique_attribute() method
      Fix result attributes parsing
      Fix group_members_list()
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix so autocomplete list widget is displayed properly when the field is empty and disabled/readonly
      Simplify effective rights checks in the form generator
      Fix UI widgets to properly handle readonly/disabled state
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix clicking delete button on last listelement row
      Remove entrydn field, value doesn't exist
      Make a select really readonly by disabling options
      Add translation for OU
      Fix "0" empty in list widgets (broken in 63c1224c05a49b2e4382c96478ed7b3e20002d86)
      User friendly OU names
      Fix (properly) list widgets
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      More list widget fixes (#682)
      Comment out some debug code
      Fix parse error in last commit
      Add unified method to resolve entrydn into user-friendly text.
      Resolve group names too
      Fix auto_form_fields re-generation on object type change (#690)
      Move list options convertion to user-friendly values to the API
      Added timer() function
      Added 'Generate password' link
      Add object_type and type_id arguments to list_options/select_options calls (#698)
      Include unique entry identifier in form_value.generate calls (#700)
      Simplified pretty-printing of OU - use ldap_dn2ufn()
      Fix "No type ID specified" error in auto-complete lists (#702)

Jeroen van Meeuwen (Kolab Systems) (240):
      Initial commit
      Add initial stab at some API work
      Check in initial version of Thomas' work
      Update .htaccess
      Fix typo
      Fix typo
      Reuse the acquired $service / $method information
      Let's try this again
      Only return headers that actually exist
      Actually authenticate the user
      Update .htaccess to not automatically start sessions, and not use cookies
      Remove print statement
      Update .htaccess to use php_flag instead of php_value
      Remove our own shitty Session lib
      Check session validity through the $_SESSION['user']->_authenticated boolean
      Attempt to get to listing domains
      Return the domain name as part of the session information
      Use the domain as auth detects it
      Add additional services,
      Add functions user_add() to Auth() and LDAP()
      Expand variables obtained from the configuration, when possible
      Add more service handlers
      Update and add additional service_handlers
      Add additional inline commentary for clarification
      Add user_delete() function
      Refine deleting a user
      Add user_info() call, returning the ldap search result
      Add Auth->user_info() call
      Add user_info() API call
      Merge branch 'master' of ssh://hosted01.klab.cc/git/vanmeeuwen/kolab-wap
      Correct user_info()
      Add a user_find_by_attribute() call, that returns FALSE if not a single user can be found carrying the attribute(s)
      Add API calls to get, reset and set the current working domain name
      Insert the result payload under a JSON dictionary key "result". This prevents lists returned from API calls to become part of a dictionary with integers as keys for the values
      Add API calls to retrieve group information and to list the members of a group
      Implement calls to the configuration library that allow obtaining settings in a raw fashion (i.e. without expanding any values contained within the settings obtained)
      Add service handler group_types
      Ensure mail addresses initially generated are unique
      Add additional service handlers to load
      Add group service handler
      Update user->capabilities() with outcommented service methods yet to be implemented
      Update domains service capabilities
      Update form_value service capabilities
      Update group service capabilities
      Update group_types service capabilities
      Update user_types service capabilities
      Update users service capabilities
      Add kolab_admin_groups_actions service handler
      Load groups
      Function's called get_username
      Add search() call to Auth
      Fix obtaining the group membership list for a user
      Add a user_find_by_attribute() call, that returns FALSE if not a single user can be found carrying the attribute(s)
      Add API calls to get, reset and set the current working domain name
      Insert the result payload under a JSON dictionary key "result". This prevents lists returned from API calls to become part of a dictionary with integers as keys for the values
      Add API calls to retrieve group information and to list the members of a group
      Implement calls to the configuration library that allow obtaining settings in a raw fashion (i.e. without expanding any values contained within the settings obtained)
      Add service handler group_types
      Ensure mail addresses initially generated are unique
      Add additional service handlers to load
      Add group service handler
      Update user->capabilities() with outcommented service methods yet to be implemented
      Update domains service capabilities
      Update form_value service capabilities
      Update group service capabilities
      Update group_types service capabilities
      Update user_types service capabilities
      Update users service capabilities
      Add kolab_admin_groups_actions service handler
      Load groups
      Function's called get_username
      Add search() call to Auth
      Fix obtaining the group membership list for a user
      Merge branch 'master' of ssh://hosted01.klab.cc/git/vanmeeuwen/kolab-wap
      Rename 'client' to be in 'public_html'
      Move some parts of the main .htaccess to be API interface specific
      Restructure the files that do not belong in public_html to live in lib/
      Update cache/.htaccess
      Set plugins directory
      Do not enforce / require the session.use_cookies setting to be set to either true or false
      The function is called get_request_header, not request_header
      The function is called get_request_header, not request_header
      Do not enforce / require the session.use_cookies setting to be set to either true or false
      The function is called get_request_header, not request_header
      The function is called get_request_header, not request_header
      Merge branch 'master' of ssh://hosted01.klab.cc/git/vanmeeuwen/kolab-wap
      The service method groups.list uses GET, not POST
      Add groups.list backend handlers
      Remove obsolete add_user_test files
      Modify the group list page to use the now implemented groups.list GET method service handler
      Update LDAP to obtain the base_dn and filter for users
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Add some initial translations just to patch things up
      Add form_value.generate_homedirectory()
      Provide (non-functional) version of form_value.generate_uidnumber() and form_value.generate_gidnumber()
      Update labels user.email and user.alias
      Add additional labels
      Provide form_value.generate_mailhost() (dummy function)
      Add some attributes for the form and shuffle some
      Correct .htaccess for this instance
      Add kolab_recipient_policy capabilities
      Merge branch 'dev/recipient_policy'
      Return value changes
      Use preferredlanguage to normalize some values that are supposed to be ascii
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Add public function list_rights($subject)
      Add effective_rights() to LDAP
      Update LDAP class with some extra TODOs
      Add a preliminary version of listing options for a select list.
      Add additional user information that may be specified as being a part of the user type, but is not returned as a result in your average LDAP query.
      Add locale for user.nsrole
      Add INSTALL file with setup instructions
      Even more verbosily document INSTALL
      Improve configuration handling
      Use more items from configuration
      More verbose loggin
      Return false rather than null
      Fix using 'ldap_uri' instead of 'uri'
      Only use $_SESSION['user']->get_domain() if the method actually exists
      Merge branch 'dev/configuration-handling'
      Generate a proper primary mail attribute value for groups
      Use lowercase comparisons when trying to see of the members of a group can be expanded
      Make adding groups work
      Take a stab at making groups editable (and users, ultimately)
      Rename function user_attributes to get_attributes so it can sensibly be used for users, groups and other objects
      Update kolab_admin.js to realize the difference between selecting to add a user, and submitting a form to add a user
      Be a little more intelligent about where to add groups of a certain type using standard configuration section/item resolving mechanisms
      Create a function Auth::modify_entry() to get things edited in one go.
      Move to use configuration value 'unique_attribute' and 'user_name_attribute' and 'group_name_attribute' instead of it's short equivalents (write once read many times)
      Also translate the edit success notification
      Actually generate the uidnumber and gidnumber
      Add 'edit' to capabilities
      Generate the uid and preseed it into the recipient policy if it does not already exist.
      Deprecate Auth::modify_entry_attributes
      Discover what the RDN is by using the old LDAP object
      'nsrole', as an attribute that can actually be added is called 'nsroledn' - provide that form_value.list_options function as well
      Inverse form_value.list_options for nsrole and nsroledn, and issue a warning when using 'nsrole'
      Add function user_edit()
      Add nsroledn attribute to 'system' tab
      Only replace attributes that are not empty.
      Improve handling of optional form fields
      Correct the comparison of an attribute being marked as optional
      Attributes posted and also "static" forms should be preserved (as posted)
      Supply the unique attribute to form submissions as data, so that form_value service methods such as generate_uid and generate_primary_mail can take into account whether the existing result found for a value generated is actually the same LDAP object as is being edited. Resolves #666.
      Special treatment for the userpassword attribute (#665)
      Allow the sort key to be an array
      Allow the sort_by parameter th the users_list to be an array
      Use the array sort_by
      If the username cannot be obtained from the displayname, use the cn
      Use the cn as the title for the user info / edit form if the displayname is empty / not available
      If the query for domain name spaces failed, we are not a multi-domain setup.
      Fall back to finding the user by entrydn attribute if the unique_attr does not work.
      Append entrydn to the form as well
      Provide Auth functions to get to attributes per objectclass, and syntax parameters per attributetype
      Provide functions to interface users;
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Fix typo
      Fix group deletion
      Fix typo
      Reduce code footprint to resolve a subject to a DN
      Additional translations
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      'group' => 'user'
      Revert the alternate configuration file
      Correct syntax error
      More translations
      Move fields to a "Contact Information" tab
      I love spelling things out in full: unique_attr -> unique_attribute
      Do not pass an array with a useless key to a function that is expecting a string
      Rename user.shell -> user.loginshell
      Move loginshell to the system tab
      Check in effective_rights()
      Implement capabilities based on effective_rights for groups
      Implement effective_rights for users
      Implement effective_rights for the menu
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Only mark fields as disabled if they're actually disabled - not if they're just read-only. Resolves #670
      Use the correct values (the user details array, not the result from user_info()) in the call to modify_entry()
      Override the default 'disabled' and 'readonly' attributes to fields depending on the access defined in $auth->list_rights($entry)
      Enable getting back from the environment what we have set elsewhere (workaround for some issues that should be resolved by resolving #671).
      Re-order alphabetically
      Provide functions list_options_c and list_options_preferredlanguage()
      Take into consideration whether or not the field is also a field for which the value is automatically generated
      Retrieve all attributelevel access rights
      Provide select_options_preferredlanguage from database and list_options_kolabdelegate
      More labels
      Revert the conditions under which a field is marked as disabled
      Additional translations
      Group sensible attributes together
      Do not mark auto-generated fields as disabled or its values won't be submitted and the result is an attempt to delete the values from LDAP... :/
      Fix #674 - disabled elements still have a white background
      'title' is supposed to refer to job title or title in an organizational context.
      Abstract searching from the authn/authz backend as well
      Add a public search function, moving the internal (private) search functions to _search and __search
      Add select_options_ou
      Submit the data for an entry to the API calls for select options, so that the options can be limited based on entry metadata (object_type, type_id, ...)
      Set a default preferredlanguage
      Extend Auth::LDAP::group_info() and Auth::LDAP::user_info() with $attributes = array('*') parameter so all attributes we are interested in can be retrieved in one go.
      Suppress console output
      Suppress console output.
      1) Populate the textarea element with an autocomplete widget with the original values.
      Be compatible with lists that only have values
      Clean up listing group members
      List groups as options for uniquemember values too
      Do not attempt to recursively resolve group members for API service method group.members_list
      Allow a parameter $recurse to be passed along to group member listing
      Remove the devel_mode cheat
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Add Conf::get_list(), allowing a list to be returned from a comma- or comma-space seperated value.
      Use the login settings from the configuration file. Resolves #594
      Add 3.0.0 initialization SQL file.
      Add sample kolab.conf
      Update INSTALL with the new doc/ contents
      Correct use of $conf to $this->conf
      Provide some content on the About page
      If a DN is specified as the user login, use it as such
      Fix single-value autocomplete lists
      This doesn't actually fix anything.
      Allow the configuration of whether an administrator user can override automatically generated fields, using a boolean kolab_wap/admin_auto_fields_rw setting.
      Return the result of $auth->user_edit() to the client.
      Translate the initials attribute to 'Initials' instead of 'Middle names'
      Inverse the logic on declaring an array with a positive, non-zero length as empty
      Make effective_rights() work with legacy group membership based authorization mechanisms
      Enhance legacy_rights() with self-write access, and attributes from the schema
      Add list_options_member(), and consolidate the function with list_options_uniquemember() into _list_options_members()
      Add service method group_effective_rights()
      Add the member attribute to the system tab on group information display
      Use the correct service to call the API service method effective_rights() on
      Add translation for group.member label
      Correct getting effective rights for user, not group
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Do not just insert the default_locale as the default value for the preferredlanguage select list, take into account the object may already have a preferredlanguage set
      Set the default OU for adding new users
      Re-prepopulate the form fields for which the value is automatically generated after reloading the form for a type change (#690)
      Revert "Re-prepopulate the form fields for which the value is automatically generated after reloading the form for a type change (#690)"
      Clause the overriding of readonly fields with more administrator rights
      Keep the uidnumber and gidnumber aligned - either highest one will cause the other to be bumped.
      Merge branch 'master' of ssh://git.kolab.org/git/kolab-wap
      Add a sample httpd configuration file
      Update kolab-webadmin.conf for httpd




More information about the commits mailing list