Bug 14805: QA follow-up
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / patroncards / manage.tt
1 [% BLOCK translate_card_element %]
2 [%-  SWITCH element -%]
3 [%-  CASE 'layout'    -%]layout
4 [%-  CASE 'Layouts'   -%]Layouts
5 [%-  CASE 'template'  -%]template
6 [%-  CASE 'Templates' -%]Templates
7 [%-  CASE 'profile'   -%]profile
8 [%-  CASE 'Profiles'  -%]Profiles
9 [%-  CASE 'batch'     -%]batch
10 [%-  CASE 'Batches'   -%]Batches
11 [%-  CASE 'Actions'   -%]Actions
12 [%-  END -%]
13 [% END %]
14
15     [% INCLUDE 'doc-head-open.inc' %]
16     <title>Koha &rsaquo; Tools &rsaquo; Patron card creator &rsaquo; [% PROCESS translate_card_element element=card_element_title %]</title>
17     [% INCLUDE 'doc-head-close.inc' %]
18     [% INCLUDE 'greybox.inc' %]
19     <script type="text/javascript">
20         //<![CDATA[
21             var MSG_CONFIRM_DELETE = _("Are you sure you want to delete this?");
22             function DeleteConfirm() {
23                 var element_ids = selected_layouts("delete");
24
25                 var msg;
26                 if (element_ids.length > 1) {
27                     msg = _("Are you sure you want to delete %s batches?").format(element_ids.length);
28                 } else if (element_ids.length == 1) {
29                     msg = _("Are you sure you want to delete %s %s?").format("[% PROCESS translate_card_element element=card_element %]", element_ids[0]);
30                 }
31
32                 if (msg && confirm(msg)) {
33                     var elements = "";
34                     for (var i = 0; i < element_ids.length; i++) {
35                         if (element_ids[i] > -1) {
36                             elements += element_ids[i] + ","
37                         }
38                         else {
39                             return;     // no layout selected
40                         }
41                     }
42
43                     window.location = "/cgi-bin/koha/patroncards/manage.pl?op=delete&card_element=[% card_element %]&element_id=" + elements;
44                 }
45                 else {
46                     return; // abort delete
47                 }
48
49             };
50
51             function Edit() {
52                 var element_id = selected_layouts("edit");
53                 if (element_id>-1) {
54                     window.location = "/cgi-bin/koha/patroncards/edit-[% card_element %].pl?op=edit&element_id=" + element_id;
55                 }
56                 else {
57                     return;     // no layout selected
58                 };
59             };
60             function Xport() {
61                 batches= new Array;
62                 if(document.layouts.action.length > 0) {
63                     for (var i=0; i < document.layouts.action.length; i++) {
64                         if (document.layouts.action[i].checked) {
65                             batches.push("batch_id=" +  document.layouts.action[i].value);
66                         }
67                     }
68                     if (batches.length < 1) {
69                         alert(_("Please select at least one batch to export."));
70                         return;     // no batch selected
71                     }
72                     getstr = batches.join("&");
73                 }
74                 else if (document.layouts.action.checked) {
75                     getstr = "batch_id="+document.layouts.action.value;
76                 }
77                 else {
78                     alert(_("Please select at least one batch to export."));
79                     return;     // no batch selected
80                 }
81                 return GB_showCenter(_("Export patron cards"), "/cgi-bin/koha/patroncards/print.pl?" + getstr, 700, 800);
82             };
83             function selected_layouts(op) {
84                 var selected = new Array;
85                 if (document.layouts.action.length) {
86                     for (i=0;i<document.layouts.action.length;i++){
87                         if (document.layouts.action[i].checked){
88                             selected.push(i);
89                         }
90                     };
91                     if (selected.length == 1 || (op == "delete" && selected.length >= 1)) {
92                         if (op == "delete") {
93                             var selectedDelete = new Array;
94                             for (i = 0; i < selected.length; i++) {
95                                 selectedDelete.push(document.layouts.action[selected[i]].value);
96                             }
97                             return(selectedDelete);
98                         } else {
99                             // op == 'edit' returns only the object and not list
100                             return(document.layouts.action[selected[0]].value);
101                         }
102                     }
103                     else if (selected.length < 1) {
104                         if (op == "edit") {
105                             alert(_("Please select one %s to %s.").format("[% PROCESS translate_card_element element=card_element %]", op));
106                         } else {
107                             alert(_("Please select at least one %s to %s.").format("[% PROCESS translate_card_element element=card_element %]", op));
108                         }
109                         return (-1);
110                     }
111                     else {
112                         alert(_("Please select only one %s to %s.").format("[% PROCESS translate_card_element element=card_element %]", op));
113                         return (-1);
114                     }
115                 }
116                 else {
117                     if (document.layouts.action.checked){
118                         return(document.layouts.action.value);
119                     }
120                 };
121                 alert(_("Please select a %s.").format("[% PROCESS translate_card_element element=card_element %]"));
122                 return (-1);
123             };
124
125         $(document).ready(function() {
126             $("#edit").click(function(){
127                 Edit();
128                 return false;
129             });
130             $("#delete").click(function(){
131                 DeleteConfirm();
132                 return false;
133             });
134             $("#print").click(function(){
135                 Xport();
136                 return false;
137             });
138          });
139 //]]>
140 </script>
141 </head>
142 <body id="pcard_manage" class="tools pcard">
143     [% INCLUDE 'header.inc' %]
144     [% INCLUDE 'cat-search.inc' %]
145     <div id="breadcrumbs">
146         <a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo;
147         <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> &rsaquo;
148         <a href="/cgi-bin/koha/patroncards/home.pl">Patron card creator</a> &rsaquo;
149         [% PROCESS translate_card_element element=card_element_title %]
150     </div>
151     <div id="doc3" class="yui-t2">
152         <div id="bd">
153             <div id="yui-main">
154                 <div class="yui-b">
155                     [% INCLUDE 'patroncards-toolbar.inc' %]
156                     [% INCLUDE 'patroncards-errors.inc' %]
157                     <div class="yui-gc">
158                         <div class="yui-u first" id="manage-patroncards-layouts">
159                             <div class="hint">Current library: [% LoginBranchname %]</div>
160                             [% IF ( table_loop ) %]
161                             <form name="layouts" action="/cgi-bin/koha/manage.pl?card_element=[% card_element %]">
162                             <h2>Currently available [% PROCESS translate_card_element element=card_element_title FILTER lower %]</h2>
163                             <table>
164                                 [% FOREACH table_loo IN table_loop %]
165                                 [% IF ( table_loo.header_fields ) %]
166                                 <tr>
167                                 [% FOREACH header_field IN table_loo.header_fields %]
168                                     [% SWITCH header_field.field_label -%]
169                                         [% CASE "Select" -%]
170                                              [% IF ( print ) %]<th>Select</th>[% END %]
171                                         [% CASE %]
172                                              <th>[% header_field.field_label %]</th>
173                                         [% END -%]
174                                 [% END %]
175                                 </tr>
176                                 [% ELSE %]
177                                 <tr>
178                                 [% FOREACH text_field IN table_loo.text_fields %]
179                                 [% IF ( text_field.select_field ) %]
180                                     <td>
181                                       <a class="btn btn-mini" href="/cgi-bin/koha/patroncards/edit-[% card_element %].pl?op=edit&element_id=[% text_field.field_value %]"><icon class="fa fa-edit"></icon> Edit</a>
182                                       [% IF ( print ) %]<a class="btn btn-mini" href="#" onclick="GB_showCenter('Export single batch','/cgi-bin/koha/patroncards/print.pl?batch_id=[% text_field.field_value |url %]')"><icon class="fa fa-share-square-o"></icon> Export</a>[% END %]
183                                       <a class="btn btn-mini" onclick="return confirm(MSG_CONFIRM_DELETE);" href="/cgi-bin/koha/patroncards/manage.pl?op=delete&card_element=[% card_element %]&element_id=[% text_field.field_value %]"><icon class="fa fa-trash"></icon> Delete</a>
184                                     </td>
185                                     [% IF ( print ) %]<td align="center"><input type="checkbox" name="action" value="[% text_field.field_value %]" /></td>[% END %]
186                                 [% ELSIF ( text_field.field_value ) %]
187                                     <td>[% text_field.field_value %]</td>
188                                 [% ELSE %]
189                                     <td>&nbsp;</td>
190                                 [% END %]
191                                 [% END %]
192                                 </tr>
193                                 [% END %]
194                                 [% END %]
195                             </table>
196                             <fieldset class="action">
197                                 [% IF ( print ) %]<input class="btn btn-sm" type="button" id="print" value="Export selected batches" />[% END %]
198                             </fieldset>
199                             </form>
200                             [% ELSE %]
201                         <div class="dialog message">
202                             <h4>There are no [% PROCESS translate_card_element element=card_element_title %] currently available.</h4>
203                             <p>Use the toolbar above to create a new [% PROCESS translate_card_element element=card_element %].</p></div>
204                             [% END %]
205                         </div>
206                     </div>
207                 </div>
208             </div>
209         </div>
210     [% INCLUDE 'intranet-bottom.inc' %]