View | Details | Raw Unified | Return to bug 33260
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/members/notices.tt (-33 / +57 lines)
Lines 49-74 Link Here
49
                    <h1>Sent notices for [% INCLUDE 'patron-title.inc' %]</h1>
49
                    <h1>Sent notices for [% INCLUDE 'patron-title.inc' %]</h1>
50
50
51
                    [% IF ( QUEUED_MESSAGES ) %]
51
                    [% IF ( QUEUED_MESSAGES ) %]
52
                        <div class="page-section">
52
                    <div class="page-section">
53
                        <span id="checkbox_actions"><a href="#" class="select_all"><i class="fa fa-check"></i> Select all</a> | <a href="#" class="clear_all"><i class="fa fa-remove"></i> Clear all</a></span>
54
                        <form id="print_multiple" action="/cgi-bin/koha/tools/print_notice.pl" method="post" target="_blank">
55
                            [% INCLUDE 'csrf-token.inc' %]
56
53
                            <table id="noticestable">
57
                            <table id="noticestable">
54
                                <thead>
58
                                <thead>
55
                                    <tr>
59
                                    <tr>
60
                                        <th class="nosort">&nbsp;</th>
61
                                        <th>Time created</th>
56
                                        <th>Notice</th>
62
                                        <th>Notice</th>
57
                                        <th>Type</th>
63
                                        <th>Type</th>
58
                                        <th>Status</th>
64
                                        <th>Status</th>
59
                                        <th>Updated on</th>
65
                                        <th>Updated on</th>
60
                                        <th>Time created</th>
61
                                        <th>Delivery note</th>
66
                                        <th>Delivery note</th>
62
                                        [% IF CAN_user_tools_view_generated_notices %]
63
                                        <th>Actions</th>
67
                                        <th>Actions</th>
64
                                        [% END %]
65
                                    </tr>
68
                                    </tr>
66
                                </thead>
69
                                </thead>
67
                                <tbody>
70
                                <tbody>
68
                                    [% FOREACH QUEUED_MESSAGE IN QUEUED_MESSAGES %]
71
                                    [% FOREACH QUEUED_MESSAGE IN QUEUED_MESSAGES %]
69
                                        <tr>
72
                                        <tr>
73
                                            <td><input type="checkbox" name="message_ids" value="[% QUEUED_MESSAGE.message_id | html %]" [% IF QUEDUE_MESSAGE.status == 'pending' %]disabled="disabled"[% END %]></td>
74
                                            <td data-order="[% QUEUED_MESSAGE.time_queued | html %]">[% QUEUED_MESSAGE.time_queued | $KohaDates  with_hours => 1 %]</td>
70
                                            <td>
75
                                            <td>
71
                                                <a class="notice-title" data-noticeid="[% QUEUED_MESSAGE.message_id | html %]" href="/cgi-bin/koha/members/notices.pl?borrowernumber=[% borrowernumber | uri %]&amp;noticeid=[% QUEUED_MESSAGE.message_id | uri %]">[% QUEUED_MESSAGE.subject | html %]</a>
76
                                                <a class="notice-title" data-noticeid="[% QUEUED_MESSAGE.message_id | html %]" data-status="[% QUEUED_MESSAGE.status | html %]" data-borrowernumber="[% borrowernumber | html %]" href="/cgi-bin/koha/members/notices.pl?borrowernumber=[% borrowernumber | uri %]&amp;noticeid=[% QUEUED_MESSAGE.message_id | uri %]">[% QUEUED_MESSAGE.subject | html %]</a>
72
                                                <iframe class="notice" id="notice[% QUEUED_MESSAGE.message_id | html %]" srcdoc="[% QUEUED_MESSAGE.html_content | html %]"></iframe>
77
                                                <iframe class="notice" id="notice[% QUEUED_MESSAGE.message_id | html %]" srcdoc="[% QUEUED_MESSAGE.html_content | html %]"></iframe>
73
                                            </td>
78
                                            </td>
74
                                            <td>
79
                                            <td>
Lines 84-102 Link Here
84
                                                [% ELSIF ( QUEUED_MESSAGE.status == 'failed' ) %]<span>failed</span>
89
                                                [% ELSIF ( QUEUED_MESSAGE.status == 'failed' ) %]<span>failed</span>
