From c8edb1e681cadff9a84572c4a6e3b16662f566cd Mon Sep 17 00:00:00 2001 From: ivan Date: Tue, 27 Apr 2010 10:57:01 +0000 Subject: communigate (phase 2): rules: start of adding conditions and actions to rule edit. RT#7514 --- httemplate/elements/select-cgp_rule_action.html | 46 ++++++++++++++++++ httemplate/elements/select.html | 64 +++++++++++++++++++++++++ httemplate/elements/tr-select.html | 61 +++++------------------ 3 files changed, 121 insertions(+), 50 deletions(-) create mode 100644 httemplate/elements/select-cgp_rule_action.html create mode 100644 httemplate/elements/select.html (limited to 'httemplate/elements') diff --git a/httemplate/elements/select-cgp_rule_action.html b/httemplate/elements/select-cgp_rule_action.html new file mode 100644 index 000000000..b53a96e9e --- /dev/null +++ b/httemplate/elements/select-cgp_rule_action.html @@ -0,0 +1,46 @@ +%# XXX CSS to verticially align the select vs. the textarea +<% include( 'select.html', + %opt, + 'options' => \@actions, #reverse order if we ever need to specify + 'labels' => { '' => 'Select Action' }, + ) +%> + + > +%# XXX curr value + +<%init> + +my %opt = @_; +warn "SELECT-CGP_RULE-ACTION.HTML: ". join ' / ', %opt; + +my @actions = ( + '', + 'Stop Processing', + 'Discard', + 'Reject With', + 'Mark', + 'Add Header', + 'Tag Subject', + 'Store in', + 'Redirect to', + 'Forward to', + 'Mirror to', + 'Reply with', + 'Reply to All with', + 'React with', + 'store Encrypted in', + 'Copy attachments into', + 'Execute', + 'ExternalFilter', + 'Accept Request', +); + +#XXX hmm, hide textarea w/Stop Processing,Discard like _condition.html + + diff --git a/httemplate/elements/select.html b/httemplate/elements/select.html new file mode 100644 index 000000000..7aa4180b6 --- /dev/null +++ b/httemplate/elements/select.html @@ -0,0 +1,64 @@ +% unless ( $opt{'js_only'} ) { + + + +% } +<%init> + +my %opt = @_; +warn "SELECT.HTML: ". join ' / ', %opt; + +my $onchange = $opt{'onchange'} + ? 'onChange="'. $opt{'onchange'}. '(this)"' + : ''; + +my $labels = $opt{'option_labels'} || $opt{'labels'}; + +my $curr_value = $opt{'curr_value'}; + +my $onchange = ''; +if ( $opt{'onchange'} ) { + $onchange = $opt{'onchange'}; + $onchange .= '(this)' unless $onchange =~ /\(\w*\);?$/; + $onchange =~ s/\(what\);/\(this\);/g; #ugh, terrible hack. all onchange + #callbacks should act the same + $onchange = 'onChange="'. $onchange. '"' unless $onchange =~ /^onChange=/i; +} + + diff --git a/httemplate/elements/tr-select.html b/httemplate/elements/tr-select.html index 07b0a01d5..f9c768c60 100644 --- a/httemplate/elements/tr-select.html +++ b/httemplate/elements/tr-select.html @@ -1,61 +1,22 @@ -<% include('tr-td-label.html', @_ ) %> +% unless ( $opt{'js_only'} ) { - > + <% include('tr-td-label.html', %opt ) %> - - - - - + <% include('select.html', %opt ) %> +% unless ( $opt{'js_only'} ) { + + +% } <%init> my %opt = @_; - -my $onchange = $opt{'onchange'} - ? 'onChange="'. $opt{'onchange'}. '(this)"' - : ''; - -my $labels = $opt{'option_labels'} || $opt{'labels'}; - +warn join ' / ', %opt; my $style = $opt{'cell_style'} ? 'STYLE="'. $opt{'cell_style'}. '"' : ''; -my $curr_value = $opt{'curr_value'}; +my $colspan = $opt{'colspan'} ? 'COLSPAN="'.$opt{'colspan'}.'"' : ''; -- cgit v1.2.1