6 [% INCLUDE 'doc-head-open.inc' %]
7 <title>Koha › Tools › Notices[% IF ( add_form or copy_form ) %][% IF ( modify ) %] › Modify notice[% ELSE %] › Add notice[% END %][% END %][% IF ( add_validate or copy_validate) %] › Notice added[% END %][% IF ( delete_confirm ) %] › Confirm deletion[% END %]</title>
8 [% INCLUDE 'doc-head-close.inc' %]
9 [% Asset.css("css/datatables.css") | $raw %]
10 <style type="text/css">#preview_template .modal-dialog { width : 80%; } .spinner { display: none; } @media (max-width: 767px) { #preview_template { margin: 0; width : auto; } }</style>
13 <body id="tools_letter" class="tools">
14 [% INCLUDE 'header.inc' %]
15 [% INCLUDE 'letters-search.inc' %]
17 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › [% IF ( add_form or copy_form) %][% IF ( modify ) %]<a href="/cgi-bin/koha/tools/letter.pl">Notices & slips</a> › Modify notice[% ELSE %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & slips</a> › Add notice[% END %][% ELSE %][% IF ( add_validate or copy_validate) %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & slips</a> › Notice added[% ELSE %][% IF ( delete_confirm ) %] <a href="/cgi-bin/koha/tools/letter.pl">Notices & slips</a> › Confirm deletion[% ELSE %]Notices & slips[% END %][% END %][% END %]</div>
19 <div id="preview_template" class="modal in" tabindex="-1" role="dialog" aria-labelledby="preview_template_label" aria-hidden="true">
20 <div class="modal-dialog modal-lg">
21 <div class="modal-content">
22 <div class="modal-header">
23 <button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
24 <h3 id="preview_template_label">Preview notice template</h3>
26 <div class="modal-body">
27 <div id="loading"> <img src="[% interface | html %]/[% theme | html %]/img/spinner-small.gif" alt="" /> Loading </div>
29 <div class="modal-footer">
30 <!-- TODO <a href="#" class="btn btn-default" id="preview_template_button" role="button" data-toggle="modal">Convert using the Template Toolkit syntax</a>-->
31 <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Close</button>
37 [% IF add_form or copy_form %]
38 <div class="main container-fluid">
40 <div class="col-md-8 col-md-offset-2">
42 <div id="doc3" class="yui-t2">
48 [% IF ( no_op_set ) %]
49 <h1>Notices & slips</h1>
50 <form method="get" action="/cgi-bin/koha/tools/letter.pl" id="selectlibrary">
51 <input type="hidden" name="searchfield" value="[% searchfield | html %]" />
52 [% UNLESS independant_branch %]
55 <select name="branchcode" id="branch" style="width:20em;">
56 <option value="*">All libraries</option>
57 [% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode ) %]
61 <div id="toolbar" class="btn-toolbar">
62 <button type="submit" class="btn btn-default btn-sm" id="newnotice"><i class="fa fa-plus"></i> New notice</button>
63 <input type="hidden" id="op" name="op" />
68 <p>You searched for <b>[% searchfield | html %]</b></p>
70 [% IF ( letter && !independant_branch) %]
71 [% select_for_copy = BLOCK | html %]
72 <select name="branchcode">
73 [% FOREACH l IN Branches.all() %]
74 <option value="[% l.branchcode | html %]">Copy to [% l.branchname | html %]</option>
87 <th class="nosort">Copy notice</th>
88 <th class="nosort">Actions</th>
92 [% FOREACH lette IN letter %]
93 [% can_edit = lette.branchcode || !independant_branch | html %]
95 <td>[% IF lette.branchname %][% lette.branchname | html %][% ELSE %](All libraries)[% END %]</td>
96 <td>[% lette.module | html %]</td>
97 <td>[% lette.code | html %]</td>
98 <td>[% lette.name | html %]</td>
100 [% IF !independant_branch || !lette.branchcode %]
101 <form method="post" action="/cgi-bin/koha/tools/letter.pl">
102 <input type="hidden" name="op" value="copy_form" />
103 <input type="hidden" name="oldbranchcode" value="[% lette.branchcode | html %]" />
104 <input type="hidden" name="module" value="[% lette.module | html %]" />
105 <input type="hidden" name="code" value="[% lette.code | html %]" />
106 [% IF independant_branch %]
107 <input type="hidden" name="branchcode" value="[% independant_branch | html %]" />
109 [% select_for_copy | $raw %]
111 <button class="btn btn-default btn-xs"><i class="fa fa-clone"></i> Copy</button>
117 <a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/letter.pl?op=add_form&branchcode=[% lette.branchcode | html %]&module=[% lette.module | html %]&code=[% lette.code | html %]"><i class="fa fa-pencil"></i> Edit</a>
119 [% IF !lette.protected && can_edit %]
120 <a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/letter.pl?op=delete_confirm&branchcode=[% lette.branchcode | html %]&module=[% lette.module | html %]&code=[% lette.code | html %]"><i class="fa fa-trash"></i> Delete</a>
128 <div class="dialog message">
129 [% IF ( branchcode ) %]
130 <p>There are no notices for this library.</p>
132 <p>There are no notices.</p>
139 [% IF add_form or copy_form %]
140 <h1>[% IF ( modify ) %]Modify notice[% ELSE %]Add notice[% END %]</h1>
142 <div id="toolbar" class="btn-toolbar">
143 <div class="btn-group">
144 <button class="btn btn-default btn-sm" id="submit_form"><i class="fa fa-save"></i> Save</button>
145 <button class="btn btn-default btn-sm dropdown-toggle" data-toggle="dropdown">
146 <span class="caret"></span>
148 <ul class="dropdown-menu">
149 <li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
152 <a class="btn btn-default btn-sm cancel" href="/cgi-bin/koha/tools/letter.pl"><i class="fa fa-remove"></i> Cancel</a>
155 <form id="add_notice" name="Aform" method="post" enctype="multipart/form-data" class="validate">
157 <input type="hidden" name="op" id="op" value="add_validate" />
159 <input type="hidden" name="op" id="op" value="copy_validate" />
162 <input type="hidden" name="checked" value="0" />
164 <input type="hidden" name="add" value="0" />
166 <input type="hidden" name="add" value="1" />
168 <fieldset class="rows">
169 <input type="hidden" name="oldbranchcode" value="[% oldbranchcode | html %]" />
171 [% IF independant_branch %]
172 <input type="hidden" name="branchcode" value="[% independant_branch | html %]" />
177 <label for="branch">Library:</label>
178 <select name="branchcode" id="branch" style="width:20em;">
179 <option value="">All libraries</option>
180 [% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode ) %]
183 <span class="label">Library:</span>
184 <input type="hidden" id="branch" name="branchcode" value="[% branchcode | html %]" />
185 [% IF ( branchcode ) %]
186 [% Branches.GetName( branchcode ) | html %]
194 <label for="module">Koha module:</label>
195 <input type="hidden" name="oldmodule" value="[% module | html %]" />
197 <select name="module" id="newmodule">
199 <select name="module" id="module">
201 [% IF ( module == "acquisition" ) %]
202 <option value="acquisition" selected="selected">Acquisition</option>
204 <option value="acquisition" >Acquisition</option>
206 [% IF ( module == "catalogue" ) %]
207 <option value="catalogue" selected="selected">Catalog</option>
209 <option value="catalogue" >Catalog</option>
211 [% IF ( module == "circulation" ) %]
212 <option value="circulation" selected="selected">Circulation</option>
214 <option value="circulation">Circulation</option>
216 [% IF ( module == "orderacquisition" ) %]
217 <option value="orderacquisition" selected="selected">Order acquisition</option>
219 <option value="orderacquisition">Order acquisition</option>
221 [% IF ( module == "claimacquisition" ) %]
222 <option value="claimacquisition" selected="selected">Claim acquisition</option>
224 <option value="claimacquisition">Claim acquisition</option>
226 [% IF ( module == "claimissues" ) %]
227 <option value="claimissues" selected="selected">Claim serial issue</option>
229 <option value="claimissues">Claim serial issue</option>
231 [% IF ( module == "reserves" ) %]
232 <option value="reserves" selected="selected">Holds</option>
234 <option value="reserves">Holds</option>
236 [% IF ( module == "members" ) %]
237 <option value="members" selected="selected">Members</option>
239 <option value="members">Members</option>
241 [% IF ( module == "serial" ) %]
242 <option value="serial" selected="selected">Serials (new issue)</option>
244 <option value="serial">Serials (new issue)</option>
246 [% IF ( module == "suggestions" ) %]
247 <option value="suggestions" selected="selected">Suggestions</option>
249 <option value="suggestions">Suggestions</option>
255 <label for="code" class="required">Code:</label>
256 <input type="text" id="code" name="code" size="20" maxlength="20" value="" required="required"/>
257 <span class="required">Required</span>
259 <span class="label">Code:</span>
260 <input type="hidden" id="code" name="code" value="[% code | html %]" />
265 <label for="name" class="required">Name:</label>
266 <input type="text" id="name" name="name" size="60" value="[% letter_name | html %]" required="required" />
267 <span class="required">Required</span>
269 [% IF code and preview_is_available%]
271 <label for="name">Data for preview:</label>
274 <input type="text" id="data_preview" name="data_preview" value="" placeholder="barcode" />
275 [% CASE 'CHECKOUT' %]
276 <input type="text" id="data_preview" name="data_preview" value="" placeholder="barcode|borrowernumber" />
277 [% CASE 'HOLD_SLIP' %]
278 <input type="text" id="data_preview" name="data_preview" value="" placeholder="biblionumber|borrowernumber" />
286 [% IF Koha.Preference('TranslateNotices') %]
287 <div style="clear:both"></div>
290 <li><a href="#lang_default">Default</a></li>
291 [% FOR language IN languages %]
292 [% FOR sublanguage IN language.sublanguages_loop %]
293 [% IF language.plural %]
294 <li><a href="#lang_[% sublanguage.rfc4646_subtag | html %]">[% sublanguage.native_description | html %] [% sublanguage.region_description | html %] ([% sublanguage.rfc4646_subtag | html %])</a></li>
296 <li><a href="#lang_[% sublanguage.rfc4646_subtag | html %]">[% sublanguage.native_description | html %] ([% sublanguage.rfc4646_subtag | html %])</a></li>
303 [% FOREACH lang IN letters.keys %]
304 <div id="lang_[% lang | html %]">
305 <div class="transport-types" style="clear:both">
306 [% FOR mtt IN letters.$lang.templates.keys.sort %]
307 [% SET letter = letters.$lang.templates.$mtt %]
309 [% SWITCH letter.message_transport_type %]
321 [% letter.message_transport_type | html %]
324 [% IF letter.message_transport_type == "sms" and not Koha.Preference("SMSSendDriver") %]
325 <fieldset class="rows mtt" id="[% letter.message_transport_type | html %]_[% lang | html %]" disabled="disabled">
326 <div class="dialog message">You should enable the SMSSendDriver preference to use the SMS templates.</div>
327 [% ELSIF letter.message_transport_type == "phone" and not Koha.Preference("TalkingTechItivaPhoneNotification") %]
328 <fieldset class="rows mtt" id="[% letter.message_transport_type | html %]_[% lang | html %]" disabled="disabled">
329 <div class="dialog message">You should enable the TalkingTechItivaPhoneNotification preference to use the phone templates.</div>
331 <fieldset class="rows mtt" id="[% letter.message_transport_type | html %]_[% lang | html %]">
335 <input type="hidden" name="message_transport_type" value="[% letter.message_transport_type | html %]" />
336 <input type="hidden" name="lang" value="[% lang | html %]" />
337 <label for="is_html_[% letter.message_transport_type | html %]_[% lang | html %]">HTML message:</label>
338 [% IF letter.is_html %]
339 <input type="checkbox" name="is_html_[% letter.message_transport_type | html %]" id="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" value="1" checked="checked" />
341 <input type="checkbox" name="is_html_[% letter.message_transport_type | html %]" id="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" value="1" />
345 <label for="title_[% letter.message_transport_type | html %]_[% lang | html %]">Message subject:</label><input type="text" id="title_[% letter.message_transport_type | html %]_[% lang | html %]" name="title" size="60" value="[% letter.title | html %]" />
348 <label for="SQLfieldname_[% letter.message_transport_type | html %]_[% lang | html %]">Message body:</label>
349 [% IF letter.message_transport_type == 'sms' %]
350 <span class="sms_counter" id="sms_counter_[% lang | html %]">[% IF letter.content && letter.content.length > 0 %][% letter.content.length | html %][% ELSE %]0[% END %]/160 characters</span>
355 <select name="SQLfieldname" id="SQLfieldname_[% letter.message_transport_type | html %]_[% lang | html %]" multiple="multiple" size="9">
356 [% FOREACH SQLfieldname IN SQLfieldnames %]
357 <option value="[% SQLfieldname.value | html %]">[% SQLfieldname.text | html %]</option>
362 <button type="button" data-containerid="[% letter.message_transport_type | html %]_[% lang | html %]" class="btn btn-default btn-sm insert">Insert <i class="fa fa-long-arrow-right"></i></button>
364 <td><textarea name="content" data-lang="[% lang | html %]" class="content_[% letter.message_transport_type | html %]" id="content_[% letter.message_transport_type | html %]_[% lang | html %]" cols="80" rows="15">[% letter.content | html %]</textarea></td>
368 [% IF preview_is_available %]
370 <a href="/cgi-bin/koha/svc/letters/preview" class="preview_template btn btn-default btn-xs" title="Preview this notice template" data-mtt="[% letter.message_transport_type | html %]" data-lang="[% lang | html %]"><i class="fa fa-eye"></i> Preview</a>
377 </div> <!-- / #transport-types -->
379 [% IF Koha.Preference('TranslateNotices') %]
383 [% IF code.search('DGST') %] <span class="overdue">Warning, this is a template for a Digest, as such, any references to branch data ( e.g. branches.branchname ) will refer to the borrower's home branch.</span> [% END %]
385 <input type="hidden" id="redirect" name="redirect" value="" />
386 <input type="hidden" name="searchfield" value="[% searchfield | html %]" />
390 [% IF ( add_validate or copy_validate) %]
392 <form action="[% action | html %]" method="post">
393 <input type="submit" value="OK" />
397 [% IF ( delete_confirm ) %]
398 <div class="dialog alert">
399 <h3>Delete notice?</h3>
410 <td>[% IF letter.branchcode %][% Branches.GetName( letter.branchcode ) | html %][% ELSE %](All libraries)[% END %]</td>
411 <td>[% letter.module | html %]</td>
412 <td>[% letter.code | html %]</td>
413 <td>[% letter.name | html %]</td>
416 <form action="[% action | html %]" method="post">
417 <input type="hidden" name="op" value="delete_confirmed">
418 <input type="hidden" name="branchcode" value="[% letter.branchcode | html %]" />
419 <input type="hidden" name="code" value="[% letter.code | html %]" />
420 <input type="hidden" name="module" value="[% letter.module | html %]" />
421 <button type="submit" class="approve"><i class="fa fa-check"></i> Yes, delete</button>
424 <form action="[% action | html %]" method="get">
425 <button type="submit" class="deny"><i class="fa fa-times"></i> No, do not delete</button>
430 [% IF ( delete_confirmed ) %]
432 <form action="[% action | html %]" method="post">
433 <input type="submit" value="OK" />
439 [% UNLESS add_form or copy_form %]
440 <div class="yui-b noprint">
441 [% INCLUDE 'tools-menu.inc' %]
446 [% MACRO jsinclude BLOCK %]
447 [% Asset.js("js/tools-menu.js") | $raw %]
448 [% INCLUDE 'datatables.inc' %]
449 [% Asset.js("lib/jquery/plugins/jquery.fixFloat.js") | $raw %]
450 [% Asset.js("lib/jquery/plugins/jquery.insertatcaret.js") | $raw %]
452 var no_op_set = '[% no_op_set | html %]';
453 var interface = '[% interface | html %]';
454 var theme = '[% theme | html %]';
455 var add_form = '[% add_form | html %]';
456 var copy_form = '[% copy_form | html %]';
457 var code = '[% code | html %]';
458 var new_lettercode = '[% new_lettercode | html %]';
459 var new_branchcode = '[% new_branchcode | html %]';
460 var MSG_CODE_EXISTS = _("A default letter with the code '%s' already exists.");
461 var MSG_CODE_EXISTS_FOR_LIBRARY = _("A letter with the code '%s' already exists for '%s'.");
462 var MSG_EMPTY_TITLE_AND_CONTENT = _("Please specify title and content for %s");
463 var MSG_EMPTY_TEMPLATES = _("Please fill at least one template.");
464 var MSG_LOADING = _("Loading");
466 [% Asset.js("js/letter.js") | $raw %]
469 [% INCLUDE 'intranet-bottom.inc' %]