Commit 4bb02bb84245f3a8bad59f8140508dc369509b3a

Authored by Rishav
1 parent feacde5ffa
Exists in master

new integration with apis

Showing 80 changed files with 3898 additions and 1570 deletions   Show diff stats
app/css/custom.css
... ... @@ -69,4 +69,90 @@ table th, td{
69 69 background-color: #ff9900 !important;
70 70 color: #fff !important;
71 71 border: 1px solid #ff9900 !important;
72   -}
73 72 \ No newline at end of file
  73 +}
  74 +.pull-right-color{
  75 + background-image: linear-gradient(to bottom, #1c84c6 0%, #1c84c6 100%);
  76 +}
  77 +.pull-right-setup{
  78 + margin-bottom: 10px;
  79 + background-image: linear-gradient(to bottom, #1c84c6 0%, #1c84c6 100%);
  80 +}
  81 +.Airport{
  82 + padding-top: 5px;
  83 +}
  84 +.src-image{
  85 + width: 50px;
  86 + height: 50px;
  87 +}
  88 +.Accept{
  89 + padding-top: 25px;
  90 +}
  91 +.dis{
  92 + float: left;
  93 + margin-right:100px;
  94 +}
  95 +/*.email-password{
  96 + width: 40px;
  97 + height: 24px;
  98 +}*/
  99 +.email-password-icon{
  100 + width: 10px;
  101 + height: 10px;
  102 +}
  103 +@media( max-width: 768px;){
  104 +.btn{
  105 +font-size: 10px !important;
  106 +}
  107 +.dis{
  108 + float: none;
  109 + margin-right: 0px;
  110 +}
  111 +}
  112 +.Search-tabs{
  113 + border-bottom: 0px solid #ddd; */
  114 +}
  115 +
  116 +.customer-table table{
  117 + width: 100%;
  118 +}
  119 +.customer-table input{
  120 + border-radius: 0;
  121 + box-shadow: none;
  122 + border: 1px solid #e4e3e3;
  123 + padding: 0px;
  124 + font-size: 10px;
  125 + display: -webkit-inline-box;
  126 + display: inline-box;
  127 + height: 31px;
  128 +}
  129 +.customer-table select{
  130 + border-radius: 0;
  131 + box-shadow: none;
  132 + border: 1px solid #e4e3e3;
  133 + padding: 0px;
  134 + font-size: 10px;
  135 + height: 31px;
  136 + display: -webkit-inline-box;
  137 + display: inline-box;
  138 +}
  139 +.customer-table th > label{
  140 + font-weight: bold;
  141 + padding: 10px 5px 2px 5px;
  142 + margin-bottom: 0;
  143 +}
  144 +.customer-table td{
  145 + padding: 5px !important;
  146 + height: auto !important;
  147 + vertical-align: middle !important;
  148 +}
  149 +.customer-table td > select{
  150 + height: 22px !important;
  151 +}
  152 +.customer-table td > button{
  153 + font-size: 10px;
  154 +}
  155 +
  156 +/*.new-input-label{
  157 + margin-bottom: 0;
  158 + line-height: 34px;
  159 +}*/
74 160 \ No newline at end of file
... ...
... ... @@ -24,9 +24,6 @@ background: #f3f3f3;
24 24  
25 25 }
26 26  
27   -
28   -
29   -
30 27 .account-container {
31 28 width: 390px;
32 29 display: block;
... ...
app/img/images.jpg

6.67 KB

... ... @@ -14,6 +14,9 @@
14 14 <link rel="stylesheet" href="bower_components/fullcalendar/dist/fullcalendar.print.min.css"/>
15 15 <link rel="stylesheet" href="bower_components/toastr/toastr.min.css"/>
16 16 <link rel="stylesheet" href="bower_components/angular-bootstrap/ui-bootstrap-csp.css"/>
  17 + <link href="bower_components/jqGrid/css/ui.jqgrid.css" rel="stylesheet">
  18 + <link href="bower_components/angular-xeditable/dist/css/xeditable.css" rel="stylesheet">
  19 +
17 20  
18 21 <link rel="stylesheet" href="css/main.css"/>
19 22 <link rel="stylesheet" href="css/base-admin-3.css"/>
... ... @@ -33,7 +36,7 @@
33 36 <link href="js/plugins/msgbox/jquery.msgbox.css" rel="stylesheet">
34 37 <link href="css/pages/pricing.css" rel="stylesheet">
35 38 <link href="css/pages/reports.css" rel="stylesheet">
36   -
  39 +
37 40  
38 41  
39 42 </head>
... ... @@ -54,18 +57,27 @@
54 57  
55 58 <script src="bower_components/angular/angular.min.js"></script>
56 59 <script src="bower_components/angular-route/angular-route.js"></script>
  60 + <script src="bower_components/angular-cookies/angular-cookies.min.js"></script>
  61 + <script src="bower_components/angular-resource/angular-resource.min.js"></script>
57 62 <script src="bower_components/angular-animate/angular-animate.js"></script>
58 63 <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script>
59 64 <script src="bower_components/bootstrap-toggle/js/bootstrap-toggle.min.js"></script>
60 65 <script src="bower_components/angular-ui-router/release/angular-ui-router.min.js"></script>
61 66 <script src='bower_components/moment/min/moment.min.js'></script>
62 67 <script src="bower_components/fullcalendar/dist/fullcalendar.min.js"></script>
63   -
64 68 <script src='bower_components/toastr/toastr.min.js'></script>
65 69 <script src="bower_components/angular-bootstrap/ui-bootstrap.min.js"></script>
66 70 <script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"></script>
  71 + <script src="bower_components/jqGrid/js/i18n/grid.locale-en.js"></script>
  72 + <script src="bower_components/jqGrid/js/jquery.jqGrid.min.js"></script>
  73 + <script src="bower_components/angular-xeditable/dist/js/xeditable.js"></script>
67 74  
68 75  
  76 + <!--
  77 + <script src="scripts/inspinia.js"></script>
  78 + <script src="plugins/iCheck/icheck.min.js"></script>
  79 + -->
  80 +
69 81 <!-- <script src="./js/Application.js"></script>
70 82 <script src="js/charts/area.js"></script>
71 83 <script src="js/charts/donut.js"></script>
... ... @@ -75,23 +87,17 @@
75 87 <script src="js/charts/line.js"></script> -->
76 88 <script src="js/demo/faq.js"></script>
77 89 <script src="js/plugins/faq/faq.js"></script>
78   -
79 90 <script src="js/demo/gallery.js"></script>
80 91 <script src="js/demo/sliders.js"></script>
81 92 <script src="js/plugins/msgGrowl/js/msgGrowl.js"></script>
82   -
83 93 <script src="js/demo/notifications.js"></script>
84   -
85   -
86   -
87 94 <script src="http://cdn.ckeditor.com/4.6.1/standard-all/ckeditor.js"></script>
88 95 <script src="https://code.highcharts.com/maps/highmaps.js"></script>
89 96 <script src="https://code.highcharts.com/maps/modules/data.js"></script>
90 97 <script src="https://code.highcharts.com/mapdata/countries/us/us-all.js"></script>
91   -
92   -
93   -
  98 + <!-- Controllers -->
94 99 <script src="js/app.js"></script>
  100 + <script src="js/app.constant.js"></script>
95 101 <script src="partials/login/login.controller.js"></script>
96 102 <script src="partials/customers/customers.controller.js"></script>
97 103 <script src="partials/analytics/analytics.controller.js"></script>
... ... @@ -112,7 +118,58 @@
112 118 <script src="partials/viewCompany/viewCompany.controller.js"></script>
113 119 <script src="partials/widgetTemplate/widgetTemplate.controller.js"></script>
114 120 <script src="partials/dashboard/dashboard.controller.js"></script>
  121 + <script src="partials/AirList/AirList.controller.js"></script>
  122 + <script src="partials/fuelOrders/fuelOrders.controller.js"></script>
  123 + <script src="partials/DispatchFuel/DispatchFuel.controller.js"></script>
  124 + <script src="partials/searchDispatchFuel/searchDispatchFuel.controller.js"></script>
  125 + <script src="partials/NewCompany/NewCompany.controller.js"></script>
  126 + <script src="partials/Accept/Accept.controller.js"></script>
  127 + <!-- <script src="partials/AircraftList/AircraftList.controller.js"></script> -->
  128 + <script src="partials/ContactView/ContactView.controller.js"></script>
  129 + <script src="partials/FuelVendors/FuelVendors.controller.js"></script>
  130 + <script src="partials/delselected/delselected.controller.js"></script>
  131 + <script src="partials/pricingcontact/pricingcontact.controller.js"></script>
  132 + <script src="partials/AntiochFlightDepartment/AntiochFlightDepartment.controller.js"></script>
  133 +
115 134 <script src="partials/main/main.controller.js"></script>
116 135 <div ui-view></div>
  136 + <!-- End controllers -->
  137 +
  138 +
  139 + <!-- services -->
  140 + <script src="partials/login/login.service.js"></script>
  141 + <script src="partials/customers/customers.service.js"></script>
  142 + <script src="partials/analytics/analytics.service.js"></script>
  143 + <script src="partials/account/account.service.js"></script>
  144 + <script src="partials/elements/elements.service.js"></script>
  145 + <script src="partials/error/error.service.js"></script>
  146 + <script src="partials/faq/faq.service.js"></script>
  147 + <script src="partials/forms/forms.service.js"></script>
  148 + <script src="partials/fuelManager/fuelManager.service.js"></script>
  149 + <script src="partials/gallery/gallery.service.js"></script>
  150 + <script src="partials/jqueryui/jqueryui.service.js"></script>
  151 + <script src="partials/popups/popups.service.js"></script>
  152 + <script src="partials/pricing/pricing.service.js"></script>
  153 + <script src="partials/reports/reports.service.js"></script>
  154 + <script src="partials/scheduler/scheduler.service.js"></script>
  155 + <script src="partials/signup/signup.service.js"></script>
  156 + <script src="partials/updateFuelManager/updateFuelManager.service.js"></script>
  157 + <script src="partials/viewCompany/viewCompany.service.js"></script>
  158 + <script src="partials/widgetTemplate/widgetTemplate.service.js"></script>
  159 + <script src="partials/dashboard/dashboard.service.js"></script>
  160 + <script src="partials/AirList/AirList.service.js"></script>
  161 + <script src="partials/fuelOrders/fuelOrders.service.js"></script>
  162 + <script src="partials/DispatchFuel/DispatchFuel.service.js"></script>
  163 + <script src="partials/searchDispatchFuel/searchDispatchFuel.service.js"></script>
  164 + <script src="partials/NewCompany/NewCompany.service.js"></script>
  165 + <script src="partials/Accept/Accept.service.js"></script>
  166 + <!-- <script src="partials/AircraftList/AircraftList.controller.js"></script> -->
  167 + <script src="partials/ContactView/ContactView.service.js"></script>
  168 + <script src="partials/FuelVendors/FuelVendors.service.js"></script>
  169 + <script src="partials/delselected/delselected.service.js"></script>
  170 + <script src="partials/pricingcontact/pricingcontact.service.js"></script>
  171 + <script src="partials/AntiochFlightDepartment/AntiochFlightDepartment.service.js"></script>
  172 +
  173 + <script src="partials/main/main.service.js"></script>
117 174 </body>
118 175 </html>
119 176 \ No newline at end of file
... ...
app/js/angular-cookies.js
... ... @@ -1,320 +0,0 @@
1   -/**
2   - * @license AngularJS v1.4.0
3   - * (c) 2010-2015 Google, Inc. http://angularjs.org
4   - * License: MIT
5   - */
6   -(function(window, angular, undefined) {'use strict';
7   -
8   -/**
9   - * @ngdoc module
10   - * @name ngCookies
11   - * @description
12   - *
13   - * # ngCookies
14   - *
15   - * The `ngCookies` module provides a convenient wrapper for reading and writing browser cookies.
16   - *
17   - *
18   - * <div doc-module-components="ngCookies"></div>
19   - *
20   - * See {@link ngCookies.$cookies `$cookies`} and
21   - * {@link ngCookies.$cookieStore `$cookieStore`} for usage.
22   - */
23   -
24   -
25   -angular.module('ngCookies', ['ng']).
26   - /**
27   - * @ngdoc provider
28   - * @name $cookiesProvider
29   - * @description
30   - * Use `$cookiesProvider` to change the default behavior of the {@link ngCookies.$cookies $cookies} service.
31   - * */
32   - provider('$cookies', [function $CookiesProvider() {
33   - /**
34   - * @ngdoc property
35   - * @name $cookiesProvider#defaults
36   - * @description
37   - *
38   - * Object containing default options to pass when setting cookies.
39   - *
40   - * The object may have following properties:
41   - *
42   - * - **path** - `{string}` - The cookie will be available only for this path and its
43   - * sub-paths. By default, this would be the URL that appears in your base tag.
44   - * - **domain** - `{string}` - The cookie will be available only for this domain and
45   - * its sub-domains. For obvious security reasons the user agent will not accept the
46   - * cookie if the current domain is not a sub domain or equals to the requested domain.
47   - * - **expires** - `{string|Date}` - String of the form "Wdy, DD Mon YYYY HH:MM:SS GMT"
48   - * or a Date object indicating the exact date/time this cookie will expire.
49   - * - **secure** - `{boolean}` - The cookie will be available only in secured connection.
50   - *
51   - * Note: by default the address that appears in your <base> tag will be used as path.
52   - * This is import so that cookies will be visible for all routes in case html5mode is enabled
53   - *
54   - **/
55   - var defaults = this.defaults = {};
56   -
57   - function calcOptions(options) {
58   - return options ? angular.extend({}, defaults, options) : defaults;
59   - }
60   -
61   - /**
62   - * @ngdoc service
63   - * @name $cookies
64   - *
65   - * @description
66   - * Provides read/write access to browser's cookies.
67   - *
68   - * BREAKING CHANGE: `$cookies` no longer exposes properties that represent the
69   - * current browser cookie values. Now you must use the get/put/remove/etc. methods
70   - * as described below.
71   - *
72   - * Requires the {@link ngCookies `ngCookies`} module to be installed.
73   - *
74   - * @example
75   - *
76   - * ```js
77   - * angular.module('cookiesExample', ['ngCookies'])
78   - * .controller('ExampleController', ['$cookies', function($cookies) {
79   - * // Retrieving a cookie
80   - * var favoriteCookie = $cookies.get('myFavorite');
81   - * // Setting a cookie
82   - * $cookies.put('myFavorite', 'oatmeal');
83   - * }]);
84   - * ```
85   - */
86   - this.$get = ['$$cookieReader', '$$cookieWriter', function($$cookieReader, $$cookieWriter) {
87   - return {
88   - /**
89   - * @ngdoc method
90   - * @name $cookies#get
91   - *
92   - * @description
93   - * Returns the value of given cookie key
94   - *
95   - * @param {string} key Id to use for lookup.
96   - * @returns {string} Raw cookie value.
97   - */
98   - get: function(key) {
99   - return $$cookieReader()[key];
100   - },
101   -
102   - /**
103   - * @ngdoc method
104   - * @name $cookies#getObject
105   - *
106   - * @description
107   - * Returns the deserialized value of given cookie key
108   - *
109   - * @param {string} key Id to use for lookup.
110   - * @returns {Object} Deserialized cookie value.
111   - */
112   - getObject: function(key) {
113   - var value = this.get(key);
114   - return value ? angular.fromJson(value) : value;
115   - },
116   -
117   - /**
118   - * @ngdoc method
119   - * @name $cookies#getAll
120   - *
121   - * @description
122   - * Returns a key value object with all the cookies
123   - *
124   - * @returns {Object} All cookies
125   - */
126   - getAll: function() {
127   - return $$cookieReader();
128   - },
129   -
130   - /**
131   - * @ngdoc method
132   - * @name $cookies#put
133   - *
134   - * @description
135   - * Sets a value for given cookie key
136   - *
137   - * @param {string} key Id for the `value`.
138   - * @param {string} value Raw value to be stored.
139   - * @param {Object=} options Options object.
140   - * See {@link ngCookies.$cookiesProvider#defaults $cookiesProvider.defaults}
141   - */
142   - put: function(key, value, options) {
143   - $$cookieWriter(key, value, calcOptions(options));
144   - },
145   -
146   - /**
147   - * @ngdoc method
148   - * @name $cookies#putObject
149   - *
150   - * @description
151   - * Serializes and sets a value for given cookie key
152   - *
153   - * @param {string} key Id for the `value`.
154   - * @param {Object} value Value to be stored.
155   - * @param {Object=} options Options object.
156   - * See {@link ngCookies.$cookiesProvider#defaults $cookiesProvider.defaults}
157   - */
158   - putObject: function(key, value, options) {
159   - this.put(key, angular.toJson(value), options);
160   - },
161   -
162   - /**
163   - * @ngdoc method
164   - * @name $cookies#remove
165   - *
166   - * @description
167   - * Remove given cookie
168   - *
169   - * @param {string} key Id of the key-value pair to delete.
170   - * @param {Object=} options Options object.
171   - * See {@link ngCookies.$cookiesProvider#defaults $cookiesProvider.defaults}
172   - */
173   - remove: function(key, options) {
174   - $$cookieWriter(key, undefined, calcOptions(options));
175   - }
176   - };
177   - }];
178   - }]);
179   -
180   -angular.module('ngCookies').
181   -/**
182   - * @ngdoc service
183   - * @name $cookieStore
184   - * @deprecated
185   - * @requires $cookies
186   - *
187   - * @description
188   - * Provides a key-value (string-object) storage, that is backed by session cookies.
189   - * Objects put or retrieved from this storage are automatically serialized or
190   - * deserialized by angular's toJson/fromJson.
191   - *
192   - * Requires the {@link ngCookies `ngCookies`} module to be installed.
193   - *
194   - * <div class="alert alert-danger">
195   - * **Note:** The $cookieStore service is deprecated.
196   - * Please use the {@link ngCookies.$cookies `$cookies`} service instead.
197   - * </div>
198   - *
199   - * @example
200   - *
201   - * ```js
202   - * angular.module('cookieStoreExample', ['ngCookies'])
203   - * .controller('ExampleController', ['$cookieStore', function($cookieStore) {
204   - * // Put cookie
205   - * $cookieStore.put('myFavorite','oatmeal');
206   - * // Get cookie
207   - * var favoriteCookie = $cookieStore.get('myFavorite');
208   - * // Removing a cookie
209   - * $cookieStore.remove('myFavorite');
210   - * }]);
211   - * ```
212   - */
213   - factory('$cookieStore', ['$cookies', function($cookies) {
214   -
215   - return {
216   - /**
217   - * @ngdoc method
218   - * @name $cookieStore#get
219   - *
220   - * @description
221   - * Returns the value of given cookie key
222   - *
223   - * @param {string} key Id to use for lookup.
224   - * @returns {Object} Deserialized cookie value, undefined if the cookie does not exist.
225   - */
226   - get: function(key) {
227   - return $cookies.getObject(key);
228   - },
229   -
230   - /**
231   - * @ngdoc method
232   - * @name $cookieStore#put
233   - *
234   - * @description
235   - * Sets a value for given cookie key
236   - *
237   - * @param {string} key Id for the `value`.
238   - * @param {Object} value Value to be stored.
239   - */
240   - put: function(key, value) {
241   - $cookies.putObject(key, value);
242   - },
243   -
244   - /**
245   - * @ngdoc method
246   - * @name $cookieStore#remove
247   - *
248   - * @description
249   - * Remove given cookie
250   - *
251   - * @param {string} key Id of the key-value pair to delete.
252   - */
253   - remove: function(key) {
254   - $cookies.remove(key);
255   - }
256   - };
257   -
258   - }]);
259   -
260   -/**
261   - * @name $$cookieWriter
262   - * @requires $document
263   - *
264   - * @description
265   - * This is a private service for writing cookies
266   - *
267   - * @param {string} name Cookie name
268   - * @param {string=} value Cookie value (if undefined, cookie will be deleted)
269   - * @param {Object=} options Object with options that need to be stored for the cookie.
270   - */
271   -function $$CookieWriter($document, $log, $browser) {
272   - var cookiePath = $browser.baseHref();
273   - var rawDocument = $document[0];
274   -
275   - function buildCookieString(name, value, options) {
276   - var path, expires;
277   - options = options || {};
278   - expires = options.expires;
279   - path = angular.isDefined(options.path) ? options.path : cookiePath;
280   - if (value === undefined) {
281   - expires = 'Thu, 01 Jan 1970 00:00:00 GMT';
282   - value = '';
283   - }
284   - if (angular.isString(expires)) {
285   - expires = new Date(expires);
286   - }
287   -
288   - var str = encodeURIComponent(name) + '=' + encodeURIComponent(value);
289   - str += path ? ';path=' + path : '';
290   - str += options.domain ? ';domain=' + options.domain : '';
291   - str += expires ? ';expires=' + expires.toUTCString() : '';
292   - str += options.secure ? ';secure' : '';
293   -
294   - // per http://www.ietf.org/rfc/rfc2109.txt browser must allow at minimum:
295   - // - 300 cookies
296   - // - 20 cookies per unique domain
297   - // - 4096 bytes per cookie
298   - var cookieLength = str.length + 1;
299   - if (cookieLength > 4096) {
300   - $log.warn("Cookie '" + name +
301   - "' possibly not set or overflowed because it was too large (" +
302   - cookieLength + " > 4096 bytes)!");
303   - }
304   -
305   - return str;
306   - }
307   -
308   - return function(name, value, options) {
309   - rawDocument.cookie = buildCookieString(name, value, options);
310   - };
311   -}
312   -
313   -$$CookieWriter.$inject = ['$document', '$log', '$browser'];
314   -
315   -angular.module('ngCookies').provider('$$cookieWriter', function $$CookieWriterProvider() {
316   - this.$get = $$CookieWriter;
317   -});
318   -
319   -
320   -})(window, window.angular);
app/js/angular-loader.js
... ... @@ -1,429 +0,0 @@
1   -/**
2   - * @license AngularJS v1.4.0
3   - * (c) 2010-2015 Google, Inc. http://angularjs.org
4   - * License: MIT
5   - */
6   -
7   -(function() {'use strict';
8   -
9   -/**
10   - * @description
11   - *
12   - * This object provides a utility for producing rich Error messages within
13   - * Angular. It can be called as follows:
14   - *
15   - * var exampleMinErr = minErr('example');
16   - * throw exampleMinErr('one', 'This {0} is {1}', foo, bar);
17   - *
18   - * The above creates an instance of minErr in the example namespace. The
19   - * resulting error will have a namespaced error code of example.one. The
20   - * resulting error will replace {0} with the value of foo, and {1} with the
21   - * value of bar. The object is not restricted in the number of arguments it can
22   - * take.
23   - *
24   - * If fewer arguments are specified than necessary for interpolation, the extra
25   - * interpolation markers will be preserved in the final string.
26   - *
27   - * Since data will be parsed statically during a build step, some restrictions
28   - * are applied with respect to how minErr instances are created and called.
29   - * Instances should have names of the form namespaceMinErr for a minErr created
30   - * using minErr('namespace') . Error codes, namespaces and template strings
31   - * should all be static strings, not variables or general expressions.
32   - *
33   - * @param {string} module The namespace to use for the new minErr instance.
34   - * @param {function} ErrorConstructor Custom error constructor to be instantiated when returning
35   - * error from returned function, for cases when a particular type of error is useful.
36   - * @returns {function(code:string, template:string, ...templateArgs): Error} minErr instance
37   - */
38   -
39   -function minErr(module, ErrorConstructor) {
40   - ErrorConstructor = ErrorConstructor || Error;
41   - return function() {
42   - var SKIP_INDEXES = 2;
43   -
44   - var templateArgs = arguments,
45   - code = templateArgs[0],
46   - message = '[' + (module ? module + ':' : '') + code + '] ',
47   - template = templateArgs[1],
48   - paramPrefix, i;
49   -
50   - message += template.replace(/\{\d+\}/g, function(match) {
51   - var index = +match.slice(1, -1),
52   - shiftedIndex = index + SKIP_INDEXES;
53   -
54   - if (shiftedIndex < templateArgs.length) {
55   - return toDebugString(templateArgs[shiftedIndex]);
56   - }
57   -
58   - return match;
59   - });
60   -
61   - message += '\nhttp://errors.angularjs.org/1.4.0/' +
62   - (module ? module + '/' : '') + code;
63   -
64   - for (i = SKIP_INDEXES, paramPrefix = '?'; i < templateArgs.length; i++, paramPrefix = '&') {
65   - message += paramPrefix + 'p' + (i - SKIP_INDEXES) + '=' +
66   - encodeURIComponent(toDebugString(templateArgs[i]));
67   - }
68   -
69   - return new ErrorConstructor(message);
70   - };
71   -}
72   -
73   -/**
74   - * @ngdoc type
75   - * @name angular.Module
76   - * @module ng
77   - * @description
78   - *
79   - * Interface for configuring angular {@link angular.module modules}.
80   - */
81   -
82   -function setupModuleLoader(window) {
83   -
84   - var $injectorMinErr = minErr('$injector');
85   - var ngMinErr = minErr('ng');
86   -
87   - function ensure(obj, name, factory) {
88   - return obj[name] || (obj[name] = factory());
89   - }
90   -
91   - var angular = ensure(window, 'angular', Object);
92   -
93   - // We need to expose `angular.$$minErr` to modules such as `ngResource` that reference it during bootstrap
94   - angular.$$minErr = angular.$$minErr || minErr;
95   -
96   - return ensure(angular, 'module', function() {
97   - /** @type {Object.<string, angular.Module>} */
98   - var modules = {};
99   -
100   - /**
101   - * @ngdoc function
102   - * @name angular.module
103   - * @module ng
104   - * @description
105   - *
106   - * The `angular.module` is a global place for creating, registering and retrieving Angular
107   - * modules.
108   - * All modules (angular core or 3rd party) that should be available to an application must be
109   - * registered using this mechanism.
110   - *
111   - * When passed two or more arguments, a new module is created. If passed only one argument, an
112   - * existing module (the name passed as the first argument to `module`) is retrieved.
113   - *
114   - *
115   - * # Module
116   - *
117   - * A module is a collection of services, directives, controllers, filters, and configuration information.
118   - * `angular.module` is used to configure the {@link auto.$injector $injector}.
119   - *
120   - * ```js
121   - * // Create a new module
122   - * var myModule = angular.module('myModule', []);
123   - *
124   - * // register a new service
125   - * myModule.value('appName', 'MyCoolApp');
126   - *
127   - * // configure existing services inside initialization blocks.
128   - * myModule.config(['$locationProvider', function($locationProvider) {
129   - * // Configure existing providers
130   - * $locationProvider.hashPrefix('!');
131   - * }]);
132   - * ```
133   - *
134   - * Then you can create an injector and load your modules like this:
135   - *
136   - * ```js
137   - * var injector = angular.injector(['ng', 'myModule'])
138   - * ```
139   - *
140   - * However it's more likely that you'll just use
141   - * {@link ng.directive:ngApp ngApp} or
142   - * {@link angular.bootstrap} to simplify this process for you.
143   - *
144   - * @param {!string} name The name of the module to create or retrieve.
145   - * @param {!Array.<string>=} requires If specified then new module is being created. If
146   - * unspecified then the module is being retrieved for further configuration.
147   - * @param {Function=} configFn Optional configuration function for the module. Same as
148   - * {@link angular.Module#config Module#config()}.
149   - * @returns {module} new module with the {@link angular.Module} api.
150   - */
151   - return function module(name, requires, configFn) {
152   - var assertNotHasOwnProperty = function(name, context) {
153   - if (name === 'hasOwnProperty') {
154   - throw ngMinErr('badname', 'hasOwnProperty is not a valid {0} name', context);
155   - }
156   - };
157   -
158   - assertNotHasOwnProperty(name, 'module');
159   - if (requires && modules.hasOwnProperty(name)) {
160   - modules[name] = null;
161   - }
162   - return ensure(modules, name, function() {
163   - if (!requires) {
164   - throw $injectorMinErr('nomod', "Module '{0}' is not available! You either misspelled " +
165   - "the module name or forgot to load it. If registering a module ensure that you " +
166   - "specify the dependencies as the second argument.", name);
167   - }
168   -
169   - /** @type {!Array.<Array.<*>>} */
170   - var invokeQueue = [];
171   -
172   - /** @type {!Array.<Function>} */
173   - var configBlocks = [];
174   -
175   - /** @type {!Array.<Function>} */
176   - var runBlocks = [];
177   -
178   - var config = invokeLater('$injector', 'invoke', 'push', configBlocks);
179   -
180   - /** @type {angular.Module} */
181   - var moduleInstance = {
182   - // Private state
183   - _invokeQueue: invokeQueue,
184   - _configBlocks: configBlocks,
185   - _runBlocks: runBlocks,
186   -
187   - /**
188   - * @ngdoc property
189   - * @name angular.Module#requires
190   - * @module ng
191   - *
192   - * @description
193   - * Holds the list of modules which the injector will load before the current module is
194   - * loaded.
195   - */
196   - requires: requires,
197   -
198   - /**
199   - * @ngdoc property
200   - * @name angular.Module#name
201   - * @module ng
202   - *
203   - * @description
204   - * Name of the module.
205   - */
206   - name: name,
207   -
208   -
209   - /**
210   - * @ngdoc method
211   - * @name angular.Module#provider
212   - * @module ng
213   - * @param {string} name service name
214   - * @param {Function} providerType Construction function for creating new instance of the
215   - * service.
216   - * @description
217   - * See {@link auto.$provide#provider $provide.provider()}.
218   - */
219   - provider: invokeLater('$provide', 'provider'),
220   -
221   - /**
222   - * @ngdoc method
223   - * @name angular.Module#factory
224   - * @module ng
225   - * @param {string} name service name
226   - * @param {Function} providerFunction Function for creating new instance of the service.
227   - * @description
228   - * See {@link auto.$provide#factory $provide.factory()}.
229   - */
230   - factory: invokeLater('$provide', 'factory'),
231   -
232   - /**
233   - * @ngdoc method
234   - * @name angular.Module#service
235   - * @module ng
236   - * @param {string} name service name
237   - * @param {Function} constructor A constructor function that will be instantiated.
238   - * @description
239   - * See {@link auto.$provide#service $provide.service()}.
240   - */
241   - service: invokeLater('$provide', 'service'),
242   -
243   - /**
244   - * @ngdoc method
245   - * @name angular.Module#value
246   - * @module ng
247   - * @param {string} name service name
248   - * @param {*} object Service instance object.
249   - * @description
250   - * See {@link auto.$provide#value $provide.value()}.
251   - */
252   - value: invokeLater('$provide', 'value'),
253   -
254   - /**
255   - * @ngdoc method
256   - * @name angular.Module#constant
257   - * @module ng
258   - * @param {string} name constant name
259   - * @param {*} object Constant value.
260   - * @description
261   - * Because the constant are fixed, they get applied before other provide methods.
262   - * See {@link auto.$provide#constant $provide.constant()}.
263   - */
264   - constant: invokeLater('$provide', 'constant', 'unshift'),
265   -
266   - /**
267   - * @ngdoc method
268   - * @name angular.Module#decorator
269   - * @module ng
270   - * @param {string} The name of the service to decorate.
271   - * @param {Function} This function will be invoked when the service needs to be
272   - * instantiated and should return the decorated service instance.
273   - * @description
274   - * See {@link auto.$provide#decorator $provide.decorator()}.
275   - */
276   - decorator: invokeLater('$provide', 'decorator'),
277   -
278   - /**
279   - * @ngdoc method
280   - * @name angular.Module#animation
281   - * @module ng
282   - * @param {string} name animation name
283   - * @param {Function} animationFactory Factory function for creating new instance of an
284   - * animation.
285   - * @description
286   - *
287   - * **NOTE**: animations take effect only if the **ngAnimate** module is loaded.
288   - *
289   - *
290   - * Defines an animation hook that can be later used with
291   - * {@link $animate $animate} service and directives that use this service.
292   - *
293   - * ```js
294   - * module.animation('.animation-name', function($inject1, $inject2) {
295   - * return {
296   - * eventName : function(element, done) {
297   - * //code to run the animation
298   - * //once complete, then run done()
299   - * return function cancellationFunction(element) {
300   - * //code to cancel the animation
301   - * }
302   - * }
303   - * }
304   - * })
305   - * ```
306   - *
307   - * See {@link ng.$animateProvider#register $animateProvider.register()} and
308   - * {@link ngAnimate ngAnimate module} for more information.
309   - */
310   - animation: invokeLater('$animateProvider', 'register'),
311   -
312   - /**
313   - * @ngdoc method
314   - * @name angular.Module#filter
315   - * @module ng
316   - * @param {string} name Filter name - this must be a valid angular expression identifier
317   - * @param {Function} filterFactory Factory function for creating new instance of filter.
318   - * @description
319   - * See {@link ng.$filterProvider#register $filterProvider.register()}.
320   - *
321   - * <div class="alert alert-warning">
322   - * **Note:** Filter names must be valid angular {@link expression} identifiers, such as `uppercase` or `orderBy`.
323   - * Names with special characters, such as hyphens and dots, are not allowed. If you wish to namespace
324   - * your filters, then you can use capitalization (`myappSubsectionFilterx`) or underscores
325   - * (`myapp_subsection_filterx`).
326   - * </div>
327   - */
328   - filter: invokeLater('$filterProvider', 'register'),
329   -
330   - /**
331   - * @ngdoc method
332   - * @name angular.Module#controller
333   - * @module ng
334   - * @param {string|Object} name Controller name, or an object map of controllers where the
335   - * keys are the names and the values are the constructors.
336   - * @param {Function} constructor Controller constructor function.
337   - * @description
338   - * See {@link ng.$controllerProvider#register $controllerProvider.register()}.
339   - */
340   - controller: invokeLater('$controllerProvider', 'register'),
341   -
342   - /**
343   - * @ngdoc method
344   - * @name angular.Module#directive
345   - * @module ng
346   - * @param {string|Object} name Directive name, or an object map of directives where the
347   - * keys are the names and the values are the factories.
348   - * @param {Function} directiveFactory Factory function for creating new instance of
349   - * directives.
350   - * @description
351   - * See {@link ng.$compileProvider#directive $compileProvider.directive()}.
352   - */
353   - directive: invokeLater('$compileProvider', 'directive'),
354   -
355   - /**
356   - * @ngdoc method
357   - * @name angular.Module#config
358   - * @module ng
359   - * @param {Function} configFn Execute this function on module load. Useful for service
360   - * configuration.
361   - * @description
362   - * Use this method to register work which needs to be performed on module loading.
363   - * For more about how to configure services, see
364   - * {@link providers#provider-recipe Provider Recipe}.
365   - */
366   - config: config,
367   -
368   - /**
369   - * @ngdoc method
370   - * @name angular.Module#run
371   - * @module ng
372   - * @param {Function} initializationFn Execute this function after injector creation.
373   - * Useful for application initialization.
374   - * @description
375   - * Use this method to register work which should be performed when the injector is done
376   - * loading all modules.
377   - */
378   - run: function(block) {
379   - runBlocks.push(block);
380   - return this;
381   - }
382   - };
383   -
384   - if (configFn) {
385   - config(configFn);
386   - }
387   -
388   - return moduleInstance;
389   -
390   - /**
391   - * @param {string} provider
392   - * @param {string} method
393   - * @param {String=} insertMethod
394   - * @returns {angular.Module}
395   - */
396   - function invokeLater(provider, method, insertMethod, queue) {
397   - if (!queue) queue = invokeQueue;
398   - return function() {
399   - queue[insertMethod || 'push']([provider, method, arguments]);
400   - return moduleInstance;
401   - };
402   - }
403   - });
404   - };
405   - });
406   -
407   -}
408   -
409   -setupModuleLoader(window);
410   -})(window);
411   -
412   -/**
413   - * Closure compiler type information
414   - *
415   - * @typedef { {
416   - * requires: !Array.<string>,
417   - * invokeQueue: !Array.<Array.<*>>,
418   - *
419   - * service: function(string, Function):angular.Module,
420   - * factory: function(string, Function):angular.Module,
421   - * value: function(string, *):angular.Module,
422   - *
423   - * filter: function(string, Function):angular.Module,
424   - *
425   - * init: function(Function):angular.Module
426   - * } }
427   - */
428   -angular.Module;
429   -
app/js/angular-resource.js
... ... @@ -1,668 +0,0 @@
1   -/**
2   - * @license AngularJS v1.4.0
3   - * (c) 2010-2015 Google, Inc. http://angularjs.org
4   - * License: MIT
5   - */
6   -(function(window, angular, undefined) {'use strict';
7   -
8   -var $resourceMinErr = angular.$$minErr('$resource');
9   -
10   -// Helper functions and regex to lookup a dotted path on an object
11   -// stopping at undefined/null. The path must be composed of ASCII
12   -// identifiers (just like $parse)
13   -var MEMBER_NAME_REGEX = /^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;
14   -
15   -function isValidDottedPath(path) {
16   - return (path != null && path !== '' && path !== 'hasOwnProperty' &&
17   - MEMBER_NAME_REGEX.test('.' + path));
18   -}
19   -
20   -function lookupDottedPath(obj, path) {
21   - if (!isValidDottedPath(path)) {
22   - throw $resourceMinErr('badmember', 'Dotted member path "@{0}" is invalid.', path);
23   - }
24   - var keys = path.split('.');
25   - for (var i = 0, ii = keys.length; i < ii && obj !== undefined; i++) {
26   - var key = keys[i];
27   - obj = (obj !== null) ? obj[key] : undefined;
28   - }
29   - return obj;
30   -}
31   -
32   -/**
33   - * Create a shallow copy of an object and clear other fields from the destination
34   - */
35   -function shallowClearAndCopy(src, dst) {
36   - dst = dst || {};
37   -
38   - angular.forEach(dst, function(value, key) {
39   - delete dst[key];
40   - });
41   -
42   - for (var key in src) {
43   - if (src.hasOwnProperty(key) && !(key.charAt(0) === '$' && key.charAt(1) === '$')) {
44   - dst[key] = src[key];
45   - }
46   - }
47   -
48   - return dst;
49   -}
50   -
51   -/**
52   - * @ngdoc module
53   - * @name ngResource
54   - * @description
55   - *
56   - * # ngResource
57   - *
58   - * The `ngResource` module provides interaction support with RESTful services
59   - * via the $resource service.
60   - *
61   - *
62   - * <div doc-module-components="ngResource"></div>
63   - *
64   - * See {@link ngResource.$resource `$resource`} for usage.
65   - */
66   -
67   -/**
68   - * @ngdoc service
69   - * @name $resource
70   - * @requires $http
71   - *
72   - * @description
73   - * A factory which creates a resource object that lets you interact with
74   - * [RESTful](http://en.wikipedia.org/wiki/Representational_State_Transfer) server-side data sources.
75   - *
76   - * The returned resource object has action methods which provide high-level behaviors without
77   - * the need to interact with the low level {@link ng.$http $http} service.
78   - *
79   - * Requires the {@link ngResource `ngResource`} module to be installed.
80   - *
81   - * By default, trailing slashes will be stripped from the calculated URLs,
82   - * which can pose problems with server backends that do not expect that
83   - * behavior. This can be disabled by configuring the `$resourceProvider` like
84   - * this:
85   - *
86   - * ```js
87   - app.config(['$resourceProvider', function($resourceProvider) {
88   - // Don't strip trailing slashes from calculated URLs
89   - $resourceProvider.defaults.stripTrailingSlashes = false;
90   - }]);
91   - * ```
92   - *
93   - * @param {string} url A parameterized URL template with parameters prefixed by `:` as in
94   - * `/user/:username`. If you are using a URL with a port number (e.g.
95   - * `http://example.com:8080/api`), it will be respected.
96   - *
97   - * If you are using a url with a suffix, just add the suffix, like this:
98   - * `$resource('http://example.com/resource.json')` or `$resource('http://example.com/:id.json')`
99   - * or even `$resource('http://example.com/resource/:resource_id.:format')`
100   - * If the parameter before the suffix is empty, :resource_id in this case, then the `/.` will be
101   - * collapsed down to a single `.`. If you need this sequence to appear and not collapse then you
102   - * can escape it with `/\.`.
103   - *
104   - * @param {Object=} paramDefaults Default values for `url` parameters. These can be overridden in
105   - * `actions` methods. If any of the parameter value is a function, it will be executed every time
106   - * when a param value needs to be obtained for a request (unless the param was overridden).
107   - *
108   - * Each key value in the parameter object is first bound to url template if present and then any
109   - * excess keys are appended to the url search query after the `?`.
110   - *
111   - * Given a template `/path/:verb` and parameter `{verb:'greet', salutation:'Hello'}` results in
112   - * URL `/path/greet?salutation=Hello`.
113   - *
114   - * If the parameter value is prefixed with `@` then the value for that parameter will be extracted
115   - * from the corresponding property on the `data` object (provided when calling an action method). For
116   - * example, if the `defaultParam` object is `{someParam: '@someProp'}` then the value of `someParam`
117   - * will be `data.someProp`.
118   - *
119   - * @param {Object.<Object>=} actions Hash with declaration of custom actions that should extend
120   - * the default set of resource actions. The declaration should be created in the format of {@link
121   - * ng.$http#usage $http.config}:
122   - *
123   - * {action1: {method:?, params:?, isArray:?, headers:?, ...},
124   - * action2: {method:?, params:?, isArray:?, headers:?, ...},
125   - * ...}
126   - *
127   - * Where:
128   - *
129   - * - **`action`** โ€“ {string} โ€“ The name of action. This name becomes the name of the method on
130   - * your resource object.
131   - * - **`method`** โ€“ {string} โ€“ Case insensitive HTTP method (e.g. `GET`, `POST`, `PUT`,
132   - * `DELETE`, `JSONP`, etc).
133   - * - **`params`** โ€“ {Object=} โ€“ Optional set of pre-bound parameters for this action. If any of
134   - * the parameter value is a function, it will be executed every time when a param value needs to
135   - * be obtained for a request (unless the param was overridden).
136   - * - **`url`** โ€“ {string} โ€“ action specific `url` override. The url templating is supported just
137   - * like for the resource-level urls.
138   - * - **`isArray`** โ€“ {boolean=} โ€“ If true then the returned object for this action is an array,
139   - * see `returns` section.
140   - * - **`transformRequest`** โ€“
141   - * `{function(data, headersGetter)|Array.<function(data, headersGetter)>}` โ€“
142   - * transform function or an array of such functions. The transform function takes the http
143   - * request body and headers and returns its transformed (typically serialized) version.
144   - * By default, transformRequest will contain one function that checks if the request data is
145   - * an object and serializes to using `angular.toJson`. To prevent this behavior, set
146   - * `transformRequest` to an empty array: `transformRequest: []`
147   - * - **`transformResponse`** โ€“
148   - * `{function(data, headersGetter)|Array.<function(data, headersGetter)>}` โ€“
149   - * transform function or an array of such functions. The transform function takes the http
150   - * response body and headers and returns its transformed (typically deserialized) version.
151   - * By default, transformResponse will contain one function that checks if the response looks like
152   - * a JSON string and deserializes it using `angular.fromJson`. To prevent this behavior, set
153   - * `transformResponse` to an empty array: `transformResponse: []`
154   - * - **`cache`** โ€“ `{boolean|Cache}` โ€“ If true, a default $http cache will be used to cache the
155   - * GET request, otherwise if a cache instance built with
156   - * {@link ng.$cacheFactory $cacheFactory}, this cache will be used for
157   - * caching.
158   - * - **`timeout`** โ€“ `{number|Promise}` โ€“ timeout in milliseconds, or {@link ng.$q promise} that
159   - * should abort the request when resolved.
160   - * - **`withCredentials`** - `{boolean}` - whether to set the `withCredentials` flag on the
161   - * XHR object. See
162   - * [requests with credentials](https://developer.mozilla.org/en/http_access_control#section_5)
163   - * for more information.
164   - * - **`responseType`** - `{string}` - see
165   - * [requestType](https://developer.mozilla.org/en-US/docs/DOM/XMLHttpRequest#responseType).
166   - * - **`interceptor`** - `{Object=}` - The interceptor object has two optional methods -
167   - * `response` and `responseError`. Both `response` and `responseError` interceptors get called
168   - * with `http response` object. See {@link ng.$http $http interceptors}.
169   - *
170   - * @param {Object} options Hash with custom settings that should extend the
171   - * default `$resourceProvider` behavior. The only supported option is
172   - *
173   - * Where:
174   - *
175   - * - **`stripTrailingSlashes`** โ€“ {boolean} โ€“ If true then the trailing
176   - * slashes from any calculated URL will be stripped. (Defaults to true.)
177   - *
178   - * @returns {Object} A resource "class" object with methods for the default set of resource actions
179   - * optionally extended with custom `actions`. The default set contains these actions:
180   - * ```js
181   - * { 'get': {method:'GET'},
182   - * 'save': {method:'POST'},
183   - * 'query': {method:'GET', isArray:true},
184   - * 'remove': {method:'DELETE'},
185   - * 'delete': {method:'DELETE'} };
186   - * ```
187   - *
188   - * Calling these methods invoke an {@link ng.$http} with the specified http method,
189   - * destination and parameters. When the data is returned from the server then the object is an
190   - * instance of the resource class. The actions `save`, `remove` and `delete` are available on it
191   - * as methods with the `$` prefix. This allows you to easily perform CRUD operations (create,
192   - * read, update, delete) on server-side data like this:
193   - * ```js
194   - * var User = $resource('/user/:userId', {userId:'@id'});
195   - * var user = User.get({userId:123}, function() {
196   - * user.abc = true;
197   - * user.$save();
198   - * });
199   - * ```
200   - *
201   - * It is important to realize that invoking a $resource object method immediately returns an
202   - * empty reference (object or array depending on `isArray`). Once the data is returned from the
203   - * server the existing reference is populated with the actual data. This is a useful trick since
204   - * usually the resource is assigned to a model which is then rendered by the view. Having an empty
205   - * object results in no rendering, once the data arrives from the server then the object is
206   - * populated with the data and the view automatically re-renders itself showing the new data. This
207   - * means that in most cases one never has to write a callback function for the action methods.
208   - *
209   - * The action methods on the class object or instance object can be invoked with the following
210   - * parameters:
211   - *
212   - * - HTTP GET "class" actions: `Resource.action([parameters], [success], [error])`
213   - * - non-GET "class" actions: `Resource.action([parameters], postData, [success], [error])`
214   - * - non-GET instance actions: `instance.$action([parameters], [success], [error])`
215   - *
216   - *
217   - * Success callback is called with (value, responseHeaders) arguments. Error callback is called
218   - * with (httpResponse) argument.
219   - *
220   - * Class actions return empty instance (with additional properties below).
221   - * Instance actions return promise of the action.
222   - *
223   - * The Resource instances and collection have these additional properties:
224   - *
225   - * - `$promise`: the {@link ng.$q promise} of the original server interaction that created this
226   - * instance or collection.
227   - *
228   - * On success, the promise is resolved with the same resource instance or collection object,
229   - * updated with data from server. This makes it easy to use in
230   - * {@link ngRoute.$routeProvider resolve section of $routeProvider.when()} to defer view
231   - * rendering until the resource(s) are loaded.
232   - *
233   - * On failure, the promise is resolved with the {@link ng.$http http response} object, without
234   - * the `resource` property.
235   - *
236   - * If an interceptor object was provided, the promise will instead be resolved with the value
237   - * returned by the interceptor.
238   - *
239   - * - `$resolved`: `true` after first server interaction is completed (either with success or
240   - * rejection), `false` before that. Knowing if the Resource has been resolved is useful in
241   - * data-binding.
242   - *
243   - * @example
244   - *
245   - * # Credit card resource
246   - *
247   - * ```js
248   - // Define CreditCard class
249   - var CreditCard = $resource('/user/:userId/card/:cardId',
250   - {userId:123, cardId:'@id'}, {
251   - charge: {method:'POST', params:{charge:true}}
252   - });
253   -
254   - // We can retrieve a collection from the server
255   - var cards = CreditCard.query(function() {
256   - // GET: /user/123/card
257   - // server returns: [ {id:456, number:'1234', name:'Smith'} ];
258   -
259   - var card = cards[0];
260   - // each item is an instance of CreditCard
261   - expect(card instanceof CreditCard).toEqual(true);
262   - card.name = "J. Smith";
263   - // non GET methods are mapped onto the instances
264   - card.$save();
265   - // POST: /user/123/card/456 {id:456, number:'1234', name:'J. Smith'}
266   - // server returns: {id:456, number:'1234', name: 'J. Smith'};
267   -
268   - // our custom method is mapped as well.
269   - card.$charge({amount:9.99});
270   - // POST: /user/123/card/456?amount=9.99&charge=true {id:456, number:'1234', name:'J. Smith'}
271   - });
272   -
273   - // we can create an instance as well
274   - var newCard = new CreditCard({number:'0123'});
275   - newCard.name = "Mike Smith";
276   - newCard.$save();
277   - // POST: /user/123/card {number:'0123', name:'Mike Smith'}
278   - // server returns: {id:789, number:'0123', name: 'Mike Smith'};
279   - expect(newCard.id).toEqual(789);
280   - * ```
281   - *
282   - * The object returned from this function execution is a resource "class" which has "static" method
283   - * for each action in the definition.
284   - *
285   - * Calling these methods invoke `$http` on the `url` template with the given `method`, `params` and
286   - * `headers`.
287   - * When the data is returned from the server then the object is an instance of the resource type and
288   - * all of the non-GET methods are available with `$` prefix. This allows you to easily support CRUD
289   - * operations (create, read, update, delete) on server-side data.
290   -
291   - ```js
292   - var User = $resource('/user/:userId', {userId:'@id'});
293   - User.get({userId:123}, function(user) {
294   - user.abc = true;
295   - user.$save();
296   - });
297   - ```
298   - *
299   - * It's worth noting that the success callback for `get`, `query` and other methods gets passed
300   - * in the response that came from the server as well as $http header getter function, so one
301   - * could rewrite the above example and get access to http headers as:
302   - *
303   - ```js
304   - var User = $resource('/user/:userId', {userId:'@id'});
305   - User.get({userId:123}, function(u, getResponseHeaders){
306   - u.abc = true;
307   - u.$save(function(u, putResponseHeaders) {
308   - //u => saved user object
309   - //putResponseHeaders => $http header getter
310   - });
311   - });
312   - ```
313   - *
314   - * You can also access the raw `$http` promise via the `$promise` property on the object returned
315   - *
316   - ```
317   - var User = $resource('/user/:userId', {userId:'@id'});
318   - User.get({userId:123})
319   - .$promise.then(function(user) {
320   - $scope.user = user;
321   - });
322   - ```
323   -
324   - * # Creating a custom 'PUT' request
325   - * In this example we create a custom method on our resource to make a PUT request
326   - * ```js
327   - * var app = angular.module('app', ['ngResource', 'ngRoute']);
328   - *
329   - * // Some APIs expect a PUT request in the format URL/object/ID
330   - * // Here we are creating an 'update' method
331   - * app.factory('Notes', ['$resource', function($resource) {
332   - * return $resource('/notes/:id', null,
333   - * {
334   - * 'update': { method:'PUT' }
335   - * });
336   - * }]);
337   - *
338   - * // In our controller we get the ID from the URL using ngRoute and $routeParams
339   - * // We pass in $routeParams and our Notes factory along with $scope
340   - * app.controller('NotesCtrl', ['$scope', '$routeParams', 'Notes',
341   - function($scope, $routeParams, Notes) {
342   - * // First get a note object from the factory
343   - * var note = Notes.get({ id:$routeParams.id });
344   - * $id = note.id;
345   - *
346   - * // Now call update passing in the ID first then the object you are updating
347   - * Notes.update({ id:$id }, note);
348   - *
349   - * // This will PUT /notes/ID with the note object in the request payload
350   - * }]);
351   - * ```
352   - */
353   -angular.module('ngResource', ['ng']).
354   - provider('$resource', function() {
355   - var provider = this;
356   -
357   - this.defaults = {
358   - // Strip slashes by default
359   - stripTrailingSlashes: true,
360   -
361   - // Default actions configuration
362   - actions: {
363   - 'get': {method: 'GET'},
364   - 'save': {method: 'POST'},
365   - 'query': {method: 'GET', isArray: true},
366   - 'remove': {method: 'DELETE'},
367   - 'delete': {method: 'DELETE'}
368   - }
369   - };
370   -
371   - this.$get = ['$http', '$q', function($http, $q) {
372   -
373   - var noop = angular.noop,
374   - forEach = angular.forEach,
375   - extend = angular.extend,
376   - copy = angular.copy,
377   - isFunction = angular.isFunction;
378   -
379   - /**
380   - * We need our custom method because encodeURIComponent is too aggressive and doesn't follow
381   - * http://www.ietf.org/rfc/rfc3986.txt with regards to the character set
382   - * (pchar) allowed in path segments:
383   - * segment = *pchar
384   - * pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
385   - * pct-encoded = "%" HEXDIG HEXDIG
386   - * unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
387   - * sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
388   - * / "*" / "+" / "," / ";" / "="
389   - */
390   - function encodeUriSegment(val) {
391   - return encodeUriQuery(val, true).
392   - replace(/%26/gi, '&').
393   - replace(/%3D/gi, '=').
394   - replace(/%2B/gi, '+');
395   - }
396   -
397   -
398   - /**
399   - * This method is intended for encoding *key* or *value* parts of query component. We need a
400   - * custom method because encodeURIComponent is too aggressive and encodes stuff that doesn't
401   - * have to be encoded per http://tools.ietf.org/html/rfc3986:
402   - * query = *( pchar / "/" / "?" )
403   - * pchar = unreserved / pct-encoded / sub-delims / ":" / "@"
404   - * unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~"
405   - * pct-encoded = "%" HEXDIG HEXDIG
406   - * sub-delims = "!" / "$" / "&" / "'" / "(" / ")"
407   - * / "*" / "+" / "," / ";" / "="
408   - */
409   - function encodeUriQuery(val, pctEncodeSpaces) {
410   - return encodeURIComponent(val).
411   - replace(/%40/gi, '@').
412   - replace(/%3A/gi, ':').
413   - replace(/%24/g, '$').
414   - replace(/%2C/gi, ',').
415   - replace(/%20/g, (pctEncodeSpaces ? '%20' : '+'));
416   - }
417   -
418   - function Route(template, defaults) {
419   - this.template = template;
420   - this.defaults = extend({}, provider.defaults, defaults);
421   - this.urlParams = {};
422   - }
423   -
424   - Route.prototype = {
425   - setUrlParams: function(config, params, actionUrl) {
426   - var self = this,
427   - url = actionUrl || self.template,
428   - val,
429   - encodedVal;
430   -
431   - var urlParams = self.urlParams = {};
432   - forEach(url.split(/\W/), function(param) {
433   - if (param === 'hasOwnProperty') {
434   - throw $resourceMinErr('badname', "hasOwnProperty is not a valid parameter name.");
435   - }
436   - if (!(new RegExp("^\\d+$").test(param)) && param &&
437   - (new RegExp("(^|[^\\\\]):" + param + "(\\W|$)").test(url))) {
438   - urlParams[param] = true;
439   - }
440   - });
441   - url = url.replace(/\\:/g, ':');
442   -
443   - params = params || {};
444   - forEach(self.urlParams, function(_, urlParam) {
445   - val = params.hasOwnProperty(urlParam) ? params[urlParam] : self.defaults[urlParam];
446   - if (angular.isDefined(val) && val !== null) {
447   - encodedVal = encodeUriSegment(val);
448   - url = url.replace(new RegExp(":" + urlParam + "(\\W|$)", "g"), function(match, p1) {
449   - return encodedVal + p1;
450   - });
451   - } else {
452   - url = url.replace(new RegExp("(\/?):" + urlParam + "(\\W|$)", "g"), function(match,
453   - leadingSlashes, tail) {
454   - if (tail.charAt(0) == '/') {
455   - return tail;
456   - } else {
457   - return leadingSlashes + tail;
458   - }
459   - });
460   - }
461   - });
462   -
463   - // strip trailing slashes and set the url (unless this behavior is specifically disabled)
464   - if (self.defaults.stripTrailingSlashes) {
465   - url = url.replace(/\/+$/, '') || '/';
466   - }
467   -
468   - // then replace collapse `/.` if found in the last URL path segment before the query
469   - // E.g. `http://url.com/id./format?q=x` becomes `http://url.com/id.format?q=x`
470   - url = url.replace(/\/\.(?=\w+($|\?))/, '.');
471   - // replace escaped `/\.` with `/.`
472   - config.url = url.replace(/\/\\\./, '/.');
473   -
474   -
475   - // set params - delegate param encoding to $http
476   - forEach(params, function(value, key) {
477   - if (!self.urlParams[key]) {
478   - config.params = config.params || {};
479   - config.params[key] = value;
480   - }
481   - });
482   - }
483   - };
484   -
485   -
486   - function resourceFactory(url, paramDefaults, actions, options) {
487   - var route = new Route(url, options);
488   -
489   - actions = extend({}, provider.defaults.actions, actions);
490   -
491   - function extractParams(data, actionParams) {
492   - var ids = {};
493   - actionParams = extend({}, paramDefaults, actionParams);
494   - forEach(actionParams, function(value, key) {
495   - if (isFunction(value)) { value = value(); }
496   - ids[key] = value && value.charAt && value.charAt(0) == '@' ?
497   - lookupDottedPath(data, value.substr(1)) : value;
498   - });
499   - return ids;
500   - }
501   -
502   - function defaultResponseInterceptor(response) {
503   - return response.resource;
504   - }
505   -
506   - function Resource(value) {
507   - shallowClearAndCopy(value || {}, this);
508   - }
509   -
510   - Resource.prototype.toJSON = function() {
511   - var data = extend({}, this);
512   - delete data.$promise;
513   - delete data.$resolved;
514   - return data;
515   - };
516   -
517   - forEach(actions, function(action, name) {
518   - var hasBody = /^(POST|PUT|PATCH)$/i.test(action.method);
519   -
520   - Resource[name] = function(a1, a2, a3, a4) {
521   - var params = {}, data, success, error;
522   -
523   - /* jshint -W086 */ /* (purposefully fall through case statements) */
524   - switch (arguments.length) {
525   - case 4:
526   - error = a4;
527   - success = a3;
528   - //fallthrough
529   - case 3:
530   - case 2:
531   - if (isFunction(a2)) {
532   - if (isFunction(a1)) {
533   - success = a1;
534   - error = a2;
535   - break;
536   - }
537   -
538   - success = a2;
539   - error = a3;
540   - //fallthrough
541   - } else {
542   - params = a1;
543   - data = a2;
544   - success = a3;
545   - break;
546   - }
547   - case 1:
548   - if (isFunction(a1)) success = a1;
549   - else if (hasBody) data = a1;
550   - else params = a1;
551   - break;
552   - case 0: break;
553   - default:
554   - throw $resourceMinErr('badargs',
555   - "Expected up to 4 arguments [params, data, success, error], got {0} arguments",
556   - arguments.length);
557   - }
558   - /* jshint +W086 */ /* (purposefully fall through case statements) */
559   -
560   - var isInstanceCall = this instanceof Resource;
561   - var value = isInstanceCall ? data : (action.isArray ? [] : new Resource(data));
562   - var httpConfig = {};
563   - var responseInterceptor = action.interceptor && action.interceptor.response ||
564   - defaultResponseInterceptor;
565   - var responseErrorInterceptor = action.interceptor && action.interceptor.responseError ||
566   - undefined;
567   -
568   - forEach(action, function(value, key) {
569   - if (key != 'params' && key != 'isArray' && key != 'interceptor') {
570   - httpConfig[key] = copy(value);
571   - }
572   - });
573   -
574   - if (hasBody) httpConfig.data = data;
575   - route.setUrlParams(httpConfig,
576   - extend({}, extractParams(data, action.params || {}), params),
577   - action.url);
578   -
579   - var promise = $http(httpConfig).then(function(response) {
580   - var data = response.data,
581   - promise = value.$promise;
582   -
583   - if (data) {
584   - // Need to convert action.isArray to boolean in case it is undefined
585   - // jshint -W018
586   - if (angular.isArray(data) !== (!!action.isArray)) {
587   - throw $resourceMinErr('badcfg',
588   - 'Error in resource configuration for action `{0}`. Expected response to ' +
589   - 'contain an {1} but got an {2} (Request: {3} {4})', name, action.isArray ? 'array' : 'object',
590   - angular.isArray(data) ? 'array' : 'object', httpConfig.method, httpConfig.url);
591   - }
592   - // jshint +W018
593   - if (action.isArray) {
594   - value.length = 0;
595   - forEach(data, function(item) {
596   - if (typeof item === "object") {
597   - value.push(new Resource(item));
598   - } else {
599   - // Valid JSON values may be string literals, and these should not be converted
600   - // into objects. These items will not have access to the Resource prototype
601   - // methods, but unfortunately there
602   - value.push(item);
603   - }
604   - });
605   - } else {
606   - shallowClearAndCopy(data, value);
607   - value.$promise = promise;
608   - }
609   - }
610   -
611   - value.$resolved = true;
612   -
613   - response.resource = value;
614   -
615   - return response;
616   - }, function(response) {
617   - value.$resolved = true;
618   -
619   - (error || noop)(response);
620   -
621   - return $q.reject(response);
622   - });
623   -
624   - promise = promise.then(
625   - function(response) {
626   - var value = responseInterceptor(response);
627   - (success || noop)(value, response.headers);
628   - return value;
629   - },
630   - responseErrorInterceptor);
631   -
632   - if (!isInstanceCall) {
633   - // we are creating instance / collection
634   - // - set the initial promise
635   - // - return the instance / collection
636   - value.$promise = promise;
637   - value.$resolved = false;
638   -
639   - return value;
640   - }
641   -
642   - // instance call
643   - return promise;
644   - };
645   -
646   -
647   - Resource.prototype['$' + name] = function(params, success, error) {
648   - if (isFunction(params)) {
649   - error = success; success = params; params = {};
650   - }
651   - var result = Resource[name].call(this, params, this, success, error);
652   - return result.$promise || result;
653   - };
654   - });
655   -
656   - Resource.bind = function(additionalParamDefaults) {
657   - return resourceFactory(url, extend({}, paramDefaults, additionalParamDefaults), actions);
658   - };
659   -
660   - return Resource;
661   - }
662   -
663   - return resourceFactory;
664   - }];
665   - });
666   -
667   -
668   -})(window, window.angular);
app/js/app.constant.js
... ... @@ -0,0 +1,21 @@
  1 +(function(){
  2 +'use strict';
  3 +
  4 + angular.module('acufuel')
  5 +
  6 + .constant('BASE_URL', {
  7 + //url: 'http://54.149.169.33:8080/ws'
  8 + url: 'http://192.168.1.226:8080/ws'
  9 + })
  10 +
  11 + .constant('AUTH_EVENTS', {
  12 + updateUser: 'update-user',
  13 + notAuthorized: 'auth-not-authorized'
  14 + })
  15 +
  16 + .constant('USER_ROLES', {
  17 + user : 'user',
  18 + admin: 'admin'
  19 + });
  20 +
  21 +})();
0 22 \ No newline at end of file
... ...
1   -
2 1 'use strict';
3 2  
4 3  
5   - angular.module('acufuel', ['ui.router', 'ngAnimate', 'ui.bootstrap'])
  4 + angular.module('acufuel', ['ngCookies', 'ngResource', 'ui.router', 'ngAnimate', 'ui.bootstrap', 'xeditable'])
  5 +
  6 + .config(['$httpProvider', function($httpProvider) {
  7 + $httpProvider.defaults.withCredentials = true;
  8 + $httpProvider.interceptors.push('myCSRF');
  9 + $httpProvider.interceptors.push('httpRequestInterceptor');
  10 + }])
  11 +
  12 +
  13 + .factory('httpRequestInterceptor', ['$q', '$rootScope', '$location', function($q, $rootScope, $location) {
  14 + return {
  15 + request: function($config) {
  16 + return $config;
  17 + },
  18 + responseError: function(rejection) {
  19 + if (rejection.status === 401) {
  20 + if($location.path() != "/login"){
  21 + localStorage.clear();
  22 + window.location.reload();
  23 + }
  24 + }
  25 + return $q.reject(rejection);
  26 + }
  27 + }
  28 + }])
  29 +
  30 + .provider('myCSRF',[function(){
  31 + var headerName = 'X-CSRFToken';
  32 + var cookieName = 'csrftoken';
  33 + var allowedMethods = ['GET'];
  34 +
  35 + this.setHeaderName = function(n) {
  36 + headerName = n;
  37 + }
  38 + this.setCookieName = function(n) {
  39 + cookieName = n;
  40 + }
  41 + this.setAllowedMethods = function(n) {
  42 + allowedMethods = n;
  43 + }
  44 + this.$get = ['$cookies', function($cookies){
  45 + return {
  46 + 'request': function(config) {
  47 + if(allowedMethods.indexOf(config.method) === -1) {
  48 + // do something on success
  49 + config.headers[headerName] = $cookies[cookieName];
  50 + }
  51 + return config;
  52 + }
  53 + }
  54 + }];
  55 + }])
6 56  
7 57 .config(
8 58 ['$locationProvider', '$stateProvider', '$urlRouterProvider',
... ... @@ -32,6 +82,16 @@
32 82 templateUrl: "partials/customers/customers.html",
33 83 controller: "customersController"
34 84 })
  85 + .state("app.ContactView", {
  86 + url: "/ContactView",
  87 + templateUrl: "partials/ContactView/ContactView.html",
  88 + controller: "ContactViewController"
  89 + })
  90 + .state("app.FuelVendors", {
  91 + url: "/FuelVendors",
  92 + templateUrl: "partials/FuelVendors/FuelVendors.html",
  93 + controller: "FuelVendorsController"
  94 + })
35 95  
36 96 .state("app.analytics", {
37 97 url: "/analytics",
... ... @@ -51,6 +111,11 @@
51 111 controller: "dashboardController"
52 112 })
53 113  
  114 + .state("app.AirList", {
  115 + url: "/AirList",
  116 + templateUrl: "partials/AirList/AirList.html",
  117 + controller: "AirListController"
  118 + })
54 119  
55 120 .state("app.elements", {
56 121 url: "/elements",
... ... @@ -133,7 +198,10 @@
133 198 .state("app.updateFuelManager", {
134 199 url: "/updateFuelManager",
135 200 templateUrl: "partials/updateFuelManager/updateFuelManager.html",
136   - controller: "updateFuelManagerController"
  201 + controller: "updateFuelManagerController",
  202 + // data: {
  203 + // authorizedRoles: ["fbo"],
  204 + // }
137 205 })
138 206  
139 207 .state("app.viewCompany", {
... ... @@ -147,8 +215,89 @@
147 215 templateUrl: "partials/widgetTemplate/widgetTemplate.html",
148 216 controller: "widgetTemplateController"
149 217 })
  218 +
  219 + .state("app.fuelOrders", {
  220 + url: "/fuelOrders",
  221 + templateUrl: "partials/fuelOrders/fuelOrders.html",
  222 + controller: "fuelOrdersController"
  223 + })
  224 +
  225 + .state("app.DispatchFuel", {
  226 + url: "/DispatchFuel",
  227 + templateUrl: "partials/DispatchFuel/DispatchFuel.html",
  228 + controller: "DispatchFuelController"
  229 + })
  230 +
  231 + .state("app.searchDispatchFuel", {
  232 + url: "/searchDispatchFuel",
  233 + templateUrl: "partials/searchDispatchFuel/searchDispatchFuel.html",
  234 + controller: "searchDispatchFuelController"
  235 + })
  236 +
  237 + .state("app.NewCompany", {
  238 + url: "/NewCompany",
  239 + templateUrl: "partials/NewCompany/NewCompany.html",
  240 + controller: "NewCompanyController"
  241 + })
  242 +
  243 + .state("app.Accept", {
  244 + url: "/Accept",
  245 + templateUrl: "partials/Accept/Accept.html",
  246 + controller: "AcceptController"
  247 + })
  248 + .state("app.delselected", {
  249 + url: "/delselected",
  250 + templateUrl: "partials/delselected/delselected.html",
  251 + controller: "delselectedController"
  252 + })
  253 +
  254 + .state("app.pricingcontact", {
  255 + url: "/pricingcontact",
  256 + templateUrl: "partials/pricingcontact/pricingcontact.html",
  257 + controller: "pricingcontactController"
  258 + })
  259 +
  260 + .state("app.AntiochFlightDepartment", {
  261 + url: "/AntiochFlightDepartment",
  262 + templateUrl: "partials/AntiochFlightDepartment/AntiochFlightDepartment.html",
  263 + controller: "AntiochFlightDepartmentcontroller"
  264 + })
150 265 }
151   - ]);
  266 + ])
  267 +
  268 + .run(['$rootScope', '$state', 'LoginService', 'AUTH_EVENTS', function($rootScope, $state, LoginService, AUTH_EVENTS) {
  269 + $rootScope.$on('$stateChangeStart', function (event, next, nextParams, fromState) {
  270 + $rootScope.currentUser = JSON.parse(window.localStorage.getItem('currentUser'));
  271 +
  272 + LoginService.isAuthorized = function (authorizedRoles) {
  273 + if (!angular.isArray(authorizedRoles)) {
  274 + authorizedRoles = [authorizedRoles];
  275 + }
  276 + var userdata = JSON.parse(window.localStorage.getItem('currentUser'));
  277 + return (userdata? (authorizedRoles.indexOf(userdata.type) !== -1): false);
  278 + }
  279 +
  280 + if ('data' in next && 'authorizedRoles' in next.data) {
  281 + var authorizedRoles = next.data.authorizedRoles;
  282 + if (!LoginService.isAuthorized(authorizedRoles)) {
  283 + event.preventDefault();
  284 + if($state.current.name.length == 0) {
  285 + $state.go('login')
  286 + } else {
  287 + $state.go($state.current, {}, {reload: true});
  288 + $rootScope.$broadcast(AUTH_EVENTS.notAuthorized);
  289 + }
  290 + }
  291 + }
  292 +
  293 + if (LoginService.isAuthenticated()) {
  294 + if (next.name == 'login') {
  295 + event.preventDefault();
  296 + $state.go('app.dashboard');
  297 + }
  298 + }
  299 + });
  300 + }])
