Bug 9635 - Replace YUI buttons on label batches pages with Bootstrap
This patch converts the toolbar used by label batches pages to Bootstrap, replacing YUI button and menu code with Bootstrap markup. This patch also consolidates the include file and main template. The include file was used in only one template. To test, create a label batch and test all functions related to that batch: adding and removing items, de-duplicating the batch, exporting individual items, exporting the batch, and deleting the batch. Buttons should look correct and work correctly. Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Comment: Work as described, no errors. Tested all functions (add, del, de-duplicate, export item, export batch) Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de> Works nicely, no problems found. Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This commit is contained in:
parent
19e6146469
commit
fd680afc6f
2 changed files with 138 additions and 187 deletions
|
@ -1,185 +0,0 @@
|
|||
<div id="toolbar">
|
||||
<script type="text/JavaScript">
|
||||
//<![CDATA[
|
||||
function DeleteConfirm() {
|
||||
var msg = "Are you sure you want to delete batch [% batch_id %]?"
|
||||
var answer = confirm(msg);
|
||||
if (answer) {
|
||||
window.location = "/cgi-bin/koha/labels/label-manage.pl?op=delete&label_element=batch&element_id=[% batch_id %]";
|
||||
}
|
||||
else {
|
||||
return; // abort delete
|
||||
}
|
||||
};
|
||||
function Remove() {
|
||||
items = new Array;
|
||||
item_num = new Array;
|
||||
if(document.items.action.length > 0) {
|
||||
for (var i=0; i < document.items.action.length; i++) {
|
||||
if (document.items.action[i].checked) {
|
||||
items.push("label_id=" + document.items.action[i].value);
|
||||
item_num.push(i+1);
|
||||
}
|
||||
}
|
||||
if (items.length < 1) {
|
||||
alert(_("Please select at least one item to delete."));
|
||||
return; // no item selected
|
||||
}
|
||||
getstr = items.join("&");
|
||||
item_msg = item_num.join(", ");
|
||||
var msg = "Are you sure you want to remove label number(s): " + item_msg + " from this batch?"
|
||||
}
|
||||
// else if (document.items.action.checked) {
|
||||
// getstr = "label_id="+document.items.action.value;
|
||||
// var msg = "Are you sure you want to remove selected item from this batch?"
|
||||
// }
|
||||
else {
|
||||
alert(_("Please select at least label to delete."));
|
||||
return; // no item selected
|
||||
}
|
||||
var answer = confirm(msg);
|
||||
if (answer) {
|
||||
window.location = "/cgi-bin/koha/labels/label-edit-batch.pl?op=remove&batch_id=[% batch_id %]&" + getstr;
|
||||
}
|
||||
else {
|
||||
return; // abort delete
|
||||
}
|
||||
};
|
||||
function Add() {
|
||||
var barcodes = document.getElementById("barcode");
|
||||
if (barcodes.value == '') {
|
||||
window.open("/cgi-bin/koha/labels/label-item-search.pl?batch_id=[% batch_id %]&type=labels",'FindABibIndex','width=875,height=400,toolbar=no,scrollbars=yes');
|
||||
}
|
||||
else {
|
||||
document.forms["add_by_barcode"].submit();
|
||||
}
|
||||
};
|
||||
function DeDuplicate() {
|
||||
window.location = "/cgi-bin/koha/labels/label-edit-batch.pl?op=de_duplicate&batch_id=[% batch_id %]";
|
||||
};
|
||||
function Xport(mode) {
|
||||
if (mode == 'label') {
|
||||
labels= new Array;
|
||||
if(document.items.action.length > 0) {
|
||||
for (var i=0; i < document.items.action.length; i++) {
|
||||
if (document.items.action[i].checked) {
|
||||
labels.push("label_id=" + document.items.action[i].value);
|
||||
}
|
||||
}
|
||||
if (labels.length < 1) {
|
||||
alert(_("Please select at least one label to export."));
|
||||
return; // no batch selected
|
||||
}
|
||||
getstr = labels.join("&");
|
||||
}
|
||||
else if (document.items.action.checked) {
|
||||
getstr = document.items.action.value;
|
||||
}
|
||||
else {
|
||||
alert(_("Please select at least one label to export."));
|
||||
return; // no batch selected
|
||||
}
|
||||
return GB_showCenter('Export labels', "/cgi-bin/koha/labels/label-print.pl?batch_id=[% batch_id %]&" + getstr, 700, 800);
|
||||
}
|
||||
else if (mode == 'batch') {
|
||||
return GB_showCenter('Export labels', "/cgi-bin/koha/labels/label-print.pl?batch_id=[% batch_id %]", 700, 800);
|
||||
}
|
||||
else {
|
||||
// some pass-thru error trapping just in case...
|
||||
}
|
||||
};
|
||||
function selected_layout() {
|
||||
if (document.items.action.length) {
|
||||
for (i=0;i<document.items.action.length;i++){
|
||||
if (document.items.action[i].checked==true){
|
||||
return(document.items.action[i].value);
|
||||
}
|
||||
};
|
||||
}
|
||||
else {
|
||||
if (document.items.action.checked){
|
||||
return(document.items.action.value);
|
||||
}
|
||||
};
|
||||
alert(_("Please select at least one item."));
|
||||
return (-1);
|
||||
};
|
||||
|
||||
// prepare DOM for YUI Toolbar
|
||||
$(document).ready(function() {
|
||||
$("#additemsc").empty();
|
||||
$("#removeitemsc").empty();
|
||||
$("#deletebatchc").empty();
|
||||
$("#deduplicatec").empty();
|
||||
$("#exportitemsc").empty();
|
||||
$("#exportbatchc").empty();
|
||||
yuiToolbar();
|
||||
});
|
||||
// YUI Toolbar Functions
|
||||
function yuiToolbar() {
|
||||
new YAHOO.widget.Button({
|
||||
id: "additems",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Add item(s)"),
|
||||
container: "additemsc",
|
||||
onclick: {fn:function(){Add()}}
|
||||
});
|
||||
|
||||
new YAHOO.widget.Button({
|
||||
id: "removeitems",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Remove item(s)"),
|
||||
container: "removeitemsc",
|
||||
onclick: {fn:function(){Remove()}}
|
||||
});
|
||||
|
||||
new YAHOO.widget.Button({
|
||||
id: "deletebatch",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Delete batch"),
|
||||
container: "deletebatchc",
|
||||
onclick: {fn:function(){DeleteConfirm()}}
|
||||
});
|
||||
|
||||
new YAHOO.widget.Button({
|
||||
id: "deduplicate",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Remove duplicates"),
|
||||
container: "deduplicatec",
|
||||
onclick: {fn:function(){DeDuplicate()}}
|
||||
});
|
||||
|
||||
new YAHOO.widget.Button({
|
||||
id: "exportitems",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Export item(s)"),
|
||||
container: "exportitemsc",
|
||||
onclick: {fn:function(){Xport('label')}}
|
||||
});
|
||||
|
||||
new YAHOO.widget.Button({
|
||||
id: "exportbatch",
|
||||
type: "link",
|
||||
href: "#",
|
||||
label: _("Export batch"),
|
||||
container: "exportbatchc",
|
||||
onclick: {fn:function(){Xport('batch')}}
|
||||
});
|
||||
new YAHOO.widget.Button("deletebatch");
|
||||
}
|
||||
//]]>
|
||||
</script>
|
||||
<ul class="toolbar">
|
||||
<li id="additemsc"><a id="additems" href="#">Add item(s)</a></li>[% IF ( table_loop ) %]
|
||||
<li id="removeitemsc"><a id="removeitems" href="#">Remove item(s)</a></li>
|
||||
<li id="deletebatchc"><a id="deletebatch" href="#">Delete batch</a></li>
|
||||
<li id="deduplicatec"><a id="deduplicate" href="#">Remove duplicates</a></li>
|
||||
<li id="exportitemsc"><a id="exportitems" href="#">Export item(s)</a></li>
|
||||
<li id="exportbatchc"><a id="exportbatch" href="#">Export batch</a></li>[% END %]
|
||||
</ul>
|
||||
</div>
|
|
@ -1,4 +1,3 @@
|
|||
<!-- PLEASE MAINTAIN PROPER INDENTATION!!!! -->
|
||||
[% INCLUDE 'doc-head-open.inc' %]
|
||||
<title>Koha › Tools › Labels › Manage label batches</title>
|
||||
[% INCLUDE 'doc-head-close.inc' %]
|
||||
|
@ -17,6 +16,136 @@
|
|||
return true; // ok
|
||||
};
|
||||
}
|
||||
function DeleteConfirm() {
|
||||
var msg = "Are you sure you want to delete batch [% batch_id %]?"
|
||||
var answer = confirm(msg);
|
||||
if (answer) {
|
||||
window.location = "/cgi-bin/koha/labels/label-manage.pl?op=delete&label_element=batch&element_id=[% batch_id %]";
|
||||
}
|
||||
else {
|
||||
return; // abort delete
|
||||
}
|
||||
};
|
||||
function Remove() {
|
||||
items = new Array;
|
||||
item_num = new Array;
|
||||
if(document.items.action.length > 0) {
|
||||
for (var i=0; i < document.items.action.length; i++) {
|
||||
if (document.items.action[i].checked) {
|
||||
items.push("label_id=" + document.items.action[i].value);
|
||||
item_num.push(i+1);
|
||||
}
|
||||
}
|
||||
if (items.length < 1) {
|
||||
alert(_("Please select at least one item to delete."));
|
||||
return; // no item selected
|
||||
}
|
||||
getstr = items.join("&");
|
||||
item_msg = item_num.join(", ");
|
||||
var msg = "Are you sure you want to remove label number(s): " + item_msg + " from this batch?"
|
||||
}
|
||||
// else if (document.items.action.checked) {
|
||||
// getstr = "label_id="+document.items.action.value;
|
||||
// var msg = "Are you sure you want to remove selected item from this batch?"
|
||||
// }
|
||||
else {
|
||||
alert(_("Please select at least label to delete."));
|
||||
return; // no item selected
|
||||
}
|
||||
var answer = confirm(msg);
|
||||
if (answer) {
|
||||
window.location = "/cgi-bin/koha/labels/label-edit-batch.pl?op=remove&batch_id=[% batch_id %]&" + getstr;
|
||||
}
|
||||
else {
|
||||
return; // abort delete
|
||||
}
|
||||
};
|
||||
function Add() {
|
||||
var barcodes = document.getElementById("barcode");
|
||||
if (barcodes.value == '') {
|
||||
window.open("/cgi-bin/koha/labels/label-item-search.pl?batch_id=[% batch_id %]&type=labels",'FindABibIndex','width=875,height=400,toolbar=no,scrollbars=yes');
|
||||
}
|
||||
else {
|
||||
document.forms["add_by_barcode"].submit();
|
||||
}
|
||||
};
|
||||
function DeDuplicate() {
|
||||
window.location = "/cgi-bin/koha/labels/label-edit-batch.pl?op=de_duplicate&batch_id=[% batch_id %]";
|
||||
};
|
||||
function Xport(mode) {
|
||||
if (mode == 'label') {
|
||||
labels= new Array;
|
||||
if(document.items.action.length > 0) {
|
||||
for (var i=0; i < document.items.action.length; i++) {
|
||||
if (document.items.action[i].checked) {
|
||||
labels.push("label_id=" + document.items.action[i].value);
|
||||
}
|
||||
}
|
||||
if (labels.length < 1) {
|
||||
alert(_("Please select at least one label to export."));
|
||||
return; // no batch selected
|
||||
}
|
||||
getstr = labels.join("&");
|
||||
}
|
||||
else if (document.items.action.checked) {
|
||||
getstr = document.items.action.value;
|
||||
}
|
||||
else {
|
||||
alert(_("Please select at least one label to export."));
|
||||
return; // no batch selected
|
||||
}
|
||||
return GB_showCenter('Export labels', "/cgi-bin/koha/labels/label-print.pl?batch_id=[% batch_id %]&" + getstr, 700, 800);
|
||||
}
|
||||
else if (mode == 'batch') {
|
||||
return GB_showCenter('Export labels', "/cgi-bin/koha/labels/label-print.pl?batch_id=[% batch_id %]", 700, 800);
|
||||
}
|
||||
else {
|
||||
// some pass-thru error trapping just in case...
|
||||
}
|
||||
};
|
||||
function selected_layout() {
|
||||
if (document.items.action.length) {
|
||||
for (i=0;i<document.items.action.length;i++){
|
||||
if (document.items.action[i].checked==true){
|
||||
return(document.items.action[i].value);
|
||||
}
|
||||
};
|
||||
}
|
||||
else {
|
||||
if (document.items.action.checked){
|
||||
return(document.items.action.value);
|
||||
}
|
||||
};
|
||||
alert(_("Please select at least one item."));
|
||||
return (-1);
|
||||
};
|
||||
|
||||
$(document).ready(function() {
|
||||
$("#additems").click(function(){
|
||||
Add();
|
||||
return false;
|
||||
});
|
||||
$("#removeitems").click(function(){
|
||||
Remove();
|
||||
return false;
|
||||
});
|
||||
$("#deletebatch").click(function(){
|
||||
DeleteConfirm();
|
||||
return false;
|
||||
});
|
||||
$("#deduplicate").click(function(){
|
||||
DeDuplicate();
|
||||
return false;
|
||||
});
|
||||
$("#exportitems").click(function(){
|
||||
Xport('label');
|
||||
return false;
|
||||
});
|
||||
$("#exportbatch").click(function(){
|
||||
Xport('batch');
|
||||
return false;
|
||||
});
|
||||
});
|
||||
//]]>
|
||||
</script>
|
||||
</head>
|
||||
|
@ -34,7 +163,14 @@
|
|||
<div id="bd">
|
||||
<div id="yui-main">
|
||||
<div class="yui-b">
|
||||
[% INCLUDE 'labels-batches-toolbar.inc' %]
|
||||
<div id="toolbar" class="btn-toolbar">
|
||||
<a class="btn btn-small" id="additems" href="#">Add item(s)</a>[% IF ( table_loop ) %]
|
||||
<a class="btn btn-small" id="removeitems" href="#">Remove item(s)</a>
|
||||
<a class="btn btn-small" id="deletebatch" href="#">Delete batch</a>
|
||||
<a class="btn btn-small" id="deduplicate" href="#">Remove duplicates</a>
|
||||
<a class="btn btn-small" id="exportitems" href="#">Export item(s)</a>
|
||||
<a class="btn btn-small" id="exportbatch" href="#">Export batch</a>[% END %]
|
||||
</div>
|
||||
<div class="yui-g">
|
||||
<div class="yui-u first" id="manage-label-batches">
|
||||
<div class="hint">Current library: [% LoginBranchname %]</div>
|
||||
|
|
Loading…
Reference in a new issue