Bug 20742: Update two-column templates with Bootstrap grid: Administration part 6
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / admin / oai_set_mappings.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% SET footerjs = 1 %]
4 [% INCLUDE 'doc-head-open.inc' %]
5 <title>Koha &rsaquo; Administration &rsaquo; OAI sets &rsaquo; OAI set mappings</title>
6 [% INCLUDE 'doc-head-close.inc' %]
7 </head>
8
9 <body id="admin_oai_set_mappings" class="admin">
10 [% INCLUDE 'header.inc' %]
11 [% INCLUDE 'prefs-admin-search.inc' %]
12
13 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a> &rsaquo; <a href="/cgi-bin/koha/admin/oai_sets.pl">OAI sets configuration</a> &rsaquo; <a href="/cgi-bin/koha/admin/oai_set_mappings.pl?id=[% id | html %]">OAI set mappings</a></div>
14
15 <div class="main container-fluid">
16     <div class="row">
17         <div class="col-sm-10 col-sm-push-2">
18             <main>
19
20       [% IF ( mappings_saved ) %]
21         <div class="dialog message">
22           <h4>Mappings have been saved</h4>
23           <p><a href="/cgi-bin/koha/admin/oai_sets.pl">Return to sets management</a></p>
24         </div>
25       [% END %]
26       <h1>Mappings for set '[% setName | html %]' ([% setSpec | html %])</h1>
27       [% UNLESS ( mappings ) %]
28         <div class="dialog alert"><p><strong>Warning:</strong> No mappings have been defined for this set</p></div>
29       [% END %]
30       <form action="/cgi-bin/koha/admin/oai_set_mappings.pl" method="post" id="mappingform">
31         <table id="mappings">
32           <thead>
33             <tr>
34               <th>Field</th>
35               <th>Subfield</th>
36               <th>Operator</th>
37               <th>Value</th>
38               <th>&nbsp;</th>
39               <th>&nbsp;</th>
40             </tr>
41           </thead>
42           <tbody>
43             [% IF ( mappings ) %]
44               [% FOREACH mapping IN mappings %]
45                 <tr>
46                   <td><input type="text" name="marcfield" size="3" value="[% mapping.marcfield | html %]" /></td>
47                   <td style="text-align:center"><input type="text" name="marcsubfield" size="1" value="[% mapping.marcsubfield | html %]" /></td>
48                   <td><select name=operator>
49                       [% IF mapping.operator == 'equal' %]
50                         <option value="equal" selected="selected">is equal to</option>
51                         <option value="notequal">not equal to</option>
52                       [% ELSE %]
53                         <option value="equal">is equal to</option>
54                         <option value="notequal" selected="selected">not equal to</option>
55                       [% END %]
56                       </select></td>
57                   <td><input type="text" name="marcvalue" value="[% mapping.marcvalue | html %]" /></td>
58                   <td style="text-align:center">
59                     [% IF ( loop.last ) %]
60                       <input type="button" id="ORbutton" value="OR" title="Add another condition" />
61                     [% ELSE %]
62                       OR
63                     [% END %]
64                   </td>
65                   <td><button class="btn btn-default btn-xs clear-field" type="button"><i class="fa fa-trash"></i> Delete</button></td>
66                 </tr>
67               [% END %]
68             [% ELSE %]
69               <tr>
70                 <td><input type="text" name="marcfield" size="3" /></td>
71                 <td style="text-align:center"><input type="text" name="marcsubfield" size="1" /></td>
72                 <td><select name=operator>
73                     <option value="equal">is equal to</option>
74                     <option value="notequal">not equal to</option>
75                     </select></td>
76                 <td><input type="text" name="marcvalue" /></td>
77                 <td><input type="button" id="ORbutton" value="OR" /></td>
78                 <td><button class="btn btn-default btn-xs clear-field" type="button"><i class="fa fa-trash"></i> Delete</button></td>
79               </tr>
80             [% END %]
81           </tbody>
82         </table>
83         <input type="hidden" name="id" value="[% id | html %]" />
84         <input type="hidden" name="op" value="save" />
85         <fieldset class="action">
86             <input type="submit" value="Save" /> <a class="cancel" href="/cgi-bin/koha/admin/oai_sets.pl">Cancel</a>
87         </fieldset>
88       </form>
89
90             </main>
91         </div> <!-- /.col-sm-10.col-sm-push-2 -->
92
93         <div class="col-sm-2 col-sm-pull-10">
94             <aside>
95                 [% INCLUDE 'admin-menu.inc' %]
96             </aside>
97         </div> <!-- /.col-sm-2.col-sm-pull-10 -->
98      </div> <!-- /.row -->
99
100 [% MACRO jsinclude BLOCK %]
101     [% Asset.js("js/admin-menu.js") | $raw %]
102     <script>
103         $(document).ready(function() {
104             $("#mappingform").submit(function(){
105               hideDialogBox();
106             });
107             $("body").on("click","#ORbutton", function(e){
108                 e.preventDefault();
109                 newCondition();
110             });
111             $("body").on("click",".clear-field",function(e){
112                 e.preventDefault();
113                 clearRow(e.target);
114             });
115         });
116
117         function newCondition() {
118             var tr = $('#ORbutton').parents('tr');
119             var clone = $(tr).clone();
120             $("#ORbutton").parent('td').replaceWith('<td style="text-align:center">OR</td>');
121             $(tr).parent('tbody').append(clone);
122         }
123         function clearRow(link){
124             var tr = $(link).parent().parent();
125             var found = tr.find('#ORbutton');
126             if( found.length ){
127               tr.find('input[type="text"]').attr("value","");
128             } else {
129               tr.find('input[type="text"]').attr("value","").end().hide();
130             }
131         }
132         function hideDialogBox() {
133             $('div.dialog').remove();
134         }
135     </script>
136 [% END %]
137 [% INCLUDE 'intranet-bottom.inc' %]