[Rt-commit] rt branch, admin_ui, updated. 15bfe551979e0d05dc51087194c5fd6818b4a861
sunnavy at bestpractical.com
sunnavy at bestpractical.com
Tue Jan 5 03:10:28 EST 2010
The branch, admin_ui has been updated
via 15bfe551979e0d05dc51087194c5fd6818b4a861 (commit)
from e10b26003f5edb6fef61ff13fea181d46bcdc889 (commit)
Summary of changes:
lib/RT/Action/CreateGroup.pm | 43 +++++++++++++++++++---
lib/RT/Action/{CreateQueue.pm => CreateUser.pm} | 19 ++++++----
lib/RT/Action/{UpdateQueue.pm => UpdateGroup.pm} | 24 ++++++------
lib/RT/Action/{UpdateQueue.pm => UpdateUser.pm} | 25 +++++++------
4 files changed, 73 insertions(+), 38 deletions(-)
copy lib/RT/Action/{CreateQueue.pm => CreateUser.pm} (62%)
copy lib/RT/Action/{UpdateQueue.pm => UpdateGroup.pm} (63%)
copy lib/RT/Action/{UpdateQueue.pm => UpdateUser.pm} (62%)
- Log -----------------------------------------------------------------
commit 15bfe551979e0d05dc51087194c5fd6818b4a861
Author: sunnavy <sunnavy at bestpractical.com>
Date: Tue Jan 5 16:09:58 2010 +0800
add User and Group actions with disabled column
diff --git a/lib/RT/Action/CreateGroup.pm b/lib/RT/Action/CreateGroup.pm
index ba2a36f..4974226 100644
--- a/lib/RT/Action/CreateGroup.pm
+++ b/lib/RT/Action/CreateGroup.pm
@@ -1,14 +1,46 @@
+package RT::Action::CreateGroup;
use strict;
use warnings;
-=head1 NAME
+use base qw/Jifty::Action::Record::Create RT::Action::WithCustomFields/;
-RT::Action::CreateGroup
+sub record_class { 'RT::Model::Group' }
-=cut
+use constant report_detailed_messages => 1;
-package RT::Action::CreateGroup;
-use base qw/RT::Action RT::Action::Record::Create/;
+use Jifty::Param::Schema;
+use Jifty::Action schema {
+ param disabled =>
+ render as 'Checkbox';
+};
+
+sub arguments {
+ my $self = shift;
+ if ( !$self->{_cached_arguments} ) {
+
+ $self->{_cached_arguments} = $self->SUPER::arguments;
+ my $group = RT::Model::Group->new;
+ my @args = $self->_setup_custom_fields( cfs => $group->custom_fields );
+ for my $args (@args) {
+ my $name = delete $args->{name};
+ $self->{_cached_arguments}{$name} = $args;
+ }
+ }
+
+ return $self->{_cached_arguments};
+}
+
+sub take_action {
+ my $self = shift;
+ $self->SUPER::take_action;
+ $self->_add_custom_field_values;
+ if ( $self->has_argument('disabled') ) {
+ my ( $status, $msg ) =
+ $self->record->set_disabled( $self->argument_value('disabled') );
+ Jifty->log->error( $msg ) unless $status;
+ }
+ return 1;
+}
=head2 create_record
@@ -25,4 +57,3 @@ sub create_record {
}
1;
-
diff --git a/lib/RT/Action/CreateUser.pm b/lib/RT/Action/CreateUser.pm
new file mode 100644
index 0000000..2436e8e
--- /dev/null
+++ b/lib/RT/Action/CreateUser.pm
@@ -0,0 +1,45 @@
+package RT::Action::CreateUser;
+use strict;
+use warnings;
+
+use base qw/Jifty::Action::Record::Create RT::Action::WithCustomFields/;
+
+sub record_class { 'RT::Model::User' }
+
+use constant report_detailed_messages => 1;
+
+use Jifty::Param::Schema;
+use Jifty::Action schema {
+ param disabled =>
+ render as 'Checkbox';
+};
+
+sub arguments {
+ my $self = shift;
+ if ( !$self->{_cached_arguments} ) {
+
+ $self->{_cached_arguments} = $self->SUPER::arguments;
+ my $user = RT::Model::User->new;
+ my @args = $self->_setup_custom_fields( cfs => $user->custom_fields );
+ for my $args (@args) {
+ my $name = delete $args->{name};
+ $self->{_cached_arguments}{$name} = $args;
+ }
+ }
+
+ return $self->{_cached_arguments};
+}
+
+sub take_action {
+ my $self = shift;
+ $self->SUPER::take_action;
+ $self->_add_custom_field_values;
+ if ( $self->has_argument('disabled') ) {
+ my ( $status, $msg ) =
+ $self->record->set_disabled( $self->argument_value('disabled') );
+ Jifty->log->error( $msg ) unless $status;
+ }
+ return 1;
+}
+
+1;
diff --git a/lib/RT/Action/UpdateGroup.pm b/lib/RT/Action/UpdateGroup.pm
new file mode 100644
index 0000000..17fb94c
--- /dev/null
+++ b/lib/RT/Action/UpdateGroup.pm
@@ -0,0 +1,45 @@
+package RT::Action::UpdateGroup;
+use strict;
+use warnings;
+
+use base qw/Jifty::Action::Record::Update RT::Action::WithCustomFields/;
+
+sub record_class { 'RT::Model::Group' }
+
+use constant report_detailed_messages => 1;
+
+use Jifty::Param::Schema;
+use Jifty::Action schema {
+ param disabled =>
+ render as 'Checkbox';
+};
+
+sub arguments {
+ my $self = shift;
+ if ( !$self->{_cached_arguments} ) {
+
+ $self->{_cached_arguments} = $self->SUPER::arguments;
+ my $group = RT::Model::Group->new;
+ my @args = $self->_setup_custom_fields( cfs => $group->custom_fields );
+ for my $args (@args) {
+ my $name = delete $args->{name};
+ $self->{_cached_arguments}{$name} = $args;
+ }
+ }
+
+ return $self->{_cached_arguments};
+}
+
+sub take_action {
+ my $self = shift;
+ $self->SUPER::take_action;
+ $self->_add_custom_field_values;
+ if ( $self->has_argument('disabled') ) {
+ my ( $status, $msg ) =
+ $self->record->set_disabled( $self->argument_value('disabled') );
+ Jifty->log->error( $msg ) unless $status;
+ }
+ return 1;
+}
+
+1;
diff --git a/lib/RT/Action/UpdateUser.pm b/lib/RT/Action/UpdateUser.pm
new file mode 100644
index 0000000..700f31c
--- /dev/null
+++ b/lib/RT/Action/UpdateUser.pm
@@ -0,0 +1,46 @@
+package RT::Action::UpdateUser;
+use strict;
+use warnings;
+
+use base qw/Jifty::Action::Record::Update RT::Action::WithCustomFields/;
+
+sub record_class { 'RT::Model::User' }
+
+use constant report_detailed_messages => 1;
+
+use Jifty::Param::Schema;
+use Jifty::Action schema {
+ param disabled =>
+ render as 'Checkbox';
+};
+
+sub arguments {
+ my $self = shift;
+ if ( !$self->{_cached_arguments} ) {
+
+ $self->{_cached_arguments} = $self->SUPER::arguments;
+ my $user = RT::Model::User->new;
+ my @args = $self->_setup_custom_fields( cfs => $user->custom_fields );
+ for my $args (@args) {
+ my $name = delete $args->{name};
+ $self->{_cached_arguments}{$name} = $args;
+ }
+ }
+
+ return $self->{_cached_arguments};
+}
+
+sub take_action {
+ my $self = shift;
+ $self->SUPER::take_action;
+ $self->_add_custom_field_values;
+ if ( $self->has_argument('disabled') ) {
+ my ( $status, $msg ) =
+ $self->record->set_disabled( $self->argument_value('disabled') );
+ Jifty->log->error( $msg ) unless $status;
+ }
+
+ return 1;
+}
+
+1;
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list