Changeset 469
- Timestamp:
- 08/05/10 11:50:22 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/email2trac.py.in
r468 r469 784 784 # We must use the ticket workflow framework 785 785 # 786 if self.parameters.email_triggers_workflow : 787 788 #print controller.actions['reopen'] 789 # 790 # As reference 791 # req = Mock(href=Href('/'), abs_href=Href('http://www.example.com/'), authname='anonymous', perm=MockPerm(), args={}) 792 # 793 #a = controller.render_ticket_action_control(req, tkt, 'reopen') 794 #print 'controller : ', a 795 # 796 #b = controller.get_all_status() 797 #print 'get all status: ', b 798 # 799 #b = controller.get_ticket_changes(req, tkt, 'reopen') 800 #print 'get_ticket_changes :', b 801 802 workflow = None 803 if self.VERSION >= 0.11: 804 786 if self.parameters.email_triggers_workflow and (self.VERSION >= 0.11): 787 788 self.logger.debug('Workflow ticket update fields: ') 789 790 from trac.ticket.default_workflow import ConfigurableTicketWorkflow 791 from trac.test import Mock, MockPerm 792 793 req = Mock(authname=self.author, perm=MockPerm(), args={}) 794 try: 805 795 workflow = self.parameters['workflow_%s' %tkt['status']] 806 796 except KeyError: 807 797 ## fallback for compability (Will be deprecated) 808 798 # 809 if not workflow: 810 if tkt['status'] in ['closed'] and self.parameters.workflow: 811 workflow = self.parameters.workflow 799 if tkt['status'] in ['closed']: 800 workflow = self.parameters.workflow 801 else: 802 workflow = None 803 804 controller = ConfigurableTicketWorkflow(self.env) 805 #print controller.actions 806 #print controller.actions.keys() 807 #print controller.get_ticket_actions(req, tkt) 808 #print controller.actions[workflow] 809 #print controller.actions[workflow]['permissions'] is a list 812 810 813 811 if workflow: 814 ## Execute workflow 815 #816 from trac.ticket.default_workflow import ConfigurableTicketWorkflow 817 from trac.test import Mock, MockPerm818 819 req = Mock(authname='anonymous', perm=MockPerm(), args={})820 821 controller = ConfigurableTicketWorkflow(self.env)822 fields = controller.get_ticket_changes(req, tkt, workflow) 823 824 self.logger.debug('Workflow ticket update fields: ')812 813 if self.parameters.ticket_permission_system: 814 815 if self.check_permission(tkt, controller.actions[workflow]['permissions'][0]): 816 fields = controller.get_ticket_changes(req, tkt, workflow) 817 else: 818 fields = dict() 819 self.logger.info('Reporter: %s has no permission to trigger workflow' %self.author) 820 821 else: 822 fields = controller.get_ticket_changes(req, tkt, workflow) 825 823 826 824 for key in fields.keys(): … … 828 826 tkt[key] = fields[key] 829 827 830 elif tkt['status'] in ['closed']: 831 ## default when no workflow defined or wrong version of trac 832 # 828 ## Old pre 0.11 situation 829 # 830 elif self.parameters.email_triggers_workflow: 831 self.logger.debug('email triggers workflow pre trac 0.11') 832 if tkt['status'] in ['closed']: 833 833 tkt['status'] = 'reopened' 834 834 tkt['resolution'] = '' 835 835 836 # Must we update some ticket fields properties via subjectline 836 else: 837 self.logger.debug('email triggers workflow disabled') 838 839 ## Must we update some ticket fields properties via subjectline 837 840 # 838 841 if update_fields:
Note: See TracChangeset
for help on using the changeset viewer.