1 [% USE AuthorisedValues %]
4 [% INCLUDE 'doc-head-open.inc' %]
7 [% CASE 'add_form' %][% IF field %]Modify additional field '[% field.name | html %]'[% ELSE %]Add additional field[% END %]
8 [% CASE %]Manage additional fields
9 [% END %] › Administration › Koha
11 [% INCLUDE 'doc-head-close.inc' %]
14 [% marcfield_tables = ['subscription', 'aqorders'] %]
15 [% searchable_tables = ['subscription', 'aqbasket', 'aqinvoices'] %]
16 [% show_marcfield = marcfield_tables.grep('^' _ tablename _ '$').size ? 1 : 0 %]
17 [% show_searchable = searchable_tables.grep('^' _ tablename _ '$').size ? 1 : 0 %]
19 <body id="ser_add_fields" class="ser">
20 [% WRAPPER 'header.inc' %]
21 [% INCLUDE 'cat-search.inc' %]
24 [% WRAPPER 'sub-header.inc' %]
25 [% WRAPPER breadcrumbs %]
26 [% WRAPPER breadcrumb_item %]
27 <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
31 [% WRAPPER breadcrumb_item %]
32 <a href="/cgi-bin/koha/admin/additional-fields.pl">Manage additional fields</a>
35 [% WRAPPER breadcrumb_item bc_active= 1 %]
36 <span>Modify field '[% field.name | html %]'</span>
39 [% WRAPPER breadcrumb_item bc_active= 1 %]
40 <span>Add field</span>
45 [% WRAPPER breadcrumb_item %]
46 <a href="/cgi-bin/koha/admin/additional-fields.pl">Manage additional fields</a>
48 [% WRAPPER breadcrumb_item bc_active= 1 %]
49 <span>Modify fields for '[% tablename | html %]'</span>
53 [% WRAPPER breadcrumb_item bc_active= 1 %]
54 <span>Manage additional fields</span>
58 [% END #/ WRAPPER breadcrumbs %]
59 [% END #/ WRAPPER sub-header.inc %]
61 <div class="main container-fluid">
63 <div class="col-sm-10 col-sm-push-2">
67 <div id="toolbar" class="btn-toolbar">
68 <a class="btn btn-default" id="newfields" href="?op=add_form&tablename=[% tablename | uri %]"><i class="fa fa-plus"></i> Create field</a>
73 [% FOR message IN messages %]
74 [% IF message.code == 'insert' %]
75 [% IF message.number > 0 %]
76 <div class="dialog message">The field has been inserted</div>
78 <div class="dialog alert">The field could not be inserted. Perhaps the name already exists?</div>
80 [% ELSIF message.code == 'update' %]
81 [% IF message.number > 0 %]
82 <div class="dialog message">The field has been updated</div>
84 <div class="dialog alert">The field could not be updated. Perhaps the name already exists?</div>
86 [% ELSIF message.code == 'delete' %]
87 [% IF message.number > 0 %]
88 <div class="dialog message">The field has been deleted</div>
90 <div class="dialog alert">The field could not be deleted. Check the log for errors.</div>
96 [% IF op == 'list_tables' %]
97 [% IF CAN_user_acquisitions_order_manage || CAN_user_serials_edit_subscription || CAN_user_updatecharges_remaining_permissions %]
98 <h1>Additional fields</h1>
100 <div class="page-section">
101 <p>Select a table:</p>
102 [% BLOCK table_option %]
103 <li><a href="?tablename=[% value | uri %]">[% content | $raw %] (<span class="ex">[% value | html %]</span>)</a></li>
106 [% IF CAN_user_acquisition_order_manage %]
107 [% WRAPPER table_option value="aqbasket" %]<span>Order baskets</span>[% END %]
108 [% WRAPPER table_option value="aqorders" %]<span>Order lines</span>[% END %]
110 [% IF CAN_user_acquisition_edit_invoices %]
111 [% WRAPPER table_option value="aqinvoices" %]<span>Invoices</span>[% END %]
113 [% IF CAN_user_serials_edit_subscription %]
114 [% WRAPPER table_option value="subscription" %]<span>Subscriptions</span>[% END %]
116 [% IF CAN_user_updatecharges_remaining_permissions %]
117 [% WRAPPER table_option value="accountlines:credit" %]Account lines (credit)[% END %]
118 [% WRAPPER table_option value="accountlines:debit" %]Account lines (debit)[% END %]
122 Additional permissions are required for editing additional fields
124 </div><!-- /.page-section -->
125 [% ELSIF op == 'list' %]
126 <h1>Additional fields for '[% tablename | html %]'</h1>
128 <div class="page-section">
133 <th>Authorized value category</th>
134 [% IF show_marcfield %]
136 <th>MARC field mode</th>
138 [% IF show_searchable %]
141 <th class="noExport">Actions</th>
145 [% FOR field IN fields %]
147 <td>[% field.name | html %]</td>
148 <td>[% field.authorised_value_category | html %]</td>
149 [% IF show_marcfield %]
150 <td>[% field.marcfield | html %]</td>
152 [% SWITCH field.marcfield_mode %]
153 [% CASE 'get' %]Get value from MARC record
154 [% CASE 'set' %]Save value to MARC record
158 [% IF show_searchable %]
160 [% IF field.searchable %]Yes[% ELSE %]No[% END %]
164 <a class="btn btn-default btn-xs" href="?op=add_form&field_id=[% field.id | html %]"><i class="fa fa-pencil"></i> Edit</a>
165 <a class="confirmdelete btn btn-default btn-xs" href="?op=delete&field_id=[% field.id | uri %]&tablename=[% tablename | uri %]"><i class="fa fa-trash"></i> Delete</a>
171 </div><!-- /.page-section -->
173 [% IF tablename %]There are no additional fields defined for this table.[% END %]
175 [% ELSIF op == 'add_form' %]
177 <h1>Modify field</h1>
181 <form action="" name="add_form" id="add_field" method="post">
182 <fieldset class="rows">
185 <label for="name" class="required">Name: </label>
186 <input type="text" name="name" id="name" value="[% field.name | html %]" class="required focus" required="required" />
187 <span class="required">Required</span>
190 <label for="av">Authorized value category: </label>
191 <select id="av" name="authorised_value_category">
192 <option value="">None</option>
193 [% PROCESS options_for_authorised_value_categories authorised_value_categories = AuthorisedValues.GetCategories({selected => field.authorised_value_category}) %]
196 [% IF show_marcfield %]
198 <label for="marcfield">MARC field: </label>
199 <input type="text" name="marcfield" id="marcfield" value="[% field.marcfield | html %]" />
202 <label for="marcfield_mode">MARC field mode: </label>
203 <select id="marcfield_mode" name="marcfield_mode">
204 [% IF field.marcfield_mode == 'get' %]
205 <option value="get" selected>Get value from MARC record (not modifiable)</option>
207 <option value="get">Get value from MARC record (not modifiable)</option>
210 [% IF field.marcfield_mode == 'set' %]
211 <option value="set" selected>Save value to MARC record</option>
213 <option value="set">Save value to MARC record</option>
218 [% IF show_searchable %]
220 <label for="searchable">Searchable: </label>
221 [% IF field.searchable %]
222 <input type="checkbox" name="searchable" id="searchable" checked="checked" />
224 <input type="checkbox" name="searchable" id="searchable" />
230 <fieldset class="action">
232 <input type="hidden" name="field_id" value="[% field.id | html %]" />
234 <input type="hidden" name="tablename" value="[% tablename | html %]" />
235 <input type="hidden" name="op" value="add" />
236 <input type="submit" class="btn btn-primary" value="Save" />
237 <a href="?tablename=[% tablename | uri %]" class="cancel">Cancel</a>
243 </div> <!-- /.col-sm-10.col-sm-push-2 -->
245 <div class="col-sm-2 col-sm-pull-10">
247 [% INCLUDE 'admin-menu.inc' %]
249 </div> <!-- /.col-sm-2.col-sm-pull-10 -->
250 </div> <!-- /.row -->
253 [% MACRO jsinclude BLOCK %]
254 [% INCLUDE "datatables.inc" %]
256 $(document).ready(function(){
257 $('#selecttable').find(":submit").hide();
258 $('#selecttable select').change(function() {
259 $('#selecttable').submit();
262 $("#fieldst").dataTable($.extend(true, {}, dataTablesDefaults, {
264 'sDom': 't<"bottom pager"ilpf>',
265 'sPaginationType': 'full',
266 'aLengthMenu': [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
267 'iDisplayLength': 20,
268 'aaSorting': [[ 0, "asc" ]],
271 $(".confirmdelete").click(function(){
272 return confirm(_("Are you sure you want to delete this field?"));
275 $("#add_field").on('submit', function() {
276 if ( $("#marcfield").length && $("select[name='authorised_value_category']").length ) {
277 if ( $("#marcfield").val().length > 0
278 && $("select[name='authorised_value_category']" ).val().length > 0 ) {
279 alert(_("You cannot select an authorised value category and a MARC field") );
289 [% INCLUDE 'intranet-bottom.inc' %]