Koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/koha-news.tt
Owen Leonard a6abaca8d0 Bug 19653: Move tools templates JavaScript to the footer: Additional tools
This patch modifies the staff client "Additional tools" templates so
that JavaScript is included in the footer instead of the header:

- Calendar
- CSV profiles
- Log viewer
- News
- Task scheduler
- Edit quotes for QOTD feature
- Upload

Note that the log viewer template has been modified so that the
"interface" variable (passed to the template to provide the correct path
to staff client assets) isn't overwritten by an "interface" variable
required by the log viewer.

To test, apply the patch and test the JavaScript-driven features of
each modified template: All button controls, DataTables functionality,
form validation, etc.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
2017-12-11 11:34:21 -03:00

287 lines
14 KiB
Text

[% USE KohaDates %]
[% USE Branches %]
[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha &rsaquo; Tools &rsaquo; News</title>
[% INCLUDE 'doc-head-close.inc' %]
[% IF ( opac_news_count ) %]
<link rel="stylesheet" type="text/css" href="[% interface %]/[% theme %]/css/datatables.css" />
[% END %]
</head>
<body id="tools_koha-news" class="tools">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'cat-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 ) %]<a href="/cgi-bin/koha/tools/koha-news.pl">News</a> &rsaquo; [% IF ( id ) %]
Edit news item[% ELSE %]Add news item[% END %][% ELSE %]News[% END %]</div>
[% IF ( add_form ) %]<div id="doc" class="yui-t7">[% ELSE %]<div id="doc3" class="yui-t2">[% END %]
<div id="bd">
<div id="yui-main">
<div class="yui-b">
[% UNLESS ( add_form ) %]
[% IF error_message == 'title_missing' %]
<div class="dialog alert">Error: Required news title missing!</div>
[% END %]
<div id="toolbar" class="btn-toolbar">
<a class="btn btn-default btn-sm" id="newentry" href="/cgi-bin/koha/tools/koha-news.pl?op=add_form&amp;lang=[% lang %]"><i class="fa fa-plus"></i> New entry</a>
</div>
[% END %]
[% IF ( add_form ) %]
[% IF ( op == 'add' ) %][% default_lang = lang %]
[% ELSE %][% default_lang = new_detail.lang %]
[% END %]
<form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
<input type="hidden" name="op" value="[% op %]" />
<input type="hidden" name="id" value="[% id %]" />
<fieldset class="rows">
<legend>OPAC and Koha news</legend>
<ol> <li>
<label for="lang">Display location:</label>
<select id="lang" name="lang">
[% IF ( default_lang == "" ) %]
<option value="" selected="selected">All</option>
[% ELSE %]
<option value="" >All</option>
[% END %]
[% IF ( default_lang == "koha" ) %]
<option value="koha" selected="selected">Librarian interface</option>
[% ELSE %]
<option value="koha" >Librarian interface</option>
[% END %]
[% IF ( default_lang == "slip" ) %]
<option value="slip" selected="selected">Slip</option>
[% ELSE %]
<option value="slip" >Slip</option>
[% END %]
[% FOREACH lang_lis IN lang_list %]
[% IF ( lang_lis.language == default_lang ) %]
<option value="[% lang_lis.language %]" selected="selected">OPAC ([% lang_lis.language %])</option>
[% ELSE %]
<option value="[% lang_lis.language %]" >OPAC ([% lang_lis.language %])</option>
[% END %]
[% END %]
</select>
</li>
<li>
<label for="branch">Library: </label>
<select id="branch" name="branch">
[% IF ( new_detail.branchcode == '' ) %]
<option value="" selected="selected">All libraries</option>
[% ELSE %]
<option value="" >All libraries</option>
[% END %]
[% PROCESS options_for_libraries libraries => Branches.all( selected => new_detail.branchcode, unfiltered => 1, ) %]
</select>
</li>
<li>
<label for="title" class="required">Title: </label>
<input id="title" size="30" type="text" name="title" value="[% new_detail.title %]" required="required" class="required" /> <span class="required">Required</span>
</li>
<li>
<label for="from">Publication date: </label>
<input id="from" type="text" name="timestamp" size="15" value="[% new_detail.timestamp %]" class="datepickerfrom" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="to">Expiration date: </label>
<input id="to" type="text" name="expirationdate" size="15" value="[% new_detail.expirationdate %]" class="datepickerto" />
<div class="hint">[% INCLUDE 'date-format.inc' %]</div>
</li>
<li>
<label for="number">Appear in position: </label>
[% IF ( new_detail.number ) %]
<input id="number" size="3" name="number" type="text" value="[% new_detail.number %]" />
[% ELSE %]
<input id="number" size="3" name="number" type="text" />
[% END %]
</li>
<li><label for="content">News: </label>
<textarea name="content" id="content" cols="75" rows="10">[% new_detail.content %]</textarea>
</li>
</ol>
</fieldset>
<fieldset class="action"><input class="button" type="submit" value="Submit" /> <a class="cancel" href="/cgi-bin/koha/tools/koha-news.pl">Cancel</a></fieldset>
</form>
[% ELSE %]
<div style="margin-bottom:5px;">
<form name="add_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl" >
<label for="lang">Display location:</label>
<select name="lang" id="lang">
[% IF ( lang == "" ) %]
<option value="" selected="selected">All</option>
[% ELSE %]
<option value="" >All</option>
[% END %]
[% IF ( lang == "koha" ) %]
<option value="koha" selected="selected">Librarian interface</option>
[% ELSE %]
<option value="koha" >Librarian interface</option>
[% END %]
[% IF ( lang == "slip" ) %]
<option value="slip" selected="selected">Slip</option>
[% ELSE %]
<option value="slip" >Slip</option>
[% END %]
[% FOREACH lang_lis IN lang_list %]
[% IF ( lang_lis.language == lang ) %]
<option value="[% lang_lis.language %]" selected="selected">OPAC ([% lang_lis.language %])</option>
[% ELSE %]
<option value="[% lang_lis.language %]" >OPAC ([% lang_lis.language %])</option>
[% END %]
[% END %]
</select>
<label for="branch">Library: </label>
<select id="branch" name="branch">
[% IF ( branchcode == "" ) %]
<option value="" selected="selected">All libraries</option>
[% ELSE %]
<option value="" >All libraries</option>
[% END %]
[% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode, unfiltered => 1, ) %]
</select>
<input type="submit" class="button" value="Filter" />
</form>
</div>
[% IF ( opac_news_count ) %]
<form id="del_form" method="post" action="/cgi-bin/koha/tools/koha-news.pl">
<table id="newst">
<thead> <tr>
<th>&nbsp;</th>
<th>Location</th>
<th>Library</th>
<th>Number</th>
<th class="title-string">Publication date</th>
<th class="title-string">Expiration date</th>
<th>Title</th>
<th>Author</th>
<th>News</th>
<th>Actions</th>
</tr></thead>
<tbody>[% FOREACH opac_new IN opac_news %]
[% IF ( opac_new.expired ) %]
<tr class="expired">
[% ELSE %]
<tr>
[% END %]
<td>
<input type="checkbox" name="ids" value="[% opac_new.idnew %]" />
</td>
<td>[% SWITCH opac_new.lang %]
[% CASE "koha" %]
Librarian interface
[% CASE "slip" %]
Slip
[% CASE "" %]
All
[% CASE %]
OPAC ([% opac_new.lang %])
[% END %]
</td>
<td>[% IF ( opac_new.branchcode == "" ) -%]
All libraries
[% ELSE %][% opac_new.branchname %]
[% END %]</td>
<td>[% opac_new.number %]</td>
<td><span title="[% opac_new.newdate %]">[% opac_new.newdate | $KohaDates %]</span></td>
<td><span title="[% opac_new.expirationdate %]">[% opac_new.expirationdate | $KohaDates %] [% IF ( opac_new.expired ) %](<span class="expired">expired</span>)[% END %]</span></td>
<td>[% opac_new.title %]</td>
<td>[% opac_new.author_title %] [% opac_new.author_firstname %] [% opac_new.author_surname %]</td>
<td>
[% opac_new.content %]
</td>
<td class="actions">
<a href="/cgi-bin/koha/tools/koha-news.pl?op=add_form&amp;id=[% opac_new.idnew %]" class="btn btn-default btn-xs"><i class="fa fa-pencil"></i> Edit</a>
<a href="/cgi-bin/koha/tools/koha-news.pl?op=del&amp;ids=[% opac_new.idnew %]" class="delete_news btn btn-default btn-xs"><i class="fa fa-trash"></i> Delete</a>
</td>
</tr>
[% END %]</tbody>
</table>
<input type="hidden" name="op" value="del" />
<fieldset class="action"><input type="submit" class="button" value="Delete selected" /></fieldset>
</form>
[% ELSE %]
<div class="dialog message">There are no news items.</div>
[% END %]
[% END %]
</div>
</div>
[% UNLESS ( add_form ) %]
<div class="yui-b noprint">
[% INCLUDE 'tools-menu.inc' %]
</div>
[% END %]
</div>
[% MACRO jsinclude BLOCK %]
[% INCLUDE 'calendar.inc' %]
<script type="text/javascript" src="[% interface %]/[% theme %]/js/tools-menu.js"></script>
[% IF ( opac_news_count ) %]
[% INCLUDE 'datatables.inc' %]
<script type="text/javascript">
$(document).ready(function() {
$("#newst").dataTable($.extend(true, {}, dataTablesDefaults, {
"aoColumnDefs": [
{ "aTargets": [ 0,-1,-2 ], "bSortable": false },
{ "aTargets": [ 0, -1 ], "bSearchable": false },
{ 'sType': "title-string", 'aTargets' : [ 'title-string'] }
],
"sPaginationType": "full_numbers"
}));
$(".delete_news").on("click", function(){
return confirmDelete( _("Are you sure you want to delete this news item? This cannot be undone.") );
});
function Checkbox(){
var form = document.getElementById('del_form');
var inputs = form.getElementsByTagName('input');
var checked = false;
for (var i=0; i<inputs.length; i++) {
if (inputs[i].type == 'checkbox' && inputs[i].name == 'ids') {
checked = inputs[i].checked;
if (checked) return true;
}
}
}
$("#del_form").on("submit",function(){
if ( Checkbox() ) {
return confirmDelete( _("Are you sure you want to delete the selected news?") );
} else {
alert(_("Please select a news item to delete."));
return false;
}
});
});
</script>
[% END %]
<script type="text/javascript" src="[% interface %]/lib/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "advanced",
convert_urls : false,
relative_urls : false,
content_css : "[% interface %]/[% theme %]/css/tinymce.css",
plugins : "table,save,advhr,advlink,searchreplace,print,contextmenu",
theme_advanced_buttons1 : "save,|,bold,italic,|,cut,copy,paste,|,search,replace,|,justifyleft,justifycenter,justifyright,justifyfull,|,formatselect,|,link,unlink,anchor,cleanup,help,code,advhr,|,print",
theme_advanced_buttons2 : "tablecontrols,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,removeformat,|,visualaid,|,sub,sup,|,charmap",
theme_advanced_buttons3 : "",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_path_location : "bottom",
theme_advanced_resizing : true,
plugin_insertdate_dateFormat : "%Y-%m-%d",
plugin_insertdate_timeFormat : "%H:%M:%S",
apply_source_formatting : true,
height : "300",
width : "700"
});
</script>
[% END %]
[% INCLUDE 'intranet-bottom.inc' %]