[[PageOutline(2-5,Contents,pullout)]] = Support for Pending Tickets == Description This plugin allows an administrator to mark a Ticket as "Pending" to indicate that information has been requested from the reporter. If the reporter doesn't reply within the allotted timeframe, the ticket will be closed automatically. This works well when combined with the SimpleTicketPlugin. == Bugs/Feature Requests Existing bugs and feature requests for PendingTicketPlugin are [report:9?COMPONENT=PendingTicketPlugin here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=PendingTicketPlugin&owner=datallah new ticket]. [[TicketQuery(component=PendingTicketPlugin&group=type,format=progress)]] == Download Download the zipped source from [download:pendingticketplugin here]. == Source You can check out PendingTicketPlugin from [http://trac-hacks.org/svn/pendingticketplugin here] using Subversion, or [source:pendingticketplugin browse the source] with Trac. == Installation === For Trac 0.11 or 1.0 If upgrading from Trac 0.10, you will 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, for example: {{{ #!ini [ticket-workflow] pending = new -> pending pending.permissions = TICKET_MODIFY }}} Specify a status for tickets that it needs to be moved to: {{{ #!ini [ticket] pending_removal_status = new }}} Install the !PendingStatusRemovePlugin to have the pending flag automatically removed when the reporter responds: {{{ #!sh setup.py bdist_egg cp dist/RemovePendingStatusPlugin-x-y-z-py2.4.egg $TRAC_ENV/plugins }}} You will also need to enable the Plugin in your `trac.ini` file: {{{ #!ini [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:[[BR]] {{{ #!sh #! /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: {{{ #!ini [ticket-custom] pending = checkbox pending.label = Pending pending.value = 0 }}} If you're using the SimpleTicketPlugin, you may want to hide it: {{{ #!ini [simpleticket] hide = pending }}} Install the !PendingStatusRemovePlugin to have the pending flag automatically removed when the reporter responds: {{{ #!sh setup.py bdist_egg cp dist/RemovePendingStatusPlugin-x-y-z-py2.4.egg $TRAC_ENV/plugins }}} You will also need to enable the Plugin in your `trac.ini` file: {{{ #!ini [components] removepending.* = enabled }}} To enable the automatic closing of tickets, you will need to set up a script to be run by cron. Example: {{{ #!sh #! /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 [[ChangeLog(pendingticketplugin, 3)]] == Author/Contributors '''Author:''' [wiki:datallah] [[BR]] '''Maintainer:''' [[Maintainer]] [[BR]] '''Contributors:'''