85
                                                [% ELSIF ( QUEUED_MESSAGE.status == 'deleted' ) %]<span>deleted</span>
90
                                                [% ELSIF ( QUEUED_MESSAGE.status == 'deleted' ) %]<span>deleted</span>
86
                                                [% ELSE %][% QUEUED_MESSAGE.status | html %][% END %]
91
                                                [% ELSE %][% QUEUED_MESSAGE.status | html %][% END %]
87
                                                [% IF ( QUEUED_MESSAGE.status != 'pending' ) %]
88
                                                    <div class="notice">
89
                                                        <form id="resend_notice[% QUEUED_MESSAGE.message_id | html %]" action="/cgi-bin/koha/members/notices.pl?borrowernumber=[% borrowernumber | html %]" method="POST">
90
                                                            [% INCLUDE 'csrf-token.inc' %]
91
                                                            <input type="hidden" name="op" value="cud-resend_notice" />
92
                                                            <input type="hidden" name="borrowernumber" value="[% borrowernumber | html %]" />
93
                                                            <input type="hidden" name="message_id" value="[% QUEUED_MESSAGE.message_id | html %]" />
94
                                                        </form>
95
                                                    </div>
96
                                                [% END %]
97
                                            </td>
92
                                            </td>
98
                                            <td data-order="[% QUEUED_MESSAGE.updated_on | html %]">[% QUEUED_MESSAGE.updated_on | $KohaDates  with_hours => 1 %]</td>
93
                                            <td data-order="[% QUEUED_MESSAGE.updated_on | html %]">[% QUEUED_MESSAGE.updated_on | $KohaDates  with_hours => 1 %]</td>
99
                                            <td data-order="[% QUEUED_MESSAGE.time_queued | html %]">[% QUEUED_MESSAGE.time_queued | $KohaDates  with_hours => 1 %]</td>
100
                                            <td>
94
                                            <td>
101
                                                [% IF ( QUEUED_MESSAGE.failure_code ) %]
95
                                                [% IF ( QUEUED_MESSAGE.failure_code ) %]
102
                                                    [% IF ( QUEUED_MESSAGE.failure_code == "INVALID_BORNUMBER" ) %]<span class="clearfix">Invalid borrowernumber [% borrowernumber | html %]</span>
96
                                                    [% IF ( QUEUED_MESSAGE.failure_code == "INVALID_BORNUMBER" ) %]<span class="clearfix">Invalid borrowernumber [% borrowernumber | html %]</span>
Lines 113-119 Link Here
113
                                                        <span class="clearfix">Message failed to send with the following error: [% QUEUED_MESSAGE.failure_code | html %]</span>
107
                                                        <span class="clearfix">Message failed to send with the following error: [% QUEUED_MESSAGE.failure_code | html %]</span>
114
                                                    [% END %]
108
                                                    [% END %]
115
                                                [% END %]
109
                                                [% END %]
116
                                                [% IF ( QUEUED_MESSAGE.status == 'sent' ) %]
110
                                                [% IF ( QUEUED_MESSAGE.status != 'pending' ) %]
117
                                                    [% IF ( QUEUED_MESSAGE.from_address ) %]
111
                                                    [% IF ( QUEUED_MESSAGE.from_address ) %]
118
                                                        <span class="clearfix"><span class="label">From:</span> [% QUEUED_MESSAGE.from_address | html %]</span>
112
                                                        <span class="clearfix"><span class="label">From:</span> [% QUEUED_MESSAGE.from_address | html %]</span>
119
                                                    [% END %]
113
                                                    [% END %]
Lines 125-140 Link Here
125
                                                    [% END %]
119
                                                    [% END %]
126
                                                [% END %]
120
                                                [% END %]
127
                                            </td>
121
                                            </td>
128
                                            [% IF CAN_user_tools_view_generated_notices %]<td class="actions"><a target="_blank" class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/print_notice.pl?message_ids=[% QUEUED_MESSAGE.message_id | uri %]"><i class="fa fa-print"></i> Print</a></td>[% END %]
122
                                            <td class="actions"><a target="_blank" class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/print_notice.pl?message_ids=[% QUEUED_MESSAGE.message_id | uri %]"><i class="fa fa-print"></i> Print</a></td>
129
                                        </tr>
123
                                        </tr>
130
                                    [% END %]
124
                                    [% END %]
131
                                </tbody>
