[Rt-commit] rt branch, create-action, updated. 9ec73e2e28b7dce3d9873bafdda93160e97b7703
sartak at bestpractical.com
sartak at bestpractical.com
Thu Sep 3 09:36:51 EDT 2009
The branch, create-action has been updated
via 9ec73e2e28b7dce3d9873bafdda93160e97b7703 (commit)
from cab5c13ac57054622ad9dfee8bf32e0270c113d2 (commit)
Summary of changes:
lib/RT/Action/CreateTicket.pm | 30 +++++++++++++++++++++++++-----
lib/RT/View/Ticket/Create.pm | 5 ++++-
2 files changed, 29 insertions(+), 6 deletions(-)
- Log -----------------------------------------------------------------
commit 9ec73e2e28b7dce3d9873bafdda93160e97b7703
Author: Shawn M Moore <sartak at bestpractical.com>
Date: Thu Sep 3 09:36:29 2009 -0400
Generalize requestors into role_groups
diff --git a/lib/RT/Action/CreateTicket.pm b/lib/RT/Action/CreateTicket.pm
index 9f44008..2a92b51 100644
--- a/lib/RT/Action/CreateTicket.pm
+++ b/lib/RT/Action/CreateTicket.pm
@@ -15,11 +15,6 @@ use Jifty::Action schema {
param owner =>
render as 'select',
valid_values are RT->nobody;
-
- param requestors =>
- render as 'text',
- display_length is 40,
- default is defer { Jifty->web->current_user->email };
};
sub after_set_queue {
@@ -29,6 +24,16 @@ sub after_set_queue {
$self->set_valid_statuses($queue);
$self->set_valid_owners($queue);
+
+ $self->add_role_group_parameter(
+ name => 'requestors',
+ default_value => Jifty->web->current_user->email,
+ );
+}
+
+sub role_group_parameters {
+ my $self = shift;
+ return @{ $self->{_role_group_parameters} || [] };
}
sub set_valid_statuses {
@@ -76,5 +81,20 @@ sub set_valid_owners {
];
}
+sub add_role_group_parameter {
+ my $self = shift;
+ my %args = @_;
+
+ my $name = delete $args{name};
+
+ push @{ $self->{_role_group_parameters} }, $name;
+
+ $self->{_cached_arguments}{$name} = {
+ render_as => 'text',
+ display_length => 40,
+ %args,
+ };
+}
+
1;
diff --git a/lib/RT/View/Ticket/Create.pm b/lib/RT/View/Ticket/Create.pm
index d826623..170e82a 100644
--- a/lib/RT/View/Ticket/Create.pm
+++ b/lib/RT/View/Ticket/Create.pm
@@ -106,7 +106,10 @@ sub show_basics {
render_param($create, 'status');
render_param($create, 'owner');
- render_param($create, 'requestors');
+
+ for my $role_group ($create->role_group_parameters) {
+ render_param($create, $role_group);
+ }
$create->button(label => _('Create'));
};
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list