Commit dd378d69fa3bf7ef8bdc0fa2865ead351d6a68cf

Authored by Mr. Hot Foods
1 parent ab64126b20
Exists in master

changes in flight department login analytics page and fuel order file upload

... ... @@ -166,6 +166,8 @@
166 166 <script src="partials/accountSetting/accountSetting.Controller.js"></script>
167 167 <script src="partials/viewVendorContact/viewVendorContact.Controller.js"></script>
168 168 <script src="partials/enterFuelOrder/enterFuelOrder.controller.js"></script>
  169 + <script src="partials/flightDepOrders/flightDepOrders.controller.js"></script>
  170 + <script src="partials/flightDepDashboard/flightDepDashboard.controller.js"></script>
169 171  
170 172 <script src="partials/main/main.controller.js"></script>
171 173 <div ui-view></div>
... ... @@ -203,6 +205,8 @@
203 205 <script src="partials/accountSetting/accountSetting.Service.js"></script>
204 206 <script src="partials/viewVendorContact/viewVendorContact.Service.js"></script>
205 207 <script src="partials/enterFuelOrder/enterFuelOrder.service.js"></script>
  208 + <script src="partials/flightDepOrders/flightDepOrders.service.js"></script>
  209 + <script src="partials/flightDepDashboard/flightDepDashboard.service.js"></script>
