2 [% ctx.page_title = l('Providers') %]
4 <div dojoType="dijit.layout.ContentPane" layoutAlign='client'>
5 <div id='provider-list-div'>
6 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
7 <div>[% l('Provider') %]</div>
9 <button dojoType='dijit.form.Button' onClick='pListGrid.showCreatePane()'>[% l('New Provider') %]</button>
10 <button dojoType='dijit.form.Button' onClick='pListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
13 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
14 <span>[% l('Context Org Unit') %]</span>
15 <select dojoType="openils.widget.OrgUnitFilteringSelect"
16 jsId='contextOrgSelector'
17 searchAttr='shortname'
18 labelAttr='shortname'>
21 <div dojoType="dijit.layout.ContentPane" layoutAlign="client">
22 <table jsId="pListGrid"
23 dojoType="openils.widget.AutoGrid"
24 fieldOrder="['id', 'name', 'code', 'owner', 'currency_type']"
26 defaultCellWidth='"auto"'
31 <tr><th field='name' get='getProviderName' formatter='formatName'/></tr>
37 <div id='provider-summary-pane'></div>
38 <div id='provider-details-div' style='height:600px'>
39 <div dojoType="dijit.layout.TabContainer" style='height:100%' jsId='providerTabs'>
41 <div dojoType="dijit.layout.ContentPane" title='[% l('Provider Address') %]' select='true' id='provider-address'>
42 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
43 <div>[% l('Provider Address') %]</div>
45 <button dojoType='dijit.form.Button' onClick='paListGrid.showCreateDialog()'>[% l('New Provider Address') %]</button>
46 <button dojoType='dijit.form.Button' onClick='paListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
49 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:100px'>
50 <table jsId="paListGrid"
51 dojoType="openils.widget.AutoGrid"
52 fieldOrder="['id', 'address_type', 'provider', 'street1', 'street2', 'city', 'county', 'state', 'country', 'post_code']"
53 requiredFields="['street1', 'city', 'state', 'country', 'post_code']"
56 defaultCellWidth='"auto"'
62 <div dojoType="dijit.layout.ContentPane" title='[% l('Provider Contact') %]' id='tab-pro-contact'>
63 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
64 <div>[% l('Provider Contact') %]</div>
66 <button dojoType='dijit.form.Button' onClick='pcListGrid.showCreateDialog()'>[% l('New Contact') %]</button>
67 <button dojoType='dijit.form.Button' onClick='pcListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
70 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
71 <table jsId="pcListGrid"
72 dojoType="openils.widget.AutoGrid"
73 fieldOrder="['id', 'name', 'provider', 'role', 'email']"
74 requiredFields="['name']"
75 defaultCellWidth='"auto"'
82 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
83 <div>[% l('Contact Address') %]</div>
85 <button dojoType='dijit.form.Button' onClick='pcaListGrid.showCreateDialog()'>[% l('New Contact Address') %]</button>
86 <button dojoType='dijit.form.Button' onClick='pcaListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
89 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
90 <table jsId="pcaListGrid"
91 dojoType="openils.widget.AutoGrid"
92 fieldOrder="['id', 'address_type', 'contact', 'street1', 'street2', 'city', 'county', 'state', 'country', 'post_code']"
93 requiredFields="['street1', 'city', 'state', 'country', 'post_code']"
96 defaultCellWidth='"auto"'
102 <div dojoType="dijit.layout.ContentPane" title='[% l('Attribute Definitions') %]' id='tab-attr'>
103 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
104 <div>[% l('Attribute Definitions') %]</div>
106 <button dojoType='dijit.form.Button' onClick='padListGrid.showCreateDialog()'>[% l('New Attribute Definition') %]</button>
107 <button dojoType='dijit.form.Button' onClick='padListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
110 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:200px'>
111 <table jsId="padListGrid"
112 dojoType="openils.widget.AutoGrid"
113 fieldOrder="['id', 'provider', 'code', 'description', 'provider', 'ident', 'remove', 'tag', 'subfield', 'xpath']"
114 requiredFields="['code', 'description', 'xpath']"
120 <th field="xpath" width='auto'/>
121 <th field="tag" name="Tag" get='getParsedTag'/>
122 <th field="subfield" name="Subfield" get='getParsedSubf'/>
129 <div dojoType="dijit.layout.ContentPane" title='[% l('Holding Subfield') %]' id='tab-hold'>
130 <div dojoType="dijit.layout.ContentPane" layoutAlign="top" class='oils-header-panel'>
131 <div>[% l('Holding Subfield') %]</div>
133 <button dojoType='dijit.form.Button' onClick='phsListGrid.showCreateDialog()'>[% l('New Holding Subfield') %]</button>
134 <button dojoType='dijit.form.Button' onClick='phsListGrid.deleteSelected()'>[% l('Delete Selected') %]</button>
137 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style='height:400px'>
138 <table jsId="phsListGrid"
139 dojoType="openils.widget.AutoGrid"
140 fieldOrder="['id', 'provider', 'name', 'subfield']"
141 requiredFields="['name', 'subfield']"
148 <select dojoType='dijit.form.FilteringSelect' jsId='holdingSubfieldSelector'>
149 <option value='quantity'>[% l('Quantity') %]</option>
150 <option value='estimated_price'>[% l('Estimated Price') %]</option>
151 <option value='owning_lib'>[% l('Owning Library') %]</option>
152 <option value='call_number'>[% l('Call Number') %]</option>
153 <option value='fund_code'>[% l('Fund Code') %]</option>
154 <option value='circ_modifier'>[% l('Circ Modifier') %]</option>
155 <option value='note'>[% l('Note') %]</option>
156 <option value='copy_location'>[% l('Shelving Location') %]</option>
157 <option value='barcode'>[% l('Barcode') %]</option>
158 <option value='collection_code'>[% l('Collection Code') %]</option>
163 <div dojoType="dijit.layout.ContentPane" title="[% l('Invoices') %]" id="tab-invoice">
164 <big class="oils-acq-basic-roomy"><strong>[% l('Invoices') %]</strong></big>
165 <div dojoType="dijit.layout.ContentPane" layoutAlign="client" style="height:400px">
166 <table jsId="invListGrid"
167 dojoType="openils.widget.AutoGrid"
168 fieldOrder="['inv_ident', 'receiver', 'shipper']"
169 suppressFields="['id', 'provider']"
175 <th field="inv_ident" get="getInvIdent" formatter="formatInvIdent" />
185 <select dojoType="dijit.form.FilteringSelect" jsId="nameSelect">
186 <option value='owning_lib'>[% l('Owning Library') %]</option>
187 <option value='quantity'>[% l('Quantity') %]</option>
188 <option value='call_number'>[% l('Call Number') %]</option>
189 <option value='fund_code'>[% l('Fund Code') %]</option>
190 <option value='local_note'>[% l('Local Note') %]</option>
191 <option value='price'>[% l('Price') %]</option>
192 <option value='circ_modifier'>[% l('Circulation Modifier') %]</option>
193 <option value='copy_location'>[% l('Copy Location') %]</option>
194 <option value='collection_code'>[% l('Collection Code') %]</option>
200 <script type="text/javascript" src='[% ctx.media_prefix %]/js/ui/default/conify/global/acq/provider.js'> </script>
202 <script type="text/javascript">
203 var providerId = '[% ctx.page_args.0 %]';
205 function getInvIdent(rowIndex, item) {
206 if (!item) return {};
208 "id": this.grid.store.getValue(item, "id"),
209 "name": this.grid.store.getValue(item, "inv_ident")
213 function formatInvIdent(o) {
214 return "<a href='" + oilsBasePath + "/acq/invoice/view/" + o.id + "'>" + o.name + "</a>";
217 function getProviderName(rowIndex, item) {
219 var name = this.grid.store.getValue(item, 'name');
220 var id = this.grid.store.getValue(item, 'id');
221 return id + ':' + name;
224 function formatName(value) {
226 var vals = value.split(/:/);
227 return '<a href="[% ctx.base_path %]/conify/global/acq/provider/'+vals[0]+'">'+vals[1]+'</a>';