125
                                </tbody>
132
                            </table>
126
                            </table>
133
                        </div> <!-- /.page-section -->
127
                            <fieldset class="action">
128
                                <input type="submit" class="btn btn-primary" value="Print selected notices" id="print_multiple_button">
129
                            </fieldset>
130
                        </form>
131
                    </div> <!-- /.page-section -->
134
                    [% ELSE %]
132
                    [% ELSE %]
135
                        <div class="alert alert-info">There is no record of any messages that have been sent to this patron.</div>
133
                    <div class="alert alert-info">There is no record of any messages that have been sent to this patron.</div>
136
                    [% END %]
134
                    [% END %]
137
138
                </main>
135
                </main>
139
            </div> <!-- /.col-md-10.order-md-2 -->
136
            </div> <!-- /.col-md-10.order-md-2 -->
140
137
Lines 157-164 Link Here
157
                        ...
154
                        ...
158
                    </div>
155
                    </div>
159
                    <div class="modal-footer">
156
                    <div class="modal-footer">
160
                        <button type="button" id="resend-notice" class="btn btn-default" style="display:none"><i class="fa-solid fa-rotate" aria-hidden="true"></i> Resend</button>
157
                        <form id="resend_notice" action="/cgi-bin/koha/members/notices.pl" method="POST" style="display:none">
161
                        <button type="button" class="btn btn-default deny cancel" data-bs-dismiss="modal"><i class="fa fa-times"></i> Close</button>
158
                            [% INCLUDE 'csrf-token.inc' %]
159
                            <input type="hidden" name="op" value="cud-resend_notice" />
160
                            <input type="hidden" name="borrowernumber" value="" />
161
                            <input type="hidden" name="message_id" value="" />
162
                            <button type="submit" id="resend_notice_button" class="btn btn-default"><i class="fa-solid fa-rotate" aria-hidden="true"></i> Resend</button>
163
                        </form>
164
                        <button type="button" class="btn btn-default deny cancel" data-bs-dismiss="modal"><i class="fa fa-remove"></i> Close</button>
162
                    </div>
165
                    </div>
163
                </div> <!-- /.modal-content -->
166
                </div> <!-- /.modal-content -->
164
            </div> <!-- /.modal-dialog -->
167
            </div> <!-- /.modal-dialog -->
Lines 178-203 Link Here
178
                var title = $(this).text();
181
                var title = $(this).text();
179
                var noticeid = $(this).data("noticeid");
182
                var noticeid = $(this).data("noticeid");
180
                var body = $("#notice" + noticeid ).attr("srcdoc");
183
                var body = $("#notice" + noticeid ).attr("srcdoc");
181
                if( $("#resend_notice" + noticeid ).length ){
184
                if( $(this).data("status") !== 'pending' ){
182
                    $("#resend-notice").show();
185
                    let borrowerNumber = $(this).data("borrowernumber");
186
                    $('#resend_notice input[name="borrowernumber"]').val(borrowerNumber);
187
                    $('#resend_notice input[name="message_id"]').val(noticeid);
188
                    $("#resend_notice").show();
183
                }
189
                }
184
                $("#resend-notice").data("noticeid", noticeid );
185
                $("#noticeModalLabel").text( title );
190
                $("#noticeModalLabel").text( title );
186
                $("#noticeModal .modal-body").html( body );
191
                $("#noticeModal .modal-body").html( body );
187
                $("#noticeModal").modal("show");
192
                $("#noticeModal").modal("show");
188
            });
193
            });
189
194
190
            $("#resend-notice").on("click", function(e){
191
                e.preventDefault();
192
                var noticeid = $(this).data("noticeid");
193
                $("#resend_notice" + noticeid ).submit();
194
            });
195
196
            $("#noticeModal").on("hide.bs.modal", function(){
195
            $("#noticeModal").on("hide.bs.modal", function(){
197
                $("#resend-notice").removeData("noticeid").hide();
196
                $('#resend_notice input[name="borrowernumber"]').val('');
197
                $('#resend_notice input[name="message_id"]').val('');
198
                $("#resend_notice").hide();
198
                $("#noticeModalLabel").text("");
199
                $("#noticeModalLabel").text("");
199
                $("#noticeModal .modal-body").html("");
200
                $("#noticeModal .modal-body").html("");
200
            });
201
            });
