wiki:QuietPlugin

Version 12 (modified by rjollos, 12 months ago) (diff)

Added syntax highlighting.

Toggle sending Announcer emails

Description

This plugin provides a link (in the contextual nav) to toggle on and off sending emails for your ticket changes. The purpose is to reduce superfluous emails for changes the author deems low-value.

This plugin is dependent upon the Announcer plugin (which must already be installed) and Javascript. The toggling is handled via ajax so you can remain on the same page and not disrupt any current work. The toggle link will appear on /newticket, /ticket, /query, and /report pages since ticket changes are possible on all of these (e.g., via BatchModify or GridModify).

Configuration

  1. Install the plugin (after downloading and unzipping):
    cd quietplugin/0.12
    sudo python setup.py install
    

See TracPlugins for more installation details and options. You'll likely need to restart Trac's web server after installation.

  1. Enable the plugin and disable announcer.distributors.mail.EmailDistributor in trac.ini:
    [components]
    announcer.* = enabled
    announcer.distributors.mail.EmailDistributor = disabled
    quiet.* = enabled
    

You can alternatively use the Trac Web Admin GUI. The above is because the quietplugin provides its own email distributor which effectively wraps the announcer's EmailDistributor with an extra check to see if the user entered quiet mode or not.

  1. (Optional) Customize the quiet mode labels in trac.ini:
    [quiet]
    enter_label = Enter Quiet Mode
    leave_label = Leave Quiet Mode
    

There are a few additional optional configurations - see below.

  1. Add the QUIET_MODE permission to users or groups as appropriate on the Admin > Permissions page.

Bugs/Feature Requests

Existing bugs and feature requests for QuietPlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out QuietPlugin from here using Subversion, or browse the source with Trac.

Examples

  • During planning, I can now avoid barraging people with emails when I move large batches of tickets from one milestone to another using BatchModify.
  • I want to make a minor fix to a ticket's description that doesn't call for yet another email to be sent - enter quiet mode!
  • I'm triaging many tickets in a Queue report with new positions using GridModify and I don't want an email sent for each change.
  • I'm managing dependencies using the Analyze plugin and don't want to inundate the team with emails of its fixes.

Trigger quiet mode

To help you remember to enter quiet mode for the above use cases (or similar ones), you can create trigger rules on DOM elements that will prompt you to enter or leave quiet mode (if you're not already in that state):

[quiet]
1.selector = #analyzebutton
1.action = enter

2.selector = #batchmod_submit
2.action = enter
2.submit = true

3.selector = #propertyform[action*=ticket] .buttons input[name=submit]
3.action = leave
3.only_if = #comment:first=.+
3.submit = true

The above example defines three trigger rules explained as follows:

  1. When the "Analyze.." button is clicked, prompt to enter quiet mode.
  2. When the "Batch Modify" button is clicked, prompt to enter quiet mode (and prevent the submission - but then they can submit again).
  3. When a ticket's "Submit changes" button is clicked and there's some text in the comment field, then prompt to enter quiet mode (and prevent the submission - but then they can submit again).

The only_if option can either be just a CSS selector or also include an expected regex value (e.g., the =.+ above). If just a selector, then the selector must exist. If also an expected rege value, then the selected item's jQuery val() must match the expected value.

Recent Changes

[14035] by rjollos on 2014-07-25 13:41:31
Fixed URL in setup.py. Refs #11832.
[14029] by rjollos on 2014-07-25 13:32:17
Changed license to 3-Clause BSD with permission of author. Refs #11832.
[13991] by rjollos on 2014-06-22 11:47:31
Indentation and whitespace cleanup using reindent.py.

Author/Contributors

Author: robguttman
Maintainer: robguttman
Contributors:

Attachments (1)

Download all attachments as: .zip