152 301  
153 302  
154 303  
... ...
app/js/helpers.js
... ... @@ -0,0 +1,21 @@
  1 +angular
  2 + .module('mwl.calendar.docs')
  3 + .factory('alert', function($uibModal) {
  4 +
  5 + function show(action, event) {
  6 + return $uibModal.open({
  7 + templateUrl: 'modalContent.html',
  8 + controller: function() {
  9 + var vm = this;
  10 + vm.action = action;
  11 + vm.event = event;
  12 + },
  13 + controllerAs: 'vm'
  14 + });
  15 + }
  16 +
  17 + return {
  18 + show: show
  19 + };
  20 +
  21 + });
... ...
app/js/multi-step-modal.js
... ... @@ -0,0 +1,127 @@
  1 ++function($) {
  2 + 'use strict';
  3 +
  4 + var modals = $('.modal.multi-step');
  5 +
  6 + modals.each(function(idx, modal) {
  7 + var $modal = $(modal);
  8 + var $buttons = $modal.find('button.step');
  9 + var total_num_steps = $buttons.length;
  10 + var $progress = $modal.find('.m-progress');
  11 + var $progress_bar = $modal.find('.m-progress-bar');
  12 + var $progress_stats = $modal.find('.m-progress-stats');
  13 + var $progress_current = $modal.find('.m-progress-current');
  14 + var $progress_total = $modal.find('.m-progress-total');
  15 + var $progress_complete = $modal.find('.m-progress-complete');
  16 + var reset_on_close = $modal.attr('reset-on-close') === 'true';
  17 +
  18 + function reset() {
  19 + $modal.find('.step').hide();
  20 + $modal.find('[data-step]').hide();
  21 + }
  22 +
  23 + function completeSteps() {
  24 + $progress_stats.hide();
  25 + $progress_complete.show();
  26 + $modal.find('.progress-text').animate({
  27 + top: '-2em'
  28 + });
  29 + $modal.find('.complete-indicator').animate({
  30 + top: '-2em'
  31 + });
  32 + $progress_bar.addClass('completed');
  33 + }
  34 +
  35 + function getPercentComplete(current_step, total_steps) {
  36 + return Math.min(current_step / total_steps * 100, 100) + '%';
  37 + }
  38 +
  39 + function updateProgress(current, total) {
  40 + $progress_bar.animate({
  41 + width: getPercentComplete(current, total)
  42 + });
  43 + if (current - 1 >= total_num_steps) {
  44 + completeSteps();
  45 + } else {
  46 + $progress_current.text(current);
  47 + }
  48 +
  49 + $progress.find('[data-progress]').each(function() {
  50 + var dp = $(this);
  51 + if (dp.data().progress <= current - 1) {
  52 + dp.addClass('completed');
  53 + } else {
  54 + dp.removeClass('completed');
  55 + }
  56 + });
  57 + }
  58 +
  59 + function goToStep(step) {
  60 + reset();
  61 + var to_show = $modal.find('.step-' + step);
  62 + if (to_show.length === 0) {
  63 + // at the last step, nothing else to show
  64 + return;
  65 + }
  66 + to_show.show();
  67 + var current = parseInt(step, 10);
  68 + updateProgress(current, total_num_steps);
  69 + findFirstFocusableInput(to_show).focus();
  70 + }
  71 +
  72 + function findFirstFocusableInput(parent) {
  73 + var candidates = [parent.find('input'), parent.find('select'),
  74 + parent.find('textarea'),parent.find('button')],
  75 + winner = parent;
  76 + $.each(candidates, function() {
  77 + if (this.length > 0) {
  78 + winner = this[0];
  79 + return false;
  80 + }
  81 + });
  82 + return $(winner);
  83 + }
  84 +
  85 + function bindEventsToModal($modal) {
  86 + var data_steps = [];
  87 + $('[data-step]').each(function() {
  88 + var step = $(this).data().step;
  89 + if (step && $.inArray(step, data_steps) === -1) {
  90 + data_steps.push(step);
  91 + }
  92 + });
  93 +
  94 + $.each(data_steps, function(i, v) {
  95 + $modal.on('next.m.' + v, {step: v}, function(e) {
  96 + goToStep(e.data.step);
  97 + });
  98 + });
  99 + }
  100 +
  101 + function initialize() {
  102 + reset();
  103 + updateProgress(1, total_num_steps);
  104 + $modal.find('.step-1').show();
  105 + $progress_complete.hide();
  106 + $progress_total.text(total_num_steps);
  107 + bindEventsToModal($modal, total_num_steps);
  108 + $modal.data({
  109 + total_num_steps: $buttons.length,
  110 + });
  111 + if (reset_on_close){
  112 + //Bootstrap 2.3.2
  113 + $modal.on('hidden', function () {
  114 + reset();
  115 + $modal.find('.step-1').show();
  116 + })
  117 + //Bootstrap 3
  118 + $modal.on('hidden.bs.modal', function () {
  119 + reset();
  120 + $modal.find('.step-1').show();
  121 + })
  122 + }
  123 + }
  124 +
  125 + initialize();
  126 + })
  127 +}(jQuery);
