Advertisement
Guest User

ManageVehicleRates

a guest
Jun 5th, 2012
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.73 KB | None | 0 0
  1. <?php
  2.  
  3. //page to find a voucher//
  4. //require('checkPagePermissions.php');
  5. //include('Menu.html');
  6. $retString = "<table width=100% height=100%>";
  7. $retString.= "<tr><td width=100% colspan=2 height=50 align=center><div id='getVehicleRatesFormdiv' name='getVehicleRatesFormdiv' align=center></div><div id='getVehicleRatesButtonsdiv' name='getVehicleRatesButtonsdiv' align=center></div></td></tr>";
  8. $retString.= "<tr><td width=50% align=center><div id='VehicleRatesGriddiv' name='VehicleRatesGriddiv' align=center></div><div id='VehicleRatesGridButtonsdiv' name='VehicleRatesGridButtonsdiv' align=center></div></td>";
  9. $retString.= "<td width=50% align=center><div id='UpdateVehicleRatesFormdiv2' name='UpdateVehicleRatesFormdiv2' align=center></div><div id='UpdateVehicleRatesButtonsdiv' name='UpdateVehicleRatesButtonsdiv' align=center></div></td></tr>";
  10. $retString.="</table>";
  11. //$retString.= "<script type='text/javascript' src='JSIncludes/ManageVehicleRates.js'></script>";
  12. $retString.= "<script type='text/javascript' src='JSIncludes/helpFunction.js'></script>";
  13. $retString.= "<script type='text/javascript' src='JSIncludes/searchFunction.js'></script>";
  14. $retString.= "<script type='text/javascript' src='JSIncludes/windowHelp.js'></script>";
  15. //$retString.= "<script type='text/javascript' src='JSIncludes/checkQueryPermissions.js'></script>";
  16.  
  17. $retString.="<script type='text/javascript'>
  18. function LoadManageVehicleRates()
  19. {
  20. Ext.define('VehicleRates',
  21. {
  22. extend:'Ext.data.Model',
  23. fields:
  24. [
  25. {name:'ID', type:'integer'},
  26. {name:'VehicleType_ID', type:'integer'},
  27. {name:'HourlyRate', type:'double'},
  28. {name:'HourlyMinimum', type:'double'},
  29. {name:'MilageRate', type:'double'},
  30. {name:'MilageMinimum', type:'double'},
  31. {name:'AreaType_ID', type:'integer'},
  32. {name:'Active', type:'integer'},
  33. {name:'VehicleType', type:'string'},
  34. {name:'AreaType', type:'string'},
  35. {name:'VehicleID', type:'integer'},
  36. {name:'AreaID', type:'integer'}
  37. ]
  38. });
  39. var VehicleRatesStore = Ext.create('Ext.data.Store',
  40. {
  41. model:'VehicleRates',
  42. proxy:
  43. {
  44. type:'ajax',
  45. url:'getFiles/getVehicleRates.php',
  46. reader:
  47. {
  48. type:'json',
  49. root:'rows'
  50. }
  51. },
  52. autoLoad:false
  53. });
  54.  
  55. Ext.define('VehicleRatesCompanies',
  56. {
  57. extend:'Ext.data.Model',
  58. fields:
  59. [
  60. {name:'ID', type:'integer'},
  61. {name:'CompanyName', type:'string'},
  62. {name:'CurrencyAbbr', type:'string'}
  63. ]
  64. });
  65. var CompaniesStore = Ext.create('Ext.data.Store',
  66. {
  67. model:'VehicleRatesCompanies',
  68. proxy:
  69. {
  70. type:'ajax',
  71. url:'getFiles/getCompanies.php',
  72. reader:
  73. {
  74. type:'json',
  75. root:'rows'
  76. }
  77. },
  78. autoLoad:true
  79. });
  80. CompaniesStore.addListener('load', function()
  81. {
  82. if (CompaniesStore.getCount() == 1)
  83. {
  84. Ext.getCmp('getVehicleRatesCompanyID').setValue(CompaniesStore.getAt(0).get('ID'));
  85. Ext.getCmp('getVehicleRatesCompanyID').disable();
  86. Ext.getCmp('UpdateVehicleRatesCompanyID').setValue(CompaniesStore.getAt(0).get('ID'));
  87. VehicleTypesStore.load({params:{'CompanyID':CompaniesStore.getAt(0).get('ID')}});
  88.  
  89. Ext.getCmp('UpdateVehicleRatesForm').getForm().findField('HourlyRate').labelEl.dom.innerText = Ext.getCmp('HourlyRate').fieldLabel + ' (' + CompaniesStore.getAt(0).get('CurrencyAbbr')+')';
  90. Ext.getCmp('UpdateVehicleRatesForm').getForm().findField('MilageRate').labelEl.dom.innerText = Ext.getCmp('MilageRate').fieldLabel + ' (' + CompaniesStore.getAt(0).get('CurrencyAbbr')+')';
  91. }
  92. });
  93.  
  94. Ext.define('AreaTypes',
  95. {
  96. extend:'Ext.data.Model',
  97. fields:
  98. [
  99. {name:'ID', type:'integer'},
  100. {name:'Type', type:'string'}
  101. ]
  102. });
  103. var AreaTypesStore = Ext.create('Ext.data.Store',
  104. {
  105. model:'AreaTypes',
  106. proxy:
  107. {
  108. type:'ajax',
  109. url:'getFiles/getAreaTypes.php',
  110. reader:
  111. {
  112. type:'json',
  113. root:'rows'
  114. }
  115. },
  116. autoLoad:true
  117. });
  118.  
  119. Ext.define('VehicleTypes',
  120. {
  121. extend:'Ext.data.Model',
  122. fields:
  123. [
  124. {name:'ID', type:'integer'},
  125. {name:'Type', type:'string'}
  126. ]
  127. });
  128. var VehicleTypesStore = Ext.create('Ext.data.Store',
  129. {
  130. model:'VehicleTypes',
  131. proxy:
  132. {
  133. type:'ajax',
  134. url:'getFiles/getVehicleTypes.php',
  135. reader:
  136. {
  137. type:'json',
  138. root:'rows'
  139. }
  140. },
  141. autoLoad:false
  142. });
  143.  
  144. var getVehicleRatesForm = new Ext.FormPanel
  145. ({
  146. renderTo:'getVehicleRatesFormdiv',
  147. layout:'column',
  148. items:
  149. [{
  150. xtype:'combo',
  151. name:'getVehicleRatesCompanyID',
  152. id:'getVehicleRatesCompanyID',
  153. store:CompaniesStore,
  154. mode:'local',
  155. displayField:'CompanyName',
  156. valueField:'ID',
  157. fieldLabel:'Company',
  158. forceSelection:true,
  159. listeners:
  160. {
  161. select: function(selectbox,record,index)
  162. {
  163. VehicleTypesStore.load({params:{'CompanyID':Ext.getCmp('getVehicleRatesCompanyID').getValue()}});
  164. Ext.getCmp('UpdateVehicleRatesCompanyID').setValue(Ext.getCmp('getVehicleRatesCompanyID').getValue());
  165. }
  166. }
  167. },
  168. {
  169. xtype:'combo',
  170. name:'RatesVehicleType',
  171. id:'RatesVehicleType',
  172. store:VehicleTypesStore,
  173. queryMode:'local',
  174. displayField:'Type',
  175. valueField:'ID',
  176. fieldLabel:'Vehicle Types',
  177. forceSelection:true
  178. }]
  179. });
  180. Ext.create('Ext.Button',
  181. {
  182. text:'Get Vehicle Rates ',
  183. cls:'btn ',
  184. renderTo:'getVehicleRatesButtonsdiv',
  185. handler:function()
  186. {
  187. var ID = Ext.getCmp('getVehicleRatesCompanyID').getValue();
  188. VehicleRatesStore.load({params:{'CompanyID':ID,'VehicleType':Ext.getCmp('RatesVehicleType').getValue()}});
  189. }
  190. });
  191.  
  192. var VehicleRatesGrid = new Ext.grid.GridPanel
  193. ({
  194. id:'VehicleRatesGrid',
  195. name:'VehicleRatesGrid',
  196. store:VehicleRatesStore,
  197. height:400,
  198. title:'Vehicle Rates',
  199. border:true,
  200. renderTo:'VehicleRatesGriddiv',
  201. columnLines:true,
  202. columns:
  203. [
  204. {header:'VehicleType', name:'VehicleType', flex:1, dataIndex:'VehicleType'},
  205. {header:'Hourly Rate', name:'Hourly Rate', flex:1, dataIndex:'HourlyRate'},
  206. {header:'Hourly Minimum', name:'Hourly Minimum', flex:1, dataIndex:'HourlyMinimum'},
  207. {header:'Milage Rate', name:'Milage Rate', flex:1, dataIndex:'MilageRate'},
  208. {header:'Milage Minimum', name:'Milage Minimum', flex:1, dataIndex:'MilageMinimum'},
  209. {header:'Area Type', name:'Area Type', flex:1, dataIndex:'AreaType', hidden:true},
  210. {header:'Active', name:'Active', flex:1, dataIndex:'Active'}
  211. ],
  212. selModel :new Ext.selection.RowModel
  213. ({
  214. singleSelect:true,
  215. listeners:
  216. {
  217. select: function(rowModel, record, index, smObj)
  218. {
  219. UpdateVehicleRatesForm.getForm().loadRecord(record);
  220. Ext.getCmp('VehicleType1').disable();
  221. Ext.getCmp('VehicleType1').setValue(record.get('VehicleType'));
  222. Ext.getCmp('AreaType').disable();
  223. Ext.getCmp('UpdateVehicleRatesID').setValue(record.get('ID'));
  224. }
  225. }
  226. })
  227. });
  228.  
  229. Ext.create('Ext.Button',
  230. {
  231. text:'Help',
  232. renderTo:'VehicleRatesGridButtonsdiv',
  233. cls:'btn ',
  234. handler:function()
  235. {
  236. windowHelp('Tutorials/ManageVehicleRates.mp4');
  237. }
  238. });
  239.  
  240. Ext.create('Ext.Button',
  241. {
  242. text:'Search',
  243. renderTo:'VehicleRatesGridButtonsdiv',
  244. cls:'btn ',
  245. handler:function()
  246. {
  247. searchFunction(Ext.getCmp('VehicleRatesGrid'));
  248. }
  249. });
  250.  
  251. Ext.create('Ext.Button',
  252. {
  253. text:'Refresh',
  254. renderTo:'VehicleRatesGridButtonsdiv',
  255. cls:'btn ',
  256. handler:function()
  257. {
  258. Ext.getCmp('VehicleRatesGrid').getStore().clearFilter();
  259. }
  260. });
  261.  
  262. var UpdateVehicleRatesForm = new Ext.FormPanel
  263. ({
  264. renderTo:'UpdateVehicleRatesFormdiv2',
  265. url:'ManageVehicleRatesSubmit.php',
  266. id:'UpdateVehicleRatesForm',
  267. items:
  268. [{
  269. xtype:'textfield',
  270. id:'UpdateVehicleRatesID',
  271. name:'UpdateVehicleRatesID',
  272. hidden:true
  273. },
  274. {
  275. xtype:'textfield',
  276. id:'UpdateVehicleRatesCompanyID',
  277. name:'UpdateVehicleRatesCompanyID',
  278. hidden:true
  279. },
  280.  
  281. {
  282. xtype:'textfield',
  283. id:'VehicleType_ID',
  284. name:'VehicleType_ID',
  285. hidden:true
  286. },
  287. {
  288. xtype:'textfield',
  289. id:'AreaType_ID',
  290. name:'AreaType_ID',
  291. hidden:true,
  292. value:1
  293. },
  294. {
  295. xtype:'combo',
  296. name:'VehicleType1',
  297. id:'VehicleType1',
  298. store:VehicleTypesStore,
  299. queryMode:'local',
  300. displayField:'Type',
  301. valueField:'ID',
  302. fieldLabel:'Vehicle Type',
  303. forceSelection:true,
  304. listeners:
  305. {
  306. select: function(selectbox,record,index)
  307. {
  308. Ext.getCmp('VehicleType_ID').setValue(record[0].get('ID'));
  309. }
  310. }
  311.  
  312.  
  313. },
  314. {
  315. xtype:'combo',
  316. name:'AreaType',
  317. id:'AreaType',
  318. store:AreaTypesStore,
  319. mode:'local',
  320. displayField:'Type',
  321. valueField:'ID',
  322. fieldLabel:'Area Type',
  323. hidden:true,
  324. value:1,
  325. listeners:
  326. {
  327. select: function(selectbox,record,index)
  328. {
  329. Ext.getCmp('AreaType_ID').setValue(record[0].get('ID'));
  330. }
  331. }
  332. },
  333. {
  334. xtype:'textfield',
  335. name:'HourlyRate',
  336. id:'HourlyRate',
  337. fieldLabel:'Hourly Rate '
  338. },
  339. {
  340. xtype:'textfield',
  341. name:'HourlyMinimum',
  342. id:'HourlyMinimum',
  343. fieldLabel:'Hourly Minimum'
  344. },
  345. {
  346. xtype:'textfield',
  347. name:'MilageRate',
  348. id:'MilageRate',
  349. fieldLabel:'Milage Rate'
  350. },
  351. {
  352. xtype:'textfield',
  353. name:'MilageMinimum',
  354. id:'MilageMinimum',
  355. fieldLabel:'Milage Minimum'
  356. },
  357. {
  358. xtype:'checkbox',
  359. name:'Active',
  360. id:'Active',
  361. fieldLabel:'Active',
  362. value:true
  363. },
  364. {
  365. xtype:'textfield',
  366. name:'Action',
  367. id:'Action',
  368. hidden:true
  369. }]
  370. });
  371.  
  372. Ext.create('Ext.Button',
  373. {
  374. renderTo:'UpdateVehicleRatesButtonsdiv',
  375. text:'Update/Create',
  376. name:'UpdateVehicleRatesUpdate1',
  377. id:'UpdateVehicleRatesUpdate1',
  378. cls:'btn ',
  379. handler:function()
  380. {
  381. if (Ext.getCmp('UpdateVehicleRatesID').getValue() == '')
  382. var Action = 'Create';
  383. else
  384. var Action = 'Update';
  385. Ext.Ajax.request
  386. ({
  387. url:'ManageVehicleRatesSubmit.php',
  388. success: function()
  389. {
  390. Ext.Msg.alert('Success', 'Vehicle Rate successfully updated');
  391. var ID = Ext.getCmp('UpdateVehicleRatesCompanyID').getValue();
  392. VehicleRatesStore.load({params:{'CompanyID':ID,'VehicleType':Ext.getCmp('RatesVehicleType').getValue()}});
  393. UpdateVehicleRatesForm.getForm().reset();
  394. Ext.getCmp('UpdateVehicleRatesCompanyID').setValue(ID);
  395.  
  396. Ext.getCmp('VehicleType1').enable();
  397. Ext.getCmp('AreaType').enable();
  398. },
  399. failure: function()
  400. {
  401. Ext.Msg.alert('Error', 'Problem submitting vehicle rate');
  402. },
  403. params:
  404. {
  405. 'ID':Ext.getCmp('UpdateVehicleRatesID').getValue(),
  406. 'CompanyID':Ext.getCmp('UpdateVehicleRatesCompanyID').getValue(),
  407. 'VehicleType_ID':Ext.getCmp('VehicleType_ID').getValue(),
  408. 'AreaType_ID':Ext.getCmp('AreaType_ID').getValue(),
  409. 'Action':Action,
  410. 'VehicleType':Ext.getCmp('VehicleType1').getValue(),
  411. 'AreaType':Ext.getCmp('AreaType').getValue(),
  412. 'HourlyRate':Ext.getCmp('HourlyRate').getValue(),
  413. 'HourlyMinimum':Ext.getCmp('HourlyMinimum').getValue(),
  414. 'MilageRate':Ext.getCmp('MilageRate').getValue(),
  415. 'MilageMinimum':Ext.getCmp('MilageMinimum').getValue(),
  416. 'Active':Ext.getCmp('Active').getValue()
  417. }
  418. });
  419. }
  420. });
  421.  
  422. Ext.create('Ext.Button',
  423. {
  424. renderTo:'UpdateVehicleRatesButtonsdiv',
  425. text:'Delete Vehicle Rate',
  426. name:'UpdateVehicleRatesDelete1',
  427. id:'UpdateVehicleRatesDelete1',
  428. cls:'btn ',
  429. handler:function()
  430. {
  431. var Action = 'Delete';
  432. Ext.Ajax.request
  433. ({
  434. url:'ManageVehicleRatesSubmit.php',
  435. success: function()
  436. {
  437. Ext.Msg.alert('Success', 'Vehicle rate successfully deleted');
  438. var ID = Ext.getCmp('UpdateVehicleRatesCompanyID').getValue();
  439. VehicleRatesStore.load({params:{'CompanyID':ID,'VehicleType':Ext.getCmp('RatesVehicleType').getValue()}});
  440. UpdateVehicleRatesForm.getForm().reset();
  441. Ext.getCmp('UpdateVehicleRatesCompanyID').setValue(ID);
  442. Ext.getCmp('VehicleType1').enable();
  443. Ext.getCmp('AreaType').enable();
  444.  
  445. },
  446. failure: function()
  447. {
  448. Ext.Msg.alert('Error', 'Problem deleting vehicle rate');
  449. },
  450. params:
  451. {
  452. 'ID':Ext.getCmp('UpdateVehicleRatesID').getValue(),
  453. 'Action':Action
  454. }
  455. });
  456. }
  457. });
  458.  
  459. Ext.create('Ext.Button',
  460. {
  461. renderTo:'UpdateVehicleRatesButtonsdiv',
  462. text:'Reset Form',
  463. cls:'btn ',
  464. handler:function()
  465. {
  466. var ID = Ext.getCmp('UpdateVehicleRatesCompanyID').getValue();
  467. UpdateVehicleRatesForm.getForm().reset();
  468. Ext.getCmp('UpdateVehicleRatesCompanyID').setValue(ID);
  469. Ext.getCmp('VehicleType1').enable();
  470. Ext.getCmp('AreaType').enable();
  471. }
  472. });
  473.  
  474. }
  475. LoadManageVehicleRates();
  476. </script>";
  477.  
  478. echo '{success: true, data:{"message":'.json_encode($retString).'}}';
  479.  
  480. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement