1 [% WRAPPER default/base.tt2 %]
2 [% ctx.page_title = 'Purchase Orders' %]
3 <script type="text/javascript">
4 var poIds = function(s) {
5 return s == "" ? undefined :
6 s.split(",").map(function(t) { return Number(t); });
7 }("[% ctx.page_args.0 %]");
9 <div id='oils-acq-list-header' class='container'>
10 <div id='oils-acq-list-header-label'>PO Search</div>
13 <div id="oils-acq-po-heading-template" class="hidden">
14 <span>Purchase Order: <a attr="name"></a></span>
15 <span>Total Lineitems: <span attr="lineitem_count"></span></span>
16 <span>Total Encumbered: $<span attr="amount_encumbered"></span></span>
17 <span>Total Spent: $<span attr="amount_spent"></span></span>
18 <span>Total Copies: <span attr="copies"></span></span>
19 <span>Status: <span attr="state"></span></span>
20 <span><a class="hidden" attr="activator" href="javascript:void(0);">Activate Order</a></span>
22 <!-- load the page-specific JS -->
23 <script src='[% ctx.media_prefix %]/js/ui/default/acq/po/search.js'> </script>
26 function formatId(id) {
27 if(id) return '<a href="[% ctx.base_path %]/acq/po/view/' + id + '">'+id;
32 <form dojoType='dijit.form.Form' action='' method='' id='oils-acq-po-search-form'>
34 <script type="dojo/method" event="onSubmit">
35 doSearch(this.getValues());
36 return false; /* don't redirect */
39 <div class='oils-acq-basic-form-div'>
41 <label for='id'>ID</label>
42 <input dojoType='dijit.form.NumberTextBox' name='id'> </input>
44 <label for='provider'>Provider</label>
45 <input id='po-search-provider-selector'/>
47 <label for='state'>State</label></td>
49 var stateStore = new dojo.data.ItemFileReadStore({
54 /* FIXME This is probably not the correct final list of
56 {name:"New", value:'new'},
57 {name:"In Process", value:'in-process'},
58 {name:"Pending", value:'pending'},
59 {name:"On order", value:'on-order'}
64 <input dojoType='dijit.form.FilteringSelect'
72 <label for='ordering_agency'>Ordering Agency</label>
73 <input id='po-search-agency-selector'/>
75 <span dojoType='dijit.form.Button' type='submit'>Search</span>
77 <div class="oils-acq-basic-form-div">
78 <input dojoType="dijit.form.CheckBox" value="1" name="metapo_view"
79 id="metapo_view" type="checkbox" />
80 <label for="metapo_view">Show results as a virtual combined PO</label>
84 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" id="holds_po_grid">
89 dojoType="openils.widget.AutoGrid"
91 fieldOrder="['id', 'owner', 'ordering_agency', 'provider', 'create_time', 'edit_time', 'state']"
92 suppressFields="['owner', 'editor', 'creator']"
94 defaultCellWidth='"auto"'
95 showSequenceFields='true'
100 <th field="id" formatter='formatId'>ID</th>
102 <th field="owner" get='getPOOwner'/>
107 <div comment='dojo-needs-me'></div>
109 <div id="oils-acq-holds-metapo-summary" class="hidden">
110 <table id="oils-acq-metapo-summary">
113 <th colspan="2">Results Summary</th>
118 <th>Total Purchase Orders:</th>
119 <td id="oils-acq-metapo-summary-po"></td>
122 <th>Total Lineitems:</th>
123 <td id="oils-acq-metapo-summary-lineitem_count"></td>
126 <th>Total Copies:</th>
127 <td id="oils-acq-metapo-summary-copies"></td>
130 <th>Total Encumbered:</th>
131 <td>$<span id="oils-acq-metapo-summary-amount_encumbered"></span></td>
134 <th>Total Spent:</th>
135 <td>$<span id="oils-acq-metapo-summary-amount_spent"></span></td>
140 [% INCLUDE 'default/acq/common/li_table.tt2' %]