[Rt-commit] rt branch, create-action, updated. cd257b4ec61c92786088f9e14b4422ef819bc7e4
sartak at bestpractical.com
sartak at bestpractical.com
Mon Oct 5 21:47:09 EDT 2009
The branch, create-action has been updated
via cd257b4ec61c92786088f9e14b4422ef819bc7e4 (commit)
from 9a6621c0439214f4e806afc49d07184cd8f843d6 (commit)
Summary of changes:
lib/RT/View/Form/SelectOwner.pm | 53 +++++++++++++++++++++++++++++++++++++++
1 files changed, 53 insertions(+), 0 deletions(-)
create mode 100644 lib/RT/View/Form/SelectOwner.pm
- Log -----------------------------------------------------------------
commit cd257b4ec61c92786088f9e14b4422ef819bc7e4
Author: Shawn M Moore <sartak at bestpractical.com>
Date: Mon Oct 5 21:46:50 2009 -0400
Add an RT-specific form field class SelectOwner
It's just a stub right now though
diff --git a/lib/RT/View/Form/SelectOwner.pm b/lib/RT/View/Form/SelectOwner.pm
new file mode 100644
index 0000000..4016b43
--- /dev/null
+++ b/lib/RT/View/Form/SelectOwner.pm
@@ -0,0 +1,53 @@
+package RT::View::Form::SelectOwner;
+use warnings;
+use strict;
+use base 'Jifty::Web::Form::Field::Select';
+
+sub render_widget {
+ my $self = shift;
+ my $field = qq! <select !;
+ $field .= qq! name="@{[ $self->input_name ]}"!;
+ $field .= qq! id="@{[ $self->element_id ]}"!;
+ $field .= qq! title="@{[ $self->title ]}"! if ($self->title);
+ $field .= $self->_widget_class;
+ $field .= $self->javascript;
+ $field .= q! multiple="multiple"! if $self->multiple;
+ $field .= qq! >\n!;
+ my $current_value = $self->current_value;
+ for my $opt ($self->available_values) {
+ my $display = ref($opt) ? $opt->{'display'} : $opt;
+ my $value = ref($opt) ? $opt->{'value'} : $opt;
+ $value = "" unless defined $value;
+ $field .= qq!<option value="@{[ Jifty->web->escape($value) ]}"!;
+ $field .= qq! selected="selected"!
+ if defined $current_value
+ && (
+ ref $current_value eq 'ARRAY'
+ ? ( grep { $value eq $_ } @$current_value )
+ : $current_value eq $value );
+ $field .= qq!>!;
+ $field .= Jifty->web->escape(_($display)) if defined $display;
+ $field .= qq!</option>\n!;
+ }
+ $field .= qq!</select>\n!;
+ Jifty->web->out($field);
+ '';
+}
+
+sub render_value {
+ my $self = shift;
+ my $field = '<span';
+ $field .= qq! class="@{[ $self->classes ]}"> !;
+ my $value = $self->current_value;
+ if(defined $value) {
+ my @value = grep { $_->{value} eq $value } $self->available_values;
+ $value = $value[0]->{display} if scalar @value;
+ }
+ $field .= Jifty->web->escape(_($value)) if defined $value;
+ $field .= qq!</span>\n!;
+ Jifty->web->out($field);
+ return '';
+}
+
+1;
+
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list