[Rt-commit] rt branch, 4.4/squelching-all, updated. rt-4.2.5-196-gd5700e7
Wallace Reis
wreis at bestpractical.com
Wed Aug 13 12:52:23 EDT 2014
The branch, 4.4/squelching-all has been updated
via d5700e754f9281db3942e69cee6cbfe3a8a69cde (commit)
via 6cae380e1a530293fbe838eaa93cc388ed904ab3 (commit)
from 4f875d712bfeea4a9a97de911228ad35085d76ff (commit)
Summary of changes:
share/html/Helpers/PreviewScrips | 6 ++----
share/html/Helpers/ShowSimplifiedRecipients | 6 ++----
share/html/Ticket/Update.html | 19 ++++++++++++++++---
share/static/js/util.js | 2 +-
4 files changed, 21 insertions(+), 12 deletions(-)
- Log -----------------------------------------------------------------
commit 6cae380e1a530293fbe838eaa93cc388ed904ab3
Author: Wallace Reis <wreis at bestpractical.com>
Date: Wed Aug 13 08:12:40 2014 -0300
Ticket update recipient checkboxes
Fix checkboxes sync state when adding one-time Cc.
diff --git a/share/html/Helpers/PreviewScrips b/share/html/Helpers/PreviewScrips
index 668efcb..9d4ae0b 100644
--- a/share/html/Helpers/PreviewScrips
+++ b/share/html/Helpers/PreviewScrips
@@ -77,10 +77,8 @@ $m->abort unless @dryrun;
my %squelched = ProcessTransactionSquelching( \%ARGS );
my $squelched_config = !( RT->Config->Get('SquelchedRecipients', $session{'CurrentUser'}) );
-my $all_checkbox = $squelched_config ? 'checked="checked"' : "";
if ($ARGS{TxnRecipients}) {
$squelched_config = undef;
- $all_checkbox = scalar(grep {$_} values %squelched) ? "" : 'checked="checked"';
}
</%init>
<p>
@@ -96,7 +94,7 @@ if ($ARGS{TxnRecipients}) {
% my $action = $s->ActionObj->Action;
% scalar(map { $action->$_ } qw(To Cc Bcc))
% } @scrips ) {
-<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" <% $all_checkbox | n %> onclick="setCheckbox(this,'TxnSendMailTo')">
+<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" onclick="setCheckbox(this,'TxnSendMailTo')">
<label for="TxnSendMailToAll"><b><% loc('All recipients') %></b></label><br />
% }
% for my $scrip (@scrips) {
diff --git a/share/html/Helpers/ShowSimplifiedRecipients b/share/html/Helpers/ShowSimplifiedRecipients
index 8f695eb..cd005e3 100644
--- a/share/html/Helpers/ShowSimplifiedRecipients
+++ b/share/html/Helpers/ShowSimplifiedRecipients
@@ -95,10 +95,8 @@ if (@scrips) {
my %recips;
my %squelched = ProcessTransactionSquelching( \%ARGS );
my $squelched_config = !( RT->Config->Get('SquelchedRecipients', $session{'CurrentUser'}) );
-my $all_checkbox = $squelched_config ? 'checked="checked"' : "";
if ($ARGS{TxnRecipients}) {
$squelched_config = undef;
- $all_checkbox = scalar(grep {$_} values %squelched) ? "" : 'checked="checked"';
}
</%init>
<table>
@@ -106,7 +104,7 @@ if ($ARGS{TxnRecipients}) {
<tr>
<td> </td>
<td>
-<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" <% $all_checkbox | n %> onclick="setCheckbox(this,'TxnSendMailTo')">
+<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" onclick="setCheckbox(this,'TxnSendMailTo')">
<label for="TxnSendMailToAll"><b><% loc('All recipients') %></b></label>
</td>
</tr>
diff --git a/share/html/Ticket/Update.html b/share/html/Ticket/Update.html
index 039efec..b03bc41 100644
--- a/share/html/Ticket/Update.html
+++ b/share/html/Ticket/Update.html
@@ -220,11 +220,19 @@ jQuery( function() {
};
jQuery('#recipients div.titlebox-content').load( '<% RT->Config->Get('WebPath')%>/Helpers/ShowSimplifiedRecipients',
jQuery('form[name=TicketUpdate]').serialize(),
- function() { jQuery("#recipients input[name=TxnSendMailTo]").change( syncCheckboxes ); }
+ function() {
+ var txn_send_field = jQuery("#recipients input[name=TxnSendMailTo]");
+ txn_send_field.change( syncCheckboxes );
+ setCheckbox(txn_send_field);
+ }
);
jQuery('#previewscrips div.titlebox-content').load( '<% RT->Config->Get('WebPath')%>/Helpers/PreviewScrips',
jQuery('form[name=TicketUpdate]').serialize(),
- function() { jQuery("#previewscrips input[name=TxnSendMailTo]").change( syncCheckboxes ); }
+ function() {
+ var txn_send_field = jQuery("#previewscrips input[name=TxnSendMailTo]");
+ txn_send_field.change( syncCheckboxes );
+ setCheckbox(txn_send_field);
+ }
);
};
updateScrips();
diff --git a/share/static/js/util.js b/share/static/js/util.js
index 8416853..8be6cae 100644
--- a/share/static/js/util.js
+++ b/share/static/js/util.js
@@ -91,7 +91,7 @@ function setCheckbox(input, name, val) {
var is_set_event = false;
if ( !name ) {
- name = input.name;
+ name = input.name || input.attr('name');
is_set_event = true;
}
else {
commit d5700e754f9281db3942e69cee6cbfe3a8a69cde
Author: Wallace Reis <wreis at bestpractical.com>
Date: Wed Aug 13 13:44:42 2014 -0300
Ticket update recipient checkboxes
Move checkbox click event handler to recipient list load's callback.
diff --git a/share/html/Helpers/PreviewScrips b/share/html/Helpers/PreviewScrips
index 9d4ae0b..0845f43 100644
--- a/share/html/Helpers/PreviewScrips
+++ b/share/html/Helpers/PreviewScrips
@@ -94,7 +94,7 @@ if ($ARGS{TxnRecipients}) {
% my $action = $s->ActionObj->Action;
% scalar(map { $action->$_ } qw(To Cc Bcc))
% } @scrips ) {
-<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" onclick="setCheckbox(this,'TxnSendMailTo')">
+<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1">
<label for="TxnSendMailToAll"><b><% loc('All recipients') %></b></label><br />
% }
% for my $scrip (@scrips) {
@@ -118,7 +118,7 @@ if ($ARGS{TxnRecipients}) {
% }
% if ( $show_checkbox ) {
- <input type="checkbox" class="checkbox" name="TxnSendMailTo" <% $checked ? 'checked="checked"' : '' |n%> value="<%$addr->address%>" id="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>" onclick="setCheckbox(this)" />
+ <input type="checkbox" class="checkbox" name="TxnSendMailTo" <% $checked ? 'checked="checked"' : '' |n%> value="<%$addr->address%>" id="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>" />
% }
<label for="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>"><& /Elements/ShowUser, Address => $addr &></label>
% $m->callback(CallbackName => 'AfterAddress', Ticket => $TicketObj, Address => $addr, Type => $type);
diff --git a/share/html/Helpers/ShowSimplifiedRecipients b/share/html/Helpers/ShowSimplifiedRecipients
index cd005e3..9a552b4 100644
--- a/share/html/Helpers/ShowSimplifiedRecipients
+++ b/share/html/Helpers/ShowSimplifiedRecipients
@@ -104,7 +104,7 @@ if ($ARGS{TxnRecipients}) {
<tr>
<td> </td>
<td>
-<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1" onclick="setCheckbox(this,'TxnSendMailTo')">
+<input type="checkbox" class="checkbox" name="TxnSendMailToAll" value="1">
<label for="TxnSendMailToAll"><b><% loc('All recipients') %></b></label>
</td>
</tr>
@@ -118,7 +118,7 @@ if ($ARGS{TxnRecipients}) {
% my $checked = $squelched_config // not $squelched{$addr->address};
% $m->callback(CallbackName => 'BeforeAddress', Ticket => $TicketObj, Address => $addr, Type => $type, Checked => \$checked);
% $recips{$addr->address}++;
-<input type="checkbox" class="checkbox" name="TxnSendMailTo" <% $checked ? 'checked="checked"' : '' |n%> value="<%$addr->address%>" id="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>" onclick="setCheckbox(this)" />
+<input type="checkbox" class="checkbox" name="TxnSendMailTo" <% $checked ? 'checked="checked"' : '' |n%> value="<%$addr->address%>" id="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>" />
<label for="TxnSendMailTo-<% $addr->address %>-<% $recips{$addr->address} %>"><& /Elements/ShowUser, Address => $addr &></label>
% $m->callback(CallbackName => 'AfterAddress', Ticket => $TicketObj, Address => $addr, Type => $type);
<br />
diff --git a/share/html/Ticket/Update.html b/share/html/Ticket/Update.html
index b03bc41..3baaa5f 100644
--- a/share/html/Ticket/Update.html
+++ b/share/html/Ticket/Update.html
@@ -216,13 +216,16 @@ jQuery( function() {
var updateScrips = function() {
CKEDITOR.instances['UpdateContent'].updateElement();
var syncCheckboxes = function(ev) {
- jQuery("input[name=TxnSendMailTo]").filter( function() { return this.value == ev.target.value; } ).prop("checked",jQuery(ev.target).prop('checked'));
+ var target = ev.target;
+ jQuery("input[name=TxnSendMailTo]").filter( function() { return this.value == target.value; } ).prop("checked",jQuery(target).prop('checked'));
};
jQuery('#recipients div.titlebox-content').load( '<% RT->Config->Get('WebPath')%>/Helpers/ShowSimplifiedRecipients',
jQuery('form[name=TicketUpdate]').serialize(),
function() {
var txn_send_field = jQuery("#recipients input[name=TxnSendMailTo]");
txn_send_field.change( syncCheckboxes );
+ txn_send_field.click( function () { setCheckbox(this) } );
+ jQuery("#recipients input[name=TxnSendMailToAll]").click( function() { setCheckbox(this, 'TxnSendMailTo'); } );
setCheckbox(txn_send_field);
}
);
@@ -231,6 +234,8 @@ jQuery( function() {
function() {
var txn_send_field = jQuery("#previewscrips input[name=TxnSendMailTo]");
txn_send_field.change( syncCheckboxes );
+ txn_send_field.click( function () { setCheckbox(this) } );
+ jQuery("#previewscrips input[name=TxnSendMailToAll]").click( function() { setCheckbox(this, 'TxnSendMailTo'); } );
setCheckbox(txn_send_field);
}
);
-----------------------------------------------------------------------
More information about the rt-commit
mailing list