206 210  
207 211 <script src="partials/main/main.service.js"></script>
208 212 <!-- <script src='https://fullcalendar.io/js/fullcalendar-3.4.0/fullcalendar.min.js'></script> -->
... ...
... ... @@ -80,48 +80,72 @@
80 80 .state("app.customers", {
81 81 url: "/customers",
82 82 templateUrl: "partials/customers/customers.html",
83   - controller: "customersController"
  83 + controller: "customersController",
  84 + data: {
  85 + authorizedRoles: ["FBO"],
  86 + }
84 87 })
85 88  
86 89 .state("app.accountSetting", {
87 90 url: "/accountSetting",
88 91 templateUrl: "partials/accountSetting/accountSetting.html",
89   - controller: "AccountSettingController"
  92 + controller: "AccountSettingController",
  93 + data: {
  94 + authorizedRoles: ["FBO"],
  95 + }
90 96 })
91 97  
92 98 .state("app.ContactView", {
93 99 url: "/ContactView",
94 100 templateUrl: "partials/ContactView/ContactView.html",
95   - controller: "ContactViewController"
  101 + controller: "ContactViewController",
  102 + data: {
  103 + authorizedRoles: ["FBO"],
  104 + }
96 105 })
97 106 .state("app.FuelVendors", {
98 107 url: "/FuelVendors",
99 108 templateUrl: "partials/FuelVendors/FuelVendors.html",
100   - controller: "FuelVendorsController"
  109 + controller: "FuelVendorsController",
  110 + data: {
  111 + authorizedRoles: ["FBO"],
  112 + }
101 113 })
102 114  
103 115 .state("app.analytics", {
104 116 url: "/analytics",
105 117 templateUrl: "partials/analytics/analytics.html",
106   - controller: "analyticsController"
  118 + controller: "analyticsController",
  119 + data: {
  120 + authorizedRoles: ["FBO"],
  121 + }
107 122 })
108 123  
109 124 .state("app.account", {
110 125 url: "/account",
111 126 templateUrl: "partials/account/account.html",
112   - controller: "accountController"
  127 + controller: "accountController",
  128 + data: {
  129 + authorizedRoles: ["FBO"],
  130 + }
113 131 })
114 132  
115 133 .state("app.dashboard", {
116 134 url: "/dashboard",
117 135 templateUrl: "partials/dashboard/dashboard.html",
118   - controller: "dashboardController"
  136 + controller: "dashboardController",
  137 + data: {
  138 + authorizedRoles: ["FBO"],
  139 + }
119 140 })
120 141  
121 142 .state("app.elements", {
122 143 url: "/elements",
123 144 templateUrl: "partials/elements/elements.html",
124   - controller: "elementsController"
  145 + controller: "elementsController",
  146 + data: {
  147 + authorizedRoles: ["FBO"],
  148 + }
125 149 })
126 150  
127 151 .state("app.error", {
... ... @@ -139,31 +163,46 @@
139 163 .state("app.forms", {
140 164 url: "/forms",
141 165 templateUrl: "partials/forms/forms.html",
142   - controller: "formsController"
  166 + controller: "formsController",
  167 + data: {
  168 + authorizedRoles: ["FBO"],
  169 + }
143 170 })
144 171  
145 172 .state("app.fuelManager", {
146 173 url: "/fuelManager",
147 174 templateUrl: "partials/fuelManager/fuelManager.html",
148   - controller: "fuelManagerController"
  175 + controller: "fuelManagerController",
  176 + data: {
  177 + authorizedRoles: ["FBO"],
  178 + }
149 179 })
150 180  
151 181 .state("app.pricing", {
152 182 url: "/pricing",
153 183 templateUrl: "partials/pricing/pricing.html",
154   - controller: "pricingController"
  184 + controller: "pricingController",
  185 + data: {
  186 + authorizedRoles: ["FBO"],
  187 + }
155 188 })
156 189  
157 190 .state("app.reports", {
158 191 url: "/reports",
159 192 templateUrl: "partials/reports/reports.html",
160   - controller: "reportsController"
  193 + controller: "reportsController",
  194 + data: {
  195 + authorizedRoles: ["FBO"],
  196 + }
161 197 })
162 198  
163 199 .state("app.scheduler", {
164 200 url: "/scheduler",
165 201 templateUrl: "partials/scheduler/scheduler.html",
166   - controller: "schedulerController"
  202 + controller: "schedulerController",
  203 + data: {
  204 + authorizedRoles: ["FBO"],
  205 + }
167 206 })
168 207 .state("app.signup", {
169 208 url: "/signup",
... ... @@ -175,75 +214,120 @@
175 214 url: "/updateFuelManager",
176 215 templateUrl: "partials/updateFuelManager/updateFuelManager.html",
177 216 controller: "updateFuelManagerController",
178   - // data: {
179   - // authorizedRoles: ["fbo"],
180   - // }
  217 + data: {
  218 + authorizedRoles: ["FBO"],
  219 + }
181 220 })
182 221  
183 222 .state("app.viewCompany", {
184 223 url: "/viewCompany/:id",
185 224 templateUrl: "partials/viewCompany/viewCompany.html",
186   - controller: "viewCompanyController"
  225 + controller: "viewCompanyController",
  226 + data: {
  227 + authorizedRoles: ["FBO"],
  228 + }
187 229 })
188 230  
189 231 .state("app.viewFuelVendor", {
190 232 url: "/viewFuelVendor/:id",
191 233 templateUrl: "partials/viewFuelVendor/viewFuelVendor.html",
192   - controller: "ViewFuelVendorController"
  234 + controller: "ViewFuelVendorController",
  235 + data: {
  236 + authorizedRoles: ["FBO"],
  237 + }
193 238 })
194 239  
195 240 .state("app.fuelOrders", {
196 241 url: "/fuelOrders",
197 242 templateUrl: "partials/fuelOrders/fuelOrders.html",
198   - controller: "fuelOrdersController"
  243 + controller: "fuelOrdersController",
  244 + data: {
  245 + authorizedRoles: ["FBO"],
  246 + }
199 247 })
200 248  
201 249 .state("app.DispatchFuel", {
202 250 url: "/DispatchFuel",
203 251 templateUrl: "partials/DispatchFuel/DispatchFuel.html",
204   - controller: "DispatchFuelController"
  252 + controller: "DispatchFuelController",
  253 + data: {
  254 + authorizedRoles: ["FBO"],
  255 + }
205 256 })
206 257  
207 258 .state("app.searchDispatchFuel", {
208 259 url: "/searchDispatchFuel",
209 260 templateUrl: "partials/searchDispatchFuel/searchDispatchFuel.html",
210   - controller: "searchDispatchFuelController"
  261 + controller: "searchDispatchFuelController",
  262 + data: {
  263 + authorizedRoles: ["FBO"],
  264 + }
211 265 })
212 266  
213 267 .state("app.Accept", {
214 268 url: "/Accept",
215 269 templateUrl: "partials/Accept/Accept.html",
216   - controller: "AcceptController"
  270 + controller: "AcceptController",
  271 + data: {
  272 + authorizedRoles: ["FBO"],
  273 + }
217 274 })
218 275  
219 276 .state("app.delselected", {
220 277 url: "/delselected",
221 278 templateUrl: "partials/delselected/delselected.html",
222   - controller: "delselectedController"
  279 + controller: "delselectedController",
  280 + data: {
  281 + authorizedRoles: ["FBO"],
  282 + }
223 283 })
224 284  
225 285 .state("app.pricingcontact", {
226 286 url: "/pricingcontact",
227 287 templateUrl: "partials/pricingcontact/pricingcontact.html",
228   - controller: "pricingcontactController"
  288 + controller: "pricingcontactController",
  289 + data: {
  290 + authorizedRoles: ["FBO"],
  291 + }
229 292 })
230 293  
231 294 .state("app.viewContact", {
232 295 url: "/viewContact/:id",
233 296 templateUrl: "partials/viewcontact/viewcontact.html",
234   - controller: "viewcontactController"
  297 + controller: "viewcontactController",
  298 + data: {
  299 + authorizedRoles: ["FBO"],
  300 + }
235 301 })
236 302  
237 303 .state("app.viewVendorContact", {
238 304 url: "/viewVendorContact/:id",
239 305 templateUrl: "partials/viewVendorContact/viewVendorContact.html",
240   - controller: "viewVendorContactController"
  306 + controller: "viewVendorContactController",
  307 + data: {
  308 + authorizedRoles: ["FBO"],
  309 + }
241 310 })
242 311  
243 312 .state("app.enterFuelOrder", {
244 313 url: "/enterFuelOrder",
245 314 templateUrl: "partials/enterFuelOrder/enterFuelOrder.html",
246   - controller: "enterFuelOrderController"
  315 + controller: "enterFuelOrderController",
  316 + data: {
  317 + authorizedRoles: ["FBO"],
  318 + }
  319 + })
  320 +
  321 + .state("app.flightDepDashboard", {
  322 + url: "/flightDepDashboard",
  323 + templateUrl: "partials/flightDepDashboard/flightDepDashboard.html",
  324 + controller: "flightDepDashboardController"
  325 + })
  326 +
  327 + .state("app.flightDepOrders", {
  328 + url: "/flightDepOrders",
  329 + templateUrl: "partials/flightDepOrders/flightDepOrders.html",
  330 + controller: "flightDepOrdersController"
247 331 })
248 332  
249 333 }
... ... @@ -279,6 +363,9 @@
279 363 event.preventDefault();
280 364 $state.go('app.dashboard');
281 365 }
  366 + }else{
  367 + $state.go('app.flightDepDashboard');
  368 +
282 369 }
283 370 });
284 371 }])
... ...
app/partials/analytics/analytics.controller.js
... ... @@ -119,12 +119,11 @@
119 119 ]
120 120 }]
121 121  
122   - $scope.optionspc = {
  122 + $scope.optionscs = {
123 123 chart: {
124 124 type: 'pieChart',
125 125 height: 500,
126   - minColor: ["#FEDFC3"],
127   - maxColor: ["#FF7F0E"],
  126 + color: ["#FEDFC3","#D89700","#FFE8B3","FFD980","#FF7F0E","#fff2e6","#ffcc99","#ffa64d","#ff8c1a","#B37D00","#f5f5f0","#e0e0d1","#ccccb3","#adad85","#999966","#7a7a52"],
128 127 x: function(d){return d.key;},
129 128 y: function(d){return d.y;},
130 129 showLabels: false,
... ... @@ -146,7 +145,7 @@
146 145 }
147 146 };
148 147  
149   - $scope.datapc = [
  148 + $scope.datacs = [
150 149 {
151 150 key: "A",
152 151 y: 3
... ... @@ -169,6 +168,56 @@
169 168 }
170 169 ];
171 170  
  171 +
  172 + $scope.optionshfp = {
  173 + chart: {
  174 + type: 'cumulativeLineChart',
  175 + height: 450,
  176 + margin : {
  177 + top: 20,
  178 + right: 20,
  179 + bottom: 50,
  180 + left: 65
  181 + },
  182 + x: function(d){ return d[0]; },
  183 + y: function(d){ return d[1]/100; },
  184 + average: function(d) { return d.mean/100; },
  185 +
  186 + color: ["#FEDFC3"],
  187 + duration: 300,
  188 + useInteractiveGuideline: true,
  189 + clipVoronoi: false,
  190 +
  191 + xAxis: {
  192 + axisLabel: 'X Axis',
  193 + tickFormat: function(d) {
  194 + return d3.time.format('%m/%d/%y')(new Date(d))
  195 + },
  196 + showMaxMin: false,
  197 + staggerLabels: true
  198 + },
  199 +
  200 + yAxis: {
  201 + axisLabel: 'Y Axis',
  202 + tickFormat: function(d){
  203 + return d3.format(',.1%')(d);
  204 + },
  205 + axisLabelDistance: 0
  206 + }
  207 + }
  208 + };
  209 +
  210 + $scope.datahfp = [
  211 +
  212 + {
  213 + key: "Long",
  214 + values: [ [ 1083297600000 , -2.974623048543] , [ 1085976000000 , -1.7740300785979] , [ 1088568000000 , 4.4681318138177] , [ 1091246400000 , 7.0242541001353] , [ 1093924800000 , 7.5709603667586] , [ 1096516800000 , 20.612245065736] , [ 1099195200000 , 21.698065237316] , [ 1101790800000 , 40.501189458018] , [ 1104469200000 , 50.464679413194] , [ 1107147600000 , 48.917421973355] , [ 1109566800000 , 63.750936549160] , [ 1112245200000 , 59.072499126460] , [ 1114833600000 , 43.373158880492] , [ 1117512000000 , 54.490918947556] , [ 1120104000000 , 56.661178852079] , [ 1122782400000 , 73.450103545496] , [ 1125460800000 , 71.714526354907] , [ 1128052800000 , 85.221664349607] , [ 1130734800000 , 77.769261392481] , [ 1133326800000 , 95.966528716500] , [ 1136005200000 , 107.59132116397] , [ 1138683600000 , 127.25740096723] , [ 1141102800000 , 122.13917498830] , [ 1143781200000 , 126.53657279774] , [ 1146369600000 , 132.39300992970] , [ 1149048000000 , 120.11238242904] , [ 1151640000000 , 118.41408917750] , [ 1154318400000 , 107.92918924621] , [ 1156996800000 , 110.28057249569] , [ 1159588800000 , 117.20485334692] , [ 1162270800000 , 141.33556756948] , [ 1164862800000 , 159.59452727893] , [ 1167541200000 , 167.09801853304] , [ 1170219600000 , 185.46849659215] , [ 1172638800000 , 184.82474099990] , [ 1175313600000 , 195.63155213887] , [ 1177905600000 , 207.40597044171] , [ 1180584000000 , 230.55966698196] , [ 1183176000000 , 239.55649035292] , [ 1185854400000 , 241.35915085208] , [ 1188532800000 , 239.89428956243] , [ 1191124800000 , 260.47781917715] , [ 1193803200000 , 276.39457482225] , [ 1196398800000 , 258.66530682672] , [ 1199077200000 , 250.98846121893] , [ 1201755600000 , 226.89902618127] , [ 1204261200000 , 227.29009273807] , [ 1206936000000 , 218.66476654350] , [ 1209528000000 , 232.46605902918] , [ 1212206400000 , 253.25667081117] , [ 1214798400000 , 235.82505363925] , [ 1217476800000 , 229.70112774254] , [ 1220155200000 , 225.18472705952] , [ 1222747200000 , 189.13661746552] , [ 1225425600000 , 149.46533007301] , [ 1228021200000 , 131.00340772114] , [ 1230699600000 , 135.18341728866] , [ 1233378000000 , 109.15296887173] , [ 1235797200000 , 84.614772549760] , [ 1238472000000 , 100.60810015326] , [ 1241064000000 , 141.50134895610] , [ 1243742400000 , 142.50405083675] , [ 1246334400000 , 139.81192372672] , [ 1249012800000 , 177.78205544583] , [ 1251691200000 , 194.73691933074] , [ 1254283200000 , 209.00838460225] , [ 1256961600000 , 198.19855877420] , [ 1259557200000 , 222.37102417812] , [ 1262235600000 , 234.24581081250] , [ 1264914000000 , 228.26087689346] , [ 1267333200000 , 248.81895126250] , [ 1270008000000 , 270.57301075186] , [ 1272600000000 , 292.64604322550] , [ 1275278400000 , 265.94088520518] , [ 1277870400000 , 237.82887467569] , [ 1280548800000 , 265.55973314204] , [ 1283227200000 , 248.30877330928] , [ 1285819200000 , 278.14870066912] , [ 1288497600000 , 292.69260960288] , [ 1291093200000 , 300.84263809599] , [ 1293771600000 , 326.17253914628] , [ 1296450000000 , 337.69335966505] , [ 1298869200000 , 339.73260965121] , [ 1301544000000 , 346.87865120765] , [ 1304136000000 , 347.92991526628] , [ 1306814400000 , 342.04627502669] , [ 1309406400000 , 333.45386231233] , [ 1312084800000 , 323.15034181243] , [ 1314763200000 , 295.66126882331] , [ 1317355200000 , 251.48014579253] , [ 1320033600000 , 295.15424257905] , [ 1322629200000 , 294.54766764397] , [ 1325307600000 , 295.72906119051] , [ 1327986000000 , 325.73351347613] , [ 1330491600000 , 340.16106061186] , [ 1333166400000 , 345.15514071490] , [ 1335758400000 , 337.10259395679] , [ 1338436800000 , 318.68216333837] , [ 1341028800000 , 317.03683945246] , [ 1343707200000 , 318.53549659997] , [ 1346385600000 , 332.85381464104] , [ 1348977600000 , 337.36534373477] , [ 1351656000000 , 350.27872156161] , [ 1354251600000 , 349.45128876100]]
  215 + ,
  216 + mean: 250
  217 + }
  218 + ];
  219 +
  220 +
172 221 }]);
173 222  
174 223  
... ...
app/partials/analytics/analytics.html
... ... @@ -34,7 +34,25 @@
34 34 <!-- /widget -->
35 35 </div>
36 36 <!-- /.span6 -->
  37 + <div class="col-md-6">
  38 + <div class="widget stacked">
  39 + <div class="widget-header">
  40 + <i class="icon-bar-chart"></i>
  41 + <h3>Historic Fuel Pricing</h3>
  42 + </div>
  43 + <!-- /widget-header -->
  44 + <div class="widget-content">
  45 + <nvd3 options="optionshfp" data="datahfp"></nvd3>
  46 + <!-- /pie-chart -->
  47 + </div>
  48 + <!-- /widget-content -->
  49 + </div>
  50 + <!-- /widget -->
  51 + </div>
  52 + <!-- /span6 -->
