]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/web/templates/default/cat/authority/control_set_authority_field.tt2
Ability to return to specific authority.control_set or
[working/Evergreen.git] / Open-ILS / web / templates / default / cat / authority / control_set_authority_field.tt2
1 [% WRAPPER default/base.tt2 %]
2 <style type="text/css">
3     .control-set-metadata-holder { text-align: left }
4 </style>
5 [% ctx.page_title = "Configure Authority Authority Fields" %]
6 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
7     <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class="oils-header-panel">
8         <div>Authority Fields</div>
9         <div>
10             <button dojoType="dijit.form.Button" onClick="acsaf_grid.showCreateDialog()">New Authority Field</button>
11             <button dojoType="dijit.form.Button" onClick="acsaf_grid.deleteSelected()">Delete Selected</button>
12         </div>
13     </div>
14     <div id="control-set-metadata-holder" class="hidden">
15         Showing only authority fields linked to control set:
16         <a id="control-set-metadata"></a>
17     </div>
18     <div>
19         <table  jsId="acsaf_grid"
20                 dojoType="openils.widget.AutoGrid"
21                 autoHeight="true"
22                 defaultCellWidth="'12%'"
23                 fieldOrder="['id','name','description','main_entry','control_set','tag','sf_list','bib_fields','axis_maps']"
24                 suppressEditFields="['id']"
25                 query="{id: '*'}"
26                 fmClass="acsaf"
27                 editOnEnter="true">
28             <thead>
29                 <tr>
30                     <th field="bib_fields" name="Controlled Bib Fields"></th>
31                     <th field="axis_maps" name="Axes"></th>
32                 </tr>
33             </thead>
34         </table>
35     </div>
36 </div>
37 <script type="text/javascript"
38     src="[% ctx.media_prefix %]/js/ui/default/cat/authority/common.js"></script>
39 <script type="text/javascript">
40     dojo.require("openils.widget.AutoGrid");
41     dojo.require("openils.CGI");
42     dojo.require("openils.PermaCrud");
43
44     dojo.requireLocalization("openils.authority", "authority");
45     var localeStrings =
46         dojo.i18n.getLocalization("openils.authority", "authority");
47
48     var cgi, pcrud, control_set;
49     var acsaf_cache = {};
50
51     function acsaf_grid_loader() {
52         acsaf_cache = {};
53         acsaf_grid.resetStore();
54         acsaf_grid.showLoadProgressIndicator();
55         fieldmapper.standardRequest(
56             ["open-ils.cat",
57                 "open-ils.cat.authority.control_set_authority_field.retrieve"],{
58                 "async": true,
59                 "params": [
60                     acsaf_grid.displayLimit, acsaf_grid.displayOffset,
61                     control_set.id(), cgi.param("focus")
62                 ],
63                 "onresponse": function(r) {
64                     if (r = openils.Util.readResponse(r)) {
65                         acsaf_cache[r.id()] = r;
66                         acsaf_grid.store.newItem(r.toStoreItem());
67                     }
68                 },
69                 "oncomplete": function() {
70                     acsaf_grid.hideLoadProgressIndicator();
71                 }
72             }
73         );
74     }
75
76
77     function my_init() {
78         cgi = new openils.CGI();
79         pcrud = new openils.PermaCrud();
80
81         control_set = cgi.param("acs");
82         if (control_set) {
83             control_set = pcrud.retrieve("acs", control_set);
84             render_control_set_metadata(control_set);
85             /* XXX TODO
86                when browsing by control_set, make it impossible to
87                create/edit acsaf objects with any other control_set.
88                */
89         }
90
91         acsaf_grid.onPostCreate = function(o) { acsaf_cache[o.id()] = o; };
92         acsaf_grid.dataLoader = acsaf_grid_loader;
93         acsaf_grid_loader();
94     }
95
96     openils.Util.addOnLoad(my_init);
97 </script>
98 [% END %]