Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

570 lines
36 KiB

[% USE raw %]
[% USE Asset %]
[% USE Koha %]
[% USE KohaDates %]
[% USE Branches %]
[% USE TablesSettings %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>
Koha &rsaquo; Tools &rsaquo; Notices
[% IF ( add_form or copy_form ) %]
[% IF ( modify ) %]
&rsaquo; Modify notice
[% ELSE %]
&rsaquo; Add notice
[% END %]
[% END %]
[% IF ( add_validate or copy_validate) %]
&rsaquo; Notice added
[% END %]
[% IF ( delete_confirm ) %]
&rsaquo; Confirm deletion
[% END %]
</title>
[% INCLUDE 'doc-head-close.inc' %]
<style>#preview_template .modal-dialog { width : 80%; } .spinner { display: none; } @media (max-width: 767px) { #preview_template { margin: 0; width : auto; } }</style>
</head>
<body id="tools_letter" class="tools">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'letters-search.inc' %]
<div id="breadcrumbs">
<a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo;
<a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> &rsaquo;
[% IF ( add_form or copy_form) %]
[% IF ( modify ) %]
<a href="/cgi-bin/koha/tools/letter.pl">Notices &amp; slips</a> &rsaquo;
Modify notice
[% ELSE %]
<a href="/cgi-bin/koha/tools/letter.pl">Notices &amp; slips</a> &rsaquo;
Add notice
[% END %]
[% ELSE %]
[% IF ( add_validate or copy_validate) %]
<a href="/cgi-bin/koha/tools/letter.pl">Notices &amp; slips</a> &rsaquo;
Notice added
[% ELSE %]
[% IF ( delete_confirm ) %]
<a href="/cgi-bin/koha/tools/letter.pl">Notices &amp; slips</a> &rsaquo;
Confirm deletion
[% ELSE %]
Notices &amp; slips
[% END %]
[% END %]
[% END %]
</div> <!-- /#breadcrumbs -->
<div id="preview_template" class="modal in" tabindex="-1" role="dialog" aria-labelledby="preview_template_label" aria-hidden="true">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="preview_template_label">Preview notice template</h3>
</div>
<div class="modal-body">
<div id="loading">
<img src="[% interface | html %]/[% theme | html %]/img/spinner-small.gif" alt="" /> Loading
</div>
</div>
<div class="modal-footer">
<!-- TODO <a href="#" class="btn btn-default" id="preview_template_button" role="button" data-toggle="modal">Convert using the Template Toolkit syntax</a>-->
<button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Close</button>
</div>
</div> <!-- /.modal-content -->
</div> <!-- /.modal-dialog -->
</div> <!-- /#preview_template -->
[% IF add_form or copy_form %]
<div class="main container-fluid">
<div class="row">
<div class="col-md-8 col-md-offset-2">
[% ELSE %]
<div class="main container-fluid">
<div class="row">
<div class="col-sm-10 col-sm-push-2">
<main>
[% END %]
[% IF ( no_op_set ) %]
<h1>Notices &amp; slips</h1>
<form method="get" action="/cgi-bin/koha/tools/letter.pl" id="selectlibrary">
<input type="hidden" name="searchfield" value="[% searchfield | html %]" />
[% UNLESS independant_branch %]
<p>
Select a library:
<select name="branchcode" id="branch" style="width:20em;">
<option value="*">All libraries</option>
[% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode ) %]
</select>
</p>
[% END %]
</form> <!-- /#selectlibrary -->
<div id="toolbar" class="btn-toolbar">
<div class="btn-group">
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown"><i class="fa fa-plus"></i> New notice <span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=acquisition">Acquisition</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=catalogue">Catalog</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=circulation">Circulation</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=claimacquisition">Claim acquisition</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=claimissues">Claim serial issue</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=reserves">Holds</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=orderacquisition">Order acquisition</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=members">Patrons</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=serial">Serials (new issue)</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=suggestions">Suggestions</a></li>
<li><a href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;module=pos">Point of sale</a></li>
</ul>
</div>
</div> <!-- /#toolbar -->
[% IF ( search ) %]
<p>You searched for <strong>[% searchfield | html %]</strong></p>
[% END %]
[% IF ( letter && !independant_branch) %]
[% select_for_copy = BLOCK %]
<select name="branchcode">
[% FOREACH l IN Branches.all() %]
<option value="[% l.branchcode | html %]">Copy to [% l.branchname | html %]</option>
[% END %]
</select>
[% END %]
[% END %]
[% IF letter %]
<table id="lettert">
<thead>
<tr>
<th>Library</th>
<th>Module</th>
<th>Code</th>
<th>Name</th>
<th class="title-string">Last updated</th>
<th class="nosort">Copy notice</th>
<th class="nosort">Actions</th>
</tr>
</thead>
<tbody>
[% FOREACH lette IN letter %]
[% can_edit = lette.branchcode || !independant_branch %]
<tr>
<td>
[% IF lette.branchname %]
[% lette.branchname | html %]
[% ELSE %]
(All libraries)
[% END %]
</td>
<td>
[% SWITCH lette.module %]
[% CASE 'acquisition' %]<span>Acquisition</span>
[% CASE 'catalogue' %]<span>Catalog</span>
[% CASE 'circulation' %]<span>Circulation</span>
[% CASE 'orderacquisition' %]<span>Order acquisition</span>
[% CASE 'claimacquisition' %]<span>Claim acquisition</span>
[% CASE 'claimissues' %]<span>Claim serial issue</span>
[% CASE 'reserves' %]<span>Holds</span>
[% CASE 'members' %]<span>Patrons</span>
[% CASE 'serial' %]<span>Serials (new issue)</span>
[% CASE 'suggestions' %]<span>Suggestions</span>
[% CASE 'pos' %]<span>Point of sale</span>
[% CASE %]<span>[% lette.module | html %]</span>
[% END %]
</td>
<td>[% lette.code | html %]</td>
<td>[% lette.name | html %]</td>
<td><span title="[% lette.updated_on | $KohaDates with_hours = 1 %]">[% lette.updated_on | $KohaDates with_hours = 1 %]</span></td>
<td class="actions">
[% IF !independant_branch || !lette.branchcode %]
<form method="post" action="/cgi-bin/koha/tools/letter.pl">
<input type="hidden" name="op" value="copy_form" />
<input type="hidden" name="oldbranchcode" value="[% lette.branchcode | html %]" />
<input type="hidden" name="module" value="[% lette.module | html %]" />
<input type="hidden" name="code" value="[% lette.code | html %]" />
[% IF independant_branch %]
<input type="hidden" name="branchcode" value="[% independant_branch | html %]" />
[% ELSE %]
[% select_for_copy | $raw %]
[% END %]
<button class="btn btn-default btn-xs"><i class="fa fa-clone"></i> Copy</button>
</form>
[% END # /IF !independent_branch %]
</td>
<td class="actions">
[% IF can_edit %]
<a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/letter.pl?op=add_form&amp;branchcode=[% lette.branchcode | html %]&amp;module=[% lette.module | html %]&amp;code=[% lette.code | html %]"><i class="fa fa-pencil"></i> Edit</a>
[% END %]
[% IF !lette.protected && can_edit %]
<a class="btn btn-default btn-xs" href="/cgi-bin/koha/tools/letter.pl?op=delete_confirm&amp;branchcode=[% lette.branchcode | html %]&amp;module=[% lette.module | html %]&amp;code=[% lette.code | html %]"><i class="fa fa-trash"></i> Delete</a>
[% END %]
</td>
</tr>
[% END # /FOREACH lette %]
</tbody>
</table> <!-- /#lettert -->
[% ELSE # IF lette %]
<div class="dialog message">
[% IF ( branchcode ) %]
<p>There are no notices for this library.</p>
[% ELSE %]
<p>There are no notices.</p>
[% END %]
</div>
[% END # /IF lette %]
[% END # /IF no_op_set %]
[% IF add_form or copy_form %]
<h1>[% IF ( modify ) %]Modify notice[% ELSE %]Add notice[% END %]</h1>
<div id="toolbar" class="btn-toolbar">
<div class="btn-group">
<button class="btn btn-default" id="submit_form"><i class="fa fa-save"></i> Save</button>
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><a id="saveandcontinue" href="#">Save and continue editing</a></li>
</ul>
</div>
<a class="btn btn-default cancel" href="/cgi-bin/koha/tools/letter.pl"><i class="fa fa-remove"></i> Cancel</a>
</div> <!-- /#toolbar -->
<form id="add_notice" name="Aform" method="post" enctype="multipart/form-data" class="validate">
[% IF add_form %]
<input type="hidden" name="op" id="op" value="add_validate" />
[% ELSE %]
<input type="hidden" name="op" id="op" value="copy_validate" />
[% END %]
<input type="hidden" name="checked" value="0" />
[% IF ( modify ) %]
<input type="hidden" name="add" value="0" />
[% ELSE %]
<input type="hidden" name="add" value="1" />
[% END %]
<fieldset class="rows">
<input type="hidden" name="oldbranchcode" value="[% oldbranchcode | html %]" />
[% IF independant_branch %]
<input type="hidden" name="branchcode" value="[% independant_branch | html %]" />
<ol>
[% ELSE %]
<ol>
<li>
[% IF adding %]
<label for="branch">Library:</label>
<select name="branchcode" id="branch" style="width:20em;">
<option value="">All libraries</option>
[% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode ) %]
</select>
[% ELSE %]
<span class="label">Library:</span>
<input type="hidden" id="branch" name="branchcode" value="[% branchcode | html %]" />
[% IF ( branchcode ) %]
[% Branches.GetName( branchcode ) | html %]
[% ELSE %]
All libraries
[% END %]
[% END %]
</li>
[% END # /IF independant_branch %]
<li>
<label for="module">Koha module:</label>
<input type="hidden" name="oldmodule" value="[% module | html %]" />
[% IF adding %]
<select name="module" id="newmodule">
[% ELSE %]
<select name="module" id="module">
[% END %]
[% IF ( module == "acquisition" ) %]
<option value="acquisition" selected="selected">Acquisition</option>
[% ELSE %]
<option value="acquisition" >Acquisition</option>
[% END %]
[% IF ( module == "catalogue" ) %]
<option value="catalogue" selected="selected">Catalog</option>
[% ELSE %]
<option value="catalogue" >Catalog</option>
[% END %]
[% IF ( module == "circulation" ) %]
<option value="circulation" selected="selected">Circulation</option>
[% ELSE %]
<option value="circulation">Circulation</option>
[% END %]
[% IF ( module == "orderacquisition" ) %]
<option value="orderacquisition" selected="selected">Order acquisition</option>
[% ELSE %]
<option value="orderacquisition">Order acquisition</option>
[% END %]
[% IF ( module == "claimacquisition" ) %]
<option value="claimacquisition" selected="selected">Claim acquisition</option>
[% ELSE %]
<option value="claimacquisition">Claim acquisition</option>
[% END %]
[% IF ( module == "claimissues" ) %]
<option value="claimissues" selected="selected">Claim serial issue</option>
[% ELSE %]
<option value="claimissues">Claim serial issue</option>
[% END %]
[% IF ( module == "reserves" ) %]
<option value="reserves" selected="selected">Holds</option>
[% ELSE %]
<option value="reserves">Holds</option>
[% END %]
[% IF ( module == "members" ) %]
<option value="members" selected="selected">Patrons</option>
[% ELSE %]
<option value="members">Patrons</option>
[% END %]
[% IF ( module == "serial" ) %]
<option value="serial" selected="selected">Serials (new issue)</option>
[% ELSE %]
<option value="serial">Serials (new issue)</option>
[% END %]
[% IF ( module == "suggestions" ) %]
<option value="suggestions" selected="selected">Suggestions</option>
[% ELSE %]
<option value="suggestions">Suggestions</option>
[% END %]
[% IF ( module == "pos" ) %]
<option value="pos" selected="selected">Point of sale</option>
[% ELSE %]
<option value="pos">Point of sale</option>
[% END %]
</select>
</li>
<li>
[% IF adding %]
<label for="code" class="required">Code:</label>
<input type="text" id="code" name="code" size="20" maxlength="20" value="" required="required"/>
<span class="required">Required</span>
[% ELSE %]
<span class="label">Code:</span>
<input type="hidden" id="code" name="code" value="[% code | html %]" />
[% code | html %]
[% END %]
</li>
<li>
<label for="name" class="required">Name:</label>
<input type="text" id="name" name="name" size="60" value="[% letter_name | html %]" required="required" />
<span class="required">Required</span>
</li>
[% IF code and preview_is_available%]
<li>
<label for="name">Data for preview:</label>
[% SWITCH code %]
[% CASE 'CHECKIN' %]
<input type="text" id="data_preview" name="data_preview" value="" placeholder="barcode" />
[% CASE 'CHECKOUT' %]
<input type="text" id="data_preview" name="data_preview" value="" placeholder="barcode|borrowernumber" />
[% CASE 'HOLD_SLIP' %]
<input type="text" id="data_preview" name="data_preview" value="" placeholder="biblionumber|borrowernumber" />
[% CASE %]
Not supported yet.
[% END %]
</li>
[% END # /IF code %]
</ol>
</fieldset> <!-- /#add_notice -->
[% IF Koha.Preference('TranslateNotices') %]
<div style="clear:both"></div>
<div id="tabs">
<ul>
<li><a href="#lang_default">Default</a></li>
[% FOR language IN languages %]
[% FOR sublanguage IN language.sublanguages_loop %]
[% IF language.plural %]
<li><a href="#lang_[% sublanguage.rfc4646_subtag | uri %]">[% sublanguage.native_description | html %] [% sublanguage.region_description | html %] ([% sublanguage.rfc4646_subtag | html %])</a></li>
[% ELSE %]
<li><a href="#lang_[% sublanguage.rfc4646_subtag | uri %]">[% sublanguage.native_description | html %] ([% sublanguage.rfc4646_subtag | html %])</a></li>
[% END %]
[% END %]
[% END %]
</ul>
[% END # /IF TranslateNotices %]
[% FOREACH lang IN letters.keys %]
<div id="lang_[% lang | html %]">
<div class="transport-types" style="clear:both">
[% FOR mtt IN letters.$lang.templates.keys.sort %]
[% SET letter = letters.$lang.templates.$mtt %]
[% NEXT IF letter.message_transport_type == "itiva" && !Koha.Preference('TalkingTechItivaPhoneNotification') %]
[% NEXT IF letter.message_transport_type == "phone" && !Koha.Preference('PhoneNotification') %]
<h3>
[% SWITCH letter.message_transport_type %]
[% CASE 'email' %]
Email
[% CASE 'print' %]
Print
[% CASE 'sms' %]
SMS
[% CASE 'feed' %]
Feed
[% CASE 'itiva' %]
Phone ( Itiva )
[% CASE 'phone' %]
Phone
[% CASE %]
[% letter.message_transport_type | html %]
[% END %]
</h3>
[% IF letter.message_transport_type == "sms" and not Koha.Preference("SMSSendDriver") %]
<fieldset class="rows mtt" id="[% letter.message_transport_type | html %]_[% lang | html %]" disabled="disabled">
<div class="dialog message">You should enable the SMSSendDriver preference to use the SMS templates.</div>
[% ELSE %]
<fieldset class="rows mtt" id="[% letter.message_transport_type | html %]_[% lang | html %]">
[% END %]
<ol>
[% IF ( letter.updated_on ) %]
<li>
<label for="updated_on_[% letter.message_transport_type | html %]_[% lang | html %]">Last updated:</label>
[% letter.updated_on | $KohaDates with_hours = 1 %]
</li>
[% END %]
<li>
<input type="hidden" name="message_transport_type" value="[% letter.message_transport_type | html %]" />
<input type="hidden" name="lang" value="[% lang | html %]" />
<label for="is_html_[% letter.message_transport_type | html %]_[% lang | html %]">HTML message:</label>
[% IF letter.is_html %]
<input type="checkbox" name="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" id="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" value="1" checked="checked" />
[% ELSE %]
<input type="checkbox" name="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" id="is_html_[% letter.message_transport_type | html %]_[% lang | html %]" value="1" />
[% END %]
</li>
<li>
<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 %]" />
</li>
<li>
<label for="SQLfieldname_[% letter.message_transport_type | html %]_[% lang | html %]">Message body:</label>
[% IF letter.message_transport_type == 'sms' %]
<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>
[% END %]
<table>
<tr>
<td>
<select name="SQLfieldname" id="SQLfieldname_[% letter.message_transport_type | html %]_[% lang | html %]" multiple="multiple" size="9">
[% FOREACH SQLfieldname IN SQLfieldnames %]
<option value="[% SQLfieldname.value | html %]">[% SQLfieldname.text | html %]</option>
[% END %]
</select>
</td>
<td class="actions">
<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>
</td>
<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>
</tr>
</table>
</li>
[% IF preview_is_available %]
<li>
<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>
</li>
[% END %]
</ol>
</fieldset> <!-- /.rows.mtt -->
[% END # /FOR mtt %]
</div>
</div> <!-- / #transport-types -->
[% END # /FOREACH lang %]
[% IF Koha.Preference('TranslateNotices') %]
</div>
[% END %]
<input type="hidden" id="redirect" name="redirect" value="" />
<input type="hidden" id="section" name="section" value="[% section | html %]" />
<input type="hidden" name="searchfield" value="[% searchfield | html %]" />
</form> <!-- /#add_notice -->
[% END # /IF add_form %]
[% IF ( add_validate or copy_validate) %]
Data recorded
<form action="[% action | html %]" method="post">
<input type="submit" value="OK" />
</form>
[% END %]
[% IF ( delete_confirm ) %]
<div class="dialog alert">
<h3>Delete notice?</h3>
<table>
<thead>
<tr>
<th>Library</th>
<th>Module</th>
<th>Code</th>
<th>Name</th>
</tr>
</thead>
<tr>
<td>[% IF letter.branchcode %][% Branches.GetName( letter.branchcode ) | html %][% ELSE %](All libraries)[% END %]</td>
<td>[% letter.module | html %]</td>
<td>[% letter.code | html %]</td>
<td>[% letter.name | html %]</td>
</tr>
</table>
<form action="[% action | html %]" method="post">
<input type="hidden" name="op" value="delete_confirmed">
<input type="hidden" name="branchcode" value="[% letter.branchcode | html %]" />
<input type="hidden" name="code" value="[% letter.code | html %]" />
<input type="hidden" name="module" value="[% letter.module | html %]" />
<button type="submit" class="approve"><i class="fa fa-check"></i> Yes, delete</button>
</form>
<form action="[% action | html %]" method="get">
<button type="submit" class="deny"><i class="fa fa-times"></i> No, do not delete</button>
</form>
</div>
[% END # /IF delete_confirm %]
[% IF ( delete_confirmed ) %]
Data deleted
<form action="[% action | html %]" method="post">
<input type="submit" value="OK" />
</form>
[% END %]
[% IF add_form or copy_form %]
</div> <!-- /.col-md-8 -->
</div> <!-- /.row -->
[% ELSE %]
</main>
</div> <!-- /.col-sm-10.col-sm-push-2 -->
<div class="col-sm-2 col-sm-pull-10">
<aside>
[% INCLUDE 'tools-menu.inc' %]
</aside>
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
</div> <!-- /.row -->
[% END %]
[% MACRO jsinclude BLOCK %]
[% Asset.js("js/tools-menu.js") | $raw %]
[% INCLUDE 'datatables.inc' %]
[% INCLUDE 'columns_settings.inc' %]
[% Asset.js("lib/hc-sticky.js") | $raw %]
[% Asset.js("lib/jquery/plugins/jquery.insertatcaret.js") | $raw %]
<script>
var no_op_set = '[% no_op_set | html %]';
var interface = '[% interface | html %]';
var theme = '[% theme | html %]';
var add_form = '[% add_form | html %]';
var copy_form = '[% copy_form | html %]';
var code = '[% code | html %]';
var new_lettercode = '[% new_lettercode | html %]';
var new_branchcode = '[% new_branchcode | html %]';
var columns_settings = [% TablesSettings.GetColumns( 'tools', 'notices', 'lettert', 'json' ) | $raw %];
</script>
[% Asset.js("js/letter.js") | $raw %]
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]