]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/web/js/ui/default/serial/list_stream.js
Serials: dojo/autogrid-based scaffolding for building serials objects
[working/Evergreen.git] / Open-ILS / web / js / ui / default / serial / list_stream.js
1 dojo.require("dijit.form.Button");
2 dojo.require("dijit.form.NumberSpinner");
3 dojo.require("dijit.form.TextBox");
4 dojo.require("openils.widget.AutoGrid");
5 dojo.require("openils.widget.ProgressDialog");
6 dojo.require("openils.PermaCrud");
7
8 var pcrud;
9
10 function format_routing_label(routing_label) {
11     return routing_label ? routing_label : "[None]";
12 }
13
14 function load_sstr_grid() {
15     sstr_grid.overrideEditWidgets.distribution =
16         new dijit.form.TextBox({"disabled": true, "value": dist_id});
17
18     sstr_grid.resetStore();
19     sstr_grid.loadAll(
20         {"order_by": {"ssub": "start_date DESC"}},
21         {"distribution": dist_id}
22     );
23 }
24
25 function load_sdist_display() {
26     pcrud.retrieve(
27         "sdist", dist_id, {
28             "onresponse": function(r) {
29                 if (r = openils.Util.readResponse(r)) {
30                     dojo.byId("sdist_label_here").innerHTML = r.label();
31                     load_sdist_org_unit_display(r);
32                 }
33             }
34         }
35     );
36 }
37
38 function load_sdist_org_unit_display(dist) {
39     dojo.byId("sdist_org_unit_name_here").innerHTML =
40         aou.findOrgUnit(dist.holding_lib()).name();
41 }
42
43 function create_many_streams(fields) {
44     var streams = [];
45     for (var i = 0; i < fields.quantity; i++) {
46         var stream = new sstr();
47         stream.distribution(dist_id);
48         streams.push(stream);
49     }
50
51     progress_dialog.show(true);
52     this.pcrud.create(
53         streams, {
54             "oncomplete": function(r, list) {
55                 progress_dialog.hide();
56                 sstr_grid.refresh();
57             },
58             "onerror": function(r) {
59                 progress_dialog.hide();
60                 alert("Error creating streams!"); /* XXX i18n */
61             }
62         }
63     );
64 }
65
66 openils.Util.addOnLoad(
67     function() {
68         pcrud = new openils.PermaCrud();
69         load_sdist_display();
70         load_sstr_grid();
71     }
72 );