0 128 \ No newline at end of file
... ...
app/js/plugins/example.js
... ... @@ -0,0 +1,106 @@
  1 +angular.module('mwl.calendar.docs', ['mwl.calendar', 'ngAnimate', 'ui.bootstrap', 'colorpicker.module']);
  2 +angular
  3 + .module('mwl.calendar.docs') //you will need to declare your module with the dependencies ['mwl.calendar', 'ui.bootstrap', 'ngAnimate']
  4 + .controller('KitchenSinkCtrl', function(moment, alert, calendarConfig) {
  5 +
  6 + var vm = this;
  7 +
  8 + //These variables MUST be set as a minimum for the calendar to work
  9 + vm.calendarView = 'month';
  10 + vm.viewDate = new Date();
  11 + var actions = [{
  12 + label: '<i class=\'glyphicon glyphicon-pencil\'></i>',
  13 + onClick: function(args) {
  14 + alert.show('Edited', args.calendarEvent);
  15 + }
  16 + }, {
  17 + label: '<i class=\'glyphicon glyphicon-remove\'></i>',
  18 + onClick: function(args) {
  19 + alert.show('Deleted', args.calendarEvent);
  20 + }
  21 + }];
  22 + vm.events = [
  23 + {
  24 + title: 'An event',
  25 + color: calendarConfig.colorTypes.warning,
  26 + startsAt: moment().startOf('week').subtract(2, 'days').add(8, 'hours').toDate(),
  27 + endsAt: moment().startOf('week').add(1, 'week').add(9, 'hours').toDate(),
  28 + draggable: true,
  29 + resizable: true,
  30 + actions: actions
  31 + }, {
  32 + title: '<i class="glyphicon glyphicon-asterisk"></i> <span class="text-primary">Another event</span>, with a <i>html</i> title',
  33 + color: calendarConfig.colorTypes.info,
  34 + startsAt: moment().subtract(1, 'day').toDate(),
  35 + endsAt: moment().add(5, 'days').toDate(),
  36 + draggable: true,
  37 + resizable: true,
  38 + actions: actions
  39 + }, {
  40 + title: 'This is a really long event title that occurs on every year',
  41 + color: calendarConfig.colorTypes.important,
  42 + startsAt: moment().startOf('day').add(7, 'hours').toDate(),
  43 + endsAt: moment().startOf('day').add(19, 'hours').toDate(),
  44 + recursOn: 'year',
  45 + draggable: true,
  46 + resizable: true,
  47 + actions: actions
  48 + }
  49 + ];
  50 +
  51 + vm.cellIsOpen = true;
  52 +
  53 + vm.addEvent = function() {
  54 + vm.events.push({
  55 + title: 'New event',
  56 + startsAt: moment().startOf('day').toDate(),
  57 + endsAt: moment().endOf('day').toDate(),
  58 + color: calendarConfig.colorTypes.important,
  59 + draggable: true,
  60 + resizable: true
  61 + });
  62 + };
  63 +
  64 + vm.eventClicked = function(event) {
  65 + alert.show('Clicked', event);
  66 + };
  67 +
  68 + vm.eventEdited = function(event) {
  69 + alert.show('Edited', event);
  70 + };
  71 +
  72 + vm.eventDeleted = function(event) {
  73 + alert.show('Deleted', event);
  74 + };
  75 +
  76 + vm.eventTimesChanged = function(event) {
  77 + alert.show('Dropped or resized', event);
  78 + };
  79 +
  80 + vm.toggle = function($event, field, event) {
  81 + $event.preventDefault();
  82 + $event.stopPropagation();
  83 + event[field] = !event[field];
  84 + };
  85 +
  86 + vm.timespanClicked = function(date, cell) {
  87 +
  88 + if (vm.calendarView === 'month') {
  89 + if ((vm.cellIsOpen && moment(date).startOf('day').isSame(moment(vm.viewDate).startOf('day'))) || cell.events.length === 0 || !cell.inMonth) {
  90 + vm.cellIsOpen = false;
  91 + } else {
  92 + vm.cellIsOpen = true;
  93 + vm.viewDate = date;
  94 + }
  95 + } else if (vm.calendarView === 'year') {
  96 + if ((vm.cellIsOpen && moment(date).startOf('month').isSame(moment(vm.viewDate).startOf('month'))) || cell.events.length === 0) {
  97 + vm.cellIsOpen = false;
  98 + } else {
  99 + vm.cellIsOpen = true;
  100 + vm.viewDate = date;
  101 + }
  102 + }
  103 +
  104 + };
  105 +
  106 + });
... ...
app/partials/Accept/Accept.controller.js
... ... @@ -0,0 +1,11 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('AcceptController', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 +
  11 + }]);
0 12 \ No newline at end of file
... ...
app/partials/Accept/Accept.html
... ... @@ -0,0 +1,24 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-4">
  4 + <div class="widget stacked">
  5 + <!-- <div class="widget-header"></div> -->
  6 + <div class="widget-content" style="padding-left: 0; padding-right: 0; padding-bottom: 0;">
  7 + <div class="col-md-2"><img class="src-image" src="img/images.jpg"></div>
  8 + <div class="col-md-10">
  9 + <form>
  10 + Title:<br>
  11 + <input type="text" name="firstname"><br>
  12 + Content:<br>
  13 + <input type="text" name="lastname">
  14 + </form>
  15 + </div>
  16 + <div class="col-xs-12" style="background-color: #eee; padding: 15px; text-align: right;">
  17 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">Accept</button>
  18 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">Cancel</button>
  19 + </div>
  20 + </div>
  21 + </div>
  22 + </div>
  23 +</div>
  24 +</div>
