ToDo

  • long-term: research reducing JavaScript? logic in favor of a more capable Genshi template, or even a JS free plugin implementation

News

18-Nov-2010
add some enhancements and i18n support (open: 0)
13-Nov-2010
changed repository layout, long-standing enhancement (#6266) added to trunk branch (open: 1)
12-Nov-2010
Maintainership handed over from vnaum to hasienda (open: 3 tickets)

CC selector plugin

Description

This plugin allows "visual" CC field editing.

A pop-up window with bunch of checkboxes is opened, user checks boxes, email addresses are added to and removed from Cc ticket field.

[Comment for the original author: Pretty useless, if you ask me, but my PM team finds this useful.]

JavaScript is required and working with Firefox, Mozilla and Internet Explorer 6. Opera / Safari reports are welcome.

It works with both Trac 0.10, 0.11, and 0.12 (since rev3531). I18n support for Trac >= 0.12 is planned to be added to the 0.11 branch in a backwards-compatible way.

Developer list is fetched from Trac DB. Users who logged in at least once (see session table) and have 'TICKET_VIEW' permission are listed. If you better like "old" variant (hardcoded list in javascript file) for some reason - you should stick with the older release.

Do you need the fixed list option and would like to get it back to an upcoming release?
  • Yes, got stuck with old release because of this
  • Yes, because I badly miss it
  • No, found another solution/like to patch on my own
  • No, don't care/don't need such stuff

Of course, you can always edit the Cc field without all this hassle - all addresses you entered manually will be shown, too - and can be removed with new, shiny checkboxes.

See AutocompleteUsersPlugin for another way to help with filling the Cc ticket field.

Bugs/Feature Requests

Existing bugs and feature requests for CcSelectorPlugin are here. If you have any issues, create a new ticket.

Download and Source

Download the zipped source, check out using Subversion, or browse the source with Trac.

Configuration

Following options have been added to trunk branch recently:

[cc_selector]
show_fullname = true
username_blacklist = user1, 'user 2'

show_fullname

  • default: false
  • Display full names instead of usernames if available.
  • Use case: If most/relevant Trac users prefer full names over usernames aka login/nicknames.

username_blacklist

  • default: '' (empty string)
  • Usernames separated by comma, that should never get listed.
  • Use case: Hide administrator accounts from the default list.

Want drop-down box for "assign to" field?

If you want drop-down box for "assign to" field - it's already in Trac since 0.9. All you have to do is set restrict_owner option in trac.ini like:

[ticket]
restrict_owner = true

This page has more info on this.

Example

A pop-up window with bunch of checkboxes is opened, user checks boxes, email addresses are added and removed to CC field.

screenshot

About i18n/l10n support

The development version of this plugin is prepared for localization.
But English message texts are still the (POSIX) default. If this isn't your preferred language, you can

  1. look, if it's already available from the Trac plugin l10n project at Transifex or
  2. do it yourself (see the l10n cookbook page for Trac plugins for more details).

You've done a new translation? Superb! Contributing your translation is highly appreciated.
You could send it to the plugin's maintainer or contribute to Trac plugin l10n project via Transifex:

Top translations: Trac_Plugin-L10N ยป cc_selector

http://www.transifex.net/projects/p/Trac_Plugin-L10N/c/cc_selector/chart/image_png

Kindly provided by http://sw.transifex.net/2/static/charts/images/tx-logo-micro.png

Preparing the plugin from source requires no additional steps for compiling message catalog files. Only to include translations marked as # fuzzy by the translator, you'll want to do a manual message catalog compilation with the extra -f argument before packaging:

cd ccselectorplugin/
python ./setup.py compile_catalog -f
python ./setup.py bdist_egg

Complaints about missing locale directory are often a side-effect of failure to compile any message catalog for inclusion into Python egg, hence the whole path is missing. Due to a know Trac issue Babel has to be installed prior to Trac, to get it all working as expected.
Again, for more details see the l10n cookbook page for Trac plugins.

Recent Changes

[9445] by hasienda on 11/18/10 20:23:35

CcSelectorPlugin: Change depreciated jQuery call to newer, compliant style.

Inspiration has been taken from #2705.

[9439] by hasienda on 11/18/10 14:20:01

CcSelectorPlugin: Add basic i18n setup and message markup, closes #7733.

Initial message extraction has been done and German translations added. And Happy Birthday to myself after finishing another delicate i18n work.

[9438] by hasienda on 11/18/10 14:14:19

CcSelectorPlugin: Apply a bundle of small improvements.

For 10+ selections we add a dedicated close button into the popup window beneath the list. JS code related to browser compatibility has been obsoleted by rewriting with jQuery functions. Other changes have been done mostly due to personal preference of certain coding styles.

[9428] by hasienda on 11/13/10 15:40:16

CcSelectorPlugin: Optionally filter blacklisted usernames from default list.

Prevent some registered users from being listed by default, you can add corresponding Trac usernames to your trac.ini like

[cc_selector]
username_blacklist = user1, 'user 2'

Hint: Actual Cc field content is not altered, so these users will still shown up in the list, if their name was added to the field before.

Author/Contributors

Author: vnaum
Maintainer: hasienda
Contributors: terje

Attachments