1 [% WRAPPER 'base.tt2' %]
2 [% ctx.page_title = 'Invoicing' %]
3 <div dojoType="dijit.layout.ContentPane" style="height:100%">
5 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" class='oils-header-panel'>
7 <div id="acq-view-invoice-receive" class="hidden">
8 <button id="acq-view-invoice-receive-link">Receive Items</button>
12 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
14 #acq-invoice-num-summary-table td {
18 border-bottom: 2px solid #888;
20 #acq-invoice-num-summary-table td[id] {
24 <table id='acq-invoice-num-summary-table'>
25 <tr><td>[% l("Lineitems: " ) %]</td><td id='acq-invoice-summary-count'>0</td></tr>
27 <td>[% l("Expected Cost: " ) %]</td>
28 <td id='acq-invoice-summary-cost'>0.00</td>
34 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
35 <div id='acq-invoice-summary'>
36 <button id='acq-invoice-summary-toggle-off'>[% l('Hide Details') %]</button>
37 <span class="hidden" id="ident-validation-spinner"><img src="[% ctx.media_prefix %]/opac/images/progressbar_green.gif" style="height: 16px; width: 16px" /></span>
38 <div id='acq-view-invoice-div'></div>
40 <div id='acq-invoice-summary-small'>
41 <button id='acq-invoice-summary-toggle-on'>[% l('Show Details') %]</button>
42 <span style='font-weight:bold; font-size:120%' id='acq-invoice-summary-name'></span>
49 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
52 <div dojoType="dijit.layout.TabContainer" style="width: 96%; height: 100%;" doLayout='false'>
53 <div dojoType="dijit.layout.ContentPane"
54 class='oils-acq-detail-content-pane' title="Invoice" selected='true'>
56 <script type='dojo/connect' event='onShow'>
57 // the table is left at display=none on subsequent tab views
58 dojo.byId('oils-acq-invoice-table').style.display = 'table'
61 <table id='oils-acq-invoice-table' class='oils-acq-invoice-table'>
63 <tbody id='acq-invoice-entry-header' class='hidden'>
67 [% l('Bibliographic Items') %]
72 <!-- acq.invoice_entry -->
73 <thead id='acq-invoice-entry-thead' class='hidden'>
75 <th colspan='2'>Title Details</th>
76 <th class='acq-invoice-center-col'># Invoiced / # Paid</th>
77 <th class='acq-invoice-center-col'>Billed</th>
78 <th class='acq-invoice-paid-per-copy-col'>Per Copy</th>
79 <th class='acq-invoice-paid-col'>Paid</th>
80 <th class='acq-invoice-center-col hide-complete'>Detach</th>
83 <tbody id='acq-invoice-entry-tbody' class='hidden'>
84 <tr id='acq-invoice-entry-template' class='acq-invoice-row'>
86 <div name='title_details'></div>
87 <div name='note'></div>
89 <td class='acq-invoice-center-col' nowrap='nowrap'>
90 <span name='inv_item_count'></span> / <span name='phys_item_count'></span>
92 <td class='acq-invoice-billed-col'><div name='cost_billed'></div></td>
93 <td><div name='amount_paid_per_copy'>0.00</div></td>
94 <td class='acq-invoice-paid-col'><div name='amount_paid'></div></td>
95 <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='detach'>Detach</a></td>
100 <td style='margin-top:15px;' colspan='0'>
101 <h3>Direct Charges, Taxes, Fees, etc.</h3>
105 <!-- acq.invoice_item -->
109 <th class='acq-invoice-center-col'>Fund</th>
110 <th>Title/Description</th>
111 <th class='acq-invoice-center-col'>Billed</th>
113 <th class='acq-invoice-paid-col'>Paid</th>
114 <th class='acq-invoice-center-col hide-complete'>Delete</th>
117 <tbody id='acq-invoice-item-tbody'>
118 <tr id='acq-invoice-item-template' class='acq-invoice-row acq-invoice-item-row'>
119 <td><div name='inv_item_type'></div></td>
120 <td class='acq-invoice-center-col'><div name='fund'></div></td>
121 <td><div name='title'></div></td>
122 <td class='acq-invoice-center-col acq-invoice-billed-col'><div name='cost_billed'></div></td>
124 <td class='acq-invoice-paid-col'><div name='amount_paid'></div></td>
125 <td class='acq-invoice-center-col hide-complete'><a href='javascript:void(0);' name='delete'>Delete</a></td>
128 <tbody class='hide-complete'>
131 <a href='javascript:void(0);' id='acq-invoice-new-item'>Add Charge...</a>
137 <td style='margin-top:15px;' colspan='0'>
145 <th class='acq-invoice-center-col acq-invoice-billed-col'>Total</th>
147 <th class='acq-invoice-paid-col'>Total</th>
148 <th class='acq-invoice-center-col acq-invoice-balance-col'>Balance</th>
153 <td colspan='3' style='text-align:right;'>
154 <button jsId='invoiceSaveButton' class='hide-complete'
155 dojoType='dijit.form.Button' onclick='saveChanges();'>[% l('Save') %]</button>
156 <button jsId='invoiceSaveButton' class='hide-complete'
157 dojoType='dijit.form.Button' onclick='saveChanges({clear:true});'>[% l('Save & Clear') %]</button>
158 <button jsId='invoiceProrateButton' class='hide-complete'
159 dojoType='dijit.form.Button' onclick='saveChanges({prorate:true});'>[% l('Prorate') %]</button>
160 <button jsId='invoiceCloseButton' class='hide-complete'
161 dojoType='dijit.form.Button' onclick='saveChanges({close:true});'>[% l('Close') %]</button>
162 <span class='hidden' id='acq-invoice-reopen-button-wrapper'>
163 <button jsId='invoiceReopenButton'
164 dojoType='dijit.form.Button' onclick='saveChanges({reopen:true});'>[% l('Reopen') %]</button>
167 <td class='acq-invoice-center-col'><div id='acq-total-invoiced-box'></div></td>
169 <td class='acq-invoice-paid-col'><div id='acq-total-paid-box'></div></td>
170 <td class='acq-invoice-center-col'><div id='acq-total-balance-box'></div></td>
174 </div> <!-- tab 1 -->
176 <div dojoType="dijit.layout.ContentPane"
177 class='oils-acq-detail-content-pane' title="Search">
179 <script type='dojo/connect' event='onShow'>
180 // hide summary info when opening the search tab
181 dojo.byId('acq-invoice-summary-toggle-off').onclick();
182 renderUnifiedSearch();
186 <!-- slim, inline unified search UI -->
187 <div id='oils-acq-invoice-search' _class='hidden'>
189 <div id="acq-unified-form">
191 <label for="acq-unified-result-type">[% l('Search for') %]</label>
192 <select id="acq-unified-result-type" disabled='disabled'>
193 <option value="lineitem">line items</option>
195 <label for="acq-unified-conjunction">matching</label>
196 <select id="acq-unified-conjunction">
197 <option value="and">all</option>
198 <option value="or">any</option>
200 <label for="acq-unified-conjunction">
201 of the following terms
203 <input type="checkbox" id="acq-unified-build-progressively" />
204 <label for="acq-unified-build-progressively">
205 building the results list progressively
210 <div id="acq-unified-terms">
211 <table id="acq-unified-terms-table">
212 <tbody id="acq-unified-terms-tbody">
213 <tr id="acq-unified-terms-row-tmpl"
214 class="acq-unified-terms-row">
216 class="acq-unified-terms-selector"></td>
218 class="acq-unified-terms-match">
220 <option value="">is</option>
221 <option value="__not">is NOT</option>
222 <option value="__fuzzy" disabled="disabled">
225 <option value="__not,__fuzzy"
229 <option value="__lte" disabled="disabled">
232 <option value="__gte" disabled="disabled">
235 <option value="__in" disabled="disabled">
236 matches a term from a file
241 class="acq-unified-terms-widget"></td>
243 class="acq-unified-terms-remove"></td>
248 <div id="acq-unified-add-term">
249 <button onclick="termManager.addRow()">Add Search Term</button>
251 <table width='100%'><tr>
253 <button onclick="smartSearchSubmitter()">[% l('Search') %]</button>
254 <button onclick='addSelectedToInvoice()'>
255 [% l('Add Selected Items to Invoice') %]
257 <span id='acq-inv-search-prev'>
258 <a href='javascript:performSearch(-1, true)'>[% l('Previous') %]</a>
261 <a href='javascript:performSearch(1, true)'>[% l('Next') %]</a>
265 <input type='checkbox' id='acq-invoice-search-sort-title'/>
266 [% l('Sort by title') %]
267 <span style='padding-left:8px;'>
268 <input type='checkbox' id='acq-invoice-search-limit-invoiceable' checked='checked'/>
269 [% l('Limit to Invoiceable Items') %]
272 </div> <!-- end search form -->
273 <div style='border-bottom:1px solid #888;'>
274 <input type='checkbox' onclick='selectSearchResults()'> [% l('Select All') %]</input>
276 <div id='acq-unified-results-no_results'>
277 <b>[% l('No Results') %]</b>
279 <div id='acq-unified-results-lineitem'>
281 #acq-invoice-search-results-tbody { width: 100%; }
282 #acq-invoice-search-results-tbody td {
284 border-bottom: 1px solid #888;
286 .search-resutls-select-td {
287 padding-right: 8px; border-right: 2px solid #888;
289 .search-results-content-td {
290 padding-left: 8px; border-left: 2px solid #888;
292 .search-results-already-invoiced {
293 background-color: #E99;
297 <tbody id='acq-invoice-search-results-tbody'>
298 <tr id='acq-invoice-search-results-tr'>
299 <td class='search-resutls-select-td'>
300 <input type='checkbox' name='search-results-checkbox'/>
302 <td class='search-results-content-td'>
303 <div name='search-results-content-div'>
304 <img src='[% ctx.media_prefix %]/opac/images/progressbar_green.gif'/>
312 </div> <!-- tab 2 -->
313 </div> <!-- end tabcontainer -->
314 <!--</div>--> <!-- end contentpane -->
316 <div dojoType='openils.widget.ProgressDialog' jsId='progressDialog'></div>
317 <div jsId='extraItemsDialog' dojoType="dijit.Dialog" title="Extra Items">
318 <div dojoType="dijit.layout.ContentPane" style='text-align:center;'>
319 <div id='acq-invoice-extra-copies-message'></div>
321 Select a fund for the new items: <div id='acq-invoice-extra-copies-fund'></div>
324 <span style='padding-right: 10px;'>
325 <button dojoType='dijit.form.Button' jsId='extraCopiesCancel'>Cancel</button>
327 <button dojoType='dijit.form.Button' jsId='extraCopiesGo'>Add New Items</button>
330 <script type="text/javascript">
331 var invoiceId = '[% ctx.page_args.0 %]';
332 window.unifiedSearchExternalMode = true;
334 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/common/base64.js"></script>
335 <script type="text/javascript" src="[% ctx.media_prefix %]/js/ui/default/acq/search/unified.js"></script>
336 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/acq/invoice/view.js'> </script>