0 25 \ No newline at end of file
... ...
app/partials/Accept/Accept.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('acceptService', ['$q', '$http', 'BE', acceptService]);
  5 +
  6 + function acceptService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/AirList/AirList.controller.js
... ... @@ -0,0 +1,10 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('AirListController', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 + }]);
0 11 \ No newline at end of file
... ...
app/partials/AirList/AirList.html
... ... @@ -0,0 +1,195 @@
  1 +<div class="container">
  2 + <div class="row">
  3 + <div class="col-md-7" style="padding-right: 60px;">
  4 + <div class="widget">
  5 + <div class="widget-header">
  6 + <i class="icon-pencil"></i>
  7 + <i class="fa fa-tasks" aria-hidden="true"></i>
  8 + <h3>Add a New Company</h3>
  9 + </div>
  10 + <div class="widget-content" style="padding-left: 0; padding-right: 0;">
  11 + <div class="container">
  12 + <div class="row">
  13 + <div class="col-md-6" style="margin-left: 20px;">
  14 + <div class="widget-header">
  15 + <i class="fa fa-plane"></i>
  16 + <h3>Aircraft List</h3>
  17 + </div>
  18 + <div class="widget-content" style="padding:0px">
  19 + <div class="table-responsive">
  20 + <table class="table table-bordered table-hover table-striped">
  21 + <thead>
  22 + <tr>
  23 + <th>Tail</th>
  24 + <th>Make</th>
  25 + <th>Model</th>
  26 + <th>Size</th>
  27 + <th>Margin</th>
  28 + </tr>
  29 + </thead>
  30 + <tbody>
  31 + <tr>
  32 + <td>
  33 + <input type="text" style="width:100px;" class="form-control">
  34 + </td>
  35 + <td>
  36 + <select class="form-control" style="height:31px;">
  37 + <option>Margin1</option>
  38 + <option>Margin2</option>
  39 + </select>
  40 + </td>
  41 + <td>
  42 + <select class="form-control" style="height:31px;">
  43 + <option>Margin1</option>
  44 + <option>Margin2</option>
  45 + </select>
  46 + </td>
  47 + <td>
  48 + <select class="form-control" style="height:31px;">
  49 + <option>Margin1</option>
  50 + <option>Margin2</option>
  51 + </select>
  52 + </td>
  53 + <td>
  54 + <select class="form-control" style="height:31px;">
  55 + <option>Margin1</option>
  56 + <option>Margin2</option>
  57 + </select>
  58 + </td>
  59 + </tr>
  60 + <tr>
  61 + <td>
  62 + <input type="text" style="width:100px;" class="form-control">
  63 + </td>
  64 + <td>
  65 + <select class="form-control" style="height:31px;">
  66 + <option>Margin1</option>
  67 + <option>Margin2</option>
  68 + </select>
  69 + </td>
  70 + <td>
  71 + <select class="form-control" style="height:31px;">
  72 + <option>Margin1</option>
  73 + <option>Margin2</option>
  74 + </select>
  75 + </td>
  76 + <td>
  77 + <select class="form-control" style="height:31px;">
  78 + <option>Margin1</option>
  79 + <option>Margin2</option>
  80 + </select>
  81 + </td>
  82 + <td>
  83 + <select class="form-control" style="height:31px;">
  84 + <option>Margin1</option>
  85 + <option>Margin2</option>
  86 + </select>
  87 + </td>
  88 + </tr>
  89 + <tr>
  90 + <td>
  91 + <input type="text" style="width:100px;" class="form-control">
  92 + </td>
  93 + <td>
  94 + <select class="form-control" style="height:31px;">
  95 + <option>Margin1</option>
  96 + <option>Margin2</option>
  97 + </select>
  98 + </td>
  99 + <td>
  100 + <select class="form-control" style="height:31px;">
  101 + <option>Margin1</option>
  102 + <option>Margin2</option>
  103 + </select>
  104 + </td>
  105 + <td>
  106 + <select class="form-control" style="height:31px;">
  107 + <option>Margin1</option>
  108 + <option>Margin2</option>
  109 + </select>
  110 + </td>
  111 + <td>
  112 + <select class="form-control" style="height:31px;">
  113 + <option>Margin1</option>
  114 + <option>Margin2</option>
  115 + </select>
  116 + </td>
  117 + </tr>
  118 + <tr>
  119 + <td>
  120 + <input type="text" style="width:100px;" class="form-control">
  121 + </td>
  122 + <td>
  123 + <select class="form-control" style="height:31px;">
  124 + <option>Margin1</option>
  125 + <option>Margin2</option>
  126 + </select>
  127 + </td>
  128 + <td>
  129 + <select class="form-control" style="height:31px;">
  130 + <option>Margin1</option>
  131 + <option>Margin2</option>
  132 + </select>
  133 + </td>
  134 + <td>
  135 + <select class="form-control" style="height:31px;">
  136 + <option>Margin1</option>
  137 + <option>Margin2</option>
  138 + </select>
  139 + </td>
  140 + <td>
  141 + <select class="form-control" style="height:31px;">
  142 + <option>Margin1</option>
  143 + <option>Margin2</option>
  144 + </select>
  145 + </td>
  146 + </tr>
  147 + <tr>
  148 + <td>
  149 + <input type="text" style="width:100px;" class="form-control">
  150 + </td>
  151 + <td>
  152 + <select class="form-control" style="height:31px;">
  153 + <option>Margin1</option>
  154 + <option>Margin2</option>
  155 + </select>
  156 + </td>
  157 + <td>
  158 + <select class="form-control" style="height:31px;">
  159 + <option>Margin1</option>
  160 + <option>Margin2</option>
  161 + </select>
  162 + </td>
  163 + <td>
  164 + <select class="form-control" style="height:31px;">
  165 + <option>Margin1</option>
  166 + <option>Margin2</option>
  167 + </select>
  168 + </td>
  169 + <td>
  170 + <select class="form-control" style="height:31px;">
  171 + <option>Margin1</option>
  172 + <option>Margin2</option>
  173 + </select>
  174 + </td>
  175 + </tr>
  176 + </tbody>
  177 + </table>
  178 + </div>
  179 + <div class="clearfix"></div>
  180 + </div>
  181 + <div class="col-xs-12" style=" padding: 15px; text-align: right;">
  182 + <button type="button" class="btn btn-default">Cancel</button>
  183 + <button type="button" class="btn btn-warning">Go Back</button>
  184 + <button type="button" class="btn btn-success">Save</button>
  185 + <!-- <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">Cancel</button> -->
  186 + </div>
  187 +
  188 + </div>
  189 + </div>
  190 + </div>
  191 + </div>
  192 + </div>
  193 + </div>
  194 + </div>
  195 +</div>
0 196 \ No newline at end of file
... ...
app/partials/AirList/AirList.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('AirListService', ['$q', '$http', 'BE', AirListService]);
  5 +
  6 + function AirListService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/AntiochFlightDepartment/AntiochFlightDepartment.controller.js
... ... @@ -0,0 +1,16 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('AntiochFlightDepartmentcontroller', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 + $(function() {
  11 + $('#toggle-five').bootstrapToggle();
  12 + console.log("hello");
  13 + })
  14 +
  15 +
  16 + }]);
... ...
app/partials/AntiochFlightDepartment/AntiochFlightDepartment.html
... ... @@ -0,0 +1,64 @@
  1 +<div class="container">
  2 + <div class="row">
  3 + <div class="col-md-10" style="padding-right: 60px; margin-bottom: 30px;">
  4 + <div class="widget">
  5 + <div class="widget-header">
  6 + <i class="icon-pencil"></i>
  7 + <i class="fa fa-building-o" aria-hidden="true"></i>
  8 + <h3>Antioch Flight Department</h3>
  9 + </div>
  10 + <div class="widget-content" style="padding-left: 0; padding-right: 0; ">
  11 + <div class="container">
  12 + <div class="row">
  13 + <div class="col-md-6" style="margin-left: 20px;">
  14 + <div class="widget stacked">
  15 + <div class="widget-header">
  16 + <i class="fa fa-building-o" aria-hidden="true"></i>
  17 + <h3>Contact Detail</h3>
  18 + <div class="pull-right my-toggle-switch" style="margin-top: 10px; margin-right: 30px;">
  19 + <div><input id="toggle-five" checked type="checkbox" data-size="mini" data-width="110" data-toggle="toggle" data-on="PRICE EMAIL ON" data-off="PRICE EMAIL OFF">
  20 + </div>
  21 + </div>
  22 + </div>
  23 + <div class="widget-content">
  24 + <div class="row" style="margin-left:0px">
  25 + <div class="col-md-6">
  26 + <h3 style="color:#F90;">
  27 + <b>Monica Smith</b>
  28 + </h3>
  29 + </div>
  30 + <div class="col-md-6">
  31 + <div style="margin-bottom: 10px" class="input-group email-password">
  32 + <span class="input-group-addon email-password"><i class="glyphicon glyphicon-user email-password-icon"></i></span>
  33 + <input id="login-username" type="text" class="form-control email-password" name="username" value="" placeholder="username or email">
  34 + </div>
  35 +
  36 + <div class="input-group email-password">
  37 + <span class="input-group-addon email-password"><i class="fa fa-key" aria-hidden="true"></i></span>
  38 + <input id="login-password" type="password" class="form-control email-password" name="password" placeholder="password">
  39 + </div>
  40 + </div>
  41 + </div>
  42 + <div>
  43 + <p><i class="fa fa-map-marker"></i> Reviera State Rd32 <input type="checkbox"></p>
  44 + <p><i class="fa fa-phone"></i> (310) 2342-3433 <input type="checkbox"></p>
  45 + <p><i class="fa fa-envelope"></i> freed@gmail.com <input type="checkbox"></p>
  46 + </div>
  47 + </br>
  48 + <div>
  49 + <p><b>Company Notes</b> <input type="checkbox"></p>
  50 + <p>This is the test data. note will be written in this</p>
  51 + <button type="button" class="btn btn-primary">Send Price to This Contacts</button>
  52 + </div>
  53 + <!-- <div class="col-md-6">
  54 + <button type="button" class="btn btn-primary">Send Price to This Contacts</button>
  55 + </div> -->
  56 + </div>
  57 + </div>
  58 + </div>
  59 + </div>
  60 + </div>
  61 + </div>
  62 + </div>
  63 + </div>
  64 +</div>
0 65 \ No newline at end of file
... ...
app/partials/AntiochFlightDepartment/AntiochFlightDepartment.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('AntiochFlightDepartmentService', ['$q', '$http', 'BE', AntiochFlightDepartmentService]);
  5 +
  6 + function AntiochFlightDepartmentService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/ContactView/ContactView.controller.js
... ... @@ -0,0 +1,15 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('ContactViewController', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 + $(function() {
  11 + $('#toggle-one12').bootstrapToggle();
  12 + $('#toggle-two21').bootstrapToggle();
  13 + })
  14 +
  15 + }]);
0 16 \ No newline at end of file
... ...
app/partials/ContactView/ContactView.html
... ... @@ -0,0 +1,243 @@
  1 +<style>
  2 + .subnavbar .mainnav > li:nth-child(3) > a{
  3 + color: #ff9900;
  4 + }
  5 +</style>
  6 +<div class="main">
  7 + <div class="container">
  8 + <div class="row">
  9 + <div class="col-md-12">
  10 + <div class="widget stacked ">
  11 + <div class="widget-content">
  12 + <div class="tabbable">
  13 + <ul class="nav nav-tabs">
  14 + <li>
  15 + <a ui-sref="app.customers">Company View
  16 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  17 + </a>
  18 + </li>
  19 + <li class="active">
  20 + <a ui-sref="app.ContactView">Contact View
  21 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  22 + </a>
  23 + </li>
  24 + <li>
  25 + <a ui-sref="app.FuelVendors">Fuel Vendors
  26 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  27 + </a>
  28 + </li>
  29 + <li style="margin: 0px 10px 4px 40px;"><input type="text" style="height:31px;"class="form-control" name="name" id="name" placeholder="Search In Table"></li>
  30 + <li><button type="button" class="btn btn-default btn-sm">Clear Search And Filters</button></li>
  31 + <li style="float:right"><button type="submit" class="btn btn-success btn-sm"><i class="fa fa-plus" aria-hidden="true"></i> Add Company</button></li>
  32 + </ul>
  33 + <br>
  34 + <div class="tab-content customer-table" style="margin:0px">
  35 + <div class="tab-pane active" id="companyView">
  36 + <table class="table table-striped">
  37 + <thead>
  38 + <tr>
  39 + <th>
  40 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  41 + <label class="font-company">Last Name <i class="fa fa-sort" aria-hidden="true"></i></label>
  42 + </th>
  43 + <th>
  44 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  45 + <label class="font-company">First Name <i class="fa fa-sort" aria-hidden="true"></i></label>
  46 + </th>
  47 + <th>
  48 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  49 + <label class="font-company">Company Name <i class="fa fa-sort" aria-hidden="true"></i></label>
  50 + </th>
  51 + <th>
  52 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  53 + <label class="font-company">Work Phone <i class="fa fa-sort" aria-hidden="true"></i></label>
  54 + </th>
  55 + <th>
  56 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  57 + <label class="font-company">Mobile Phone <i class="fa fa-sort" aria-hidden="true"></i></label>
  58 + </th>
  59 + <th>
  60 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  61 + <label class="font-company"> Title <i class="fa fa-sort" aria-hidden="true"></i></label>
  62 + </th>
  63 + <th>
  64 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  65 + <label class="font-company">Username <i class="fa fa-sort" aria-hidden="true"></i></label>
  66 + </th>
  67 + <th>
  68 +
  69 + <label class="font-company">Pricing Email <i class="fa fa-sort" aria-hidden="true"></i></label>
  70 + </th>
  71 + <th>
  72 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  73 + <label class="font-company">Password <i class="fa fa-sort" aria-hidden="true"></i></label>
  74 + </th>
  75 + <!-- <th></th>
  76 + <th></th> -->
  77 + </tr>
  78 + </thead>
  79 + <tbody>
  80 + <tr>
  81 + <td class="font-company">colony</td>
  82 + <td class="font-company">Gerry</td>
  83 + <td class="font-company">Est LLC</td>
  84 + <td class="font-company">(310) 555-1212</td>
  85 + <td class="font-company">(310) 555-1212</td>
  86 + <td class="font-company">Acufuel</td>
  87 + <td class="font-company">Usel 1</td>
  88 + <td class="font-company"><input id="toggle-one12" checked type="checkbox" data-size="mini" data-toggle="toggle">
  89 + </td>
  90 + <td class="font-company">Password 123</td>
  91 + <!-- <td ></td>
  92 + <td></td> -->
  93 + </tr>
  94 + <tr>
  95 + <td class="font-company">colony</td>
  96 + <td class="font-company">Gerry</td>
  97 + <td class="font-company">Est LLC</td>
  98 + <td class="font-company">(310) 555-1212</td>
  99 + <td class="font-company">(310) 555-1212</td>
  100 + <td class="font-company">Acufuel</td>
  101 + <td class="font-company">Usel 1</td>
  102 + <td class="font-company"><input id="toggle-two21" checked type="checkbox" data-size="mini" data-toggle="toggle">
  103 +
  104 + </td>
  105 + <td class="font-company">Password 123</td>
  106 + <!-- <td></td>
  107 + <td></td> -->
  108 + </tr>
  109 + </tbody>
  110 + </table>
  111 + <div class="row" style="margin-left: 0px;">
  112 + <div class="col-md-2">
  113 + <button type="button" class="btn btn-warning">Export Customers</button>
  114 + </div>
  115 + <div class="col-md-10">
  116 + <div class="row" style="margin-left: 0px;">
  117 + <div class="col-md-6">
  118 + </div>
  119 + <div class="col-md-2">
  120 + <select class="form-control">
  121 + <option>20 Records Per Page</option>
  122 + <option>50 Records Per Page</option>
  123 + <option>100 Records Per Page</option>
  124 + </select>
  125 + </div>
  126 + <div class="col-md-4">
  127 + <ul class="pagination" style="margin:0px">
  128 + <li><a href="javascript:;">ยซ</a></li>
  129 + <li class="active"><a href="#">1</a></li>
  130 + <li><a href="javascript:;">2</a></li>
  131 + <li><a href="javascript:;">3</a></li>
  132 + <li><a href="javascript:;">4</a></li>
  133 + <li><a href="javascript:;">5</a></li>
  134 + <li><a href="javascript:;">ยป</a></li>
  135 + </ul>
  136 + </div>
  137 + </div>
  138 + </div>
  139 + </div>
  140 + </div>
  141 + <div class="tab-pane" id="contactView">
  142 + <table class="table table-striped">
  143 + <thead>
  144 + <tr>
  145 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name"> Last Name</th>
  146 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">First Name</th>
  147 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Company Name</th>
  148 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Work Phone</th>
  149 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Mobile Phone</th>
  150 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Title</th>
  151 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Pricing Email</th>
  152 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Username</th>
  153 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Password</th>
  154 + <th></th>
  155 + <th></th>
  156 + </tr>
  157 + </thead>
  158 + <tbody>
  159 + <tr>
  160 + <td>Name and inc.</td>
  161 + <td>3</td>
  162 + <td>03423233</td>
  163 + <td>Jemmy</td>
  164 + <td>KIAD</td>
  165 + <td></td>
  166 + <td><input id="toggle-one12" checked type="checkbox" data-size="mini" data-toggle="toggle"></td> <td></td>
  167 + <td>$123</td>
  168 + <td></td>
  169 + <td></td>
  170 + </tr>
  171 + <tr>
  172 + <td>Name and inc.</td>
  173 + <td>3</td>
  174 + <td>03423233</td>
  175 + <td>Jemmy</td>
  176 + <td>KIAD</td>
  177 + <td></td>
  178 + <td><input id="toggle-two21" checked type="checkbox" data-size="mini" data-toggle="toggle"></td>
  179 + <td></td>
  180 + <td>$123</td>
  181 + <td></td>
  182 + <td></td>
  183 + </tr>
  184 + </tbody>
  185 + </table>
  186 + <div class="row" style="margin-left: 0px;">
  187 + <div class="col-md-2">
  188 + <button type="button" class="btn btn-info">Export CSV</button>
  189 +
  190 + </div>
  191 + <div class="col-md-10">
  192 + <div class="row" style="margin-left: 0px;">
  193 + <div class="col-md-6">
  194 + </div>
  195 + <div class="col-md-2">
  196 + <select class="form-control">
  197 + <option>20 Records Per Page</option>
  198 + <option>50 Records Per Page</option>
  199 + <option>100 Records Per Page</option>
  200 + </select>
  201 + </div>
  202 + <div class="col-md-4">
  203 + <ul class="pagination" style="margin:0px">
  204 + <li><a href="javascript:;">ยซ</a></li>
  205 + <li class="active"><a href="#">1</a></li>
  206 + <li><a href="javascript:;">2</a></li>
  207 + <li><a href="javascript:;">3</a></li>
  208 + <li><a href="javascript:;">4</a></li>
  209 + <li><a href="javascript:;">5</a></li>
  210 + <li><a href="javascript:;">ยป</a></li>
  211 + </ul>
  212 + </div>
  213 + </div>
  214 + </div>
  215 + </div>
  216 + </div>
  217 + <div class="tab-pane" id="fuelVendors">
  218 + <table class="table table-striped table-bordered">
  219 + <thead>
  220 + <tr>
  221 + <th>Engine</th>
  222 + <th>Browser</th>
  223 + <th class="td-actions"></th>
  224 + </tr>
  225 + </thead>
  226 + <tbody>
  227 + </tbody>
  228 + </table>
  229 + </div>
  230 + </div>
  231 + </div>
  232 + </div>
  233 + <!-- /widget-content -->
  234 + </div>
  235 + <!-- /widget -->
  236 + </div>
  237 + <!-- /span8 -->
  238 + </div>
  239 + <!-- /row -->
  240 + </div>
  241 + <!-- /container -->
  242 +</div>
  243 +<!-- /main -->
0 244 \ No newline at end of file
... ...
app/partials/ContactView/ContactView.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('ContactViewService', ['$q', '$http', 'BE', ContactViewService]);
  5 +
  6 + function ContactViewService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/DispatchFuel/DispatchFuel.controller.js
... ... @@ -0,0 +1,10 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('DispatchFuelController', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 + }]);
... ...
app/partials/DispatchFuel/DispatchFuel.html
... ... @@ -0,0 +1,57 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-5">
  4 + <div class="widget stacked">
  5 + <div class="widget-header">
  6 + <i class="icon-pencil"></i>
  7 + <span class="glyphicon glyphicon-search"></span>
  8 + <h3>Search & Dispatch Fuel</h3>
  9 + </div>
  10 + <!-- /widget-header -->
  11 + <div class="widget-content" style="padding-left: 0; padding-right: 0;">
  12 + <div class="col-xs-12">
  13 + <div class="col-md-2">Company</div>
  14 + <div class="col-md-10">
  15 + <select required class="form-control">
  16 + <option value="" disabled selected hidden>Select </option>
  17 + <option value="0">Open when powered (most valves do this)</option>
  18 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  19 + </select>
  20 + </div>
  21 + </div>
  22 + <div class="col-xs-12">
  23 + <div class="col-md-2 Airport">Airport</div>
  24 + <div class="col-md-4 Airport">
  25 + <select required class="form-control">
  26 + <option value="" disabled selected hidden>Select </option>
  27 + <option value="0">Open when powered (most valves do this)</option>
  28 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  29 + </select>
  30 + <span style="font-size: 9px;">Formats: IATA,ICAO,City or Airport Name</span>
  31 + </div>
  32 + <div class="col-md-2 Airport">Aircraft</div>
  33 + <div class="col-md-4 Airport">
  34 + <select required class="form-control">
  35 + <option value="" disabled selected hidden>Select </option>
  36 + <option value="0">Open when powered (most valves do this)</option>
  37 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  38 + </select>
  39 + </div>
  40 + </div>
  41 + <div class="col-xs-12">
  42 + <div class="col-md-2 Airport">Requested<br>Volume</div>
  43 + <div class="col-md-4 Airport">
  44 + <select required class="form-control">
  45 + <option value="" disabled selected hidden>Select </option>
  46 + <option value="0">Open when powered (most valves do this)</option>
  47 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  48 + </select>
  49 + </div>
  50 + <div class="col-md-6 Airport " style= "text-align: right;"><button type="button" class="btn btn-warning">Get Quote </button></div>
  51 + </div>
  52 + </div>
  53 + </div>
  54 + <!-- /widget-content -->
  55 + </div>
  56 + <!-- /widget -->
  57 +</div>
0 58 \ No newline at end of file
... ...
app/partials/DispatchFuel/DispatchFuel.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('DispatchFuelService', ['$q', '$http', 'BE', DispatchFuelService]);
  5 +
  6 + function DispatchFuelService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/FuelVendors/FuelVendors.controller.js
... ... @@ -0,0 +1,40 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('FuelVendorsController', ['$scope',function($scope) {
  7 +
  8 + $scope.vendorList = [{
  9 + "companyName": "Name and inc",
  10 + "phone":"1010101010",
  11 + "contact":"jimmy",
  12 + "status":'Active',
  13 + "source": "tenant",
  14 + "allIn" : "$123"
  15 + },{
  16 + "companyName": "Name and inc",
  17 + "phone":"1010101010",
  18 + "contact":"jimmy",
  19 + "status":'Active',
  20 + "source": "tenant",
  21 + "allIn" : "$123"
  22 + },{
  23 + "companyName": "Name and inc",
  24 + "Fleet": 3,
  25 + "phone":"1010101010",
  26 + "contact":"jimmy",
  27 + "Base":"Kiad",
  28 + "status":'Inactive',
  29 + "source": "tenant",
  30 + "allIn" : "$123"
  31 + },{
  32 + "companyName": "Name and inc",
  33 + "phone":"1010101010",
  34 + "contact":"jimmy",
  35 + "status":'Active',
  36 + "source": "tenant",
  37 + "allIn" : "$123"
  38 + }]
  39 +
  40 + }]);
