diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2015-10-20 23:18:16 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2015-10-20 23:18:16 +0200 |
commit | 0266bdd60cb9cccf20a5ded3eba72ea833bee72d (patch) | |
tree | d727bad80aeaef673f48bbbc171fb4e9297b72fc /web/app/app.js | |
parent | 73d272ffe8954b3169901eda74428bad3d2740fe (diff) | |
download | diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.gz diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.bz2 diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.tar.xz diller-server-0266bdd60cb9cccf20a5ded3eba72ea833bee72d.zip |
o Adding a webapp.
o Using di.js as dependency injection framework.
Diffstat (limited to 'web/app/app.js')
-rw-r--r-- | web/app/app.js | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/web/app/app.js b/web/app/app.js new file mode 100644 index 0000000..cd14ae5 --- /dev/null +++ b/web/app/app.js @@ -0,0 +1,60 @@ +(function () { + function FrontPageController(devices) { + var ctrl = this; + + ctrl.devices = devices.data.devices; + } + + function DeviceController(device) { + var ctrl = this; + + ctrl.device = device.data.device; + } + + function PropertyController($route, device, values) { + var ctrl = this; + + ctrl.device = device.data.device; + ctrl.property = _.find(ctrl.device.properties, {id: $route.current.params.propertyId}); + ctrl.values = values.data.values; + } + + function config($routeProvider, $locationProvider) { + $routeProvider + .when('/', { + controller: FrontPageController, + controllerAs: 'ctrl', + templateUrl: '/app/templates/front-page.html', + resolve: { + devices: DillerRpcResolve.getDevices + } + }) + .when('/device/:deviceId', { + controller: DeviceController, + controllerAs: 'ctrl', + templateUrl: '/app/templates/device.html', + resolve: { + device: DillerRpcResolve.getDevice + } + }) + .when('/device/:deviceId/property/:propertyId', { + controller: PropertyController, + controllerAs: 'ctrl', + templateUrl: '/app/templates/property.html', + resolve: { + device: DillerRpcResolve.getDevice, + values: DillerRpcResolve.getValues + } + }) + .otherwise({ + redirectTo: '/' + }); + + //$locationProvider.html5Mode(true); + } + + angular + .module('Diller', ['ngRoute']) + .config(config) + .service('DillerRpc', DillerRpc); +})(); |