Support for Pending Tickets
Description
The intent of this is to allow an administrator to mark a Ticket as "Pending" to indicate that information has been requested from the reporter. If the reporter doesn't reply with in the allotted timeframe, the ticket will automatically be closed.
This works well when combined with the SimpleTicketPlugin.
Bugs/Feature Requests
Existing bugs and feature requests for PendingTicketPlugin are here.
If you have any issues, create a new ticket.
Download
Download the zipped source from here.
Source
You can check out PendingTicketPlugin from here using Subversion, or browse the source with Trac.
Example
For Trac 0.11
If upgrading from 0.10, you'll need to convert the data using the migrate_pending_attrib_to_status.py /path/to/tracenv script which is included.
Set up your ticket workflow to include a 'pending' status (see the following example):
[ticket-workflow] pending = new -> pending pending.permissions = TICKET_MODIFY
Specify a status for tickets to be moved to
[ticket] pending_removal_status = new
Install the PendingStatusRemovePlugin to have the pending flag automatically removed when the reporter responds.
<CHECKOUT THE SOURCE AND GO TO THE 0.11/removependingplugin DIRECTORY> setup.py bdist_egg cp dist/RemovePendingStatusPlugin-x-y-z-py2.4.egg $TRAC_ENV/plugins
You'll also need to enable the Plugin in your trac.ini file:
[components] removepending.* = enabled
To enable the automatic closing of tickets, you'll need to set up a script to be run by cron. Mine looks like this:
#! /bin/bash TRAC_ENV=/somewhere/trac/project SCRIPT_DIR=$TRAC_ENV/localscripts LOGFILE=$SCRIPT_DIR/close_old_pending.log date >> $LOGFILE python $SCRIPT_DIR/close_old_pending.py -p $TRAC_ENV -d 14 >> $LOGFILE 2>&1
For Trac 0.10
Add a custom ticket field to your trac.ini file:
[ticket-custom] pending = checkbox pending.label = Pending pending.value = 0
If you're using the SimpleTicketPlugin, you may want to hide it:
[simpleticket] hide = pending
Install the PendingStatusRemovePlugin to have the pending flag automatically removed when the reporter responds.
<CHECKOUT THE SOURCE AND GO TO THE 0.10/removependingplugin DIRECTORY> setup.py bdist_egg cp dist/RemovePendingStatusPlugin-x-y-z-py2.4.egg $TRAC_ENV/plugins
You'll also need to enable the Plugin in your trac.ini file:
[components] removepending.* = enabled
To enable the automatic closing of tickets, you'll need to set up a script to be run by cron. Mine looks like this:
#! /bin/bash TRAC_ENV=/somewhere/trac/project SCRIPT_DIR=$TRAC_ENV/localscripts LOGFILE=$SCRIPT_DIR/close_old_pending.log TRAC_URL=http://trac.mysite.com/project date >> $LOGFILE python $SCRIPT_DIR/close_old_pending.py -p $TRAC_ENV -d 14 -s $TRAC_URL >> $LOGFILE 2>&1
Recent Changes
[4211] by datallah on 09/01/08 00:12:09
Make this work again.
[4123] by datallah on 08/10/08 18:50:35
Fix conversion query.
[4115] by datallah on 08/05/08 13:02:15
Updates to take advantage of 0.11 functionality. Use a 'pending' status instead of a custom ticket field.
[4099] by datallah on 07/31/08 15:52:50
Updates to support 0.11 (now featuring the ability to unset pending when attachments are uploaded)
Author/Contributors
Author: datallah
Contributors:
