id	summary	reporter	owner	description	type	status	priority	component	severity	resolution	keywords	cc	release
8926	[PATCH] configurable group_whitelist, systematic negation operation, mixed-case group names	bof	rjollos	This ticket provides an enhancement patch covering the following bullet points:\r\n\r\n * in addition to the ''group_blacklist'', in section {{{[virtualticketpermissions]}}},\r\n   you can also write a '''group_whitelist''' setting.\r\n   * only groups on the whitelist will be considered for the TICKET_IS_..._GROUP\r\n     permissions\r\n   * the blacklist, if also configured, still works\r\n   * both whitelist and blacklist entries '''can be regular expressions'''\r\n     (each list will be regex-compiled once on component init for performance)\r\n * group names can be mixed-case in addition to the already supported all-lower-case;\r\n   only complete-upper-case stuff, i.e. PERMISSIONS_PROPER, are excluded\r\n * for '''all''' of the ''TICKET_IS_XXX'' permissions provided by the module,\r\n   there is now a corresponding '''TICKET_IS_NOT_XXX''' negating the test.\r\n   This permits writing mutually exclusive workflow steps, like this:\r\n{{{\r\nreassign = assigned,accepted,started -> assigned\r\nreassign.operations = set_owner\r\nreassign.permissions = TICKET_IS_OWNER_GROUP\r\n\r\ntakeover = assigned,accepted,started -> assigned\r\ntakeover.operations = set_owner_to_self\r\ntakeover.permissions = TICKET_IS_NOT_OWNER_GROUP\r\nOUP\r\n}}}\r\n   A single user will either see reassign (when they share a group with the current owner),\r\n   or ''takeover'', but never both (unless they are TRAC_ADMIN, which seems to not call down\r\n   to the plugin at all, unfortunately)	enhancement	new	normal	VirtualTicketPermissionsPlugin	normal				0.11
