3 window._w.systemdisputes = {
15 onTemplateReady : function( template, event, eventData )
17 _w.systemdisputes.ti = _t[template];
19 _w.systemdisputes.initGrids();
22 if (null == App.API.taskContract('gridSystemDispute'))
25 'gridSystemDispute', 'Dispute', 'Dispute.AdminGrid', null,
26 {}, _w.systemdisputes.loadDisputeGrid, _w.taskContractError
31 _w.systemdisputes.loadDisputeGrid( null, {}, {} );
35 onTemplatePublished : function( template, event, eventData )
37 _w.systemdisputes.ti = _t[template];
40 $('#btnDisputeClearSearch').click(_w.systemdisputes.clearDisputeGridContext);
41 $('#btnDisputeSearch').click(_w.systemdisputes.searchDisputeGrid);
45 initGrids : function()
48 _w.systemdisputes.ti.hydrate({
50 'gridDisputeTitle': 'Manage system disputes',
51 'gridDisputeColumnHeaders': {
52 constructor: 'GridColumnHeader',
55 id: 'gridDisputeColumn_Plaintive',
58 id: 'gridDisputeOrder_PlaintiveAsc',
59 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'fromCompany.name', 'ASC')
62 id: 'gridDisputeOrder_PlaintiveDesc',
63 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'fromCompany.name', 'DESC')
67 id: 'gridDisputeColumn_Defendant',
70 id: 'gridDisputeOrder_DefendantAsc',
71 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'againstCompany.name', 'ASC')
74 id: 'gridDisputeOrder_DefendantDesc',
75 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'againstCompany.name', 'DESC')
79 id: 'gridDisputeColumn_Make',
80 title: 'VEHICLE MAKE',
82 id: 'gridDisputeOrder_MakeAsc',
83 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'make.name', 'ASC')
86 id: 'gridDisputeOrder_MakeDesc',
87 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'make.name', 'DESC')
91 id: 'gridDisputeColumn_Model',
94 id: 'gridDisputeOrder_ModelAsc',
95 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'model.name', 'ASC')
98 id: 'gridDisputeOrder_ModelDesc',
99 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'model.name', 'DESC')
103 id: 'gridDisputeColumn_Type',
106 id: 'gridDisputeOrder_TypeAsc',
107 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'type.name', 'ASC')
110 id: 'gridDisputeOrder_TypeDesc',
111 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'type.name', 'DESC')
115 id: 'gridDisputeColumn_Reg',
116 title: 'REGISTRATION',
118 id: 'gridDisputeOrder_RegAsc',
119 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'stock.registrationNumber', 'ASC')
122 id: 'gridDisputeOrder_RegDesc',
123 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'stock.registrationNumber', 'DESC')
127 id: 'gridDisputeColumn_Status',
130 id: 'gridDisputeOrder_StatusAsc',
131 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'dispute.jobState', 'ASC')
134 id: 'gridDisputeOrder_StatusDesc',
135 bind: $.proxy(_w.systemdisputes.orderDisputeGrid, this, 'dispute.jobState', 'DESC')
140 'gridDisputeColumnFilters': {
141 constructor: 'GridColumnFilter',
144 id: 'gridDisputeFilter_Plaintive',
145 context: 'gridDisputeFilter'
148 id: 'gridDisputeFilter_Defendant',
149 context: 'gridDisputeFilter'
152 id: 'gridDisputeFilter_Make',
153 context: 'gridDisputeFilter'
156 id: 'gridDisputeFilter_Model',
157 context: 'gridDisputeFilter'
160 id: 'gridDisputeFilter_Type',
161 context: 'gridDisputeFilter'
164 id: 'gridDisputeFilter_Reg',
165 context: 'gridDisputeFilter'
168 id: 'gridDisputeFilter_Status',
169 context: 'gridDisputeFilter'
173 'gridDisputeRowRepeater': {},
174 'gridDisputePager': {}
179 loadDisputeGrid : function( contract, data, options )
182 'gridSystemDispute', data, options,
183 _w.systemdisputes._onDisputeGridDataReceived, _w.taskExecError
187 pageDisputeGrid : function( page )
189 _w.systemdisputes.loadDisputeGrid( {}, {"Grid":{"Page":page}} );
192 clearDisputeGridContext : function()
194 $('.gridDisputeContext').val('');
195 $('.gridDisputeFilter').val('');
196 _w.systemdisputes.searchDisputeGrid();
199 searchDisputeGrid : function()
206 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Plaintive', 'fromCompany.name');
207 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Defendant', 'againstCompany.name');
208 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Make', 'make.name');
209 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Model', 'model.name');
210 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Type', 'type.name');
211 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Reg', 'stock.registrationNumber');
212 filter = _w.filterIfnotEmpty(filter, 'gridDisputeFilter_Status', 'dispute.jobState');
213 var request = {"Grid":{
215 "Filter": filter.filters
217 _w.systemdisputes.loadDisputeGrid( null, request, {} );
220 _onDisputeGridDataReceived : function( response )
222 _w.systemdisputes.ti.hydrateParam('gridDisputeRowRepeater', {});
223 _w.populateFilters(response.Data.Meta.Filters, {
224 'fromCompany.name' : 'gridDisputeFilter_Plaintive',
225 'againstCompany.name' : 'gridDisputeFilter_Defendant',
226 'auction.stock.type.model.make.name' : 'gridDisputeFilter_Make',
227 'auction.stock.type.model.name' : 'gridDisputeFilter_Model',
228 'auction.stock.type..name' : 'gridDisputeFilter_Type',
229 'auction.stock.registrationNumber' : 'gridDisputeFilter_Reg',
230 'jobState' : 'gridDisputeFilter_Status'
233 for (var i = 0; i < response.Data.DataSet.length; i++)
235 var row = response.Data.DataSet[i];
237 url: 'systemdisputeview',
242 'Plaintive' : row.fromCompany.name,
243 'Defendant' : row.againstCompany.name,
244 'Make' : row.auction.stock.type.model.make.name,
245 'Model' : row.auction.stock.type.model.name,
246 'Type' : row.auction.stock.type.name,
247 'Reg' : row.auction.stock.registrationNumber,
248 'Status' : row.jobState
252 _w.systemdisputes.ti.hydrateParam('gridDisputeRowRepeater', {
253 constructor : 'GridDataRow',
256 response.Data.Meta.itemName = 'disputePager';
257 response.Data.Meta.bind = _w.systemdisputes.pageDisputeGrid;
258 _w.systemdisputes.ti.hydrateParam('gridDisputePager', {
259 constructor : 'GridPager',
260 items : [response.Data.Meta]
264 orderDisputeGrid : function(field, direction)
267 order[field] = direction;
268 _w.systemdisputes.loadDisputeGrid( {}, {"Grid":{"Page": 1, "OrderBy": order}} );