]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/templates/serial/subscription.tt2
47eb714f9eee930a1b9ef7118c4f8bf504b6252b
[working/Evergreen.git] / Open-ILS / src / templates / serial / subscription.tt2
1 [% WRAPPER "base.tt2" %]
2 <script>
3     var cap_editor;
4     var cap_importer;
5 </script>
6 <script src="[% ctx.media_prefix %]/js/ui/default/serial/common.js">
7 </script>
8 <script src="[% ctx.media_prefix %]/js/ui/default/serial/subscription.js">
9 </script>
10 <script src="[% ctx.media_prefix %]/js/ui/default/serial/subscription/caption_and_pattern.js">
11 </script>
12 <script src="[% ctx.media_prefix %]/js/ui/default/serial/subscription/issuance.js">
13 </script>
14
15 <div dojoType="dijit.layout.ContentPane" layout="top" class="oils-header-panel">
16     <div>Subscription Details</div>
17     <div>
18         <span dojoType="dijit.form.Button" onClick="clone_dialog.show();">
19             Clone Subscription
20         </span>
21         <span dojoType="dijit.form.Button" onClick="open_batch_receive();">
22             Batch Item Receive
23         </span>
24     </div>
25 </div>
26
27 <div dojoType="dijit.layout.TabContainer" jsId="tab_container"
28     class="oils-serial-tab-container">
29
30     <!-- Subscription Summary -->
31     <div dojoType="dijit.layout.ContentPane" title="Summary" selected="true">
32         <script type="dojo/connect" event="onShow">
33             load_sub_grid(sub_id);
34         </script>
35         <table jsId="sub_grid"
36             dojoType="dojox.grid.DataGrid" query="{id: '*'}" rowSelector="20px">
37             <thead>
38                 <tr>
39                     <th field="id">ID</th>
40                     <th field="owning_lib" formatter="format_org_unit">
41                         Owning Library
42                     </th>
43                     <th field="start_date" formatter="format_date">
44                         Start Date
45                     </th>
46                     <th field="end_date" formatter="format_date">
47                         End Date
48                     </th>
49                     <th field="record_entry" width="20em"
50                         formatter="format_bib">
51                         Bibliographic Record
52                     </th>
53                     <th field="expected_date_offset">Expected Date Offset</th>
54                     <th field="num_dist">Number of Distributions</th>
55                 </tr>
56             </thead>
57         </table>
58     </div>
59
60     <!-- Distributions -->
61     <div dojoType="dijit.layout.ContentPane" jsId="distributions_tab"
62         title="Distributions" layoutAlign="client">
63         <script type="dojo/connect" event="onShow">
64             if (!dist_grid._fresh) {
65                 dist_grid.resetStore();
66                 dist_grid.loadAll(
67                     {"order_by": {"sdist": "holding_lib"}},
68                     {"subscription": sub_id}
69                 );
70                 dist_grid._fresh = true;
71             }
72
73             if (!dist_grid.overrideEditWidgets.subscription) {
74                 dist_grid.overrideEditWidgets.subscription =
75                     new dijit.form.TextBox({
76                         "disabled": true, "value": sub_id
77                     });
78             }
79         </script>
80         [% INCLUDE "serial/subscription/distribution.tt2" %]
81     </div>
82
83     <!-- Caption/Pattern -->
84     <div dojoType="dijit.layout.ContentPane"
85         title="Captions and Patterns" layoutAlign="client">
86         <script type="dojo/connect" event="onShow">
87             if (!cap_editor) {
88                 cap_editor = new SCAPEditor(sub_id);
89                 cap_importer = new SCAPImporter(sub);
90             }
91         </script>
92         [% INCLUDE "serial/subscription/caption_and_pattern.tt2" %]
93     </div>
94
95     <!-- Issuances -->
96     <div dojoType="dijit.layout.ContentPane" jsId="issuances_tab"
97         title="Issuances" layoutAlign="client">
98         <script type="dojo/connect" event="onShow">
99             if (!iss_grid._fresh) {
100                 iss_grid.resetStore();
101                 iss_grid.loadAll(
102                     {"order_by": {"siss": "date_published"}},
103                     {"subscription": sub_id}
104                 );
105                 iss_grid._fresh = true;
106             }
107
108             if (!iss_grid.overrideEditWidgets.subscription) {
109                 iss_grid.overrideEditWidgets.subscription =
110                     new dijit.form.TextBox({
111                         "disabled": true, "value": sub_id
112                     });
113
114                 iss_grid.overrideEditWidgets.creator =
115                     new dijit.form.TextBox({"disabled": true});
116                 iss_grid.overrideEditWidgets.creator.shove = {
117                     "create": openils.User.user.id()
118                 };
119
120                 iss_grid.overrideEditWidgets.editor =
121                     new dijit.form.TextBox({
122                         "disabled": true, "value": openils.User.user.id()
123                     });
124
125                 iss_grid.overrideEditWidgets.holding_type =
126                     new dijit.form.TextBox({"disabled": true});
127                 iss_grid.overrideEditWidgets.holding_type.shove = {"create":""};
128
129                 iss_grid.overrideEditWidgets.holding_type =
130                     new dijit.form.TextBox;
131             }
132             fresh_scap_selector(iss_grid);
133         </script>
134         [% INCLUDE "serial/subscription/issuance.tt2" %]
135     </div>
136 </div>
137 <div class="hidden">
138     <div dojoType="openils.widget.ProgressDialog" jsId="progress_dialog"></div>
139     <div dojoType="dijit.Dialog" jsId="clone_dialog" title="Clone Subscription"
140         style="width: 460px;" execute="clone_subscription(arguments[0]);">
141         <div style="margin-bottom: 0.5em;">
142             This feature will clone a subscription and all of its subscription
143             notes, distributions, distribution notes, captions and patterns,
144             streams, and routing list users.</div>
145         <div style="margin-bottom: 0.5em;">
146             Holdings-related objects, like issuances, items, units, and
147             summaries will <em>not</em> be cloned.
148         </div>
149         <div style="margin-bottom: 0.5em;">
150             To what bibliographic record should the new subscription be
151             attached?
152         </div>
153         <table width="100%">
154             <tr>
155                 <td style="padding-right: 0.5em; vertical-align: top;">
156                     <input dojoType="dijit.form.RadioButton"
157                         id="use_ident_no" name="use_ident" value="no"
158                         checked="checked" />
159                 </td>
160                 <td>
161                     <label for="use_ident_no">
162                         Same record as the existing subscription
163                     </label>
164                 </td>
165             </tr>
166             <tr>
167                 <td style="padding-right: 0.5em; vertical-align: top;">
168                     <input dojoType="dijit.form.RadioButton"
169                         onChange="toggle_clone_ident_field(this);"
170                         id="use_ident_yes" name="use_ident" value="yes" />
171                 </td>
172                 <td>
173                     <label for="use_ident_yes">
174                         Record specified by this unique identifier:
175                     </label>
176                     <input dojoType="dijit.form.TextBox" name="ident"
177                         jsId="clone_ident" disabled="true"
178                         style="margin-left: 0.5em; width: 10em;" />
179                 </td>
180             </tr>
181             <tr>
182                 <td colspan="2" align="center">
183                     <span dojoType="dijit.form.Button" type="submit">
184                         Clone!
185                     </span>
186                 </td>
187             </tr>
188         </table>
189     </div>
190 </div>
191 [% END %]