0 41 \ No newline at end of file
... ...
app/partials/FuelVendors/FuelVendors.html
... ... @@ -0,0 +1,222 @@
  1 +<style>
  2 + .subnavbar .mainnav > li:nth-child(3) > a{
  3 + color: #ff9900;
  4 + }
  5 +</style>
  6 +<div class="main">
  7 + <div class="container">
  8 + <div class="row">
  9 + <div class="col-md-12">
  10 + <div class="widget stacked ">
  11 + <div class="widget-content">
  12 + <div class="tabbable">
  13 + <ul class="nav nav-tabs">
  14 + <li>
  15 + <a ui-sref="app.customers">Company View
  16 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  17 + </a>
  18 + </li>
  19 + <li>
  20 + <a ui-sref="app.ContactView">Contact View
  21 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  22 + </a>
  23 + </li>
  24 + <li class="active">
  25 + <a ui-sref="app.FuelVendors">Fuel Vendors
  26 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  27 + </a>
  28 + </li>
  29 + <li style="margin: 0px 10px 4px 40px;"><input type="text" style="height:31px;"class="form-control" name="name" id="name" placeholder="Search In Table"></li>
  30 + <li><button type="button" class="btn btn-default btn-sm">Clear Search And Filters</button></li>
  31 + <li style="float:right"><button type="submit" class="btn btn-success btn-sm"><i class="fa fa-plus" aria-hidden="true"></i> Add Company</button></li>
  32 + </ul>
  33 + <br>
  34 + <div class="tab-content customer-table" style="margin:0px">
  35 + <div class="tab-pane active" id="companyView">
  36 + <table class="table table-striped">
  37 + <thead>
  38 + <tr>
  39 + <th>
  40 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  41 + <label class="font-company">Company Name <i class="fa fa-sort" aria-hidden="true"></i></label>
  42 + </th>
  43 +
  44 + <th>
  45 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  46 + <label class="font-company">Main Phone <i class="fa fa-sort" aria-hidden="true"></i></label>
  47 + </th>
  48 + <th>
  49 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  50 + <label class="font-company">Primary Contact <i class="fa fa-sort" aria-hidden="true"></i></label>
  51 + </th>
  52 +
  53 + <th>
  54 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  55 + <label class="font-company">Status <i class="fa fa-sort" aria-hidden="true"></i></label>
  56 + <th>
  57 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  58 + <label class="font-company">Source <i class="fa fa-sort" aria-hidden="true"></i></label>
  59 + </th>
  60 + <th>
  61 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  62 + <label class="font-company">Margin Setting <i class="fa fa-sort" aria-hidden="true"></i></label>
  63 + </th>
  64 + <th>
  65 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  66 + <label class="font-company">All In <i class="fa fa-sort" aria-hidden="true"></i></label>
  67 + </th>
  68 + </tr>
  69 + </thead>
  70 + <tbody>
  71 + <tr ng-repeat="vendor in vendorList">
  72 + <td class="font-company">{{vendor.companyName}}</td>
  73 + <td class="font-company">{{vendor.phone}}</td>
  74 + <td class="font-company">{{vendor.contact}}</td>
  75 + <td class="font-company">
  76 + <button type="button" ng-if="vendor.status == 'Active'" class="btn btn-success btn-xs">{{vendor.status}}</button>
  77 + <button type="button" ng-if="vendor.status == 'Inactive'" class="btn btn-warning btn-xs">{{vendor.status}}</button>
  78 + </td>
  79 + <td class="font-company">{{vendor.source}}</td>
  80 + <td class="font-company">
  81 + <select class="form-control" style="height:31px;">
  82 + <option>Margin1</option>
  83 + <option>Margin2</option>
  84 + </select>
  85 + </td>
  86 + <td class="font-company">{{vendor.allIn}}</td>
  87 + </tr>
  88 + </tbody>
  89 + </table>
  90 + <div class="row" style="margin-left: 0px;">
  91 + <div class="col-md-2">
  92 + <button type="button" class="btn btn-warning">Export Customers</button>
  93 + </div>
  94 + <div class="col-md-10">
  95 + <div class="row" style="margin-left: 0px;">
  96 + <div class="col-md-6">
  97 + </div>
  98 + <div class="col-md-2">
  99 + <select class="form-control">
  100 + <option>20 Records Per Page</option>
  101 + <option>50 Records Per Page</option>
  102 + <option>100 Records Per Page</option>
  103 + </select>
  104 + </div>
  105 + <div class="col-md-4">
  106 + <ul class="pagination" style="margin:0px">
  107 + <li><a href="javascript:;">ยซ</a></li>
  108 + <li class="active"><a href="#">1</a></li>
  109 + <li><a href="javascript:;">2</a></li>
  110 + <li><a href="javascript:;">3</a></li>
  111 + <li><a href="javascript:;">4</a></li>
  112 + <li><a href="javascript:;">5</a></li>
  113 + <li><a href="javascript:;">ยป</a></li>
  114 + </ul>
  115 + </div>
  116 + </div>
  117 + </div>
  118 + </div>
  119 + </div>
  120 + <div class="tab-pane" id="contactView">
  121 + <table class="table table-striped">
  122 + <thead>
  123 + <tr>
  124 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name"> Last Name</th>
  125 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">First Name</th>
  126 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Company Name</th>
  127 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Work Phone</th>
  128 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Mobile Phone</th>
  129 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Title</th>
  130 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Pricing Email</th>
  131 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Username</th>
  132 + <th> <input type="text" class="form-control" style="height:31px;" name="name" id="name">Password</th>
  133 + <th></th>
  134 + <th></th>
  135 + </tr>
  136 + </thead>
  137 + <tbody>
  138 + <tr>
  139 + <td>Name and inc.</td>
  140 + <td>3</td>
  141 + <td>03423233</td>
  142 + <td>Jemmy</td>
  143 + <td>KIAD</td>
  144 + <td></td>
  145 + <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  146 + <td></td>
  147 + <td>$123</td>
  148 + <td></td>
  149 + <td></td>
  150 + </tr>
  151 + <tr>
  152 + <td>Name and inc.</td>
  153 + <td>3</td>
  154 + <td>03423233</td>
  155 + <td>Jemmy</td>
  156 + <td>KIAD</td>
  157 + <td></td>
  158 + <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  159 + <td></td>
  160 + <td>$123</td>
  161 + <td></td>
  162 + <td></td>
  163 + </tr>
  164 + </tbody>
  165 + </table>
  166 + <div class="row" style="margin-left: 0px;">
  167 + <div class="col-md-2">
  168 + <button type="button" class="btn btn-info">Export CSV</button>
  169 + </div>
  170 + <div class="col-md-10">
  171 + <div class="row" style="margin-left: 0px;">
  172 + <div class="col-md-6">
  173 + </div>
  174 + <div class="col-md-2">
  175 + <select class="form-control">
  176 + <option>20 Records Per Page</option>
  177 + <option>50 Records Per Page</option>
  178 + <option>100 Records Per Page</option>
  179 + </select>
  180 + </div>
  181 + <div class="col-md-4">
  182 + <ul class="pagination" style="margin:0px">
  183 + <li><a href="javascript:;">ยซ</a></li>
  184 + <li class="active"><a href="#">1</a></li>
  185 + <li><a href="javascript:;">2</a></li>
  186 + <li><a href="javascript:;">3</a></li>
  187 + <li><a href="javascript:;">4</a></li>
  188 + <li><a href="javascript:;">5</a></li>
  189 + <li><a href="javascript:;">ยป</a></li>
  190 + </ul>
  191 + </div>
  192 + </div>
  193 + </div>
  194 + </div>
  195 + </div>
  196 + <div class="tab-pane" id="fuelVendors">
  197 + <table class="table table-striped table-bordered">
  198 + <thead>
  199 + <tr>
  200 + <th>Engine</th>
  201 + <th>Browser</th>
  202 + <th class="td-actions"></th>
  203 + </tr>
  204 + </thead>
  205 + <tbody>
  206 + </tbody>
  207 + </table>
  208 + </div>
  209 + </div>
  210 + </div>
  211 + </div>
  212 + <!-- /widget-content -->
  213 + </div>
  214 + <!-- /widget -->
  215 + </div>
  216 + <!-- /span8 -->
  217 + </div>
  218 + <!-- /row -->
  219 + </div>
  220 + <!-- /container -->
  221 +</div>
  222 +<!-- /main -->
0 223 \ No newline at end of file
... ...
app/partials/FuelVendors/FuelVendors.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('FuelVendorsService', ['$q', '$http', 'BE', FuelVendorsService]);
  5 +
  6 + function FuelVendorsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/NewCompany/NewCompany.controller.js
... ... @@ -0,0 +1,12 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('NewCompanyController', ['$scope','$uibModal', function($scope , $uibModal) {
  7 +
  8 +
  9 + $(function() {
  10 + $('#toggle-one2').bootstrapToggle();
  11 + })
  12 + }]);
0 13 \ No newline at end of file
... ...
app/partials/NewCompany/NewCompany.html
... ... @@ -0,0 +1,121 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-7">
  4 + <div class="widget" style="margin-bottom: 0;">
  5 + <div class="widget-header">
  6 + <i class="icon-pencil"></i>
  7 + <i class="fa fa-tasks" aria-hidden="true"></i>
  8 + <h3>Add a New Company</h3>
  9 + <div class="pull-right my-toggle-switch" style="margin-right: 30px;">
  10 + <div style="color: #ff9a01;">Activate &nbsp &nbsp
  11 + <!-- <input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle"> -->
  12 + <input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle" data-on="Active" data-off="Dactive">
  13 + </div>
  14 + </div>
  15 + <div class="clearfix"></div>
  16 + </div>
  17 + <div class="widget-content" style="padding-left: 0; padding-right: 0;">
  18 + <div class="col-xs-12">
  19 + <div class="col-md-8">
  20 + <div class="pull-left">
  21 + <label class="new-input-label"><b>Company Name</b></label>&nbsp;&nbsp;
  22 + </div>
  23 + <div class="pull-left">
  24 + <input type="Address" ng-model="data.company" class="form-control" id="Address" placeholder="">
  25 + </div>
  26 + <div class="clearfix"></div>
  27 + </div>
  28 + <div class="col-md-4">
  29 + <div class="pull-left">
  30 + <label class="new-input-label"><b>Base ICAO</b></label>
  31 + </div>
  32 + <div class="pull-right">
  33 + <input type="Address" style="width: 100px;" class="form-control" id="Address" placeholder="">
  34 + </div>
  35 + <div class="clearfix"></div>
  36 + </div>
  37 + </div>
  38 + <div class="clearfix"></div><br>
  39 + <div class="col-xs-12">
  40 + <div class="col-md-2">
  41 + <b>Relationship</b>
  42 + </div>
  43 + <div class="col-md-10"><input type="checkbox" name="vehicle" value="Bike"> Check here if this is a Base Tenant<br>
  44 + <input type="checkbox" name="vehicle" value="Car" checked> Check here if this is a FuelerLinx Customer<br>
  45 + <input type="checkbox" name="vehicle" value="Car" checked> Check here if this is a Contract Fuel Vendor
  46 + </div>
  47 + </div>
  48 + <div class="clearfix"></div>
  49 + <br/>
  50 + <div class="col-xs-12">
  51 + <div class="col-md-3 Airport">
  52 + <b>Master Margin</b>
  53 + </div>
  54 + <div class="col-md-3 Airport">
  55 + <select required class="form-control">
  56 + <option value="" disabled selected hidden>Select </option>
  57 + <option value="0">Open when powered (most valves do this)</option>
  58 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  59 + </select>
  60 + </div>
  61 + <div class="col-md-3 Airport">
  62 + <b>Certificate Type</b>
  63 + </div>
  64 + <div class="col-md-3 Airport">
  65 + <select required class="form-control">
  66 + <option value="" disabled selected hidden>Select </option>
  67 + <option value="0">Open when powered (most valves do this)</option>
  68 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  69 + </select>
  70 + </div>
  71 + </div>
  72 + <div class="clearfix"></div>
  73 + <br/>
  74 + <div class="col-xs-12">
  75 + <div class="col-md-2 Airport"><b>Address</b></div>
  76 + <div class="col-md-10 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  77 + </div>
  78 + <div class="clearfix"></div>
  79 + <br/>
  80 + <div class="col-xs-12">
  81 + <div class="col-md-2 Airport"><b>Address2</b></div>
  82 + <div class="col-md-10 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  83 + </div>
  84 + <div class="clearfix"></div>
  85 + <br/>
  86 + <div class="col-xs-12">
  87 + <div class="col-md-2 Airport"><b>City</b></div>
  88 + <div class="col-md-3 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  89 + <div class="col-md-1 Airport"><b class="pull-right">State</b></div>
  90 + <div class="col-md-2 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  91 + <div class="col-md-2 Airport"><b class="pull-right">Zip Code</b></div>
  92 + <div class="col-md-2 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  93 + </div>
  94 + <div class="clearfix"></div>
  95 + <br/>
  96 + <div class="col-xs-12">
  97 + <div class="col-md-2 Airport"><b>Country</b></div>
  98 + <div class="col-md-3 Airport"><input type="Address" class="form-control" id="Address" placeholder=""></div>
  99 + <div class="col-md-3 Airport"><b>Internal Note</b></div>
  100 + <div class="col-md-4 Airport">
  101 + <form action="/action_page.php">
  102 + <textarea name="message" rows="4" cols="20"></textarea>
  103 + </form>
  104 + </div>
  105 + </div>
  106 + <div class="clearfix"></div>
  107 + <br/>
  108 + <div class="col-xs-12">
  109 + <div class="col-md-2 Airport"></div>
  110 + <div class="col-md-10 Airport">
  111 + <div class="pull-right">
  112 + <button type="button" class="btn btn-default" ng-click="cancel()">Cancel</button>
  113 + <button type="button" class="btn btn-warning" ng-click="addAircraft()">Next: Add Aircraft</button>
  114 + </div>
  115 + </div>
  116 + </div>
  117 + </div>
  118 + </div>
  119 + <div class="clearfix"></div>
  120 + </div>
  121 +</div>
0 122 \ No newline at end of file
... ...
app/partials/NewCompany/NewCompany.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('NewCompanyService', ['$q', '$http', 'BE', NewCompanyService]);
  5 +
  6 + function NewCompanyService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/NewCompany/addAircarft.html
... ... @@ -0,0 +1,156 @@
  1 +<style>
  2 +
  3 +.button1 {
  4 + display: inline-block;
  5 + height: 35px;
  6 + line-height: 35px;
  7 + padding-right: 15px;
  8 + padding-left: 50px;
  9 + position: relative;
  10 + background-color:rgb(41,127,184);
  11 + color:rgb(255,255,255);
  12 + text-decoration: none;
  13 + text-transform: uppercase;
  14 + letter-spacing: 1px;
  15 + margin-bottom: 15px;
  16 + border: 0;
  17 +
  18 +
  19 + border-radius: 5px;
  20 + -moz-border-radius: 5px;
  21 + -webkit-border-radius: 5px;
  22 + text-shadow:0px 1px 0px rgba(0,0,0,0.5);
  23 + -ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ff123852,Positive=true)";zoom:1;
  24 + filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ff123852,Positive=true);
  25 +
  26 + -moz-box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  27 + -webkit-box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  28 + box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  29 + -ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=2,Color=#33000000,Positive=true)";
  30 + filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=2,Color=#33000000,Positive=true);
  31 +}
  32 +
  33 +.button1 span {
  34 + position: absolute;
  35 + left: 0;
  36 + top: 0;
  37 + width: 35px;
  38 + background-color:rgba(0,0,0,0.5);
  39 +
  40 + -webkit-border-top-left-radius: 5px;
  41 +-webkit-border-bottom-left-radius: 5px;
  42 +-moz-border-radius-topleft: 5px;
  43 +-moz-border-radius-bottomleft: 5px;
  44 +border-top-left-radius: 5px;
  45 +border-bottom-left-radius: 5px;
  46 +border-right: 1px solid rgba(0,0,0,0.15);
  47 +}
  48 +
  49 +.button1:hover span, .button1.active span {
  50 + background-color:rgb(0,102,26);
  51 + border-right: 1px solid rgba(0,0,0,0.3);
  52 +}
  53 +
  54 +.button1:active {
  55 + margin-top: 2px;
  56 + margin-bottom: 13px;
  57 +
  58 + -moz-box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  59 +-webkit-box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  60 +box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  61 +-ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ccffffff,Positive=true)";
  62 +filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ccffffff,Positive=true);
  63 +}
  64 +
  65 +.button1.turquoise {
  66 + background: #449d44;
  67 +}
  68 +
  69 +</style>
  70 +<div class="container">
  71 +<div class="row">
  72 + <div class="col-md-7">
  73 + <div class="widget" style="margin-bottom: 0;">
  74 + <div class="widget-header">
  75 + <i class="icon-pencil"></i>
  76 + <i class="fa fa-tasks" aria-hidden="true"></i>
  77 + <h3>Add a New Company</h3>
  78 + <div class="pull-right my-toggle-switch" style="margin-right: 30px;">
  79 + <div style="color: #ff9a01;">Activate &nbsp &nbsp
  80 + <!-- <input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle"> -->
  81 + <input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle" data-on="Active" data-off="Dactive">
  82 + </div>
  83 + </div>
  84 + <div class="clearfix"></div>
  85 + </div>
  86 + <div class="widget-content" style="padding-left: 0; padding-right: 0;">
  87 + <div class="col-xs-12">
  88 + <div class="widget-header">
  89 + <i class="fa fa-list"></i>
  90 + <h3>Aircraft List</h3>
  91 + </div>
  92 + <div class="widget-content" style="padding:0px;border: 0px; ">
  93 + <div class="table-responsive">
  94 + <table class="table table-bordered table-hover table-striped addRow" style="margin-bottom: 0px;">
  95 + <thead>
  96 + <tr>
  97 + <th>Tail</th>
  98 + <th>Make</th>
  99 + <th>Model</th>
  100 + <th>Size</th>
  101 + <th>Margin</th>
  102 + </tr>
  103 + </thead>
  104 + <tbody id="assqwe">
  105 + <tr>
  106 + <td>
  107 + <input type="text" style="width:100px;" class="form-control">
  108 + </td>
  109 + <td>
  110 + <select class="form-control" style="height:31px;">
  111 + <option>Margin1</option>
  112 + <option>Margin2</option>
  113 + </select>
  114 + </td>
  115 + <td>
  116 + <select class="form-control" style="height:31px;">
  117 + <option>Margin1</option>
  118 + <option>Margin2</option>
  119 + </select>
  120 + </td>
  121 + <td>
  122 + <select class="form-control" style="height:31px;">
  123 + <option>Margin1</option>
  124 + <option>Margin2</option>
  125 + </select>
  126 + </td>
  127 + <td>
  128 + <select class="form-control" style="height:31px;">
  129 + <option>Margin1</option>
  130 + <option>Margin2</option>
  131 + </select>
  132 + </td>
  133 + </tr>
  134 + </tbody>
  135 +
  136 + </table>
  137 + </div>
  138 + <div class="clearfix"></div>
  139 + </div>
  140 + </div>
  141 + <div class="clearfix"></div>
  142 + <div class="col-xs-12" style="margin-bottom: 50px;margin-top: 10px;">
  143 + <button ng-click="appendText()" class="button1 turquoise pull-right"><span>+</span>Add Aircraft</button>
  144 + </div>
  145 + <div class="col-xs-12" style="margin-bottom: 20px;">
  146 + <div class="pull-right">
  147 + <button type="button" class="btn btn-default" ng-click="cancelCraft()">Cancel</button>
  148 + <button type="button" class="btn btn-warning" ng-click="goBack()">Go Back</button>
  149 + <button type="button" class="btn btn-success" ng-click="goBack()">Save</button>
  150 + </div>
  151 + </div>
  152 + </div>
  153 + </div>
  154 + <div class="clearfix"></div>
  155 + </div>
  156 +</div>
0 157 \ No newline at end of file
... ...
app/partials/account/account.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('accountService', ['$q', '$http', 'BE', accountService]);
  5 +
  6 + function accountService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/analytics/analytics.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('analyticsService', ['$q', '$http', 'BE', analyticsService]);
  5 +
  6 + function analyticsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/charts/charts.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('chartsService', ['$q', '$http', 'BE', chartsService]);
  5 +
  6 + function chartsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/customers/customers.controller.js
... ... @@ -2,9 +2,228 @@
2 2  
3 3 //Load controller
4 4 angular.module('acufuel')
  5 + .controller('customersController', ['$scope', '$rootScope', '$uibModal', '$filter', 'CustomersService', customersController]);
5 6  
6   - .controller('customersController', ['$scope',function($scope) {
  7 + function customersController($scope, $rootScope, $uibModal, $filter, CustomersService) {
  8 + $(document).ready(function() {
  9 + $('#example').DataTable();
  10 + });
  11 + $scope.data = {};
  12 + $scope.aircraft = {};
  13 + $scope.data.activate = true;
  14 + $scope.customerList = [{
  15 + "companyName": "Name and inc",
  16 + "Fleet": 3,
  17 + "phone":"1010101010",
  18 + "contact":"jimmy",
  19 + "Base":"Kiad",
  20 + "status":'Active',
  21 + "source": "tenant",
  22 + "allIn" : "$123"
  23 + },{
  24 + "companyName": "Name and inc",
  25 + "Fleet": 3,
  26 + "phone":"1010101010",
  27 + "contact":"jimmy",
  28 + "Base":"Kiad",
  29 + "status":'Inactive',
  30 + "source": "tenant",
  31 + "allIn" : "$123"
  32 + },{
  33 + "companyName": "Name and inc",
  34 + "Fleet": 3,
  35 + "phone":"1010101010",
  36 + "contact":"jimmy",
  37 + "Base":"Kiad",
  38 + "status":'Active',
  39 + "source": "tenant",
  40 + "allIn" : "$123"
  41 + },{
  42 + "companyName": "Name and inc",
  43 + "Fleet": 3,
  44 + "phone":"1010101010",
  45 + "contact":"jimmy",
  46 + "Base":"Kiad",
  47 + "status":'Active',
  48 + "source": "tenant",
  49 + "allIn" : "$123"
  50 + }]
7 51  
8   - $scope.test = "Testing...";
  52 + $(function() {
  53 + $('#toggle-one2').bootstrapToggle();
  54 + $('#toggle-one2').change(function() {
  55 + $('#console-event').html('Toggle: ' + $(this).prop('checked'));
  56 + $scope.data.activate = $(this).prop('checked');
  57 + })
  58 + })
9 59  
10   - }]);
11 60 \ No newline at end of file
  61 +
  62 +
  63 + getData();
  64 + function getData(){
  65 + CustomersService.getAircraftMake().then(function(result) {
  66 + console.log("result", result)
  67 + $scope.aircraftMakeList = result;
  68 + $scope.aircraft.make = $scope.aircraftMakeList[0];
  69 + CustomersService.getModal($scope.aircraft.make).then(function(result) {
  70 + $scope.aircraftModalList = result;
  71 + $scope.aircraft.model = $scope.aircraftModalList[0];
  72 + CustomersService.getAircraftSize($scope.aircraft.make, $scope.aircraft.model).then(function(result) {
  73 + $scope.aircraftSizeList = result;
  74 + $scope.aircraft.size = $scope.aircraftSizeList[0];
  75 + })
  76 + })
  77 +
  78 + })
  79 + }
  80 +
  81 +
  82 + $scope.getModal = function(){
  83 + var makeId = $scope.aircraft.make;
  84 + CustomersService.getModal(makeId).then(function(result) {
  85 + $scope.aircraftModalList = result;
  86 + $scope.aircraft.model = $scope.aircraftModalList[0];
  87 + CustomersService.getAircraftSize(makeId, $scope.aircraft.model).then(function(result) {
  88 + $scope.aircraftSizeList = result;
  89 + $scope.aircraft.size = $scope.aircraftSizeList[0];
  90 + })
  91 + })
  92 + }
  93 +
  94 + $scope.getSize = function(){
  95 + CustomersService.getAircraftSize($scope.aircraft.make, $scope.aircraft.model).then(function(result) {
  96 + $scope.aircraftSizeList = result;
  97 + $scope.aircraft.size = $scope.aircraftSizeList[0];
  98 + })
  99 + }
  100 +
  101 + $scope.addFirstData = function(sel, step){
  102 + // console.log($scope.data)
  103 +
  104 + // var companyData = "companyName=" + $scope.data.companyName + "&masterMargin=" + $scope.data.masterMargin
  105 + // + "&addressOne=" + $scope.data.addressOne + "&addressTwo=" + $scope.data.addressTwo + "&city=" + $scope.data.city + "&state="
  106 + // + $scope.data.state + "&country=" + $scope.data.country + "&zipcode=" + $scope.data.zipcode + "&internalNote="
  107 + // + $scope.data.internalNote + "&certificateType=" + $scope.data.certificateType + "&baseTenant=" + $scope.data.baseTenant
  108 + // + "&fuelerlinxCustomer=" + $scope.data.fuelerlinxCustomer + "&contractFuelVendor=" + $scope.data.contractFuelVendor
  109 + // + "&activate=" + $scope.data.activate + "&baseIcao=" + $scope.data.baseIcao;
  110 +
  111 + // CustomersService.addCompany(companyData).then(function(result) {
  112 + // console.log(result)
  113 + // $scope.accountId = result;
  114 + //$scope.aircraft.accountId = $scope.accountId;
  115 + // })
  116 + $(sel).trigger('next.m.' + step);
  117 + getData();
  118 + }
  119 +
  120 + $scope.users = [
  121 + {id: 1, name: 'awesome user1', status: 2, group: 4, groupName: 'admin'},
  122 + {id: 2, name: 'awesome user2', status: undefined, group: 3, groupName: 'vip'},
  123 + {id: 3, name: 'awesome user3', status: 2, group: null}
  124 + ];
  125 +
  126 + $scope.statuses = [
  127 + {value: 1, text: 'status1'},
  128 + {value: 2, text: 'status2'},
  129 + {value: 3, text: 'status3'},
  130 + {value: 4, text: 'status4'}
  131 + ];
  132 +
  133 + $scope.groups = [];
  134 + $scope.loadGroups = function() {
  135 + return $scope.groups.length ? null : $http.get('/groups').success(function(data) {
  136 + $scope.groups = data;
  137 + });
  138 + };
  139 +
  140 + $scope.showGroup = function(user) {
  141 + if(user.group && $scope.groups.length) {
  142 + var selected = $filter('filter')($scope.groups, {id: user.group});
  143 + return selected.length ? selected[0].text : 'Not set';
  144 + } else {
  145 + return user.groupName || 'Not set';
  146 + }
  147 + };
  148 +
  149 + $scope.showStatus = function(user) {
  150 + var selected = [];
  151 + if(user.status) {
  152 + selected = $filter('filter')($scope.statuses, {value: user.status});
  153 + }
  154 + return selected.length ? selected[0].text : 'Not set';
  155 + };
  156 +
  157 + $scope.checkName = function(data, id) {
  158 + if (id === 2 && data !== 'awesome') {
  159 + return "Username 2 should be `awesome`";
  160 + }
  161 + };
  162 +
  163 + // filter users to show
  164 + $scope.filterUser = function(user) {
  165 + return user.isDeleted !== true;
  166 + };
  167 +
  168 + // mark user as deleted
  169 + $scope.deleteUser = function(id) {
  170 + var filtered = $filter('filter')($scope.users, {id: id});
  171 + if (filtered.length) {
  172 + filtered[0].isDeleted = true;
  173 + }
  174 + };
  175 +
  176 + // add user
  177 + $scope.addUser = function() {
  178 + $scope.users.push({
  179 + id: $scope.users.length+1,
  180 + name: '',
  181 + status: null,
  182 + group: null,
  183 + isNew: true
  184 + });
  185 + };
  186 +
  187 + // cancel all changes
  188 + $scope.cancel = function() {
  189 + for (var i = $scope.users.length; i--;) {
  190 + var user = $scope.users[i];
  191 + // undelete
  192 + if (user.isDeleted) {
  193 + delete user.isDeleted;
  194 + }
  195 + // remove new
  196 + if (user.isNew) {
  197 + $scope.users.splice(i, 1);
  198 + }
  199 + };
  200 + };
  201 +
  202 + // save edits
  203 + $scope.saveTable = function() {
  204 + var results = [];
  205 + for (var i = $scope.users.length; i--;) {
  206 + var user = $scope.users[i];
  207 + // actually delete user
  208 + if (user.isDeleted) {
  209 + $scope.users.splice(i, 1);
  210 + }
  211 + // mark as not new
  212 + if (user.isNew) {
  213 + user.isNew = false;
  214 + }
  215 +
  216 + // send on server
  217 + results.push($http.post('/saveUser', user));
  218 + }
  219 +
  220 + return $q.all(results);
  221 + };
  222 +
  223 + $scope.appendText = function() {
  224 + getData();
  225 + var newRow = $('<tr> <td> <input type="text" style="width:100px;" ng-model="aircraft.tail" class="form-control"> </td> <td style="width: 25%;"> <select class="form-control" ng-model="aircraft.make" ng-change="getModal()"> <option ng-repeat="make in aircraftMakeList">{{make}}</option> </select> </td> <td style="width: 20%;"> <select class="form-control" ng-model="aircraft.model" ng-change="getSize()"> <option ng-repeat="model in aircraftModalList">{{model}}</option> </select> </td> <td style="width: 25%;"> <select class="form-control" ng-model="aircraft.size"> <option ng-repeat="size in aircraftSizeList">{{size}}</option> </select> </td> <td> <select class="form-control"> <option>Margin1</option> <option>Margin2</option> </select> </td> </tr>');
  226 + $('table.addRow').append(newRow);
  227 + }
  228 +
  229 +
  230 + }
