Bug 27796: (QA follow-up) Missing filters
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / admin / cash_registers.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE Branches %]
4 [% USE Price %]
5 [% SET footerjs = 1 %]
6 [% INCLUDE 'doc-head-open.inc' %]
7 <title>Koha &rsaquo; Administration &rsaquo; Cash registers
8 [% IF op == 'add_form' %]
9     &rsaquo;[% IF cash_register %]Modify cash register[% ELSE %]New cash register [% cash_register.id | html %][% END %]
10 [% ELSIF op == 'delete_confirm' %]
11     &rsaquo; Confirm deletion of cash register '[% cash_register.id | html %]'
12 [% END %]
13 </title>
14 [% INCLUDE 'doc-head-close.inc' %]
15 </head>
16
17 <body id="admin_cash_registers" class="admin">
18 [% INCLUDE 'header.inc' %]
19 [% INCLUDE 'prefs-admin-search.inc' %]
20
21 <nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
22     <ol>
23         <li>
24             <a href="/cgi-bin/koha/mainpage.pl">Home</a>
25         </li>
26         <li>
27             <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
28         </li>
29
30         [% IF op == 'add_form'  %]
31             <li>
32                 <a href="/cgi-bin/koha/admin/cash_registers.pl">Cash registers</a>
33             </li>
34             [% IF cash_register %]
35                 <li>
36                     <a href="#" aria-current="page">
37                         Modify cash register [% cash_register.id | html %]
38                     </a>
39                 </li>
40             [% ELSE %]
41                 <li>
42                     <a href="#" aria-current="page">
43                         New cash register
44                     </a>
45                 </li>
46             [% END %]
47
48         [% ELSIF op == 'delete_confirm' %]
49             <li>
50                 <a href="/cgi-bin/koha/admin/cash_registers.pl">Cash registers</a>
51             </li>
52             <li>
53                 <a href="#" aria-current="page">
54                     Confirm deletion of cash register '[% cash_register.id | html %]'
55                 </a>
56             </li>
57
58         [% ELSE %]
59             <li>
60                 <a href="#" aria-current="page">
61                     Cash registers</a>
62             </li>
63         [% END %]
64     </ol>
65 </nav>
66
67 <div class="main container-fluid">
68     <div class="row">
69         <div class="col-sm-10 col-sm-push-2">
70             <main>
71
72                 [% FOREACH m IN messages %]
73                 <div class="dialog [% m.type | html %]">
74                     [% SWITCH m.code %]
75                     [% CASE 'success_on_insert' %]
76                         Cash register added successfully.
77                     [% CASE 'error_on_insert' %]
78                         An error occurred when adding this cash register.
79                     [% CASE 'success_on_update' %]
80                         Cash register updated successfully.
81                     [% CASE 'error_on_update' %]
82                         An error occurred when updating this cash register.
83                     [% CASE 'success_on_default' %]
84                         Library default updated successfully.
85                     [% CASE 'error_on_update' %]
86                         An error on setting library default.
87                     [% CASE 'success_on_archive' %]
88                         Cash register archived successfully.
89                     [% CASE 'success_on_restore' %]
90                         Cash register restored successfully.
91                     [% CASE %]
92                         [% m.code | html %]
93                     [% END %]
94                 </div>
95                 [% END %]
96
97                 [% IF op == 'add_form' %]
98                 <h3>[% IF cash_register %]Modify cash register[% ELSE %]Add new cash register[% END %]</h3>
99                 <form action="/cgi-bin/koha/admin/cash_registers.pl" id="Aform" name="Aform" class="validated" method="post">
100
101                     <fieldset class="rows">
102                         <input type="hidden" name="op" value="add_validate" />
103                         <ol>
104                         [% IF cash_register %]
105                             <li>
106                                 <span class="label">Cash register ID: </span>[% cash_register.id | html %]
107                                 <input type="hidden" name="id" value="[% cash_register.id | html %]" />
108                             </li>
109                         [% END %]
110
111                             <li>
112                                 <label for="name" class="required">Name: </label>
113                                 <input type="text" name="name" id="name" size="24" maxlength="24" value="[% cash_register.name | html %]" class="required" />
114                                 <span class="required">Required</span>
115                             </li>
116
117                             <li>
118                                 <label for="description">Description: </label>
119                                 <input type="text" name="description" id="description" size="24" value="[% cash_register.description | html %]"/>
120                             </li>
121                             <li>
122                                 <label for="branch">Library: </label>
123                                 <select id="branch" name="branch">
124                                 [% IF cash_register %]
125                                     [% PROCESS options_for_libraries libraries => Branches.all( selected => cash_register.branch ) %]
126                                 [% ELSE %]
127                                     [% PROCESS options_for_libraries libraries => Branches.all() %]
128                                 [% END %]
129                                 </select>
130                             </li>
131
132                             <li>
133                                 <label for="starting_float">Initial float: </label>
134                                 <input type="text" pattern='^\d+(?:\.\d{0,2})$' name="starting_float" id="starting_float" size="24" value="[% cash_register.starting_float | $Price on_editing => 1  %]" />
135                             </li>
136                         </ol>
137                    </fieldset>
138
139                    <fieldset class="action">
140                        [% IF cash_register %]
141                        <input type="submit" value="Save" />
142                        [% ELSE %]
143                        <input type="submit" value="Add" />
144                        [% END %]
145                        <a class="cancel" href="/cgi-bin/koha/admin/cash_registers.pl?op=list">Cancel</a>
146                    </fieldset>
147                </form>
148                [% END %]
149
150                [% IF op == 'list' %]
151                <div id="toolbar" class="btn-toolbar">
152                    <a class="btn btn-default" id="newcashregister" href="/cgi-bin/koha/admin/cash_registers.pl?op=add_form"><i class="fa fa-plus"></i> New cash register</a>
153                </div>
154
155                <h3>Cash registers for <select id="branch_filter" name="branch_filter">
156                        <option value=""></option>
157                        [% PROCESS options_for_libraries libraries => Branches.all( selected => branchcode, unfiltered => 1, ) %]
158                    </select>
159                </h3>
160
161                [% IF cash_registers.count %]
162                <table id="table_cash_registers">
163                    <thead>
164                        <th>Name</th>
165                        <th>Description</th>
166                        <th>Library</th>
167                        <th>Library default</th>
168                        <th>Initial float</th>
169                        <th class="noExport">Actions</th>
170                    </thead>
171                    <tbody>
172                    [% FOREACH cash_register IN cash_registers %]
173                    [% IF cash_register.branch_default %]
174                    <tr class="default">
175                    [% ELSE %]
176                    <tr>
177                    [% END %]
178                        <td>[% cash_register.name | html %]</td>
179                        <td>[% cash_register.description | html %]</td>
180                        <td>[% cash_register.library.branchname | html %]</td>
181                        <td>[% IF cash_register.branch_default %]Yes[% ELSE %]No[% END %]</td>
182                        <td>[% cash_register.starting_float | $Price %]</td>
183                        [% IF cash_register.archived == '0' %]
184                        <td class="actions">
185                            <a class="btn btn-default btn-xs" href="cash_registers.pl?op=add_form&amp;id=[% cash_register.id | uri %]"><i class="fa fa-pencil"></i> Edit</a>
186                            [% IF cash_register.branch_default %]
187                            <a class="btn btn-default btn-xs" href="cash_registers.pl?op=drop_default&amp;id=[% cash_register.id | uri %]"><i class="fa fa-archive"></i> Drop default</a>
188                            [% ELSE %]
189                            <a class="btn btn-default btn-xs" href="cash_registers.pl?op=make_default&amp;id=[% cash_register.id | uri %]"><i class="fa fa-archive"></i> Make default</a>
190                            [% END %]
191                            <a class="btn btn-default btn-xs" href="cash_registers.pl?op=archive&amp;id=[% cash_register.id | uri %]"><i class="fa fa-archive"></i> Archive</a>
192                        </td>
193                        [% ELSE %]
194                        <td class="actions"><a class="btn btn-default btn-xs" href="cash_registers.pl?op=unarchive&amp;id=[% cash_register.id | uri %]"><i class="fa fa-trash-restore"></i> Restore</a></td>
195                        [% END %]
196                    </tr>
197                    [% END %]
198                    </tbody>
199                </table>
200                [% ELSE %]
201                <div class="dialog message">There are no cash registers defined. <a href="/cgi-bin/koha/admin/cash_registers.pl?op=add_form">Start adding cash registers</a>.</div>
202                [% END # /cash_register.count %]
203                [% END # /op == 'list' %]
204            </main>
205         </div> <!-- /.col-sm-10.col-sm-push-2 -->
206
207         <div class="col-sm-2 col-sm-pull-10">
208             <aside>
209                 [% INCLUDE 'admin-menu.inc' %]
210             </aside>
211         </div> <!-- /.col-sm-2.col-sm-pull-10 -->
212     </div> <!-- /.row -->
213
214 [% MACRO jsinclude BLOCK %]
215     [% Asset.js("js/admin-menu.js") | $raw %]
216     [% INCLUDE 'datatables.inc' %]
217     <script>
218     function filterDataTable( table, column, term ){
219         if( column ){
220             table.column( column ).search( term ).draw();
221         } else {
222             table.search( term ).draw();
223         }
224         clearFilter( term );
225     }
226
227     function clearFilter( term ){
228         if( term == "" ){
229             $(".dt_button_clear_filter").addClass("disabled");
230         } else {
231             $(".dt_button_clear_filter").removeClass("disabled");
232         }
233     }
234
235     $(document).ready(function() {
236         var crtable = $("#table_cash_registers").DataTable($.extend(true, {}, dataTablesDefaults, {
237               "aoColumnDefs": [
238                   { "aTargets": [ -1, -2 ], "bSortable": false, "bSearchable":false },
239                ],
240                "aaSorting": [[ 1, "asc" ]],
241                "paginationType": "full",
242         }));
243
244         $("#branch_filter").on("change", function(){
245             // Table must be filtered by the <option>'s text, not its value
246             var opt = $(this).find("option:selected").text();
247             filterDataTable( crtable, 2, opt );
248         });
249
250     });
251     </script>
252 [% END %]
253
254 [% INCLUDE 'intranet-bottom.inc' %]