Contents
Manage users and teams
Notice: This plugin is unmaintained and available for adoption.
Notice: there are plans to integrate the functionality of this plugin into AccountManagerPlugin.
Description
This plugin provides a simple, standard way for teams to manage the resources on the team from within Trac. While trac.admin provides too many places to set up one user, this plugin provides one single page where a project admin can setup all things related to one user.
Key features:
- Helps managing users, such as profiles, permissions, authentication (based on AccountManagerPlugin), and anything based on this plugin's extension points.
- Provides filterable team rosters based on user profiles and custom fields.
- There is also an API available to allow you to develop your own user views.
Screenshot of a user:
See below for more screenshots.
To use as a macro:
[[UserProfilesList]] # Without arguments returns current active user profiles [[UserProfilesList(role=developer)]] # Returns all userProfiles with role='developer' [[UserProfilesList(NOT_role=developer)]] # Returns all userProfiles with NOT role=developer [[UserProfilesList(name=%someName%)]] # Returns all userProfiles with name like 'someName' [[UserProfilesList({id=cbalan},{role=%arh%})]] # Returns cbalan's profile and user profiles with role='%arh%' [[UserProfilesList(|class=someCSS_Class, style=border:1px solid green;padding:12px)]] # Adds style and class attributes to box layout
See also: UserPicturesPlugin
Bugs/Feature Requests
Existing bugs and feature requests for UserManagerPlugin are here.
If you have any issues, create a new ticket.
defect |
22 / 34 |
||
---|---|---|---|
enhancement |
6 / 17 |
||
task |
2 / 2 |
Download
Download the zipped source from here.
Source
You can check out UserManagerPlugin from here using Subversion, or browse the source with Trac.
Installation
General instructions on installing Trac plugins can be found on the TracPlugins page.
Install the plugin, for example for Trac 0.11: easy_install https://trac-hacks.org/svn/usermanagerplugin/0.11
Configuration
Add the following lines to your trac.ini
file:
[components] tracusermanager.* = enabled [um_profile-custom] office = select office.cols = 20 office.label = Office office.options = |Bucharest|Boston|San Francisco|New York office.order = 1 bio = wikitext bio.cols = 70 bio.rows = 10 bio.label = Bio bio.order = 2 gim = text gim.cols = 20 gim.label = Gmail gim.order = 3 yim = text yim.cols = 20 yim.label = Yahoo yim.order = 4 tags = multichecks tags.label = Tags tags.options = developer|qa|pm|ux tags.order = 5
Note: If you also have AccountManagerPlugin installed, you may want to disable its admin interface, so you don't have two 'Users' entries in the Admin Accounts section:
[components] acct_mgr.admin.accountmanageradminpanel = disabled # AccountManager < 0.5 acct_mgr.admin.useradminpanel = disabled # AccountManager >= 0.5
API
from tracusermanager.api import UserManager, User # Get user by id(username) user = UserManager(env).get_user( "cbalan" ) # Get active users team = UserManager(env).get_active_users() for user in team: print user.username print user['email'] print user['bio'] # Search users ( Dummy example: All active developers that have an gmail account ) search_result_list = UserManager(env).search_users(User(role="developer", email="%gmail.com")) for user in search_result_list: print user.username print user['role'] # Create new user UserManager(self.env).create_user(User(username="cbalan", name="Catalin Balan", email="cbalan@optaros.com")) # Update user = UserManager(self.env).get_user('cbalan') user['bio'] = """Maecenas ut mauris. Morbi congue nunc ut tortor. Pellentesque molestie cursus enim. Praesent gravida consequat mauris. Nulla cursus cursus magna. Sed libero. Integer dapibus urna in mauris. Fusce fringilla: - Mauris ipsum mauris, semper at, lacinia ultrices, pellentesque eget, arcu. - Etiam vel enim et nunc luctus gravida. Morbi suscipit scelerisque odio. - Mauris porta. Nullam dui. Nullam egestas, massa eu condimentum mattis, enim ipsum tincidunt purus, vitae vestibulum sapien eros vitae libero. """ user.save() # Remove UserManager(env).delete_user(user)
Screenshots
Admin user interface:
User permissions setup:
User authentication:
Manage user profiles fields:
Team profile with the users defined on it:
User management administration:
Questions
- Could you explain the interface?
- What's the difference between 'Users' and 'External Users'?
- Some of the screen shots seem like they might be out of date.
Recent Changes
- 17454 by rjollos on 2019-08-17 00:22:26
-
TracUserManagerPlugin 1.2.0dev: Fix regression in r16852
Fixes #13586.
- 17212 by rjollos on 2018-06-17 06:29:58
-
TracUserManagerPlugin 1.2.0dev: Fix incorrectly bound method
Refs #13442.
- 17211 by rjollos on 2018-06-15 18:16:25
-
TracUserManagerPlugin 1.2.0dev: Conform to PEP8
(more)
Author/Contributors
Author: cbalan
Maintainer: none (needsadoption)
Contributors: hasienda
Attachments (7)
-
screenshot2.png (207.5 KB) - added by 17 years ago.
admin.profile
-
screenshot3.png (179.3 KB) - added by 17 years ago.
admin.permissions
-
screenshot4.png (163.3 KB) - added by 17 years ago.
admin.autentication
-
screenshot5.png (170.4 KB) - added by 17 years ago.
admin.profile.customfields
-
screenshot6.png (220.9 KB) - added by 17 years ago.
userprofileslist macro
-
screenshot7.png (201.4 KB) - added by 17 years ago.
admin
-
screenshot-user.png (106.3 KB) - added by 7 years ago.
User page
Download all attachments as: .zip