b3b85da7bc
To test: 1) Go to Tools -> Koha News 2) Click 'Delete selected' button without selecting anything 3) Notice you are asked to confirm if you would like to delete ... but you didn't choose anything to delete 4) Apply patch and refresh page 5) Click 'Delete selected' button without selecting anything 6) Should see alert. 7) Select one or more news items to delete and click 'Delete selected' button 8) Should be asked to confirm 9) Confirm that the delete works as expected Sponsored-by: Catalyst IT Signed-off-by: Claire Gravely <claire_gravely@hotmail.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
281 lines
13 KiB
Text
281 lines
13 KiB
Text
[% USE KohaDates %]
|
|
[% USE Branches %]
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Koha › Tools › News</title>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
[% INCLUDE 'calendar.inc' %]
|
|
[% IF ( opac_news_count ) %]
|
|
<link rel="stylesheet" type="text/css" href="[% interface %]/[% theme %]/css/datatables.css" />
|
|
[% INCLUDE 'datatables.inc' %]
|
|
<script type="text/javascript">//<![CDATA[
|
|
$(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">//<![CDATA[
|
|
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>
|
|
</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> › <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › [% IF ( add_form ) %]<a href="/cgi-bin/koha/tools/koha-news.pl">News</a> › [% 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-small" id="newentry" href="/cgi-bin/koha/tools/koha-news.pl?op=add_form&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="new">News: </label>
|
|
<textarea name="new" id="new" cols="75" rows="10">[% new_detail.new %]</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> </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.new %]
|
|
</td>
|
|
<td class="actions">
|
|
<a href="/cgi-bin/koha/tools/koha-news.pl?op=add_form&id=[% opac_new.idnew %]" class="btn btn-mini"><i class="fa fa-pencil"></i> Edit</a>
|
|
<a href="/cgi-bin/koha/tools/koha-news.pl?op=del&ids=[% opac_new.idnew %]" class="delete_news btn btn-mini"><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>
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|