Details | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 1 | espaco | 1 | /*** |
| 2 | Metronic AngularJS App Main Script |
||
| 3 | ***/ |
||
| 4 | |||
| 5 | /* Metronic App */ |
||
| 6 | var MetronicApp = angular.module("MetronicApp", [ |
||
| 7 | "ui.router", |
||
| 8 | "ui.bootstrap", |
||
| 9 | "oc.lazyLoad", |
||
| 10 | "ngSanitize" |
||
| 11 | ]); |
||
| 12 | |||
| 13 | /* Configure ocLazyLoader(refer: https://github.com/ocombe/ocLazyLoad) */ |
||
| 14 | MetronicApp.config(['$ocLazyLoadProvider', function($ocLazyLoadProvider) { |
||
| 15 | $ocLazyLoadProvider.config({ |
||
| 16 | // global configs go here |
||
| 17 | }); |
||
| 18 | }]); |
||
| 19 | |||
| 20 | /******************************************** |
||
| 21 | BEGIN: BREAKING CHANGE in AngularJS v1.3.x: |
||
| 22 | *********************************************/ |
||
| 23 | /** |
||
| 24 | `$controller` will no longer look for controllers on `window`. |
||
| 25 | The old behavior of looking on `window` for controllers was originally intended |
||
| 26 | for use in examples, demos, and toy apps. We found that allowing global controller |
||
| 27 | functions encouraged poor practices, so we resolved to disable this behavior by |
||
| 28 | default. |
||
| 29 | |||
| 30 | To migrate, register your controllers with modules rather than exposing them |
||
| 31 | as globals: |
||
| 32 | |||
| 33 | Before: |
||
| 34 | |||
| 35 | ```javascript |
||
| 36 | function MyController() { |
||
| 37 | // ... |
||
| 38 | } |
||
| 39 | ``` |
||
| 40 | |||
| 41 | After: |
||
| 42 | |||
| 43 | ```javascript |
||
| 44 | angular.module('myApp', []).controller('MyController', [function() { |
||
| 45 | // ... |
||
| 46 | }]); |
||
| 47 | |||
| 48 | Although it's not recommended, you can re-enable the old behavior like this: |
||
| 49 | |||
| 50 | ```javascript |
||
| 51 | angular.module('myModule').config(['$controllerProvider', function($controllerProvider) { |
||
| 52 | // this option might be handy for migrating old apps, but please don't use it |
||
| 53 | // in new ones! |
||
| 54 | $controllerProvider.allowGlobals(); |
||
| 55 | }]); |
||
| 56 | **/ |
||
| 57 | |||
| 58 | //AngularJS v1.3.x workaround for old style controller declarition in HTML |
||
| 59 | MetronicApp.config(['$controllerProvider', function($controllerProvider) { |
||
| 60 | // this option might be handy for migrating old apps, but please don't use it |
||
| 61 | // in new ones! |
||
| 62 | $controllerProvider.allowGlobals(); |
||
| 63 | }]); |
||
| 64 | |||
| 65 | /******************************************** |
||
| 66 | END: BREAKING CHANGE in AngularJS v1.3.x: |
||
| 67 | *********************************************/ |
||
| 68 | |||
| 69 | /* Setup global settings */ |
||
| 70 | MetronicApp.factory('settings', ['$rootScope', function($rootScope) { |
||
| 71 | // supported languages |
||
| 72 | var settings = { |
||
| 73 | layout: { |
||
| 74 | pageSidebarClosed: false, // sidebar menu state |
||
| 75 | pageBodySolid: false, // solid body color state |
||
| 76 | pageAutoScrollOnLoad: 1000 // auto scroll to top on page load |
||
| 77 | }, |
||
| 78 | layoutImgPath: Metronic.getAssetsPath() + 'admin/layout/img/', |
||
| 79 | layoutCssPath: Metronic.getAssetsPath() + 'admin/layout/css/' |
||
| 80 | }; |
||
| 81 | |||
| 82 | $rootScope.settings = settings; |
||
| 83 | |||
| 84 | return settings; |
||
| 85 | }]); |
||
| 86 | |||
| 87 | /* Setup App Main Controller */ |
||
| 88 | MetronicApp.controller('AppController', ['$scope', '$rootScope', function($scope, $rootScope) { |
||
| 89 | $scope.$on('$viewContentLoaded', function() { |
||
| 90 | Metronic.initComponents(); // init core components |
||
| 91 | //Layout.init(); // Init entire layout(header, footer, sidebar, etc) on page load if the partials included in server side instead of loading with ng-include directive |
||
| 92 | }); |
||
| 93 | }]); |
||
| 94 | |||
| 95 | /*** |
||
| 96 | Layout Partials. |
||
| 97 | By default the partials are loaded through AngularJS ng-include directive. In case they loaded in server side(e.g: PHP include function) then below partial |
||
| 98 | initialization can be disabled and Layout.init() should be called on page load complete as explained above. |
||
| 99 | ***/ |
||
| 100 | |||
| 101 | /* Setup Layout Part - Header */ |
||
| 102 | MetronicApp.controller('HeaderController', ['$scope', function($scope) { |
||
| 103 | $scope.$on('$includeContentLoaded', function() { |
||
| 104 | Layout.initHeader(); // init header |
||
| 105 | }); |
||
| 106 | }]); |
||
| 107 | |||
| 108 | /* Setup Layout Part - Sidebar */ |
||
| 109 | MetronicApp.controller('SidebarController', ['$scope', function($scope) { |
||
| 110 | $scope.$on('$includeContentLoaded', function() { |
||
| 111 | Layout.initSidebar(); // init sidebar |
||
| 112 | }); |
||
| 113 | }]); |
||
| 114 | |||
| 115 | /* Setup Layout Part - Quick Sidebar */ |
||
| 116 | MetronicApp.controller('QuickSidebarController', ['$scope', function($scope) { |
||
| 117 | $scope.$on('$includeContentLoaded', function() { |
||
| 118 | setTimeout(function(){ |
||
| 119 | QuickSidebar.init(); // init quick sidebar |
||
| 120 | }, 2000) |
||
| 121 | }); |
||
| 122 | }]); |
||
| 123 | |||
| 124 | /* Setup Layout Part - Theme Panel */ |
||
| 125 | MetronicApp.controller('ThemePanelController', ['$scope', function($scope) { |
||
| 126 | $scope.$on('$includeContentLoaded', function() { |
||
| 127 | Demo.init(); // init theme panel |
||
| 128 | }); |
||
| 129 | }]); |
||
| 130 | |||
| 131 | /* Setup Layout Part - Footer */ |
||
| 132 | MetronicApp.controller('FooterController', ['$scope', function($scope) { |
||
| 133 | $scope.$on('$includeContentLoaded', function() { |
||
| 134 | Layout.initFooter(); // init footer |
||
| 135 | }); |
||
| 136 | }]); |
||
| 137 | |||
| 138 | /* Setup Rounting For All Pages */ |
||
| 139 | MetronicApp.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) { |
||
| 140 | // Redirect any unmatched url |
||
| 141 | $urlRouterProvider.otherwise("/dashboard.html"); |
||
| 142 | |||
| 143 | $stateProvider |
||
| 144 | |||
| 145 | // Dashboard |
||
| 146 | .state('dashboard', { |
||
| 147 | url: "/dashboard.html", |
||
| 148 | templateUrl: "views/dashboard.html", |
||
| 149 | data: {pageTitle: 'Admin Dashboard Template'}, |
||
| 150 | controller: "DashboardController", |
||
| 151 | resolve: { |
||
| 152 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 153 | return $ocLazyLoad.load({ |
||
| 154 | name: 'MetronicApp', |
||
| 155 | insertBefore: '#ng_load_plugins_before', // load the above css files before a LINK element with this ID. Dynamic CSS files must be loaded between core and theme css files |
||
| 156 | files: [ |
||
| 157 | '../../../assets/global/plugins/morris/morris.css', |
||
| 158 | '../../../assets/admin/pages/css/tasks.css', |
||
| 159 | |||
| 160 | '../../../assets/global/plugins/morris/morris.min.js', |
||
| 161 | '../../../assets/global/plugins/morris/raphael-min.js', |
||
| 162 | '../../../assets/global/plugins/jquery.sparkline.min.js', |
||
| 163 | |||
| 164 | '../../../assets/admin/pages/scripts/index3.js', |
||
| 165 | '../../../assets/admin/pages/scripts/tasks.js', |
||
| 166 | |||
| 167 | 'js/controllers/DashboardController.js' |
||
| 168 | ] |
||
| 169 | }); |
||
| 170 | }] |
||
| 171 | } |
||
| 172 | }) |
||
| 173 | |||
| 174 | // AngularJS plugins |
||
| 175 | .state('fileupload', { |
||
| 176 | url: "/file_upload.html", |
||
| 177 | templateUrl: "views/file_upload.html", |
||
| 178 | data: {pageTitle: 'AngularJS File Upload'}, |
||
| 179 | controller: "GeneralPageController", |
||
| 180 | resolve: { |
||
| 181 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 182 | return $ocLazyLoad.load([{ |
||
| 183 | name: 'angularFileUpload', |
||
| 184 | files: [ |
||
| 185 | '../../../assets/global/plugins/angularjs/plugins/angular-file-upload/angular-file-upload.min.js', |
||
| 186 | ] |
||
| 187 | }, { |
||
| 188 | name: 'MetronicApp', |
||
| 189 | files: [ |
||
| 190 | 'js/controllers/GeneralPageController.js' |
||
| 191 | ] |
||
| 192 | }]); |
||
| 193 | }] |
||
| 194 | } |
||
| 195 | }) |
||
| 196 | |||
| 197 | // UI Select |
||
| 198 | .state('uiselect', { |
||
| 199 | url: "/ui_select.html", |
||
| 200 | templateUrl: "views/ui_select.html", |
||
| 201 | data: {pageTitle: 'AngularJS Ui Select'}, |
||
| 202 | controller: "UISelectController", |
||
| 203 | resolve: { |
||
| 204 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 205 | return $ocLazyLoad.load([{ |
||
| 206 | name: 'ui.select', |
||
| 207 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 208 | files: [ |
||
| 209 | '../../../assets/global/plugins/angularjs/plugins/ui-select/select.min.css', |
||
| 210 | '../../../assets/global/plugins/angularjs/plugins/ui-select/select.min.js' |
||
| 211 | ] |
||
| 212 | }, { |
||
| 213 | name: 'MetronicApp', |
||
| 214 | files: [ |
||
| 215 | 'js/controllers/UISelectController.js' |
||
| 216 | ] |
||
| 217 | }]); |
||
| 218 | }] |
||
| 219 | } |
||
| 220 | }) |
||
| 221 | |||
| 222 | // UI Bootstrap |
||
| 223 | .state('uibootstrap', { |
||
| 224 | url: "/ui_bootstrap.html", |
||
| 225 | templateUrl: "views/ui_bootstrap.html", |
||
| 226 | data: {pageTitle: 'AngularJS UI Bootstrap'}, |
||
| 227 | controller: "GeneralPageController", |
||
| 228 | resolve: { |
||
| 229 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 230 | return $ocLazyLoad.load([{ |
||
| 231 | name: 'MetronicApp', |
||
| 232 | files: [ |
||
| 233 | 'js/controllers/GeneralPageController.js' |
||
| 234 | ] |
||
| 235 | }]); |
||
| 236 | }] |
||
| 237 | } |
||
| 238 | }) |
||
| 239 | |||
| 240 | // Tree View |
||
| 241 | .state('tree', { |
||
| 242 | url: "/tree", |
||
| 243 | templateUrl: "views/tree.html", |
||
| 244 | data: {pageTitle: 'jQuery Tree View'}, |
||
| 245 | controller: "GeneralPageController", |
||
| 246 | resolve: { |
||
| 247 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 248 | return $ocLazyLoad.load([{ |
||
| 249 | name: 'MetronicApp', |
||
| 250 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 251 | files: [ |
||
| 252 | '../../../assets/global/plugins/jstree/dist/themes/default/style.min.css', |
||
| 253 | |||
| 254 | '../../../assets/global/plugins/jstree/dist/jstree.min.js', |
||
| 255 | '../../../assets/admin/pages/scripts/ui-tree.js', |
||
| 256 | 'js/controllers/GeneralPageController.js' |
||
| 257 | ] |
||
| 258 | }]); |
||
| 259 | }] |
||
| 260 | } |
||
| 261 | }) |
||
| 262 | |||
| 263 | // Form Tools |
||
| 264 | .state('formtools', { |
||
| 265 | url: "/form-tools", |
||
| 266 | templateUrl: "views/form_tools.html", |
||
| 267 | data: {pageTitle: 'Form Tools'}, |
||
| 268 | controller: "GeneralPageController", |
||
| 269 | resolve: { |
||
| 270 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 271 | return $ocLazyLoad.load([{ |
||
| 272 | name: 'MetronicApp', |
||
| 273 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 274 | files: [ |
||
| 275 | '../../../assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.css', |
||
| 276 | '../../../assets/global/plugins/bootstrap-switch/css/bootstrap-switch.min.css', |
||
| 277 | '../../../assets/global/plugins/jquery-tags-input/jquery.tagsinput.css', |
||
| 278 | '../../../assets/global/plugins/bootstrap-markdown/css/bootstrap-markdown.min.css', |
||
| 279 | '../../../assets/global/plugins/typeahead/typeahead.css', |
||
| 280 | |||
| 281 | '../../../assets/global/plugins/fuelux/js/spinner.min.js', |
||
| 282 | '../../../assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.js', |
||
| 283 | '../../../assets/global/plugins/jquery-inputmask/jquery.inputmask.bundle.min.js', |
||
| 284 | '../../../assets/global/plugins/jquery.input-ip-address-control-1.0.min.js', |
||
| 285 | '../../../assets/global/plugins/bootstrap-pwstrength/pwstrength-bootstrap.min.js', |
||
| 286 | '../../../assets/global/plugins/bootstrap-switch/js/bootstrap-switch.min.js', |
||
| 287 | '../../../assets/global/plugins/jquery-tags-input/jquery.tagsinput.min.js', |
||
| 288 | '../../../assets/global/plugins/bootstrap-maxlength/bootstrap-maxlength.min.js', |
||
| 289 | '../../../assets/global/plugins/bootstrap-touchspin/bootstrap.touchspin.js', |
||
| 290 | '../../../assets/global/plugins/typeahead/handlebars.min.js', |
||
| 291 | '../../../assets/global/plugins/typeahead/typeahead.bundle.min.js', |
||
| 292 | '../../../assets/admin/pages/scripts/components-form-tools.js', |
||
| 293 | |||
| 294 | 'js/controllers/GeneralPageController.js' |
||
| 295 | ] |
||
| 296 | }]); |
||
| 297 | }] |
||
| 298 | } |
||
| 299 | }) |
||
| 300 | |||
| 301 | // Date & Time Pickers |
||
| 302 | .state('pickers', { |
||
| 303 | url: "/pickers", |
||
| 304 | templateUrl: "views/pickers.html", |
||
| 305 | data: {pageTitle: 'Date & Time Pickers'}, |
||
| 306 | controller: "GeneralPageController", |
||
| 307 | resolve: { |
||
| 308 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 309 | return $ocLazyLoad.load([{ |
||
| 310 | name: 'MetronicApp', |
||
| 311 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 312 | files: [ |
||
| 313 | '../../../assets/global/plugins/clockface/css/clockface.css', |
||
| 314 | '../../../assets/global/plugins/bootstrap-datepicker/css/datepicker3.css', |
||
| 315 | '../../../assets/global/plugins/bootstrap-timepicker/css/bootstrap-timepicker.min.css', |
||
| 316 | '../../../assets/global/plugins/bootstrap-colorpicker/css/colorpicker.css', |
||
| 317 | '../../../assets/global/plugins/bootstrap-daterangepicker/daterangepicker-bs3.css', |
||
| 318 | '../../../assets/global/plugins/bootstrap-datetimepicker/css/bootstrap-datetimepicker.min.css', |
||
| 319 | |||
| 320 | '../../../assets/global/plugins/bootstrap-datepicker/js/bootstrap-datepicker.js', |
||
| 321 | '../../../assets/global/plugins/bootstrap-timepicker/js/bootstrap-timepicker.min.js', |
||
| 322 | '../../../assets/global/plugins/clockface/js/clockface.js', |
||
| 323 | '../../../assets/global/plugins/bootstrap-daterangepicker/moment.min.js', |
||
| 324 | '../../../assets/global/plugins/bootstrap-daterangepicker/daterangepicker.js', |
||
| 325 | '../../../assets/global/plugins/bootstrap-colorpicker/js/bootstrap-colorpicker.js', |
||
| 326 | '../../../assets/global/plugins/bootstrap-datetimepicker/js/bootstrap-datetimepicker.min.js', |
||
| 327 | |||
| 328 | '../../../assets/admin/pages/scripts/components-pickers.js', |
||
| 329 | |||
| 330 | 'js/controllers/GeneralPageController.js' |
||
| 331 | ] |
||
| 332 | }]); |
||
| 333 | }] |
||
| 334 | } |
||
| 335 | }) |
||
| 336 | |||
| 337 | // Custom Dropdowns |
||
| 338 | .state('dropdowns', { |
||
| 339 | url: "/dropdowns", |
||
| 340 | templateUrl: "views/dropdowns.html", |
||
| 341 | data: {pageTitle: 'Custom Dropdowns'}, |
||
| 342 | controller: "GeneralPageController", |
||
| 343 | resolve: { |
||
| 344 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 345 | return $ocLazyLoad.load([{ |
||
| 346 | name: 'MetronicApp', |
||
| 347 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 348 | files: [ |
||
| 349 | '../../../assets/global/plugins/bootstrap-select/bootstrap-select.min.css', |
||
| 350 | '../../../assets/global/plugins/select2/select2.css', |
||
| 351 | '../../../assets/global/plugins/jquery-multi-select/css/multi-select.css', |
||
| 352 | |||
| 353 | '../../../assets/global/plugins/bootstrap-select/bootstrap-select.min.js', |
||
| 354 | '../../../assets/global/plugins/select2/select2.min.js', |
||
| 355 | '../../../assets/global/plugins/jquery-multi-select/js/jquery.multi-select.js', |
||
| 356 | |||
| 357 | '../../../assets/admin/pages/scripts/components-dropdowns.js', |
||
| 358 | |||
| 359 | 'js/controllers/GeneralPageController.js' |
||
| 360 | ] |
||
| 361 | }]); |
||
| 362 | }] |
||
| 363 | } |
||
| 364 | }) |
||
| 365 | |||
| 366 | // Advanced Datatables |
||
| 367 | .state('datatablesAdvanced', { |
||
| 368 | url: "/datatables/advanced.html", |
||
| 369 | templateUrl: "views/datatables/advanced.html", |
||
| 370 | data: {pageTitle: 'Advanced Datatables'}, |
||
| 371 | controller: "GeneralPageController", |
||
| 372 | resolve: { |
||
| 373 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 374 | return $ocLazyLoad.load({ |
||
| 375 | name: 'MetronicApp', |
||
| 376 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 377 | files: [ |
||
| 378 | '../../../assets/global/plugins/select2/select2.css', |
||
| 379 | '../../../assets/global/plugins/datatables/plugins/bootstrap/dataTables.bootstrap.css', |
||
| 380 | '../../../assets/global/plugins/datatables/extensions/Scroller/css/dataTables.scroller.min.css', |
||
| 381 | '../../../assets/global/plugins/datatables/extensions/ColReorder/css/dataTables.colReorder.min.css', |
||
| 382 | |||
| 383 | '../../../assets/global/plugins/select2/select2.min.js', |
||
| 384 | '../../../assets/global/plugins/datatables/all.min.js', |
||
| 385 | 'js/scripts/table-advanced.js', |
||
| 386 | |||
| 387 | 'js/controllers/GeneralPageController.js' |
||
| 388 | ] |
||
| 389 | }); |
||
| 390 | }] |
||
| 391 | } |
||
| 392 | }) |
||
| 393 | |||
| 394 | // Ajax Datetables |
||
| 395 | .state('datatablesAjax', { |
||
| 396 | url: "/datatables/ajax.html", |
||
| 397 | templateUrl: "views/datatables/ajax.html", |
||
| 398 | data: {pageTitle: 'Ajax Datatables'}, |
||
| 399 | controller: "GeneralPageController", |
||
| 400 | resolve: { |
||
| 401 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 402 | return $ocLazyLoad.load({ |
||
| 403 | name: 'MetronicApp', |
||
| 404 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 405 | files: [ |
||
| 406 | '../../../assets/global/plugins/select2/select2.css', |
||
| 407 | '../../../assets/global/plugins/bootstrap-datepicker/css/datepicker.css', |
||
| 408 | '../../../assets/global/plugins/datatables/plugins/bootstrap/dataTables.bootstrap.css', |
||
| 409 | |||
| 410 | '../../../assets/global/plugins/bootstrap-datepicker/js/bootstrap-datepicker.js', |
||
| 411 | '../../../assets/global/plugins/select2/select2.min.js', |
||
| 412 | '../../../assets/global/plugins/datatables/all.min.js', |
||
| 413 | |||
| 414 | '../../../assets/global/scripts/datatable.js', |
||
| 415 | 'js/scripts/table-ajax.js', |
||
| 416 | |||
| 417 | 'js/controllers/GeneralPageController.js' |
||
| 418 | ] |
||
| 419 | }); |
||
| 420 | }] |
||
| 421 | } |
||
| 422 | }) |
||
| 423 | |||
| 424 | // User Profile |
||
| 425 | .state("profile", { |
||
| 426 | url: "/profile", |
||
| 427 | templateUrl: "views/profile/main.html", |
||
| 428 | data: {pageTitle: 'User Profile'}, |
||
| 429 | controller: "UserProfileController", |
||
| 430 | resolve: { |
||
| 431 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 432 | return $ocLazyLoad.load({ |
||
| 433 | name: 'MetronicApp', |
||
| 434 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 435 | files: [ |
||
| 436 | '../../../assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.css', |
||
| 437 | '../../../assets/admin/pages/css/profile.css', |
||
| 438 | '../../../assets/admin/pages/css/tasks.css', |
||
| 439 | |||
| 440 | '../../../assets/global/plugins/jquery.sparkline.min.js', |
||
| 441 | '../../../assets/global/plugins/bootstrap-fileinput/bootstrap-fileinput.js', |
||
| 442 | |||
| 443 | '../../../assets/admin/pages/scripts/profile.js', |
||
| 444 | |||
| 445 | 'js/controllers/UserProfileController.js' |
||
| 446 | ] |
||
| 447 | }); |
||
| 448 | }] |
||
| 449 | } |
||
| 450 | }) |
||
| 451 | |||
| 452 | // User Profile Dashboard |
||
| 453 | .state("profile.dashboard", { |
||
| 454 | url: "/dashboard", |
||
| 455 | templateUrl: "views/profile/dashboard.html", |
||
| 456 | data: {pageTitle: 'User Profile'} |
||
| 457 | }) |
||
| 458 | |||
| 459 | // User Profile Account |
||
| 460 | .state("profile.account", { |
||
| 461 | url: "/account", |
||
| 462 | templateUrl: "views/profile/account.html", |
||
| 463 | data: {pageTitle: 'User Account'} |
||
| 464 | }) |
||
| 465 | |||
| 466 | // User Profile Help |
||
| 467 | .state("profile.help", { |
||
| 468 | url: "/help", |
||
| 469 | templateUrl: "views/profile/help.html", |
||
| 470 | data: {pageTitle: 'User Help'} |
||
| 471 | }) |
||
| 472 | |||
| 473 | // Todo |
||
| 474 | .state('todo', { |
||
| 475 | url: "/todo", |
||
| 476 | templateUrl: "views/todo.html", |
||
| 477 | data: {pageTitle: 'Todo'}, |
||
| 478 | controller: "TodoController", |
||
| 479 | resolve: { |
||
| 480 | deps: ['$ocLazyLoad', function($ocLazyLoad) { |
||
| 481 | return $ocLazyLoad.load({ |
||
| 482 | name: 'MetronicApp', |
||
| 483 | insertBefore: '#ng_load_plugins_before', // load the above css files before '#ng_load_plugins_before' |
||
| 484 | files: [ |
||
| 485 | '../../../assets/global/plugins/bootstrap-datepicker/css/datepicker3.css', |
||
| 486 | '../../../assets/global/plugins/select2/select2.css', |
||
| 487 | '../../../assets/admin/pages/css/todo.css', |
||
| 488 | |||
| 489 | '../../../assets/global/plugins/bootstrap-datepicker/js/bootstrap-datepicker.js', |
||
| 490 | '../../../assets/global/plugins/select2/select2.min.js', |
||
| 491 | |||
| 492 | '../../../assets/admin/pages/scripts/todo.js', |
||
| 493 | |||
| 494 | 'js/controllers/TodoController.js' |
||
| 495 | ] |
||
| 496 | }); |
||
| 497 | }] |
||
| 498 | } |
||
| 499 | }) |
||
| 500 | |||
| 501 | }]); |
||
| 502 | |||
| 503 | /* Init global settings and run the app */ |
||
| 504 | MetronicApp.run(["$rootScope", "settings", "$state", function($rootScope, settings, $state) { |
||
| 505 | $rootScope.$state = $state; // state to be accessed from view |
||
| 506 | }]); |