12 231 \ No newline at end of file
... ...
app/partials/customers/customers.html
... ... @@ -2,6 +2,73 @@
2 2 .subnavbar .mainnav > li:nth-child(3) > a{
3 3 color: #ff9900;
4 4 }
  5 +
  6 + .button1 {
  7 + display: inline-block;
  8 + height: 35px;
  9 + line-height: 35px;
  10 + padding-right: 15px;
  11 + padding-left: 50px;
  12 + position: relative;
  13 + background-color:rgb(41,127,184);
  14 + color:rgb(255,255,255);
  15 + text-decoration: none;
  16 + text-transform: uppercase;
  17 + letter-spacing: 1px;
  18 + margin-bottom: 15px;
  19 + border: 0;
  20 +
  21 +
  22 + border-radius: 5px;
  23 + -moz-border-radius: 5px;
  24 + -webkit-border-radius: 5px;
  25 + text-shadow:0px 1px 0px rgba(0,0,0,0.5);
  26 + -ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ff123852,Positive=true)";zoom:1;
  27 + filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ff123852,Positive=true);
  28 +
  29 + -moz-box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  30 + -webkit-box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  31 + box-shadow:0px 2px 2px rgba(0,0,0,0.2);
  32 + -ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=2,Color=#33000000,Positive=true)";
  33 + filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=2,Color=#33000000,Positive=true);
  34 + }
  35 +
  36 + .button1 span {
  37 + position: absolute;
  38 + left: 0;
  39 + top: 0;
  40 + width: 35px;
  41 + background-color:rgba(0,0,0,0.5);
  42 +
  43 + -webkit-border-top-left-radius: 5px;
  44 + -webkit-border-bottom-left-radius: 5px;
  45 + -moz-border-radius-topleft: 5px;
  46 + -moz-border-radius-bottomleft: 5px;
  47 + border-top-left-radius: 5px;
  48 + border-bottom-left-radius: 5px;
  49 + border-right: 1px solid rgba(0,0,0,0.15);
  50 + }
  51 +
  52 + .button1:hover span, .button1.active span {
  53 + background-color:rgb(0,102,26);
  54 + border-right: 1px solid rgba(0,0,0,0.3);
  55 + }
  56 +
  57 + .button1:active {
  58 + margin-top: 2px;
  59 + margin-bottom: 13px;
  60 +
  61 + -moz-box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  62 + -webkit-box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  63 + box-shadow:0px 1px 0px rgba(255,255,255,0.5);
  64 + -ms-filter:"progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ccffffff,Positive=true)";
  65 + filter:progid:DXImageTransform.Microsoft.dropshadow(OffX=0,OffY=1,Color=#ccffffff,Positive=true);
  66 + }
  67 +
  68 + .button1.turquoise {
  69 + background: #449d44;
  70 + }
  71 +
5 72 </style>
6 73 <div class="main">
7 74 <div class="container">
... ... @@ -12,96 +79,90 @@
12 79 <div class="tabbable">
13 80 <ul class="nav nav-tabs">
14 81 <li class="active">
15   - <a href="#companyView" data-toggle="tab">Company View</a>
  82 + <a ui-sref="app.customers">Company View
  83 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  84 + </a>
  85 + </li>
  86 + <li>
  87 + <a ui-sref="app.ContactView">Contact View
  88 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  89 + </a>
  90 + </li>
  91 + <li>
  92 + <a ui-sref="app.FuelVendors">Fuel Vendors
  93 + <i class="fa fa-caret-down" aria-hidden="true"></i>
  94 + </a>
16 95 </li>
17   - <li><a href="#contactView" data-toggle="tab">Contact View</a></li>
18   - <li><a href="#fuelVendors" data-toggle="tab">Fuel Vendors</a></li>
19 96 <li style="margin: 0px 10px 4px 40px;"><input type="text" style="height:31px;"class="form-control" name="name" id="name" placeholder="Search In Table"></li>
20   - <li><button type="button" class="btn btn-info btn-sm">Clear Search And Filters</button></li>
21   - <li style="float:right"><button type="submit" class="btn btn-success btn-sm"><i class="icon-ok"></i> Add Company</button></li>
  97 + <li><button type="button" class="btn btn-default btn-sm">Clear Search And Filters</button></li>
  98 + <li style="float:right"><button type="submit" data-toggle="modal" data-target="#demo-modal-3" class="btn btn-success btn-sm"><i class="fa fa-plus" aria-hidden="true"></i> Add Company</button></li>
22 99 </ul>
23   - <br>
24   - <div class="tab-content" style="margin:0px">
  100 + <br>
  101 + <div class="tab-content customer-table" style="margin:0px">
25 102 <div class="tab-pane active" id="companyView">
26   - <table class="table table-striped">
  103 + <table id="example" class="table table-striped">
27 104 <thead>
28 105 <tr>
29 106 <th>
30   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
31   - <lable class="font-company">Company Name</lable>
32   - </th>
33   - <th>
34   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
35   - <lable class="font-company">Fleet</lable>
  107 + <input type="text" class="form-control" name="name" id="name">
  108 + <label class="font-company">Company Name <i class="fa fa-sort" aria-hidden="true"></i></label>
36 109 </th>
37 110 <th>
38   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
39   - <lable class="font-company">Main Phone</lable>
  111 + <input type="text" class="form-control" name="name" id="name">
  112 + <label class="font-company">Fleet <i class="fa fa-sort" aria-hidden="true"></i></label>
40 113 </th>
41 114 <th>
42   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
43   - <lable class="font-company">Primary Contact</lable>
  115 + <input type="text" class="form-control" name="name" id="name">
  116 + <label class="font-company">Main Phone <i class="fa fa-sort" aria-hidden="true"></i></label>
44 117 </th>
45 118 <th>
46   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
47   - <lable class="font-company">Base</lable>
  119 + <input type="text" class="form-control" name="name" id="name">
  120 + <label class="font-company">Primary Contact <i class="fa fa-sort" aria-hidden="true"></i></label>
48 121 </th>
49 122 <th>
50   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
51   - <lable class="font-company">Status</lable>
  123 + <input type="text" class="form-control" name="name" id="name">
  124 + <label class="font-company">Base <i class="fa fa-sort" aria-hidden="true"></i></label>
52 125 </th>
53 126 <th>
54   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
55   - <lable class="font-company">Source</lable>
  127 + <select class="form-control">
  128 + <option value="showAll" selected>Show All</option>
  129 + </select>
  130 + <label class="font-company">Status <i class="fa fa-sort" aria-hidden="true"></i></label>
56 131 </th>
57 132 <th>
58   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
59   - <lable class="font-company">Margin Setting</lable>
  133 + <select class="form-control">
  134 + <option value="showAll" selected>Show All</option>
  135 + </select>
  136 + <label class="font-company">Margin Setting <i class="fa fa-sort" aria-hidden="true"></i></label>
60 137 </th>
61 138 <th>
62   - <input type="text" class="form-control" style="height:31px;" name="name" id="name">
63   - <lable class="font-company">All In</lable>
  139 + <input type="text" class="form-control" name="name" id="name">
  140 + <label class="font-company">All In <i class="fa fa-sort" aria-hidden="true"></i></label>
64 141 </th>
65   - <th></th>
66   - <th></th>
67   - </tr>
  142 + <th> &nbsp; </th>
68 143 </thead>
69 144 <tbody>
70   - <tr>
71   - <td class="font-company">Name and inc.</td>
72   - <td class="font-company">3</td>
73   - <td class="font-company">03423233</td>
74   - <td class="font-company">Jemmy</td>
75   - <td class="font-company">KIAD</td>
76   - <td class="font-company"><button type="button" class="btn btn-success btn-xs">Active</button></td>
77   - <td class="font-company">Tenant</td>
  145 + <tr ng-repeat="customer in customerList">
  146 + <td class="font-company">{{customer.companyName}}</td>
  147 + <td class="font-company">{{customer.Fleet}}</td>
  148 + <td class="font-company">{{customer.phone}}</td>
  149 + <td class="font-company">{{customer.contact}}</td>
  150 + <td class="font-company">{{customer.Base}}</td>
78 151 <td class="font-company">
79   - <select class="form-control" style="height:31px;">
80   - <option>Margin1</option>
81   - <option>Margin2</option>
82   - </select>
  152 + <button type="button" ng-if="customer.status == 'Active'" class="btn btn-success btn-xs">{{customer.status}}</button>
  153 + <button type="button" ng-if="customer.status == 'Inactive'" class="btn btn-warning btn-xs">{{customer.status}}</button>
  154 + </td>
83 155 </td>
84   - <td class="font-company">$123</td>
85   - <td ></td>
86   - <td></td>
87   - </tr>
88   - <tr>
89   - <td class="font-company">Name and inc.</td>
90   - <td class="font-company">3</td>
91   - <td class="font-company">03423233</td>
92   - <td class="font-company">Jemmy</td>
93   - <td class="font-company">KIAD</td>
94   - <td class="font-company"><button type="button" class="btn btn-danger btn-xs">Inactive</button></td>
95   - <td class="font-company">Tenant</td>
96 156 <td class="font-company">
97 157 <select class="form-control" style="height:31px;">
98 158 <option>Margin1</option>
99 159 <option>Margin2</option>
100 160 </select>
101 161 </td>
102   - <td class="font-company">$123</td>
103   - <td></td>
104   - <td></td>
  162 + <td class="font-company">{{customer.allIn}}</td>
  163 + <td>
  164 + <button type="button" class="btn btn-info btn-xs">Setup Fuel</button>
  165 + </td>
105 166 </tr>
106 167 </tbody>
107 168 </table>
... ... @@ -237,4 +298,333 @@
237 298 </div>
238 299 <!-- /container -->
239 300 </div>
240   -<!-- /main -->
241 301 \ No newline at end of file
  302 +<!-- /main -->
  303 +
  304 +<form class="modal multi-step" id="demo-modal-3" editable-form name="tableform" onaftersave="saveTable()" oncancel="cancel()">
  305 + <div class="modal-dialog modal-lg">
  306 + <div class="modal-content">
  307 + <div class="modal-body step-1" data-step="1" style="padding: 0;">
  308 + <div>
  309 + <div class="row" style="margin: 0;">
  310 + <div>
  311 + <div class="widget" style="margin-bottom: 0;">
  312 + <div class="widget-header">
  313 + <i class="icon-pencil"></i>
  314 + <i class="fa fa-tasks" aria-hidden="true"></i>
  315 + <h3>Add a New Company</h3>
  316 + <div class="pull-right my-toggle-switch" style="margin-right: 30px;">
  317 + <div style="color: #ff9a01;">Activate &nbsp &nbsp
  318 + <input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle" data-on="On" data-off="Off">
  319 + </div>
  320 + </div>
  321 + <div class="clearfix"></div>
  322 + </div>
  323 + <div class="widget-content" style="padding-left: 0; padding-right: 0; border-bottom: 0;">
  324 + <div class="col-xs-12">
  325 + <div class="col-md-8">
  326 + <div class="pull-left">
  327 + <label class="new-input-label"><b>Company Name</b></label>
  328 + </div>
  329 + <div class="pull-left" style="margin-left: 15px;">
  330 + <input type="text" ng-model="data.companyName" class="form-control" id="Address" placeholder="">
  331 + </div>
  332 + <div class="clearfix"></div>
  333 + </div>
  334 + <div class="col-md-4">
  335 +
  336 + <div class="pull-right">
  337 + <input type="text" ng-model="data.baseIcao" style="width: 100px;" class="form-control" id="Address" placeholder="">
  338 + </div>
  339 + <div class="pull-right">
  340 + <label style="margin-right: 15px;" class="new-input-label"><b>Base ICAO</b></label>
  341 + </div>
  342 + <div class="clearfix"></div>
  343 + </div>
  344 + </div>
  345 + <div class="clearfix"></div><br>
  346 + <div class="col-xs-12">
  347 + <div class="col-md-8">
  348 + <div class="pull-left">
  349 + <label class="new-input-label"><b>Relationship&nbsp;</b></label>
  350 + </div>
  351 + <div class="pull-left" style="margin-left: 32px;">
  352 + <input type="checkbox" ng-model="data.baseTenant" name="vehicle" value="Bike"> Check here if this is a Base Tenant<br>
  353 + <input type="checkbox" ng-model="data.fuelerlinxCustomer" name="vehicle" value="Car" checked> Check here if this is a FuelerLinx Customer<br>
  354 + <input type="checkbox" ng-model="data.contractFuelVendor" name="vehicle" value="Car" checked> Check here if this is a Contract Fuel Vendor
  355 + </div>
  356 + <div class="clearfix"></div>
  357 + </div>
  358 + </div>
  359 + <div class="clearfix"></div>
  360 + <br/>
  361 + <div class="col-xs-12">
  362 + <div class="col-md-6">
  363 + <div class="pull-left" style="width: 110px;">
  364 + <b>Master Margin</b>
  365 + </div>
  366 + <div class="pull-left">
  367 + <select required class="form-control" style="max-width: 250px;" ng-model="data.masterMargin">
  368 + <option value="" disabled selected hidden>Select </option>
  369 + <option value="good">Open when powered (most valves do this)</option>
  370 + <option value="perfect">Closed when powered, auto-opens when power is cut</option>
  371 + </select>
  372 + </div>
  373 + <div class="clearfix"></div>
  374 + </div>
  375 +
  376 + <div class="col-md-3 Airport" style="text-align: right;">
  377 + <b>Certificate Type</b>
  378 + </div>
  379 + <div class="col-md-3 Airport">
  380 + <select required class="form-control" ng-model="data.certificateType">
  381 + <option value="" disabled selected hidden>Select </option>
  382 + <option value="good">Open when powered (most valves do this)</option>
  383 + <option value="perfect">Closed when powered, auto-opens when power is cut</option>
  384 + </select>
  385 + </div>
  386 + </div>
  387 + <div class="clearfix"></div>
  388 + <br/>
  389 + <div class="col-xs-12">
  390 + <div class="col-md-12">
  391 + <div class="pull-left" style="width: 110px;">
  392 + <label class="new-input-label"><b>Address</b></label>
  393 + </div>
  394 + <div class="pull-left" style="width: calc(100% - 110px);">
  395 + <input type="text" class="form-control" ng-model="data.addressOne" id="Address" placeholder="">
  396 + </div>
  397 + <div class="clearfix"></div>
  398 + </div>
  399 + </div>
  400 + <div class="clearfix"></div>
  401 + <br/>
  402 + <div class="col-xs-12">
  403 + <div class="col-md-12">
  404 + <div class="pull-left" style="width: 110px;">
  405 + <label class="new-input-label"><b>Address2</b></label>
  406 + </div>
  407 + <div class="pull-left" style="width: calc(100% - 110px);">
  408 + <input type="text" ng-model="data.addressTwo" class="form-control" id="Address" placeholder="">
  409 + </div>
  410 + <div class="clearfix"></div>
  411 + </div>
  412 + </div>
  413 + <div class="clearfix"></div>
  414 + <br/>
  415 + <div class="col-xs-12">
  416 +
  417 + <div class="col-md-6">
  418 + <div class="pull-left" style="width: 110px;">
  419 + <label class="new-input-label"><b>City</b></label>
  420 + </div>
  421 + <div class="pull-left" style="width: calc(100% - 110px);">
  422 + <input type="text" ng-model="data.city" class="form-control" id="Address" placeholder="">
  423 + </div>
  424 + <div class="clearfix"></div>
  425 + </div>
  426 + <div class="col-md-3">
  427 + <div class="pull-left" style="width: 40px;">
  428 + <label class="new-input-label"><b>State</b></label>
  429 + </div>
  430 + <div class="pull-left" style="width: calc(100% - 110px);">
  431 + <input type="text" ng-model="data.state" class="form-control" id="Address" placeholder="">
  432 + </div>
  433 + <div class="clearfix"></div>
  434 + </div>
  435 + <div class="col-md-3">
  436 + <div class="pull-left">
  437 + <label class="new-input-label"><b>Zip Code</b></label>
  438 + </div>
  439 + <div class="pull-right" style="width: calc(100% - 60px);">
  440 + <input type="tel" ng-model="data.zipcode" class="form-control" id="Address" placeholder="">
  441 + </div>
  442 + <div class="clearfix"></div>
  443 + </div>
  444 + </div>
  445 + <div class="clearfix"></div>
  446 + <br/>
  447 + <div class="col-xs-12">
  448 +
  449 + <div class="col-md-6">
  450 + <div class="pull-left" style="width: 110px;">
  451 + <label class="new-input-label"><b>Country</b></label>
  452 + </div>
  453 + <div class="pull-left" style="width: calc(100% - 110px);">
  454 + <input type="text" ng-model="data.country" class="form-control" id="Address" placeholder="">
  455 + </div>
  456 + <div class="clearfix"></div>
  457 + </div>
  458 + <div class="col-md-6">
  459 + <div class="pull-left" style="width: 110px;">
  460 + <label class="new-input-label"><b>Internal Note</b></label>
  461 + </div>
  462 + <div class="pull-left" style="width: calc(100% - 110px);">
  463 + <textarea name="message" ng-model="data.internalNote" rows="4" cols="34"></textarea>
  464 + </div>
  465 + <div class="clearfix"></div>
  466 + </div>
  467 + </div>
  468 + <div class="clearfix"></div>
  469 + <!-- <br/>
  470 + <div class="col-xs-12">
  471 + <div class="col-md-2 Airport"></div>
  472 + <div class="col-md-10 Airport">
  473 + <div class="pull-right">
  474 + <button type="button" class="btn btn-default" ng-click="cancel()">Cancel</button>
  475 + <button type="button" class="btn btn-warning" ng-click="addAircraft()">Next: Add Aircraft</button>
  476 + </div>
  477 + </div>
  478 + </div> -->
  479 + </div>
  480 + </div>
  481 + <div class="clearfix"></div>
  482 + </div>
  483 + </div>
  484 + </div>
  485 + </div>
  486 + <div class="modal-body step-2" data-step="2" style="padding: 0;">
  487 + <div>
  488 + <div class="row" style="margin: 0;">
  489 + <div>
  490 + <div class="widget" style="margin-bottom: 0;">
  491 + <div class="widget-header">
  492 + <i class="icon-pencil"></i>
  493 + <i class="fa fa-tasks" aria-hidden="true"></i>
  494 + <h3>Add a New Company</h3>
  495 + <div class="clearfix"></div>
  496 + </div>
  497 + <div class="widget-content" style="padding-left: 0; padding-right: 0; border-bottom: 0;">
  498 + <div class="col-xs-12">
  499 + <div class="widget-header">
  500 + <i class="fa fa-list"></i>
  501 + <h3>Aircraft List</h3>
  502 + </div>
  503 + <div class="widget-content" style="padding:0px;border: 0px; ">
  504 + <div class="table-responsive">
  505 + <!-- <table class="table table-bordered table-hover table-striped addRow" style="margin-bottom: 0px;">
  506 + <thead>
  507 + <tr>
  508 + <th>Tail</th>
  509 + <th>Make</th>
  510 + <th>Model</th>
  511 + <th>Size</th>
  512 + <th>Margin</th>
  513 + </tr>
  514 + </thead>
  515 + <tbody>
  516 + <tr>
  517 + <td>
  518 + <input type="text" style="width:100px;" ng-model="aircraft.tail" class="form-control">
  519 + </td>
  520 + <td style="width: 25%;">
  521 + <select class="form-control" ng-model="aircraft.make" ng-change="getModal()">
  522 + <option ng-repeat="make in aircraftMakeList">{{make}}</option>
  523 + </select>
  524 + </td>
  525 + <td style="width: 20%;">
  526 + <select class="form-control" ng-model="aircraft.model" ng-change="getSize()">
  527 + <option ng-repeat="model in aircraftModalList">{{model}}</option>
  528 + </select>
  529 + </td>
  530 + <td style="width: 25%;">
  531 + <select class="form-control" ng-model="aircraft.size">
  532 + <option ng-repeat="size in aircraftSizeList">{{size}}</option>
  533 + </select>
  534 + </td>
  535 + <td>
  536 + <select class="form-control">
  537 + <option>Margin1</option>
  538 + <option>Margin2</option>
  539 + </select>
  540 + </td>
  541 + </tr>
  542 + </tbody>
  543 +
  544 + </table> -->
  545 + <table class="table table-bordered table-hover table-condensed">
  546 + <tr style="font-weight: bold">
  547 + <td style="width:40%">Name</td>
  548 + <td style="width:30%">Status</td>
  549 + <td style="width:30%">Group</td>
  550 + <td style="width:30%"><span ng-show="tableform.$visible">Action</span></td>
  551 + </tr>
  552 + <tr ng-repeat="user in users | filter:filterUser">
  553 + <td>
  554 + <!-- editable username (text with validation) -->
  555 + <span editable-text="user.name" e-form="tableform" onbeforesave="checkName($data, user.id)">
  556 + {{ user.name || 'empty' }}
  557 + </span>
  558 + </td>
  559 + <td>
  560 + <!-- editable status (select-local) -->
  561 + <span editable-select="user.status" e-form="tableform" e-ng-options="s.value as s.text for s in statuses">
  562 + {{ showStatus(user) }}
  563 + </span>
  564 + </td>
  565 + <td>
  566 + <!-- editable group (select-remote) -->
  567 + <span editable-select="user.group" e-form="tableform" onshow="loadGroups()" e-ng-options="g.id as g.text for g in groups">
  568 + {{ showGroup(user) }}
  569 + </span>
  570 + </td>
  571 + <td><button type="button" ng-show="tableform.$visible" ng-click="deleteUser(user.id)" class="btn btn-danger pull-right">Del</button></td>
  572 + </tr>
  573 + </table>
  574 +
  575 + <!-- buttons -->
  576 + <div class="btn-edit">
  577 + <button type="button" class="btn btn-default" ng-show="!tableform.$visible" ng-click="tableform.$show()">
  578 + edit
  579 + </button>
  580 + </div>
  581 + <div class="btn-form" ng-show="tableform.$visible">
  582 + <button type="button" ng-disabled="tableform.$waiting" ng-click="addUser()" class="btn btn-default pull-right">add row</button>
  583 + <button type="submit" ng-disabled="tableform.$waiting" class="btn btn-primary">save</button>
  584 + <button type="button" ng-disabled="tableform.$waiting" ng-click="tableform.$cancel()" class="btn btn-default">cancel</button>
  585 + </div>
  586 + </div>
  587 + <div class="clearfix"></div>
  588 + </div>
  589 + </div>
  590 + <div class="clearfix"></div>
  591 + <div class="col-xs-12" style="margin-bottom: 50px;margin-top: 10px;">
  592 + <button ng-click="appendText()" class="button1 turquoise pull-right"><span>+</span>Add Aircraft</button>
  593 + </div>
  594 + <!-- <div class="col-xs-12" style="margin-bottom: 20px;">
  595 + <div class="pull-right">
  596 + <button type="button" class="btn btn-default" ng-click="cancelCraft()">Cancel</button>
  597 + <button type="button" class="btn btn-warning" ng-click="goBack()">Go Back</button>
  598 + <button type="button" class="btn btn-success" ng-click="goBack()">Save</button>
  599 + </div>
  600 + </div> -->
  601 + </div>
  602 + </div>
  603 + <div class="clearfix"></div>
  604 + </div>
  605 + </div>
  606 + </div>
  607 + </div>
  608 + <!-- <div class="modal-body step-3" data-step="3">
  609 + This is the final step.
  610 + </div> -->
  611 + <div class="modal-footer" style="border-top: 0;">
  612 + <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
  613 + <button type="button" class="btn btn-primary step step-1" data-step="1" ng-click="addFirstData('#demo-modal-3', 2)">Next: Add Aircraft</button>
  614 + <button type="button" class="btn btn-primary step step-2" data-step="2" onclick="sendEvent('#demo-modal-3', 1)">Go Back</button>
  615 + <!-- <button type="button" class="btn btn-primary step step-2" data-step="2" onclick="sendEvent('#demo-modal-3', 3)">Continue</button> -->
  616 + <button type="button" class="btn btn-success step step-2" data-step="2" ng-click="saveCompanyData()">Save</button>
  617 + </div>
  618 + </div>
  619 + </div>
  620 +</form>
  621 +
  622 +<script src="js/multi-step-modal.js"></script>
  623 +<script>
  624 +sendEvent = function(sel, step) {
  625 + $(sel).trigger('next.m.' + step);
  626 +}
  627 +</script>
  628 +
  629 +
  630 +
  631 +
... ...
app/partials/customers/customers.service.js
... ... @@ -0,0 +1,77 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('CustomersService', ['$q', '$http', 'BASE_URL', CustomersService]);
  5 +
  6 + function CustomersService($q, $http, BASE_URL) {
  7 +
  8 + this.addCompany = function(data) {
  9 +
  10 + var deferred = $q.defer();
  11 + $http({
  12 + method : 'POST',
  13 + url : BASE_URL.url +'/company',
  14 + headers : {'Content-Type': 'application/json'},
  15 + data: data
  16 + })
  17 + .then(function (result){
  18 + deferred.resolve(result.data);
  19 + },function (result){
  20 + deferred.resolve(result.data);
  21 + })
  22 + return deferred.promise;
  23 + }
  24 +
  25 + this.getAircraftMake = function(){
  26 + var deferred = $q.defer();
  27 + $http({
  28 + method : 'GET',
  29 + url : BASE_URL.url +'/fuelerlinx/acufuel/getAircraftMake',
  30 + headers : {'Content-Type': 'application/json'},
  31 + })
  32 + .then(function (result){
  33 + deferred.resolve(result.data);
  34 + },function (result){
  35 + console.log(result)
  36 + deferred.resolve(result.data);
  37 + })
  38 + return deferred.promise;
  39 + }
  40 +
  41 + this.getAircraftSize = function(makeId, modelId){
  42 + var deferred = $q.defer();
  43 + $http({
  44 + method : 'GET',
  45 + url : BASE_URL.url +'/fuelerlinx/acufuel/getAircraftSize/' +makeId + '/' +modelId,
  46 + headers : {'Content-Type': 'application/json'},
  47 + })
  48 + .then(function (result){
  49 + deferred.resolve(result.data);
  50 + },function (result){
  51 + console.log(result)
  52 + deferred.resolve(result.data);
  53 + })
  54 + return deferred.promise;
  55 + }
  56 +
  57 + this.getModal = function(id){
  58 + var deferred = $q.defer();
  59 + $http({
  60 + method : 'GET',
  61 + url : BASE_URL.url +'/fuelerlinx/acufuel/getAircraftModel/' + id,
  62 + headers : {'Content-Type': 'application/json'},
  63 + })
  64 + .then(function (result){
  65 + deferred.resolve(result.data);
  66 + },function (result){
  67 + console.log(result)
  68 + deferred.resolve(result.data);
  69 + })
  70 + return deferred.promise;
  71 + }
  72 +
  73 +
  74 +
  75 + }
  76 +
  77 +})();
0 78 \ No newline at end of file
... ...
app/partials/dashboard/dashboard.html
... ... @@ -42,7 +42,7 @@
42 42 <div>
43 43 <div class="col-xs-12">
44 44 <span class="pull-left">Pending</span>
45   - <button class="btn btn-success btn-xs pull-right">
  45 + <button class="btn btn-success btn-xs pull-right pull-right-color ">