202
203
            $("#print_multiple_button").click(function(e){
204
                var selected_notices = $("#print_multiple").find("input[name='message_ids']:checked");
205
                if ( selected_notices.length == 0 ) {
206
                    alert(_("Please select at least one sent notice."));
207
                    e.preventDefault();
208
                    return false;
209
                }
210
            });
211
212
            $(".select_all").click(function(e){
213
                e.preventDefault();
214
                $("input[name='message_ids']").each(function(){
215
                    $(this).prop("checked", true);
216
                });
217
            });
218
219
            $(".clear_all").click(function(e){
220
                e.preventDefault();
221
                $("input[name='message_ids']").each(function(){
222
                    $(this).prop("checked", false);
223
                });
224
            });
201
        });
225
        });
202
    </script>
226
    </script>
203
    [% INCLUDE 'str/members-menu.inc' %]
227
    [% INCLUDE 'str/members-menu.inc' %]
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/notices.tt (-14 / +70 lines)
Lines 46-52 Link Here
46
46
47
                <h1>Notices management</h1>
47
                <h1>Notices management</h1>
48
48
49
                <div class="page-section bg-warning">Printing a notice will mark it as sent.</div>
49
                <div class="alert alert-warning">Printing a notice will mark it as sent.</div>
50
50
51
                [% IF notices.count == 0 %]
51
                [% IF notices.count == 0 %]
52
52
Lines 70-75 Link Here
70
                                    <th>Type</th>
70
                                    <th>Type</th>
71
                                    <th>Status</th>
71
                                    <th>Status</th>
72
                                    <th>Updated on</th>
72
                                    <th>Updated on</th>
73
                                    <th>Delivery note</th>
73
                                    <th class="nosort">Actions</th>
74
                                    <th class="nosort">Actions</th>
74
                                </tr>
75
                                </tr>
75
                            </thead>
76
                            </thead>
Lines 77-97 Link Here
77
                                [% FOREACH notice IN notices %]
78
                                [% FOREACH notice IN notices %]
78
                                <tr>
79
                                <tr>
79
                                    <td><input type="checkbox" name="message_ids" value="[% notice.message_id | html %]"></td>
80
                                    <td><input type="checkbox" name="message_ids" value="[% notice.message_id | html %]"></td>
80
                                    <td>[% notice.time_queued | $KohaDates with_hours = 1 %]</td>
81
                                    <td data-order="[% notice.time_queued | html %]">[% notice.time_queued | $KohaDates with_hours = 1 %]</td>
81
                                    <td>[% INCLUDE 'patron-title.inc' patron=notice.patron hide_patron_infos_if_needed=1 %]</td>
82
                                    <td>[% INCLUDE 'patron-title.inc' patron=notice.patron hide_patron_infos_if_needed=1 %]</td>
82
                                    <td>
83
                                    <td>
83
                                        <a class="notice-title" data-noticeid="[% notice.message_id | html %]" href="/cgi-bin/koha/members/notices.pl?borrowernumber=[% notice.borrowernumber | uri %]&amp;noticeid=[% notice.message_id | uri %]">[% notice.subject | html %]</a>
84
                                        <a class="notice-title" data-noticeid="[% notice.message_id | html %]" data-status="[% notice.status | html %]" data-borrowernumber="[% notice.borrowernumber | html %]" href="/cgi-bin/koha/members/notices.pl?borrowernumber=[% notice.borrowernumber | uri %]&amp;noticeid=[% notice.message_id | uri %]">[% notice.subject | html %]</a>
84
                                        <iframe class="notice" id="notice[% notice.message_id | html %]" srcdoc="[% notice.html_content | html %]"></iframe>
85
                                        <iframe class="notice" id="notice[% notice.message_id | html %]" srcdoc="[% notice.html_content | html %]"></iframe>
85
                                    </td>
86
                                    </td>
86
                                    <td>[% notice.message_transport_type | html %]</td>
87
                                    <td>
87
                                    <td>[% notice.status | html %]</td>
88
                                        [% IF ( notice.message_transport_type == 'email' ) %]<span>email</span>
88
                                    <td>[% notice.updated_on | $KohaDates with_hours = 1 %]</td>
89
                                        [% ELSIF ( notice.message_transport_type == 'print' ) %]<span>print</span>
