I was working on ticket view on trac 0.12.7. I had used the following shown
plugin to create a permission TICKET_VIEW_STATUS and allow the user to see
the tickets with status "test".
# -*- coding: utf-8 -*-
# Copyright (C) 2017 Edgewall Software
# All rights reserved.
# This software is licensed as described in the file COPYING, which
# you should have received as part of this distribution. The terms
# are also available at http://trac.edgewall.org/wiki/TracLicense.
# This software consists of voluntary contributions made by many
# individuals. For the exact contribution history, see the revision
# history and logs, available at http://trac.edgewall.org/log/.
from trac.core import *
from trac.perm import IPermissionPolicy, IPermissionRequestor
from trac.resource import ResourceNotFound
from trac.ticket.model import Ticket
"""Provides a permission for restricting ticket actions to the
# IPermissionRequestor methods
# IPermissionPolicy methods
def check_permission(self, action, username, resource, perm):
if username != 'anonymous' and \
action == 'TICKET_VIEW' and \
'TICKET_ADMIN' not in perm:
if 'TICKET_VIEW_STATUS' in perm:
if resource is None or \
resource.realm == 'ticket' and \
resource.id is None:
elif resource.realm == 'ticket' and \
resource.id is not None:
ticket = Ticket(self.env, resource.id)
Now I would like to add another status to this code like
"Accepted_for_test" , for so I just tried changing the last line as follows:
return ticket['status']=='test', 'accepted_for_test'
But by doing the following change, Now the user is able to view all
tickets, which I was not expecting. Is there any problem with the syntax?
or I am missing something? Kindly guide me in this regard.
You received this message because you are subscribed to the Google Groups "Trac
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to firstname.lastname@example.org.
Visit this group at https://groups.google.com/group/trac-users.
For more options, visit https://groups.google.com/d/optout.