46 46 <span style="font-size:9px;">Monthly</span>
47 47 </button>
48 48 <div class="clearfix"></div>
... ... @@ -90,8 +90,8 @@
90 90 <div class="row">
91 91 <div class="col-md-12">
92 92 <div class="widget-header">
93   - <i class="fa fa-star"></i>
94   - <h3>Chart</h3>
  93 + <i class="fa fa-signal" aria-hidden="true"></i>
  94 + <h3>Chart</h3>
95 95 </div>
96 96 <!-- /widget-header -->
97 97 <div class="widget-content">
... ... @@ -139,7 +139,7 @@
139 139 <div class="widget stacked">
140 140 <div class="widget-header">
141 141 <i class="fa fa-pencil"></i>
142   - <h3>Quick Shortcuts</h3>
  142 + <h3>Price Manager</h3>
143 143 </div>
144 144 <!-- /widget-header -->
145 145 <div class="widget-content" style="padding-top:10px;">
... ... @@ -196,7 +196,7 @@
196 196 <!-- /widget -->
197 197 <div class="widget widget-nopad stacked">
198 198 <div class="widget-header">
199   - <i class="fa fa-list-alt"></i>
  199 + <i class="fa fa-comment" aria-hidden="true"></i>
200 200 <h3>Messages</h3>
201 201 </div>
202 202 <!-- /widget-header -->
... ...
app/partials/dashboard/dashboard.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('dashboardService', ['$q', '$http', 'BE', dashboardService]);
  5 +
  6 + function dashboardService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/delselected/delselected.controller.js
... ... @@ -0,0 +1,11 @@
  1 +
  2 +'use strict';
  3 +
  4 + //Load controller
  5 + angular.module('acufuel')
  6 +
  7 + .controller('delselectedController', ['$scope',function($scope) {
  8 +
  9 + $scope.test = "Testing...";
  10 +
  11 + }]);
... ...
app/partials/delselected/delselected.html
... ... @@ -0,0 +1,20 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-4">
  4 + <div class="widget">
  5 + <!-- <div class="widget-header"></div> -->
  6 + <div class="widget-content" style="padding-left: 0; padding-right: 0; padding-bottom: 0;">
  7 + <div class="col-md-2"><img class="src-image" src="img/images.jpg"></div>
  8 + <div class="col-md-10">
  9 + <p> Aer you sure that you want to permanently delete the selected element</p>
  10 + </div>
  11 + <div class="col-xs-12" style="background-color: #eee; padding: 15px; text-align: right;">
  12 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">yes</button>
  13 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">No</button>
  14 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">Cancel</button>
  15 + </div>
  16 + </div>
  17 + </div>
  18 + </div>
  19 +</div>
  20 +</div>
0 21 \ No newline at end of file
... ...
app/partials/delselected/delselected.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('delselectedService', ['$q', '$http', 'BE', delselectedService]);
  5 +
  6 + function delselectedService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/elements/elements.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('elementsService', ['$q', '$http', 'BE', elementsService]);
  5 +
  6 + function elementsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/error/error.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('errorService', ['$q', '$http', 'BE', errorService]);
  5 +
  6 + function errorService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/faq/faq.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('faqService', ['$q', '$http', 'BE', faqService]);
  5 +
  6 + function faqService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/forms/forms.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('formsService', ['$q', '$http', 'BE', formsService]);
  5 +
  6 + function formsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/fuelManager/fuelManager.html
... ... @@ -8,7 +8,7 @@
8 8 <div class="col-md-10">
9 9 <div class="widget stacked">
10 10 <div class="widget-header">
11   - <i class="icon-calendar"></i>
  11 + <i class="fa fa-pencil"></i>
12 12 <h3>Ramp Fee Manager</h3>
13 13 <select>
14 14 <option>Ramp Fee By Category</option>
... ...
app/partials/fuelManager/fuelManager.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('fuelManagerService', ['$q', '$http', 'BE', fuelManagerService]);
  5 +
  6 + function fuelManagerService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/fuelOrders/fuelOrders.controller.js
... ... @@ -0,0 +1,11 @@
  1 +
  2 +'use strict';
  3 +
  4 + //Load controller
  5 + angular.module('acufuel')
  6 +
  7 + .controller('fuelOrdersController', ['$scope',function($scope) {
  8 +
  9 + $scope.test = "Testing...";
  10 +
  11 + }]);
0 12 \ No newline at end of file
... ...
app/partials/fuelOrders/fuelOrders.html
... ... @@ -0,0 +1,234 @@
  1 +<style>
  2 + .subnavbar .mainnav > li:nth-child(3) > a{
  3 + color: #ff9900;
  4 + }
  5 +</style>
  6 +<div class="main">
  7 + <div class="container">
  8 + <div class="row">
  9 + <div class="col-md-12">
  10 + <div class="widget stacked ">
  11 + <div class="widget-content">
  12 + <div class="tabbable">
  13 + <ul class="nav nav-tabs Search-tabs">
  14 + <h2> Corman Air Coeporation</h2>
  15 + <li style="margin: 0px 10px 0px 0px;"><input type="text" style="height:31px;" class="form-control" name="name" id="name" placeholder="Search In Table"></li>
  16 + <li><button type="button" class="btn btn-default">Clear Search & Filters</button></li>
  17 +
  18 + <!-- <li style="float:right"></li> -->
  19 + </ul>
  20 + <br>
  21 + <div class="tab-content" style="margin:0px">
  22 + <div class="tab-pane active" id="companyView">
  23 + <table class="table table-striped">
  24 + <thead>
  25 + <tr>
  26 + <th>
  27 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  28 + <lable class="font-company">Fueling date</lable>
  29 + </th>
  30 + <th>
  31 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  32 + <lable class="font-company">Tail #</lable>
  33 + </th>
  34 + <th>
  35 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  36 + <lable class="font-company">FBO Name</lable>
  37 + </th>
  38 + <th>
  39 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  40 + <lable class="font-company">Volume</lable>
  41 + </th>
  42 + <th>
  43 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  44 + <lable class="font-company">Quoted</lable>
  45 + </th>
  46 + <th>
  47 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  48 + <lable class="font-company">Invoiced</lable>
  49 + </th>
  50 + <th>
  51 + <input type="text" class="form-control" style="height:31px;" name="name" id="name">
  52 + <lable class="font-company">Total</lable>
  53 + </th>
  54 + <th>
  55 + <select style="float: right;margin:7px;">
  56 + <option>Show all</option>
  57 + <option>paid</option>
  58 + <option>pending</option>
  59 + <option>cancelled</option>
  60 + </select>
  61 + <lable class="font-company">Status</lable>
  62 + </th>
  63 + <th>
  64 + <select style="float: right;margin:7px;">
  65 + <option>Show all</option>
  66 + <option>Attachmens</option>
  67 + <option>No Attachmens</option>
  68 + </select>
  69 + <lable class="font-company">Attachmens</lable>
  70 + </th>
  71 + <th></th>
  72 + <th></th>
  73 + </tr>
  74 + </thead>
  75 + <tbody>
  76 + <tr>
  77 + <td class="font-company">04/05/2017</td>
  78 + <td class="font-company">N500HG</td>
  79 + <td class="font-company">TBase FBO</td>
  80 + <td class="font-company">1000</td>
  81 + <td class="font-company">$4.4500</td>
  82 + <td class="font-company">$0.000</td>
  83 + <td class="font-company">$691.42</td>
  84 + <td class="font-company">paid</td>
  85 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  86 + <td ></td>
  87 + <td></td>
  88 + </tr>
  89 + <tr>
  90 + <td class="font-company">04/05/2017</td>
  91 + <td class="font-company">N968HG</td>
  92 + <td class="font-company">TBase FBO</td>
  93 + <td class="font-company">1000</td>
  94 + <td class="font-company">$4.4500</td>
  95 + <td class="font-company">$0.000</td>
  96 + <td class="font-company">$691.42</td>
  97 + <td class="font-company">pending</td>
  98 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  99 + <td></td>
  100 + <td></td>
  101 + </tr>
  102 + <tr>
  103 + <td class="font-company">04/05/2017</td>
  104 + <td class="font-company">N300HG</td>
  105 + <td class="font-company">TBase FBO</td>
  106 + <td class="font-company">1000</td>
  107 + <td class="font-company">$4.4500</td>
  108 + <td class="font-company">$0.000</td>
  109 + <td class="font-company">$691.42</td>
  110 + <td class="font-company">Cancelled</td>
  111 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  112 + <td></td>
  113 + <td ></td>
  114 + </tr>
  115 + <tr>
  116 + <td class="font-company">04/05/2017</td>
  117 + <td class="font-company">N500HG</td>
  118 + <td class="font-company">TBase FBO</td>
  119 + <td class="font-company">1000</td>
  120 + <td class="font-company">$4.4500</td>
  121 + <td class="font-company">$0.000</td>
  122 + <td class="font-company">$691.42</td>
  123 + <td class="font-company">pending</td>
  124 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  125 + <td ></td>
  126 + <td></td>
  127 + </tr>
  128 + <tr>
  129 + <td class="font-company">04/05/2017</td>
  130 + <td class="font-company">N600HG</td>
  131 + <td class="font-company">TBase FBO</td>
  132 + <td class="font-company">1000</td>
  133 + <td class="font-company">$4.4500</td>
  134 + <td class="font-company">$0.000</td>
  135 + <td class="font-company">$691.42</td>
  136 + <td class="font-company">paid</td>
  137 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  138 + <td ></td>
  139 + <td></td>
  140 + </tr>
  141 + <tr>
  142 + <td class="font-company">04/05/2017</td>
  143 + <td class="font-company">N500HG</td>
  144 + <td class="font-company">TBase FBO</td>
  145 + <td class="font-company">1000</td>
  146 + <td class="font-company">$4.4500</td>
  147 + <td class="font-company">$0.000</td>
  148 + <td class="font-company">$691.42</td>
  149 + <td class="font-company">Cancelled</td>
  150 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  151 + <td ></td>
  152 + <td></td>
  153 + </tr>
  154 + <tr>
  155 + <td class="font-company">04/05/2017</td>
  156 + <td class="font-company">N900HG</td>
  157 + <td class="font-company">TBase FBO</td>
  158 + <td class="font-company">1000</td>
  159 + <td class="font-company">$4.4500</td>
  160 + <td class="font-company">$0.000</td>
  161 + <td class="font-company">$691.42</td>
  162 + <td class="font-company">paid</td>
  163 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  164 + <td ></td>
  165 + <td></td>
  166 + </tr>
  167 + <tr>
  168 + <td class="font-company">04/05/2017</td>
  169 + <td class="font-company">N500HG</td>
  170 + <td class="font-company">TBase FBO</td>
  171 + <td class="font-company">1000</td>
  172 + <td class="font-company">$4.4500</td>
  173 + <td class="font-company">$0.000</td>
  174 + <td class="font-company">$691.42</td>
  175 + <td class="font-company">pending</td>
  176 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  177 + <td ></td>
  178 + <td></td>
  179 + </tr>
  180 + <tr>
  181 + <td class="font-company">04/05/2017</td>
  182 + <td class="font-company">N580HG</td>
  183 + <td class="font-company">TBase FBO</td>
  184 + <td class="font-company">1000</td>
  185 + <td class="font-company">$4.4500</td>
  186 + <td class="font-company">$0.000</td>
  187 + <td class="font-company">$691.42</td>
  188 + <td class="font-company">Cancelled</td>
  189 + <td class="font-company"><i class="fa fa-paperclip" aria-hidden="true"></i></td>
  190 + <td ></td>
  191 + <td></td>
  192 + </tr>
  193 + </tbody>
  194 + </table>
  195 + <div class="row" style="margin-left: 0px;">
  196 + <div class="col-md-2">
  197 + <button type="button" class="btn btn-warning">Export Fuel Orders</button>
  198 + </div>
  199 + <div class="col-md-10">
  200 + <div class="row" style="margin-left: 0px;">
  201 + <div class="col-md-6">
  202 + </div>
  203 + <div class="col-md-2">
  204 + <select class="form-control">
  205 + <option>20 Records Per Page</option>
  206 + <option>50 Records Per Page</option>
  207 + <option>100 Records Per Page</option>
  208 + </select>
  209 + </div>
  210 + <div class="col-md-4">
  211 + <ul class="pagination" style="margin:0px">
  212 + <li><a href="javascript:;">ยซ</a></li>
  213 + <li class="active"><a href="#">1</a></li>
  214 + <li><a href="javascript:;">2</a></li>
  215 + <li><a href="javascript:;">3</a></li>
  216 + <li><a href="javascript:;">4</a></li>
  217 + <li><a href="javascript:;">5</a></li>
  218 + <li><a href="javascript:;">ยป</a></li>
  219 + </ul>
  220 + </div>
  221 + </div>
  222 + </div>
  223 + </div>
  224 + </div>
  225 +
  226 + </div>
  227 +
  228 + </div>
  229 +
  230 + </div>
  231 +
  232 + </div>
  233 +
  234 +</div>
... ...
app/partials/fuelOrders/fuelOrders.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('fuelOrdersService', ['$q', '$http', 'BE', fuelOrdersService]);
  5 +
  6 + function fuelOrdersService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/gallery/gallery.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('galleryService', ['$q', '$http', 'BE', galleryService]);
  5 +
  6 + function galleryService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/jqueryui/jqueryui.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('jqueryuiService', ['$q', '$http', 'BE', jqueryuiService]);
  5 +
  6 + function jqueryuiService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/login/login.controller.js
... ... @@ -3,23 +3,19 @@
3 3 'use strict'
4 4  
5 5 angular.module('acufuel')
6   - .controller('LoginController', [ '$scope', '$filter', '$rootScope', '$state', LoginController]);
  6 + .controller('LoginController', [ '$scope', '$filter', '$rootScope', '$state', 'LoginService', LoginController]);
7 7  
8   - function LoginController($scope, $filter, $rootScope, $state) {
  8 + function LoginController($scope, $filter, $rootScope, $state, LoginService) {
9 9 $scope.data = {};
10   - $scope.submitLogin = function() {
11   -
12   - $scope.data.username;
13   - $scope.data.password;
14   - $state.go('app.dashboard');
15   - // if($scope.data.username == "acufuel" && $scope.data.password == "Acufuelelite123") {
16   - // localStorage.setItem('loginStatus', true);
17   - // $state.go('#/main/dashboard');
18   - // } else {
19   - // alert('Invalid credentials');
20   - // }
21   -
22   - }
  10 + $scope.submitLogin = function() {
  11 + var loginData = "username=" + $scope.data.username + "&password=" + $scope.data.password;
  12 + LoginService.loginUser(loginData).then(function(result) {
  13 + LoginService.authenticate();
  14 + //LoginService.setAuth(true);
  15 +
  16 + })
  17 + //$state.go('app.dashboard');
  18 + }
23 19 }
24 20 })();
25 21  
... ...
app/partials/login/login.service.js
... ... @@ -0,0 +1,122 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('LoginService', ['$rootScope', '$q', '$http', '$state', 'BASE_URL', 'AUTH_EVENTS', 'USER_ROLES', LoginService]);
  5 +
  6 + function LoginService($rootScope, $q, $http, $state, BASE_URL, AUTH_EVENTS, USER_ROLES) {
  7 + var authService = {},
  8 + username = '',
  9 + role = '',
  10 + isAuthenticated = false;
  11 +
  12 + var currentUserDetail = JSON.parse(window.localStorage.getItem("currentUser"));
  13 + console.log(currentUserDetail)
  14 + if (currentUserDetail) {
  15 + console.log('aaya')
  16 + if(currentUserDetail.type == 'ADMIN' || currentUserDetail.type == 'FBO'){
  17 + $rootScope.isAuthenticated = true;
  18 + role = USER_ROLES.admin;
  19 + }else if(currentUserDetail.type == 'FLIGHT_DEPT'){
  20 + $rootScope.isAuthenticated = false;
  21 + role = USER_ROLES.user;
  22 + }
  23 + }
  24 +
  25 + authService.loginUser = function(data) {
  26 +
  27 + var deferred = $q.defer();
  28 + $http({
  29 + method : 'POST',
  30 + url : BASE_URL.url +'/login',
  31 + headers : {'Content-Type': 'application/x-www-form-urlencoded'},
  32 + data : data
  33 + })
  34 + .then(function (result){
  35 + deferred.resolve(result.data);
  36 + },function (result){
  37 + console.log(result.data)
  38 + deferred.resolve(result.data);
  39 + })
  40 + return deferred.promise;
  41 + }
  42 +
  43 + authService.authenticate = function() {
  44 + var deferred = $q.defer();
  45 + $http({
  46 + method : 'GET',
  47 + url : BASE_URL.url+'/user/authenticate',
  48 + headers : {'Content-Type': 'application/x-www-form-urlencoded'}
  49 + }).then(function (result){
  50 + if(result.data.userProfile.userType.type == 'ADMIN' || result.data.userProfile.userType.type == 'FBO' || result.data.userProfile.userType.type == 'FLIGHT_DEPT'){
  51 + authService.setUser(result.data);
  52 + $state.go('app.dashboard')
  53 + }else{
  54 + localStorage.clear();
  55 + toastr.info("Please check username and password");
  56 + }
  57 + deferred.resolve(result.data);
  58 + },function (result){
  59 + deferred.resolve(result.data);
  60 + });
  61 + return deferred.promise;
  62 + }
  63 +
  64 + // authService.setAuth = function(data) {
  65 + // localStorage.setItem('loginStatus', data);
  66 + // }
  67 +
  68 + authService.logout = function(data) {
  69 +
  70 + // localStorage.clear();
  71 + // $rootScope.isAuthenticated = false;
  72 + // $rootScope.$broadcast(AUTH_EVENTS.updateUser);
  73 +
  74 + var deferred = $q.defer();
  75 + $http({
  76 + method : 'POST',
  77 + url : BASE_URL.url +'/user/logout',
  78 + headers : {'Content-Type': 'application/json'},
  79 + data : data
  80 + })
  81 + .success(function(result) {
  82 + deferred.resolve(result.data);
  83 + })
  84 + return deferred.promise;
  85 + }
  86 +
  87 +
  88 +
  89 + authService.getUser = function () {
  90 + return JSON.parse(window.localStorage.getItem("currentUser"));
  91 + }
  92 +
  93 + authService.setUser = function (authData) {
  94 + window.localStorage.setItem("currentUser", JSON.stringify(authData.userProfile.userType));
  95 + if(authData.userProfile.userType.type == 'ADMIN' || authData.userProfile.userType.type == 'FBO'){
  96 + role = USER_ROLES.admin;
  97 + $rootScope.isAuthenticated = true;
  98 + }else if(authData.userProfile.userType.type == 'FLIGHT_DEPT'){
  99 + role = USER_ROLES.user;
  100 + $rootScope.isAuthenticated = false;
  101 + }
  102 + }
  103 +
  104 + authService.isAuthenticated = function () {
  105 + return isAuthenticated;
  106 + }
  107 +
  108 + authService.role = function () {
  109 + return role;
  110 + }
  111 +
  112 + authService.isAuthorized = function (authorizedRoles) {
  113 + if (!angular.isArray(authorizedRoles)) {
  114 + authorizedRoles = [authorizedRoles];
  115 + }
  116 + return (authService.isAuthenticated() && authorizedRoles.indexOf(role) !== -1);
  117 + }
  118 +
  119 + return authService;
  120 + }
  121 +
  122 +})();
0 123 \ No newline at end of file
... ...
app/partials/main/main.html
... ... @@ -65,10 +65,10 @@
65 65 <li class="dropdown-submenu">
66 66 <a tabindex="-1" href="#">Fuel Orders</a>
67 67 <ul class="dropdown-menu">
68   - <li><a tabindex="-1" href="#">Pending</a></li>
69   - <li><a href="#">Invoiced</a></li>
70   - <li><a href="#">Canceled</a></li>
71   - <li><a href="#">Archived</a></li>
  68 + <li><a ui-sref="app.fuelOrders">Pending</a></li>
  69 + <li><a ui-sref="app.fuelOrders">Invoiced</a></li>
  70 + <li><a ui-sref="app.fuelOrders">Canceled</a></li>
  71 + <li><a ui-sref="app.fuelOrders">Archived</a></li>
72 72 </ul>
73 73 </li>
74 74 </ul>
... ...
app/partials/main/main.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('mainService', ['$q', '$http', 'BE', mainService]);
  5 +
  6 + function mainService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/popups/popups.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('popupsService', ['$q', '$http', 'BE', popupsService]);
  5 +
  6 + function popupsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/pricing/pricing.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('pricingService', ['$q', '$http', 'BE', pricingService]);
  5 +
  6 + function pricingService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/pricingcontact/pricingcontact.controller.js
... ... @@ -0,0 +1,11 @@
  1 +
  2 +'use strict';
  3 +
  4 + //Load controller
  5 + angular.module('acufuel')
  6 +
  7 + .controller('pricingcontactController', ['$scope',function($scope) {
  8 +
  9 + $scope.test = "Testing...";
  10 +
  11 + }]);
... ...
app/partials/pricingcontact/pricingcontact.html
... ... @@ -0,0 +1,19 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-4">
  4 + <div class="widget">
  5 + <!-- <div class="widget-header"></div> -->
  6 + <div class="widget-content" style="padding-left: 0; padding-right: 0; padding-bottom: 0;">
  7 + <div class="col-md-2"><img class="src-image" src="img/images.jpg"></div>
  8 + <div class="col-md-10">
  9 + <p> Aer you sure that you want to email pricing to everyone in your contact list</p>
  10 + </div>
  11 + <div class="col-xs-12" style="background-color: #eee; padding: 15px; text-align: right;">
  12 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">yes</button>
  13 + <button type="button" class="btn btn-default" style="padding: 3px 12px; border-radius: 0;">Cancel</button>
  14 + </div>
  15 + </div>
  16 + </div>
  17 + </div>
  18 +</div>
  19 +</div>
0 20 \ No newline at end of file
... ...
app/partials/pricingcontact/pricingcontact.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('pricingcontactService', ['$q', '$http', 'BE', pricingcontactService]);
  5 +
  6 + function pricingcontactService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/reports/reports.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('reportsService', ['$q', '$http', 'BE', reportsService]);
  5 +
  6 + function reportsService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/scheduler/scheduler.html
... ... @@ -41,12 +41,14 @@
41 41 </li>
42 42 </ul>
43 43 </div>
  44 + <button type="reset" style="margin-left: 145px;" class="btn btn-default btn-default-bottom"> Add Event</button>
44 45 </div>
45 46 <!-- /widget-content -->
46 47 </div>
47 48 <!-- /widget -->
48 49 </div>
49 50 <!-- /span6 -->
  51 +
50 52 <div class="col-md-9">
51 53 <div class="widget stacked">
52 54 <div class="widget-header">
... ... @@ -63,6 +65,7 @@
63 65 <!-- /widget -->
64 66 </div>
65 67 <!-- /span6 -->
  68 +
66 69 </div>
67 70 <!-- /row -->
68 71 </div>
... ...
app/partials/scheduler/scheduler.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('schedulerService', ['$q', '$http', 'BE', schedulerService]);
  5 +
  6 + function schedulerService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/searchDispatchFuel/searchDispatchFuel.controller.js
... ... @@ -0,0 +1,10 @@
  1 +'use strict';
  2 +
  3 + //Load controller
  4 + angular.module('acufuel')
  5 +
  6 + .controller('searchDispatchFuelController', ['$scope',function($scope) {
  7 +
  8 + $scope.test = "Testing...";
  9 +
  10 + }]);
0 11 \ No newline at end of file
... ...
app/partials/searchDispatchFuel/searchDispatchFuel.html
... ... @@ -0,0 +1,101 @@
  1 +<div class="container">
  2 +<div class="row">
  3 + <div class="col-md-5">
  4 + <div class="widget stacked">
  5 + <div class="widget-header">
  6 + <i class="icon-pencil"></i>
  7 + <span class="glyphicon glyphicon-search"></span>
  8 + <h3>Search & Dispatch Fuel</h3>
  9 + </div>
  10 + <!-- /widget-header -->
  11 + <div class="widget-content" style="padding-left: 0; padding-right: 0;">
  12 + <div class="col-xs-12">
  13 + <div class="col-md-2">Company</div>
  14 + <div class="col-md-10">
  15 + <select required class="form-control">
  16 + <option value="" disabled selected hidden>Select </option>
  17 + <option value="0">Open when powered (most valves do this)</option>
  18 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  19 + </select>
  20 + </div>
  21 + </div>
  22 + <div class="col-xs-12">
  23 + <div class="col-md-2 Airport">Airport</div>
  24 + <div class="col-md-4 Airport">
  25 + <select required class="form-control">
  26 + <option value="" disabled selected hidden>Select </option>
  27 + <option value="0">Open when powered (most valves do this)</option>
  28 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  29 + </select>
  30 + <span style="font-size: 9px;">Formats: IATA,ICAO,City or Airport Name</span>
  31 + </div>
  32 + <div class="col-md-2 Airport">Aircraft</div>
  33 + <div class="col-md-4 Airport">
  34 + <select required class="form-control">
  35 + <option value="" disabled selected hidden>Select </option>
  36 + <option value="0">Open when powered (most valves do this)</option>
  37 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  38 + </select>
  39 + </div>
  40 + </div>
  41 + <div class="col-xs-12">
  42 + <div class="col-md-2 Airport">Requested<br>Volume</div>
  43 + <div class="col-md-4 Airport">
  44 + <select required class="form-control">
  45 + <option value="" disabled selected hidden>Select </option>
  46 + <option value="0">Open when powered (most valves do this)</option>
  47 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  48 + </select>
  49 + </div>
  50 + </div>
  51 + <div class="col-xs-12">
  52 + <div class="col-md-2">FBO Name</div>
  53 + <div class="col-md-10">
  54 + <select required class="form-control">
  55 + <option value="" disabled selected hidden>Select </option>
  56 + <option value="0">Open when powered (most valves do this)</option>
  57 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  58 + </select>
  59 + </div>
  60 + </div>
  61 + <div class="col-xs-12">
  62 + <div class="col-md-2">Tier Break</div>
  63 + <div class="col-md-10">
  64 + <select required class="form-control">
  65 + <option value="" disabled selected hidden>Select </option>
  66 + <option value="0">Open when powered (most valves do this)</option>
  67 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  68 + </select>
  69 + </div>
  70 + </div>
  71 + <div class="col-xs-12">
  72 + <div class="col-md-2 Airport">Uplift Date</div>
  73 + <div class="col-md-4 Airport">
  74 + <select required class="form-control">
  75 + <option value="" disabled selected hidden>03/20/2017 </option>
  76 + <option value="0">Open when powered (most valves do this)</option>
  77 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  78 + </select>
  79 + </div>
  80 + <div class="col-md-2 Airport">Departing FBO</div>
  81 + <div class="col-md-4 Airport">
  82 + <select required class="form-control">
  83 + <option value="" disabled selected hidden>03/23/2017 </option>
  84 + <option value="0">Open when powered (most valves do this)</option>
  85 + <option value="1">Closed when powered, auto-opens when power is cut</option>
  86 + </select>
  87 + </div>
  88 + </div>
  89 + <div class="col-xs-12">
  90 + <div class="col-xs-2 Airport"></div>
  91 + <div class="col-md-10" style= "text-align: right;">
  92 + <button type="button" class="btn btn-default">Cancel</button>
  93 + <button type="button" class="btn btn-warning">Dispatch</button>
  94 + </div>
  95 + </div>
  96 + </div>
  97 + </div>
  98 + <!-- /widget-content -->
  99 + </div>
  100 + <!-- /widget -->
  101 +</div>