90
                                        [% ELSIF ( notice.message_transport_type == 'feed' ) %]<span>feed</span>
91
                                        [% ELSIF ( notice.message_transport_type == 'sms' ) %]<span>sms</span>
92
                                        [% ELSE %][% notice.message_transport_type | html %][% END %]
93
                                    </td>
94
                                    <td>
95
                                        [% IF ( notice.status == 'sent' ) %]<span>sent</span>
96
                                        [% ELSIF ( notice.status == 'pending' ) %]<span>pending</span>
97
                                        [% ELSIF ( notice.status == 'failed' ) %]<span>failed</span>
98
                                        [% ELSIF ( notice.status == 'deleted' ) %]<span>deleted</span>
99
                                        [% ELSE %][% notice.status | html %][% END %]
100
                                    </td>
101
                                    <td data-order="[% noice.updated_on | html %]">[% notice.updated_on | $KohaDates with_hours = 1 %]</td>
102
                                    <td>
103
                                        [% IF ( notice.failure_code ) %]
104
                                            [% IF ( notice.failure_code == "INVALID_BORNUMBER" ) %]<span class="clearfix">Invalid borrowernumber [% notice.borrowernumber | html %]</span>
105
                                            [% ELSIF ( notice.failure_code == 'NO_EMAIL' ) %]<span class="clearfix">Unable to find an email address for this patron</span>
106
                                            [% ELSIF ( matches = notice.failure_code.match('INVALID_EMAIL:(\w+)') ) %]<span class="clearfix">Invalid [% matches.0 | html %] email address found [% borrowernumber | html %]</span>
107
                                            [% ELSIF ( notice.failure_code == 'NO_FROM' ) %]<span class="clearfix">Missing from email address</span>
108
                                            [% ELSIF ( notice.failure_code == 'MISSING_SMS' ) %]<span class="clearfix">Missing SMS number</span>
109
                                            [% ELSIF ( notice.failure_code == 'DUPLICATE_MESSAGE' ) %]<span class="clearfix">Message is duplicate</span>
110
                                            [% ELSIF ( notice.failure_code == 'NO_NOTES' ) %]<span class="clearfix">No notes from SMS driver</span>
111
                                            [% ELSIF ( notice.failure_code == 'SMS_SEND_DRIVER_MISSING' ) %]<span class="clearfix">The SMS driver could not be loaded</span>
112
                                            [% ELSIF ( notice.failure_code == 'SENDMAIL' ) %]<span class="clearfix">Unhandled email failure, check the logs for further details</span>
113
                                            [% ELSIF ( notice.failure_code == "UNKNOWN_ERROR" ) %]<span class="clearfix">Unknown error</span>
114
                                            [% ELSE %]
115
                                                <span class="clearfix">Message failed to send with the following error: [% notice.failure_code | html %]</span>
116
                                            [% END %]
117
                                        [% END %]
118
                                        [% IF ( notice.status == 'sent' ) %]
119
                                            [% IF ( notice.from_address ) %]
120
                                                <span class="clearfix"><span class="label">From:</span> [% notice.from_address | html %]</span>
121
                                            [% END %]
122
                                            [% IF ( notice.to_address ) %]
123
                                                <span class="clearfix"><span class="label">To:</span> [% notice.to_address | html %]</span>
124
                                            [% END %]
125
                                            [% IF ( notice.cc_address ) %]
126
                                                <span class="clearfix"><span class="label">CC:</span> [% notice.cc_address | html %]</span>
127
                                            [% END %]
128
                                        [% END %]
129
                                    </td>
89
                                    <td class="actions"><a target="_blank" class="btn btn-default btn-xs print" href="/cgi-bin/koha/tools/print_notice.pl?message_ids=[% notice.message_id | uri %]"><i class="fa fa-print"></i> Print</a></td>
130
                                    <td class="actions"><a target="_blank" class="btn btn-default btn-xs print" href="/cgi-bin/koha/tools/print_notice.pl?message_ids=[% notice.message_id | uri %]"><i class="fa fa-print"></i> Print</a></td>
90
                                </tr>
131
                                </tr>
91
                                [% END %]
132
                                [% END %]
92
                            </tbody>
133
                            </tbody>
93
                        </table>
134
                        </table>
94
                        <input type="submit" class="btn btn-primary" value="Print selected notices" id="print_multiple_button">