37 53 </div>
  54 +
  55 +
38 56 <div class="row">
39 57  
40 58 </div>
... ... @@ -47,7 +65,7 @@
47 65 </div>
48 66 <!-- /widget-header -->
49 67 <div class="widget-content">
50   - <nvd3 options="optionspc" data="datapc"></nvd3>
  68 + <nvd3 options="optionscs" data="datacs"></nvd3>
51 69 <!-- /pie-chart -->
52 70 </div>
53 71 <!-- /widget-content -->
... ... @@ -78,23 +96,4 @@
78 96 <!-- /container -->
79 97 </div>
80 98 <!-- /main -->
81   -<!-- Le javascript
82   - ================================================== -->
83   -<!-- Placed at the end of the document so the pages load faster -->
84   -<script src="./js/libs/jquery-1.9.1.min.js"></script>
85   -<script src="./js/libs/jquery-ui-1.10.0.custom.min.js"></script>
86   -<script src="./js/libs/bootstrap.min.js"></script>
87   -<script src="./js/plugins/cirque/cirque.js"></script>
88   -<script src="./js/plugins/flot/jquery.flot.js"></script>
89   -<script src="./js/plugins/flot/jquery.flot.pie.js"></script>
90   -<script src="./js/plugins/flot/jquery.flot.orderBars.js"></script>
91   -<script src="./js/plugins/flot/jquery.flot.resize.js"></script>
92   -<script src="./js/Application.js"></script>
93   -<script src="./js/charts/bar.js"></script>
94   -<script src="./js/charts/donut.js"></script>
95   -<script src="./js/charts/line.js"></script>
96   -<script src="./js/charts/pie.js"></script>
97   -<script src="./js/charts/area.js"></script>
98   -<script type="text/javascript">
99   -
100   -</script>
101 99 \ No newline at end of file
  100 +