0 102 \ No newline at end of file
... ...
app/partials/searchDispatchFuel/searchDispatchFuel.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('searchDispatchFuelService', ['$q', '$http', 'BE', searchDispatchFuelService]);
  5 +
  6 + function searchDispatchFuelService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/signup/signup.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('signupService', ['$q', '$http', 'BE', signupService]);
  5 +
  6 + function signupService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/updateFuelManager/updateFuelManager.controller.js
... ... @@ -4,9 +4,19 @@
4 4 //Load controller
5 5 angular.module('acufuel')
6 6  
7   - .controller('updateFuelManagerController', ['$scope',function($scope) {
8 7  
9   - $scope.test = "Testing...";
  8 + .controller('updateFuelManagerController', ['$scope','$uibModal', function($scope , $uibModal) {
  9 + console.log("$uibModal",$uibModal);
  10 + $scope.yes = function(data){
  11 + console.log('========');
  12 + console.log('value', data);
  13 + $uibModal.yes({
  14 + templateUrl: 'partials/pricingcontact/pricingcontact.html',
  15 + backdrop: true,
  16 + scope: $scope,
  17 + })
  18 + }
  19 +
10 20  
11 21 }]);
12 22  
... ...
app/partials/updateFuelManager/updateFuelManager.html
... ... @@ -8,13 +8,13 @@
8 8 <div class="col-md-5">
9 9 <div class="widget stacked">
10 10 <div class="widget-header">
11   - <i class="icon-pencil"></i>
  11 + <i class="fa fa-pencil"></i>
12 12 <h3>Price Manager</h3>
13   - <select style="float: right;margin:10px">
14   - <option>Ramp Fee By Category</option>
15   - <option>Make And Model</option>
16   - <option>Weight</option>
17   - <option>Wingspan</option>
  13 + <select style="float: right;margin:10px;" ng-model="priceManager" ng-change="yes(priceManager)">
  14 + <option value="1">Send Pricing Email</option>
  15 + <option value="2">Margin 1</option>
  16 + <option value="3">Margin 2</option>
  17 + <option value="4">Margin Tenants</option>
18 18 </select>
19 19 </div>
20 20 <!-- /widget-header -->
... ... @@ -57,11 +57,15 @@
57 57 </div>
58 58 <!-- /widget -->
59 59 </div>
  60 +
60 61 <div class="col-md-7">
61 62 <div class="widget stacked">
62 63 <div class="widget-header">
63   - <i class="icon-pencil"></i>
  64 + <i class="fa fa-pencil"></i>
64 65 <h3><b>JET-A</b> Customer Margin Template</h3>
  66 + <div class="pull-right">
  67 + <button type="submit" class="btn btn-success btn-sm"><i class="icon-ok"></i>+ &nbsp Add Aircraft</button>
  68 + </div>
65 69 </div>
66 70 <!-- /widget-header -->
67 71 <div class="widget-content">
... ... @@ -234,13 +238,246 @@
234 238 <!-- /span12 -->
235 239 </div>
236 240 <!-- /row -->
  241 +<div class="container">
  242 +<div class="row">
  243 + <div class="col-md-5">
  244 + <div class="widget stacked">
  245 + <div class="widget-header">
  246 + <i class="fa fa-pencil"></i>
  247 + <h3>Queue Future Pricing </h3>
  248 + <!-- <select style="float: right;margin:10px;background-color:#cd7b00;">
  249 + <option>Send Pricing Email</option>
  250 + <option>Margin 1</option>
  251 + <option>Margin 2</option>
  252 + <option>Margin Tenants</option>
  253 + </select> -->
  254 + </div>
  255 + <!-- /widget-header -->
  256 + <div class="widget-content">
  257 + <h6>Queue Future Fuel Pricing Here</h6>
  258 + <table class="table table-striped">
  259 + <thead>
  260 + <tr>
  261 + <th> Product</th>
  262 + <th> Cost</th>
  263 + <th>PAP(Total)</th>
  264 + <th>Deploy</th>
  265 + <th>Next Expiration</th>
  266 + </tr>
  267 + </thead>
  268 + <tbody>
  269 + <tr>
  270 + <td>Name and inc.</td>
  271 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  272 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  273 + <td>Jemmy</td>
  274 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  275 + </tr>
  276 + <tr>
  277 + <td>Name and inc.</td>
  278 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  279 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  280 + <td>Jemmy</td>
  281 + <td><input type="text" class="form-control" style="height:31px;" name="name" id="name"></td>
  282 + </tr>
  283 + </tbody>
  284 + </table>
  285 + <div class="row" style="margin-left: 0px;">
  286 + <div class="col-md-12" style= "text-align: right;">
  287 + <button type="button" class="btn btn-success btn-xs">Save</button>
  288 + </div>
  289 + </div>
  290 + </div>
  291 + <!-- /widget-content -->
  292 + </div>
  293 + <!-- /widget -->
  294 + </div>
  295 + <div class="col-md-7">
  296 + <div class="widget stacked">
  297 + <div class="widget-header">
  298 + <i class="fa fa-pencil"></i>
  299 + <h3><b>JET-A</b> Customer Margin Template</h3>
  300 + <div class="pull-right">
  301 + <button type="submit" class="btn btn-success btn-sm"><i class="icon-ok"></i>+ &nbsp Add Aircraft</button>
  302 + </div>
  303 + </div>
  304 + <!-- /widget-header -->
  305 + <div class="widget-content">
  306 + <!-- <section id="accordions">
  307 + <div class="panel-group accordion">
  308 + <div class="panel panel-default open">
  309 + <div class="panel-heading">
  310 + <h4 class="panel-title">
  311 + <a class="accordion-toggle" style="float:left;" data-toggle="collapse" data-parent=".accordion" href="#collapseOne">
  312 + Margin 1
  313 + </a>
  314 + <span style="color:#ff9900;font-size:12px;margin-left:50px">Retail- (minus) </span><span style="font-size:12px">$1.1500</span>
  315 + </h4>
  316 + </div>
  317 + <div id="collapseOne" class="panel-collapse collapse in">
  318 + <div class="panel-body">
  319 + <div id="editor2" style="visibility: hidden;">
  320 + </div>
  321 + </div>
  322 + </div>
  323 + </div>
  324 + <div class="panel panel-default">
  325 + <div class="panel-heading">
  326 + <h4 class="panel-title">
  327 + <a class="accordion-toggle" data-toggle="collapse" data-parent=".accordion" href="#collapseTwo">
  328 + TurboPop AirCraft
  329 + </a>
  330 + </h4>
  331 + </div>
  332 + <div id="collapseTwo" class="panel-collapse collapse">
  333 + <div class="panel-body">
  334 + <div class="row" style="margin-left: 0px;">
  335 + <div class="col-md-8">
  336 + <div class="row" style="margin-bottom: 5px;">
  337 + <div class="col-md-1" style="text-align: right;">
  338 + <h5 style="color: blue;font-weight: bold;">Omit</h5>
  339 + </div>
  340 + <div class="col-md-5">
  341 + <h5 style="color: blue;font-weight: bold;">AirCraft Size</h5>
  342 + </div>
  343 + <div class="col-md-3">
  344 + <h5 style="color: blue;font-weight: bold;">Ramp/Facility Fee</h5>
  345 + </div>
  346 + <div class="col-md-3">
  347 + <h5 style="color: blue;font-weight: bold;">Avoidance</h5>
  348 + </div>
  349 + </div>
  350 + <div class="row" style="margin-bottom: 5px;">
  351 + <div class="col-md-1" style="text-align: right;">
  352 + <input type="checkbox" name="validateCheckbox" value="1">
  353 + </div>
  354 + <div class="col-md-5">
  355 + <p>Very Light Jet
  356 + </p>
  357 + </div>
  358 + <div class="col-md-3">
  359 + <input type="text" class="form-control" name="name" id="name">
  360 + </div>
  361 + <div class="col-md-3">
  362 + <input type="text" class="form-control" name="name" id="name">
  363 + </div>
  364 + </div>
  365 + <div class="row" style="margin-bottom: 5px;">
  366 + <div class="col-md-1" style="text-align: right;">
  367 + <input type="checkbox" name="validateCheckbox" value="1">
  368 + </div>
  369 + <div class="col-md-5">
  370 + <p> Light Jet
  371 + </p>
  372 + </div>
  373 + <div class="col-md-3">
  374 + <input type="text" class="form-control" name="name" id="name">
  375 + </div>
  376 + <div class="col-md-3">
  377 + <input type="text" class="form-control" name="name" id="name">
  378 + </div>
  379 + </div>
  380 + </div>
  381 + <div class="col-md-4">
  382 + </div>
  383 + </div>
  384 + </div>
  385 + </div>
  386 + </div>
  387 + <div class="panel panel-default">
  388 + <div class="panel-heading">
  389 + <h4 class="panel-title">
  390 + <a class="accordion-toggle" data-toggle="collapse" data-parent=".accordion" href="#collapseThree">
  391 + Collapsible Group Item #3
  392 + </a>
  393 + </h4>
  394 + </div>
  395 + <div id="collapseThree" class="panel-collapse collapse">
  396 + <div class="panel-body">
  397 + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
  398 + </div>
  399 + </div>
  400 + </div>
  401 + </div>
  402 + </section> -->
  403 + <uib-accordion close-others="oneAtATime">
  404 + <div uib-accordion-group class="panel-default" heading="Margin 1 Retail- (minus) $1.1500">
  405 + <div id="editor2" style="visibility: hidden;"></div>
  406 + </div>
  407 + <div uib-accordion-group class="panel-default" heading="TurboPop AirCraft">
  408 + <div class="panel-body">
  409 + <div class="row" style="margin-left: 0px;">
  410 + <div class="col-md-8">
  411 + <div class="row" style="margin-bottom: 5px;">
  412 + <div class="col-md-1" style="text-align: right;">
  413 + <h5 style="color: blue;font-weight: bold;">Omit</h5>
  414 + </div>
  415 + <div class="col-md-5">
  416 + <h5 style="color: blue;font-weight: bold;">AirCraft Size</h5>
  417 + </div>
  418 + <div class="col-md-3">
  419 + <h5 style="color: blue;font-weight: bold;">Ramp/Facility Fee</h5>
  420 + </div>
  421 + <div class="col-md-3">
  422 + <h5 style="color: blue;font-weight: bold;">Avoidance</h5>
  423 + </div>
  424 + </div>
  425 + <div class="row" style="margin-bottom: 5px;">
  426 + <div class="col-md-1" style="text-align: right;">
  427 + <input type="checkbox" name="validateCheckbox" value="1">
  428 + </div>
  429 + <div class="col-md-5">
  430 + <p>Very Light Jet
  431 + </p>
  432 + </div>
  433 + <div class="col-md-3">
  434 + <input type="text" class="form-control" name="name" id="name">
  435 + </div>
  436 + <div class="col-md-3">
  437 + <input type="text" class="form-control" name="name" id="name">
  438 + </div>
  439 + </div>
  440 + <div class="row" style="margin-bottom: 5px;">
  441 + <div class="col-md-1" style="text-align: right;">
  442 + <input type="checkbox" name="validateCheckbox" value="1">
  443 + </div>
  444 + <div class="col-md-5">
  445 + <p> Light Jet
  446 + </p>
  447 + </div>
  448 + <div class="col-md-3">
  449 + <input type="text" class="form-control" name="name" id="name">
  450 + </div>
  451 + <div class="col-md-3">
  452 + <input type="text" class="form-control" name="name" id="name">
  453 + </div>
  454 + </div>
  455 + </div>
  456 + <div class="col-md-4">
  457 + </div>
  458 + </div>
  459 + </div>
  460 + </div>
  461 + <div uib-accordion-group class="panel-default" heading="Collapsible Group Item #3">
  462 + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
  463 + </div>
  464 + </uib-accordion>
  465 + </div>
  466 + <!-- /widget-content -->
  467 + </div>
  468 + <!-- /widget -->
  469 + </div>
  470 + <!-- /span6 -->
  471 +</div>
  472 +</div>
  473 +</div>
237 474 </div> <!-- /container -->
238 475 <!-- Le javascript
239 476 ================================================== -->
240 477 <!-- Placed at the end of the document so the pages load faster -->
241   -<script>
  478 +<!-- <script>
242 479 CKEDITOR.replace( 'editor2', {
243 480 height: 250,
244 481 extraPlugins: 'divarea'
245 482 } );
246   -</script>
247 483 \ No newline at end of file
  484 +</script> -->
248 485 \ No newline at end of file
... ...
app/partials/updateFuelManager/updateFuelManager.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('updateFuelManagerService', ['$q', '$http', 'BE', updateFuelManagerService]);
  5 +
  6 + function updateFuelManagerService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/viewCompany/viewCompany.controller.js
... ... @@ -4,10 +4,33 @@
4 4 //Load controller
5 5 angular.module('acufuel')
6 6  
7   - .controller('viewCompanyController', ['$scope',function($scope) {
  7 + .controller('viewCompanyController', ['$scope','$uibModal', function($scope , $uibModal) {
  8 + console.log("$uibModal",$uibModal);
  9 + $scope.open = function(){
  10 + console.log("asndfsahdasd");
  11 + $scope.editSmsModal = $uibModal.open({
  12 + templateUrl: 'partials/NewCompany/NewCompany.html',
  13 + backdrop: true,
  14 + scope: $scope,
  15 + })
  16 + }
  17 + $(function() {
  18 + $('#toggle-one2').bootstrapToggle();
  19 + })
8 20  
9   - $scope.test = "Testing...";
  21 + $(function() {
  22 + $('#toggle-one1').bootstrapToggle();
  23 + })
  24 + $(function() {
  25 + $('#toggle-two').bootstrapToggle();
  26 + })
  27 + $(function() {
  28 + $('#toggle-three').bootstrapToggle();
  29 + })
  30 + $(function() {
  31 + $('#toggle-four').bootstrapToggle();
  32 + })
  33 +
10 34  
11 35 }]);
12 36  
13   -
... ...
app/partials/viewCompany/viewCompany.html
... ... @@ -2,47 +2,104 @@
2 2 .subnavbar .mainnav > li:nth-child(3) > a{
3 3 color: #ff9900;
4 4 }
  5 + .widget-content{
  6 + padding: 10px !important;
  7 + }
  8 + .widget-content input[type="text"], .widget-content select{
  9 + height: 31px;
  10 + padding: 0;
  11 + }
  12 + .new-label span{
  13 + float: left;
  14 + line-height: 31px;
  15 + }
  16 + .new-label span:first-child{
  17 + margin-right: 5px;
  18 + font-weight: bold;
  19 + }
  20 + .new-label span:last-child{
  21 + margin-left: 5px;
  22 + }
  23 + .new-label select{
  24 + display: -webkit-inline-box;
  25 + display: inline-box;
  26 + float: left;
  27 + }
  28 + .new-address p{
  29 + margin-bottom: 0;
  30 + }
  31 + .new-add-select{
  32 + padding-left: 15px;
  33 + margin: 10px 0;
  34 + }
  35 + .new-add-select select{
  36 + width: 100px;
  37 + }
  38 + .widget{
  39 + -moz-box-shadow: 0px 3px 8px rgba(100,100,100, 0.7);
  40 + -webkit-box-shadow: 0px 3px 8px rgba(100,100,100, 0.7);
  41 + box-shadow: 0px 3px 8px rgba(100,100,100, 0.7);
  42 + }
  43 + .optionclass {
  44 + background: #fff;
  45 + }
  46 + .timess {
  47 + float: right !important;
  48 + margin-top: 10px !important;
  49 + margin-right: 10px !important;
  50 + color: #999 !important;
  51 + cursor: pointer !important;
  52 + }
5 53 </style>
6   -<div class="container">
  54 +<div class="col-xs-12 col-md-11">
7 55 <div class="row" style="margin-left:0px">
8 56 <div class="col-md-12">
9   - <div class="widget stacked">
  57 + <div class="widget">
10 58 <div class="widget-header">
11   - <i class="fa fa-building"></i>
12   - <h3>Schedule</h3>
  59 + <i class="fa fa-building-o" aria-hidden="true"></i>
  60 + <h3>Antioch Flight Department</h3>
  61 + <i class="fa fa-times timess" ui-sref="app.customers" aria-hidden="true"></i>
13 62 </div>
14 63 <!-- /widget-header -->
15 64 <div class="widget-content">
16 65 <div class="row" style="margin-left:0px">
17 66 <div class="col-md-6">
18   - <div class="widget stacked">
  67 + <div class="widget">
19 68 <div class="widget-header">
20   - <i class="fa fa-building"></i>
  69 + <i class="fa fa-building-o" aria-hidden="true"></i>
21 70 <h3>Company Details</h3>
22   - <div style="float:right;margin-right:15px;"><input type="checkbox" style="margin-top: 13px;" data-toggle="toggle" data-size="mini"></div>
  71 + <div class="pull-right my-toggle-switch" style="margin-top: 10px; margin-right: 10px;">
  72 + <div><input id="toggle-one2" checked type="checkbox" data-size="mini" data-width="55" data-toggle="toggle" data-on="Active" data-off="Dactive">
  73 + </div>
  74 + </div>
23 75 </div>
24 76 <div class="widget-content">
25 77 <div class="row" style="margin-left:0px">
26   - <div class="col-md-9">
  78 + <div class="col-md-8" style="padding-left: 0;">
27 79 <h3 style="color:#F90;">
28 80 <b>Antioch Flight Department</b>
29 81 </h3>
30 82 </div>
31   - <div class="col-md-3">
32   - <select class="form-control" style="height:31px;">
33   - <option>Margin1</option>
34   - <option>Margin2</option>
  83 + <div class="col-md-4">
  84 + <select class="form-control" style="height:31px;background: #ebebeb;">
  85 + <option class="optionclass" disabled selected>Certificate Type</option>
  86 + <option class="optionclass">Part 91 (Corporate)</option>
  87 + <option class="optionclass">Part 135 (Charter)</option>
  88 + <option class="optionclass">Part 121 (Scheduled)</option>
  89 + <option class="optionclass">Military</option>
  90 + <option class="optionclass">Government</option>
35 91 </select>
36 92 </div>
37 93 </div>
38 94 <div>
39   - <p>
40   - <b>Master Margin Setting </b>
41   - <select>
  95 + <p class="new-label">
  96 + <span>Master Margin Setting </span>
  97 + <select class="form-control" style="width: 100px;">
42 98 <option>Margin1</option>
43 99 <option>Margin2</option>
44 100 </select>
45   - See Aircrart List
  101 + <span>See Aircrart List</span>
  102 + <div class="clearfix"></div>
46 103 </p>
47 104 </div>
48 105 <div>
... ... @@ -52,27 +109,37 @@
52 109 <input type="checkbox" name=""> CAA Member
53 110 </div>
54 111 </br>
55   - <div>
56   - <p><i class="fa fa-map-marker"></i> Reviera State Rd32 </p>
57   - <p><i class="fa fa-phone"></i> (310) 2342-3433 </p>
58   - <p><i class="fa fa-envelope"></i> freed@gmail.com</p>
  112 + <div class="new-address">
  113 + <p><i class="fa fa-map-marker"></i> Reviera State Rd32 <input type="checkbox"> </p>
  114 + <p><i class="fa fa-phone"></i> (310) 2342-3433 <input type="checkbox"></p>
  115 + <p><i class="fa fa-envelope"></i> freed@gmail.com <input type="checkbox"></p>
  116 + </div>
  117 + <div class="new-add-select">
  118 + <select class="form-control" style="background: #ebebeb;">
  119 + <option disabled selected>Add Field</option>
  120 + <option class="optionclass">Add Phone</option>
  121 + <option class="optionclass">Add Email</option>
  122 + </select>
59 123 </div>
60   - </br>
61 124 <div>
62   - <p><b>Company Notes</b></p>
  125 + <p style="margin-bottom: 0;"><b>Company Notes</b> <input type="checkbox"></p>
63 126 <p>This is the test data. note will be written in this</p>
64 127 </div>
65   - <div>
  128 + <div class="dis">
66 129 <button type="button" class="btn btn-primary">Distribute Price to Company Contacts</button>
67 130 </div>
  131 + <div><button type="button" class="btn btn-info">Setup Fuel</button></div>
68 132 </div>
69 133 </div>
70 134 </div>
71 135 <div class="col-md-6">
72   - <div class="widget stacked">
  136 + <div class="widget">
73 137 <div class="widget-header">
74 138 <i class="fa fa-plane"></i>
75 139 <h3>Aircraft List</h3>
  140 + <div class="pull-right">
  141 + <button type="submit" class="btn btn-success btn-sm" ng-click="open()" style="margin-top: 4px; margin-right: 9px;"><i class="icon-ok"></i>+ &nbsp Add Aircraft</button>
  142 + </div>
76 143 </div>
77 144 <div class="widget-content" style="padding:0px">
78 145 <div class="table-responsive">
... ... @@ -83,8 +150,10 @@
83 150 <th>Make</th>
84 151 <th>Model</th>
85 152 <th>JET-A</th>
86   - <th>JET-A(All in)</th>
  153 + <th>All in</th>
87 154 <th>AVGAS</th>
  155 + <th>All in</th>
  156 + <th></th>
88 157 </tr>
89 158 </thead>
90 159 <tbody>
... ... @@ -105,6 +174,8 @@
105 174 <option>Margin2</option>
106 175 </select>
107 176 </td>
  177 + <td style="color:#55AF8B;">$3659</td>
  178 + <td></td>
108 179 </tr>
109 180 <tr>
110 181 <td>N817C6</td>
... ... @@ -123,6 +194,8 @@
123 194 <option>Margin2</option>
124 195 </select>
125 196 </td>
  197 + <td style="color:#55AF8B;">$3659</td>
  198 + <td></td>
126 199 </tr>
127 200 <tr>
128 201 <td>N817C6</td>
... ... @@ -141,6 +214,8 @@
141 214 <option>Margin2</option>
142 215 </select>
143 216 </td>
  217 + <td style="color:#55AF8B;">$3659</td>
  218 + <td></td>
144 219 </tr>
145 220 <tr>
146 221 <td>N817C6</td>
... ... @@ -159,6 +234,8 @@
159 234 <option>Margin2</option>
160 235 </select>
161 236 </td>
  237 + <td style="color:#55AF8B;">$3659</td>
  238 + <td></td>
162 239 </tr>
163 240 </tbody>
164 241 </table>
... ... @@ -169,10 +246,13 @@
169 246 </div>
170 247 <div class="row" style="margin-left:0px">
171 248 <div class="col-md-6">
172   - <div class="widget stacked">
  249 + <div class="widget">
173 250 <div class="widget-header">
174 251 <i class="fa fa-user"></i>
175 252 <h3>Contact List</h3>
  253 + <div class="pull-right">
  254 + <button type="submit" class="btn btn-success btn-sm" style="margin-top: 4px; margin-right: 9px;"><i class="icon-ok"></i>+ &nbsp Add Contact</button>
  255 + </div>
176 256 </div>
177 257 <div class="widget-content" style="padding:0px">
178 258 <div class="table-responsive">
... ... @@ -187,25 +267,25 @@
187 267 </thead>
188 268 <tbody>
189 269 <tr>
190   - <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  270 + <td><input id="toggle-one1" checked type="checkbox" data-size="mini" data-toggle="toggle"></td>
191 271 <td>Mark</td>
192 272 <td>Otto</td>
193 273 <td>Dispatcher</td>
194 274 </tr>
195 275 <tr>
196   - <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  276 + <td><input id="toggle-two" checked type="checkbox" data-size="mini" data-toggle="toggle"></td>
197 277 <td>Mark</td>
198 278 <td>Otto</td>
199 279 <td>Dispatcher</td>
200 280 </tr>
201 281 <tr>
202   - <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  282 + <td><input id="toggle-three" checked type="checkbox" data-size="mini" data-toggle="toggle"></td>
203 283 <td>Mark</td>
204 284 <td>Otto</td>
205 285 <td>Dispatcher</td>
206 286 </tr>
207 287 <tr>
208   - <td><input type="checkbox" data-toggle="toggle" data-size="mini"></td>
  288 + <td><input id="toggle-four" checked type="checkbox" data-size="mini" data-toggle="toggle"></td>
209 289 <td>Mark</td>
210 290 <td>Otto</td>
211 291 <td>Dispatcher</td>
... ... @@ -217,7 +297,7 @@
217 297 </div>
218 298 </div>
219 299 <div class="col-md-6">
220   - <div class="widget stacked">
  300 + <div class="widget">
221 301 <div class="widget-header">
222 302 <i class="fa fa-pencil"></i>
223 303 <h3>Price Manager Reference</h3>
... ... @@ -286,12 +366,13 @@
286 366 <!-- /widget -->
287 367 </div>
288 368 <!-- /container -->
  369 +<div class="clearfix"></div>
289 370 <!-- Le javascript
290 371 ================================================== -->
291 372 <!-- Placed at the end of the document so the pages load faster -->
292   -<script>
  373 +<!-- <script
293 374 CKEDITOR.replace( 'editor2', {
294 375 height: 250,
295 376 extraPlugins: 'divarea'
296 377 } );
297   -</script>
298 378 \ No newline at end of file
  379 + </script> -->
299 380 \ No newline at end of file
... ...
app/partials/viewCompany/viewCompany.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('viewCompanyService', ['$q', '$http', 'BE', viewCompanyService]);
  5 +
  6 + function viewCompanyService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
app/partials/widgetTemplate/widgetTemplate.service.js
... ... @@ -0,0 +1,13 @@
  1 +(function(){
  2 + 'use strict';
  3 + angular.module('acufuel')
  4 + .service('widgetTemplateService', ['$q', '$http', 'BE', widgetTemplateService]);
  5 +
  6 + function widgetTemplateService($q, $http, BE) {
  7 + var temp = {};
  8 +
  9 +
  10 +
  11 + }
  12 +
  13 +})();
0 14 \ No newline at end of file
... ...
... ... @@ -25,6 +25,13 @@
25 25 "angular-ui-router": "^0.4.2",
26 26 "bootstrap-toggle": "^2.2.2",
27 27 "fullcalendar": "^3.2.0",
28   - "toastr": "^2.1.3"
  28 + "toastr": "^2.1.3",
  29 + "angular-bootstrap": "^2.5.0",
  30 + "jqGrid": "^5.2.0",
  31 + "Autocomplete": "autocomplete#^2.0.5",
  32 + "DataTables": "~1.10.15",
  33 + "angular-cookies": "~1.6.4",
  34 + "angular-resource": "~1.6.4",
  35 + "angular-xeditable": "~0.7.1"
29 36 }
30 37 }
... ...