Bug 26703: tools folder
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / tools / automatic_item_modification_by_age.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% SET footerjs = 1 %]
4 [% INCLUDE 'doc-head-open.inc' %]
5 <title>Automatic item modifications by age &rsaquo; Tools &rsaquo; Koha</title>
6 [% INCLUDE 'doc-head-close.inc' %]
7 </head>
8
9 <body id="tools_automatic_item_modification_by_age" class="tools">
10 [% INCLUDE 'header.inc' %]
11 [% INCLUDE 'cat-search.inc' %]
12
13     <nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
14         <ol>
15             <li>
16                 <a href="/cgi-bin/koha/mainpage.pl">Home</a>
17             </li>
18             <li>
19                 <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a>
20             </li>
21
22             [% IF ( op == 'edit_form' ) %]
23                 <li>
24                     <a href="/cgi-bin/koha/tools/automatic_item_modification_by_age.pl">Automatic item modifications by age</a>
25                 </li>
26                 <li>
27                     <a href="#" aria-current="page">
28                         Rules
29                     </a>
30                 </li>
31             [% ELSE %]
32                 <li>
33                     <a href="#" aria-current="page">
34                         Automatic item modifications by age
35                     </a>
36                 </li>
37             [% END %]
38         </ol>
39     </nav>
40
41 <div class="main container-fluid">
42     <div class="row">
43         <div class="col-sm-10 col-sm-push-2">
44             <main>
45
46         [% IF ( op == 'edit_form' ) %]
47           <form method="post" id="rules_form" action="/cgi-bin/koha/tools/automatic_item_modification_by_age.pl">
48             <h3>Rules for automatic item modifications by age</h3>
49             <div id="toolbar" class="btn-toolbar">
50                 <div class="btn-group">
51                     <button class="btn btn-default add_rule"><i class="fa fa-plus"></i> Add rule</button>
52                 </div>
53                 <div class="btn-group">
54                     <button type="submit" id="save_rules" class="btn btn-default"><i class="fa fa-save"></i> Save</button>
55                 </div>
56                 <div class="btn-group">
57                     <a class="btn btn-default" href="/cgi-bin/koha/tools/automatic_item_modification_by_age.pl"><i class="fa fa-remove"></i> Cancel</a>
58                 </div>
59             </div>
60         [% ELSE %]
61             <h3>Automatic item modifications by age</h3>
62             [% IF ( rules ) %]
63                 <div id="toolbar" class="btn-toolbar">
64                     <a class="btn btn-default" id="newentry" href="/cgi-bin/koha/tools/automatic_item_modification_by_age.pl?op=edit_form"><i class="fa fa-pencil"></i> Edit rules</a>
65                 </div>
66             [% ELSE %]
67                 <div id="toolbar" class="btn-toolbar">
68                     <a class="btn btn-default" id="newentry" href="/cgi-bin/koha/tools/automatic_item_modification_by_age.pl?op=edit_form"><i class="fa fa-plus"></i> Add rules</a>
69                 </div>
70             [% END %]
71         [% END %]
72
73         [% FOR message IN messages %]
74           [% IF message.type == "error" %]
75             <div class="dialog alert">
76           [% END %]
77           [% IF message.code == "unable_to_load_configuration" %]
78             An error occurs: Unable to load the configuration.
79           [% END %]
80           </div>
81         [% END %]
82
83         [% IF op == 'edit_form' %]
84             <div id="edit_rules">
85                 <div id="rules">
86                 [% FOR rule IN rules %]
87                   [% SET id = loop.count %]
88                   <fieldset class="rule">
89                     <legend>Rule <span class="rulecount">[% loop.count | html %]</span> <a href="#" class="remove_rule"><i class="fa fa-trash"></i> Remove this rule</a></legend>
90                     <input type="hidden" name="unique_id" value="[% loop.count | html %]" /> <!-- FIXME on update, the unique_id should be filled -->
91                     <div class="age">
92                       <h5>Age in days</h5>
93                       <input class="age" type="text" inputmode="numeric" pattern="[0-9]*"  value="[% rule.age | html %]" name="age_[% id | html %]" />
94                     </div>
95                     <div class="blocks">
96                       <h5>Conditions</h5>
97                       [% FOR condition IN rule.conditions %]
98                         <div class="block">
99                           <select name="condition_field_[% id | html %]">
100                             <option value="">Choose a field name</option>
101                             [% FOR field IN condition_fields %]
102                               [% IF condition.field == field %]
103                                 <option value="[% field | html %]" selected="selected">[% field | html %]</option>
104                               [% ELSE %]
105                                 <option value="[% field | html %]">[% field | html %]</option>
106                               [% END %]
107                             [% END %]
108                           </select>
109                           =
110                           <input type="text" value="[% condition.value | html %]" name="condition_value_[% id | html %]" />
111                           <a class="add_block" href="#"><i class="fa fa-plus"></i> Add a condition</a>
112                           <a class="remove_block" href="#"><i class="fa fa-trash"></i> Remove condition</a>
113                         </div>
114                       [% END %]
115                     </div>
116                     <div class="blocks">
117                       <h5>Substitutions</h5>
118                       [% FOR substitution IN rule.substitutions %]
119                         <div class="block">
120                           <select class="required" required="required" name="substitution_field_[% id | html %]">
121                             <option value="">Choose a field name</option>
122                             [% FOR field IN substitution_fields %]
123                               [% IF substitution.field == field %]
124                                 <option value="[% field | html %]" selected="selected">[% field | html %]</option>
125                               [% ELSE %]
126                                 <option value="[% field | html %]">[% field | html %]</option>
127                               [% END %]
128                             [% END %]
129                           </select>
130                           =
131                           <input type="text" value="[% substitution.value | html %]" name="substitution_value_[% id | html %]" />
132                           <a class="add_block" href="#"><i class="fa fa-plus"></i> Add a substitution</a>
133                           <a class="remove_block" href="#"><i class="fa fa-trash"></i> Remove substitution</a>
134                           <span class="required">A field name is required</span>
135                         </div>
136                       [% END %]
137                     </div>
138                   </fieldset>
139                 [% END %]
140                 </div>
141                 <input type="hidden" name="op" value="update" />
142             </div>
143           </form>
144
145         <div id="norules" class="dialog message">
146           There are no rules defined.
147         </div>
148
149           <fieldset id="new_rule">
150             <legend>Rule <span class="rulecount"></span> <a href="#" class="remove_rule"><i class="fa fa-trash"></i> Remove this rule</a></legend>
151             <input type="hidden" name="unique_id" />
152             <div class="age">
153               <h5>Age in days</h5>
154               <input class="age" type="text" inputmode="numeric" pattern="[0-9]*" value="" name="age" />
155             </div>
156             <div class="blocks">
157               <h5>Conditions</h5>
158               <div class="block">
159                 <select name="condition_field">
160                   <option value="">Choose a field name</option>
161                   [% FOR field IN condition_fields %]
162                     <option value="[% field | html %]">[% field | html %]</option>
163                   [% END %]
164                 </select>
165                 =
166                 <input type="text" value="" name="condition_value" />
167                 <a class="add_block" href="#"><i class="fa fa-plus"></i> Add a condition</a>
168                 <a class="remove_block" href="#"><i class="fa fa-trash"></i> Remove condition</a>
169               </div>
170             </div>
171             <div class="blocks">
172               <h5>Substitutions</h5>
173               <div class="block">
174                 <select required="required" class="required" name="substitution_field">
175                   <option value="">Choose a field name</option>
176                   [% FOR field IN substitution_fields %]
177                     <option value="[% field | html %]">[% field | html %]</option>
178                   [% END %]
179                 </select>
180                 =
181                 <input type="text" value="" name="substitution_value" />
182                 <a class="add_block" href="#"><i class="fa fa-plus"></i> Add a substitution</a>
183                 <a class="remove_block" href="#"><i class="fa fa-trash"></i> Remove substitution</a>
184                 <span class="required">A field name is required</span>
185               </div>
186             </div>
187           </fieldset>
188         [% ELSIF rules %]
189             <div>
190                 <h4>List of rules</h4>
191                     <table id="rulest">
192                         <thead>
193                           <tr>
194                                <th>Age</th>
195                                 <th>Conditions</th>
196                                 <th>Substitutions</th>
197                             </tr>
198                         </thead>
199                         <tbody>
200                             [% FOR rule IN rules %]
201                                 <tr>
202                                     <td>
203                                         [% IF rule.age.defined and rule.age.length > 0 %]
204                                             [% rule.age | html %] days
205                                         [% ELSE %]
206                                             There is no age for this rule.
207                                         [% END %]
208                                     </td>
209                                     <td>
210                                         [% FOR condition IN rule.conditions %]
211                                             [% IF condition.field %]
212                                                 <div class="block">
213                                                 [% condition.field | html %] = [% condition.value | html %]
214                                                 </div>
215                                             [% ELSE %]
216                                                 There is no condition for this rule.
217                                             [% END %]
218                                         [% END %]
219                                     </td>
220                                     <td>
221                                         [% FOR substitution IN rule.substitutions %]
222                                             <div class="block">
223                                                 [% substitution.field | html %] = [% substitution.value | html %]
224                                             </div>
225                                         [% END %]
226                                     </td>
227                                 </tr>
228                             [% END %]
229                         </tbody>
230                     </table>
231             </div>
232         [% ELSE %]
233             <div class="dialog message">
234                 There are no rules defined.
235             </div>
236         [% END %]
237
238             </main>
239         </div> <!-- /.col-sm-10.col-sm-push-2 -->
240
241         <div class="col-sm-2 col-sm-pull-10">
242             <aside>
243                 [% INCLUDE 'tools-menu.inc' %]
244             </aside>
245         </div> <!-- /.col-sm-2.col-sm-pull-10 -->
246      </div> <!-- /.row -->
247
248 [% MACRO jsinclude BLOCK %]
249     [% Asset.js("js/tools-menu.js") | $raw %]
250     [% Asset.js("lib/hc-sticky.js") | $raw %]
251     [% Asset.js("js/automatic_item_modification_by_age.js") | $raw %]
252     [% IF op == 'edit_form' %]
253         <script>
254             var Sticky;
255             $(document).ready(function() {
256                   [% IF ( op == 'edit_form' ) %]
257                 Sticky = $("#toolbar");
258                 Sticky.hcSticky({
259                     stickTo: "main",
260                     stickyClass: "floating"
261                 });
262                   [% END %]
263                   [% IF rules.size > 0 %]
264                       $("#norules").hide();
265                   [% ELSE %]
266                       $("#rules").show();
267                   [% END %]
268             });
269         </script>
270     [% END %]
271 [% END %]
272
273 [% INCLUDE 'intranet-bottom.inc' %]