... ...
app/partials/dashboard/dashboard.controller.js
... ... @@ -6,7 +6,13 @@
6 6 .controller('dashboardController', [ '$scope', '$filter', '$rootScope', '$state', 'dashboardService', dashboardController]);
7 7  
8 8 function dashboardController($scope, $filter, $rootScope, $state, dashboardService) {
9   -
  9 + $scope.getQuote = true;
  10 + $scope.showQuote = false;
  11 + $scope.getQuote = function () {
  12 + $scope.getQuote = false;
  13 + $scope.showQuote = true;
  14 + }
  15 +
10 16 $scope.logout = function () {
11 17 localStorage.removeItem("loginStatus");
12 18 $rootScope.path = false;
... ...
app/partials/dashboard/dashboard.html
... ... @@ -6,7 +6,7 @@
6 6  
7 7  
8 8 <div class="main">
9   - <div class="container">
  9 + <div class="container" ng-if="isAuthenticated">
10 10 <div class="row">
11 11 <div class="col-md-7">
12 12 <div class="widget stacked">
... ...
app/partials/fuelOrders/fuelOrders.controller.js
... ... @@ -37,8 +37,30 @@ function fuelOrdersController($scope, $rootScope, $uibModal, $filter, $http, NgT
37 37 $('#demo-modal-4').css('display', 'block');
38 38 }
39 39 }
  40 + $scope.attachmentid = ""
  41 + $scope.attachment = function(id, value) {
  42 + console.log(id, value)
  43 + $scope.attachmentid = id
  44 + if(value == 'uploadAttachment'){
  45 + $('#demo-modal-6').css('display', 'block');
  46 + }
  47 + }
  48 +
  49 + $scope.saveUploadAttachment = function(attachmentData) {
  50 + $scope.data.media = attachmentData
  51 + $scope.data.id = $scope.attachmentid
  52 + fuelOrdersService.uploadAttachment($scope.data).then(function(result) {
  53 + console.log(result)
  54 + })
  55 +
  56 + $('#demo-modal-6').css('display', '');
  57 + }
  58 +
  59 + $scope.cancelUploadAttachment = function() {
  60 + $('#demo-modal-6').css('display', '');
  61 + }
40 62  
41   - $scope.editdata = {};
  63 + $scope.editdata = {};
42 64 $scope.editTableRow = function(rowData){
43 65 console.log('row data', rowData);
44 66 $scope.editdata = rowData;
... ... @@ -52,6 +74,8 @@ function fuelOrdersController($scope, $rootScope, $uibModal, $filter, $http, NgT
52 74 $('#demo-modal-5').css('display', '');
53 75 }
54 76  
  77 +
  78 +
55 79 $scope.companyList = {};
56 80  
57 81 fuelOrdersService.getAllCompanies().then(function(result) {
... ...
app/partials/fuelOrders/fuelOrders.html
... ... @@ -86,39 +86,45 @@
86 86 <div class="tab-content customer-table" style="margin:0px">
87 87 <div class="tab-pane active" id="companyView">
88 88 <table ng-table="displayFuelOrderList" class="table table-striped table-condensed" show-filter="true">
89   - <tr ng-repeat="row in $data | filter:searchText" style="cursor: pointer;" ng-click="editTableRow(row)" >
90   - <td data-title="'Company Name'" filter="{companyName: 'text'}" sortable="'companyName'">
  89 + <tr ng-repeat="row in $data | filter:searchText" style="cursor: pointer;" >
  90 + <td data-title="'Company Name'" filter="{companyName: 'text'}" sortable="'companyName'" ng-click="editTableRow(row)">
91 91 {{row.companyName}}
92 92 </td>
93   - <td data-title="'Fueling date'" filter="{departingDate: 'text'}" sortable="'departingDate'">
  93 + <td data-title="'Fueling date'" filter="{departingDate: 'text'}" sortable="'departingDate'" ng-click="editTableRow(row)">
94 94 {{row.departingDateString}}
95 95 </td>
96   - <td data-title="'Tail #'" filter="{aircraftName: 'text'}" sortable="'aircraftName'">
  96 + <td data-title="'Tail #'" filter="{aircraftName: 'text'}" sortable="'aircraftName'" ng-click="editTableRow(row)">
97 97 {{row.aircraftName}}
98 98 </td>
99   - <td data-title="'Source'" filter="{source: 'text'}" sortable="'source'">
  99 + <td data-title="'Source'" filter="{source: 'text'}" sortable="'source'" ng-click="editTableRow(row)">
100 100 {{row.source}}
101 101 </td>
102   - <td data-title="'Volume'" filter="{requestedVolume: 'text'}" sortable="'requestedVolume'">
  102 + <td data-title="'Volume'" filter="{requestedVolume: 'text'}" sortable="'requestedVolume'" ng-click="editTableRow(row)">
103 103 {{row.requestedVolume}}
104 104 </td>
105   - <td data-title="'FBO Cost'" filter="{fboCost: 'text'}" sortable="'fboCost'">
  105 + <td data-title="'FBO Cost'" filter="{fboCost: 'text'}" sortable="'fboCost'" ng-click="editTableRow(row)">
106 106 {{row.fboCost}}
107 107 </td>
108   - <td data-title="'Quoted'" filter="{priceQuote: 'text'}" sortable="'priceQuote'">
  108 + <td data-title="'Quoted'" filter="{priceQuote: 'text'}" sortable="'priceQuote'" ng-click="editTableRow(row)">
109 109 {{row.priceQuote}}
110 110 </td>
111   - <td data-title="'Invoiced'" filter="{invoiced: 'text'}" sortable="'invoiced'">
  111 + <td data-title="'Invoiced'" filter="{invoiced: 'text'}" sortable="'invoiced'" ng-click="editTableRow(row)">
112 112 {{row.invoiced}}
113 113 </td>
114   - <td data-title="'Total'" filter="{total: 'text'}" sortable="'total'">
  114 + <td data-title="'Total'" filter="{total: 'text'}" sortable="'total'" ng-click="editTableRow(row)">
115 115 {{row.total}}
116 116 </td>
117   - <td data-title="'Status'" filter="{status: 'text'}" sortable="'status'">
  117 + <td data-title="'Status'" filter="{status: 'text'}" sortable="'status'" ng-click="editTableRow(row)">
118 118 {{row.status}}
119 119 </td>
120 120 <td data-title="'Attachments'" filter="{allIn: 'text'}" sortable="'allIn'">
121   -
  121 + <select class="btn btn-regular" ng-model="attachOptionSelected" ng-change="attachment(row.id,attachOptionSelected)" >
  122 + <option value="" disabled selected="selected" >Invoice</option>
  123 + <option value="viewAttachment" >View</option>
  124 + <option value="deleteAttachment" >Delete</option>
  125 + <option value="0" disabled >_____________</option>
  126 + <option value="uploadAttachment" >Upload</option>
  127 + </select>
122 128 </td>
123 129 </tr>
124 130 </table>
... ... @@ -142,6 +148,8 @@
142 148 <!-- /row -->
143 149 </div>
144 150 <!-- /container -->
  151 +
  152 +
145 153 </div>
146 154 <!-- /main -->
147 155  
... ... @@ -829,6 +837,54 @@
829 837 </div>
830 838 </form>
831 839  
  840 +<form class="modal multi-step" id="demo-modal-6" name="uploadAttachmentForm">
  841 + <div class="modal-dialog modal-xs">
  842 + <div class="modal-content">
  843 + <div class="modal-body step-1" data-step="1" style="padding: 0;">
  844 + <div>
  845 + <div class="row" style="margin: 0;">
  846 + <div>
  847 + <div class="widget" style="margin-bottom: 0;">
  848 + <div class="widget-header">
  849 + <i class="icon-pencil"></i>
  850 + <i class="fa fa-tasks" aria-hidden="true"></i>
  851 + <h3>Upload Attachment</h3>
  852 + <div class="clearfix"></div>
  853 + </div>
  854 + <div class="widget-content" style="padding-left: 0; padding-right: 0; border-bottom: 0;">
  855 + <div class="col-xs-6">
  856 + <div class="col-xs-6">
  857 +
  858 + <div class="col-md-6">
  859 + <div class="pull-left" style="width: 110px;">
  860 + <label class="new-input-label"><b>Upload</b></label>
  861 + </div>
  862 + <div class="pull-left" style="width: calc(100% - 110px);">
  863 + <input type="file" ng-model="uploadFile.attachment">
  864 + <!--<md-datepicker ng-model="myDate" md-placeholder="Enter date"></md-datepicker>-->
  865 + </div>
  866 + <div class="clearfix"></div>
  867 + </div>
  868 + </div>
  869 + <div class="clearfix"></div><br>
  870 +
  871 + </div>
  872 + </div>
  873 + <div class="clearfix"></div>
  874 + </div>
  875 + </div>
  876 + </div>
  877 + </div>
  878 +
  879 + <div class="modal-footer" style="border-top: 0;">
  880 + <button type="button" class="btn btn-default" ng-click="cancelUploadAttachment()" data-dismiss="modal">Cancel</button>
  881 + <button type="button" class="btn btn-primary step step-1" data-step="1" ng-click="saveUploadAttachment(uploadFile.attachment)">Upload</button>
  882 + </div>
  883 + </div>
  884 + </div>
  885 +</div>
  886 +</form>
  887 +
832 888  
833 889  
834 890 <div class="myLoader" ng-show="showLoader">
... ...
app/partials/fuelOrders/fuelOrders.service.js
... ... @@ -37,6 +37,8 @@
37 37 return deferred.promise;
38 38 }
39 39  
  40 +
  41 +
40 42 this.dispathFuelOrder = function(data) {
41 43 var deferred = $q.defer();
42 44 $http({
... ... @@ -53,6 +55,34 @@
53 55 return deferred.promise;
54 56 }
55 57  
  58 + this.uploadAttachment = function (data) {
  59 + var fd = new FormData();
  60 +
  61 + angular.forEach(data, function(value, key) {
  62 + fd.append(key, value);
  63 + })
  64 +
  65 + var deffered = $q.defer();
  66 + $http({
  67 + method : 'POST',
  68 + transformRequest: angular.identity,
  69 + headers: {'Content-Type': undefined},
  70 + url : BASE_URL.url+'/fuelOrder/upload/invoice',
  71 + data : fd
  72 + })
  73 + .success(function (data, status, headers, config) {
  74 + //console.log(data);
  75 + deffered.resolve(status);
  76 + })
  77 + .error(function (data, status, headers, config) {
  78 + //console.log(data);
  79 + deffered.reject(status);
  80 + });
  81 + return deffered.promise;
  82 + }
  83 +
  84 +
  85 +
56 86 }
57 87  
58 88 })();
59 89 \ No newline at end of file
... ...
app/partials/login/login.service.js
... ... @@ -61,15 +61,15 @@
61 61 return deferred.promise;
62 62 }
63 63  
64   - // authService.setAuth = function(data) {
65   - // localStorage.setItem('loginStatus', data);
66   - // }
  64 + authService.setAuth = function(data) {
  65 + localStorage.setItem('loginStatus', data);
  66 + }
67 67  
68 68 authService.logout = function(data) {
69 69  
70   - // localStorage.clear();
71   - // $rootScope.isAuthenticated = false;
72   - // $rootScope.$broadcast(AUTH_EVENTS.updateUser);
  70 + localStorage.clear();
  71 + $rootScope.isAuthenticated = false;
  72 + $rootScope.$broadcast(AUTH_EVENTS.updateUser);
73 73  
74 74 var deferred = $q.defer();
75 75 $http({
... ...
app/partials/main/main.controller.js
... ... @@ -6,6 +6,7 @@
6 6 .controller('MainController', [ '$scope', '$filter', '$rootScope', '$state', MainController]);
7 7  
8 8 function MainController($scope, $filter, $rootScope, $state) {
  9 +
9 10  
10 11 }
11 12 })();
... ...
app/partials/main/main.html
... ... @@ -16,12 +16,13 @@
16 16 <li class="dropdown">
17 17 <a href="javscript:;" class="dropdown-toggle" data-toggle="dropdown">
18 18 <i class="icon-plane"></i>
19   - Latitiude Jet Center
  19 + Latitude Jet Center
20 20 <b class="caret"></b>
21 21 </a>
22 22 <ul class="dropdown-menu">
23   - <li><a href="javascript:;">FBO Profile</a></li>
24   - <li><a ui-sref="app.accountSetting">Account Settings</a></li>
  23 + <li ng-if="!isAuthenticated"><a href="javascript:;">My Profile</a></li>
  24 + <li ng-if="isAuthenticated"><a href="javascript:;">FBO Profile</a></li>
  25 + <li ng-if="isAuthenticated"><a ui-sref="app.accountSetting">Account Settings</a></li>
25 26 <li class="divider"></li>
26 27 <li><a href="#" ng-click="logout();">Logout</a></li>
27 28 </ul>
... ... @@ -41,13 +42,13 @@
41 42 </a>
42 43 <div class="collapse subnav-collapse">
43 44 <ul class="mainnav">
44   - <li>
  45 + <li ng-if="isAuthenticated">
45 46 <a ui-sref="app.dashboard">
46 47 <i class="fa fa-home"></i>
47 48 <span>Home</span>
48 49 </a>
49 50 </li>
50   - <li class="dropdown">
  51 + <li class="dropdown" ng-if="isAuthenticated">
51 52 <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
52 53 <i class="fa fa-tint"></i>
53 54 <span>Fuel Manager</span>
... ... @@ -67,7 +68,7 @@
67 68 <li><a href="#">Airport Taxes</a></li>
68 69 </ul>
69 70 </li>
70   - <li class="dropdown-submenu">
  71 + <li class="dropdown-submenu" >
71 72 <a tabindex="-1" href="#">Fuel Orders</a>
72 73 <ul class="dropdown-menu">
73 74 <li><a ui-sref="app.fuelOrders">Pending</a></li>
... ... @@ -78,7 +79,7 @@
78 79 </li>
79 80 </ul>
80 81 </li>
81   - <li class="dropdown">
  82 + <li class="dropdown" ng-if="isAuthenticated">
82 83 <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
83 84 <i class="fa fa-user"></i>
84 85 <span>Customers</span>
... ... @@ -91,13 +92,13 @@
91 92 <li><a ui-sref="app.analytics">Research Flight Dept</a></li>
92 93 </ul>
93 94 </li>
94   - <li class="">
  95 + <li ng-if="isAuthenticated">
95 96 <a ui-sref="app.scheduler">
96 97 <i class="fa fa-calendar"></i>
97 98 <span>Scheduler</span>
98 99 </a>
99 100 </li>
100   - <li class="dropdown">
  101 + <li class="dropdown" ng-if="isAuthenticated">
101 102 <a href="app.analytics:;" class="dropdown-toggle" data-toggle="dropdown">
102 103 <i class="fa fa-signal"></i>
103 104 <span>Analytics</span>
... ... @@ -112,6 +113,18 @@
112 113 <li><a href="#">Customer Lead Sources</a></li>
113 114 </ul>
114 115 </li>
  116 + <li ng-if="!isAuthenticated">
  117 + <a ui-sref="app.flightDepDashboard">
  118 + <i class="fa fa-search"></i>
  119 + <span>Search Fuel</span>
  120 + </a>
  121 + </li>
  122 + <li class="dropdown" ng-if="!isAuthenticated">
  123 + <a ui-sref="app.flightDepOrders" class="dropdown-toggle" data-toggle="dropdown">
  124 + <i class="fa fa-tint"></i>
  125 + <span>Fuel Orders</span>
  126 + </a>
  127 + </li>
115 128 </ul>
116 129 </div>
117 130 <!-- /.subnav-collapse -->
... ...