Version 17 (modified by 10 years ago) (diff) | ,
---|
Contents
Trac Custom Field Admin plugin
Description
This plugin is a Web Admin panel for administering custom fields - adding, modifying and deleting them without editing the trac.ini
file directly.
The plugin is available for Trac 0.10 and 0.11/0.12/1.0 (0.11 branch is compatible with current 0.12+). The plugin will be integrated into Trac for release 1.2 (trac:#11469).
This plugin is a cooperation between CodeResort.com and Optaros.com, and is made freely available under a BSD license.
Bugs/Feature Requests
Existing bugs and feature requests for CustomFieldAdminPlugin are here.
If you have any issues, create a new ticket.
defect |
41 / 42 |
||
---|---|---|---|
enhancement |
20 / 20 |
||
task |
1 / 2 |
Download
Download the zipped source from [download:customfieldadminplugin here].
Source
You can check out CustomFieldAdminPlugin from here using Subversion, or browse the source with Trac.
Installation
The plugin can also be installed directly from the code repository:
easy_install -U -Z http://trac-hacks.org/svn/customfieldadminplugin/0.11
Substitute 0.11
with 0.10
for older Trac version.
Configuration
This plugin requires Web Admin plugin (wiki:WebAdmin) if you are using the 0.10 version. For more recent versions the Web Admin panel is integrated into Trac core.
Enable the plugin in trac.ini:
[components] customfieldadmin.* = enabled
API
The plugin also has an API that can be called from other code if you need to create or modify custom fields. Here is an interactive session as example:
from trac.env import Environment from customfieldadmin.api import CustomFields myenv = Environment('/path/to/env') mycfcomp = CustomFields(myenv) # Get Cusom fields (list of dicts) myfields = mycfcomp.get_custom_fields() for item in myfields: print item # Create a custom field - text box mycfdict = { # a template dictionary 'name': 'test01', # name of field (alphanumeric only) 'type': 'text', # text|checkbox|select|radio|textarea 'label': 'Test 01', # description 'value': 'first test', # default value for field content 'options': None, # options for select and radio types (list, leave first empty for optional) 'cols': None, # number of columns for text area 'rows': None, # number of rows for text area 'order': 0 } # specify sort order for field, 0 for last mycfcomp.update_custom_field(mycfdict, create=True) # Updating mycfdict['type'] = 'select' mycfdict['options'] = ['', 'one', 'two', 'three'] mycfdict['value'] = None mycfcomp.update_custom_field(mycfdict) # And deleting an existing custom field mycfcomp.delete_custom_field(mycfdict)
Recent Changes
- 18456 by rjollos on 2021-10-21 16:23:19
-
CustomFieldAdminPlugin: Use dgettext everywhere
Patch by Jun Omae.
Refs #13992.
- 18455 by rjollos on 2021-10-21 16:19:07
-
CustomFieldAdminPlugin: Fix "KeyError: dngettext"
Extract messages and update catalogs.
Patch by Jun Omae.
- 18450 by rjollos on 2021-10-15 17:11:54
-
CustomFieldAdminPlugin: Fix message extraction from jinja template
Refs #14056.
(more)