135
                        <fieldset class="action">
136
                            <input type="submit" class="btn btn-primary" value="Print selected notices" id="print_multiple_button">
137
                        </fieldset>
95
                    </form>
138
                    </form>
96
                </div>
139
                </div>
97
140
Lines 204-219 Link Here
204
    <div class="modal-dialog">
247
    <div class="modal-dialog">
205
        <div class="modal-content">
248
        <div class="modal-content">
206
            <div class="modal-header">
249
            <div class="modal-header">
207
                <button type="button" class="closebtn" data-dismiss="modal" aria-label="Close">
250
                <h1 class="modal-title" id="noticeModalLabel">Notice</h1>
208
                    <span aria-hidden="true">&times;</span>
251
                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
209
                </button>
210
                <h5 class="modal-title" id="noticeModalLabel">Notice</h5>
211
            </div>
252
            </div>
212
            <div class="modal-body">
253
            <div class="modal-body">
213
                ...
254
                ...
214
            </div>
255
            </div>
215
            <div class="modal-footer">
256
            <div class="modal-footer">
216
                <button type="button" class="btn btn-default deny cancel" data-dismiss="modal"><i class="fa fa-remove"></i> Close</button>
257
                <form id="resend_notice" action="/cgi-bin/koha/members/notices.pl" method="POST" style="display:none">
258
                    [% INCLUDE 'csrf-token.inc' %]
259
                    <input type="hidden" name="op" value="cud-resend_notice" />
260
                    <input type="hidden" name="borrowernumber" value="" />
261
                    <input type="hidden" name="message_id" value="" />
262
                    <button type="submit" id="resend_notice_button" class="btn btn-default"><i class="fa-solid fa-rotate" aria-hidden="true"></i> Resend</button>
263
                </form>
264
                <button type="button" class="btn btn-default deny cancel" data-bs-dismiss="modal"><i class="fa fa-remove"></i> Close</button>
217
            </div>
265
            </div>
218
        </div> <!-- /.modal-content -->
266
        </div> <!-- /.modal-content -->
219
    </div> <!-- /.modal-dialog -->
267
    </div> <!-- /.modal-dialog -->
Lines 239-256 Link Here
239
                var title = $(this).text();
287
                var title = $(this).text();
240
                var noticeid = $(this).data("noticeid");
288
                var noticeid = $(this).data("noticeid");
241
                var body = $("#notice" + noticeid ).attr("srcdoc");
289
                var body = $("#notice" + noticeid ).attr("srcdoc");
290
                if( $(this).data("status") !== 'pending' ){
291
                    let borrowerNumber = $(this).data("borrowernumber");
292
                    $('#resend_notice input[name="borrowernumber"]').val(borrowerNumber);
293
                    $('#resend_notice input[name="message_id"]').val(noticeid);
294
                    $("#resend_notice").show();
295
                }
242
                $("#noticeModalLabel").text( title );
296
                $("#noticeModalLabel").text( title );
243
                $("#noticeModal .modal-body").html( body );
297
                $("#noticeModal .modal-body").html( body );
244
                $("#noticeModal").modal("show");
298
                $("#noticeModal").modal("show");
245
            });
299
            });
246
300
247
            $("#noticeModal").on("hide.bs.modal", function(){
301
            $("#noticeModal").on("hide.bs.modal", function(){
302
                $('#resend_notice input[name="borrowernumber"]').val('');
303
                $('#resend_notice input[name="message_id"]').val('');
304
                $("#resend_notice").hide();
248
                $("#noticeModalLabel").text("");
305
                $("#noticeModalLabel").text("");
249
                $("#noticeModal .modal-body").html("");
306
                $("#noticeModal .modal-body").html("");
250
            });
307
            });
251
308
252
            $("#print_multiple_button").click(function(e){
309
            $("#print_multiple_button").click(function(e){
253
                var selected_notices = $("#print_multiple").find("input[name='message_ids']:checked");
310
                var selected_notices = $("#notices").find("input[name='message_ids']:checked");
254
                if ( selected_notices.length == 0 ) {
311
                if ( selected_notices.length == 0 ) {
255
                    alert(_("Please select at least one sent notice."));
312
                    alert(_("Please select at least one sent notice."));
256
                    e.preventDefault();
313
                    e.preventDefault();
257
- 

Return to bug 33260