@ardimedia/angular-portal-azure 0.2.49 → 0.2.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/apn.d.ts CHANGED
@@ -123,8 +123,8 @@ declare namespace angularportalazure {
123
123
  };
124
124
  activate(): void;
125
125
  onActivate(): void;
126
- navigateTo(arg: any): void;
127
- onNavigateTo(arg: any): void;
126
+ navigateTo(path: any): void;
127
+ onNavigateTo(path: any): void;
128
128
  comparePaths(path1: string, path2: string): boolean;
129
129
  /** close blade. */
130
130
  close(): void;
@@ -272,6 +272,7 @@ declare namespace angularportalazure {
272
272
  static $inject: string[];
273
273
  constructor($injector: any);
274
274
  parameter: angularportalazure.IBladeParameter;
275
+ $analytics: any;
275
276
  animate: any;
276
277
  animation: any;
277
278
  component: any;
package/apn.js CHANGED
@@ -5,7 +5,9 @@ var angularportalazure;
5
5
  var angularModule = angular.module('angularportalazure', [
6
6
  // Angular modules
7
7
  'ngResource',
8
- 'ngDialog'
8
+ 'ngDialog',
9
+ 'angulartics',
10
+ 'angulartics.google.analytics'
9
11
  ]);
10
12
  angularModule.config([function () {
11
13
  //Debug.enable('[angularportalazure-debug]');
@@ -287,6 +289,9 @@ var angularportalazure;
287
289
  },
288
290
  // For the moment we do not distinguish between lower and upper case path name
289
291
  set: function (newPath) {
292
+ if (newPath == null) {
293
+ return;
294
+ }
290
295
  this._path = newPath.toLowerCase();
291
296
  },
292
297
  enumerable: true,
@@ -303,15 +308,21 @@ var angularportalazure;
303
308
  Blade.prototype.onActivate = function () {
304
309
  angularportalazure.Debug.write('[angularportalazure-debug] \'Blade.onActivate\' not overriden. You could override this.', [this]);
305
310
  };
306
- Blade.prototype.navigateTo = function (arg) {
307
- angularportalazure.Debug.write('[angularportalazure-debug] \'Blade.navigateTo\' called. You should not override this, use onNavigateTo instead.', [this, arg]);
308
- this.onNavigateTo(arg);
311
+ Blade.prototype.navigateTo = function (path) {
312
+ angularportalazure.Debug.write('[angularportalazure-debug] \'Blade.navigateTo\' called. You should not override this, use onNavigateTo instead.', [this, path]);
313
+ this.onNavigateTo(path);
309
314
  };
310
- Blade.prototype.onNavigateTo = function (arg) {
315
+ Blade.prototype.onNavigateTo = function (path) {
311
316
  throw new Error('[angularportalazure.Blade] \'onNavigateTo\' is an abstract function. Define one in the derived class.');
312
317
  };
313
318
  // At the moment we do not distinguish between lower and upper case path name
314
319
  Blade.prototype.comparePaths = function (path1, path2) {
320
+ if (path1 == null) {
321
+ return false;
322
+ }
323
+ if (path2 == null) {
324
+ return false;
325
+ }
315
326
  if (path1.toLowerCase() === path2.toLowerCase()) {
316
327
  return true;
317
328
  }
@@ -464,7 +475,14 @@ var angularportalazure;
464
475
  BladeArea.prototype.addBlade = function (path, senderPath) {
465
476
  if (senderPath === void 0) { senderPath = ''; }
466
477
  angularportalazure.Debug.write('[angularportalazure-debug] \'BladeArea.addBlade\' called.', [this, senderPath, path]);
478
+ if (path == null) {
479
+ return;
480
+ }
481
+ if (senderPath == null) {
482
+ return;
483
+ }
467
484
  var that = this;
485
+ this.portalService.$analytics.pageTrack(path);
468
486
  path = path.toLowerCase();
469
487
  senderPath = senderPath.toLowerCase();
470
488
  //#region Verify
@@ -879,6 +897,7 @@ var angularportalazure;
879
897
  this.$q = $injector.get('$q');
880
898
  this.$rootScope = $injector.get('$rootScope');
881
899
  this.$window = $injector.get('$window');
900
+ this.$analytics = $injector.get('$analytics');
882
901
  this.ngDialog = $injector.get('ngDialog');
883
902
  this.ngDialog.openConfirm;
884
903
  }
@@ -1378,7 +1397,7 @@ var angularportalazure;
1378
1397
  this.items = new Array();
1379
1398
  this.isNav = true;
1380
1399
  angularportalazure.Debug.write('[angularportalazure-debug] \'BladeNav\' constructor called.', [this, portalService, path, title, subtitle, width]);
1381
- _super.prototype.onNavigateTo = this.navigateTo;
1400
+ _super.prototype.navigateTo = this.navigateTo;
1382
1401
  }
1383
1402
  return BladeNav;
1384
1403
  }(angularportalazure.BladeData));
@@ -1,39 +1,39 @@
1
- <div class="fxs-portal">
2
- <div class="fxs-portal-top-bar fxs-portal-appbar"></div>
3
- <div id="azureportalscroll" class="fxs-portal-content fxs-panorama">
4
-
5
- <div class="fxs-panorama-homearea" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}" ng-show="$ctrl.vm.portalService.panorama.isVisible">
6
- <header class="fxs-pannable" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
7
- <h1 class="fxs-panorama-title fxs-pannable">{{$ctrl.vm.title}}</h1>
8
- <div class="fxs-avatarmenu-target fxs-avatarmenu" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
9
- <a class="fxs-avatarmenu-header" href="/Account/Manage">
10
- <img alt="" src="/node_modules/@ardimedia/angular-portal-azure/images/avatar.jpg" />
11
- <div class="fxs-avatarmenu-username">{{$ctrl.vm.user.name}}</div>
12
- <div class="fxs-avatarmenu-emailaddresse">{{$ctrl.vm.user.emailaddress}}</div>
13
- </a>
14
- </div>
15
- </header>
16
- <div class="fxs-startboard-target fxs-startboard fx-rightClick" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
17
- <div class="fxs-startboard-layout fxs-flowlayout">
18
- <div class="fxs-flowlayout-childcontainer">
19
- <section data-ng-repeat="tile in $ctrl.vm.tiles track by $index" class="fxs-tile fx-rightClick fxs-flowlayout-element" data-ng-class="{'fxs-tilesize-normal':tile.size=='normal', 'fxs-tilesize-mini':tile.size=='mini', 'fxs-tilesize-herowide':tile.size=='herowide'}" data-ng-style="{'left': tile.left, 'top': tile.top}">
20
- <div class="fxs-part fxs-part-clickable" ng-click="$ctrl.vm.navigateTo(tile.bladePath);tile.clicked();" style="cursor:pointer;">
21
- <header class="fxs-part-title">
22
- <h2 class="msportalfx-tooltip-overflow">{{tile.title}}</h2>
23
- <h3 class="msportalfx-tooltip-overflow">{{tile.subTitle}}</h3>
24
- </header>
25
- <section class="fxs-part-content css-scope-HubsExtension"></section>
26
- </div>
27
- <div class="fxs-title-overlay"></div>
28
- </section>
29
- </div>
30
- </div>
31
- </div>
32
- </div>
33
- <div class="fxs-journey-target fxs-journey">
34
- <div class="fxs-journey-layout fxs-stacklayout fxs-stacklayout-horizontal">
35
- <div data-ng-repeat="blade in $ctrl.vm.blades track by $index" class="azureportalblade fxs-stacklayout-child" ng-include="blade.path"></div>
36
- </div>
37
- </div>
38
- </div>
39
- </div>
1
+ <div class="fxs-portal">
2
+ <div class="fxs-portal-top-bar fxs-portal-appbar"></div>
3
+ <div id="azureportalscroll" class="fxs-portal-content fxs-panorama">
4
+
5
+ <div class="fxs-panorama-homearea" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}" ng-show="$ctrl.vm.portalService.panorama.isVisible">
6
+ <header class="fxs-pannable" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
7
+ <h1 class="fxs-panorama-title fxs-pannable">{{$ctrl.vm.title}}</h1>
8
+ <div class="fxs-avatarmenu-target fxs-avatarmenu" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
9
+ <a class="fxs-avatarmenu-header" href="/Account/Manage">
10
+ <img alt="" src="/node_modules/@ardimedia/angular-portal-azure/images/avatar.jpg" />
11
+ <div class="fxs-avatarmenu-username">{{$ctrl.vm.user.name}}</div>
12
+ <div class="fxs-avatarmenu-emailaddresse">{{$ctrl.vm.user.emailaddress}}</div>
13
+ </a>
14
+ </div>
15
+ </header>
16
+ <div class="fxs-startboard-target fxs-startboard fx-rightClick" ng-class="{collapsed: !$ctrl.vm.portalService.panorama.startboard.tiles.showTiles}">
17
+ <div class="fxs-startboard-layout fxs-flowlayout">
18
+ <div class="fxs-flowlayout-childcontainer">
19
+ <section data-ng-repeat="tile in $ctrl.vm.tiles track by $index" class="fxs-tile fx-rightClick fxs-flowlayout-element" data-ng-class="{'fxs-tilesize-normal':tile.size=='normal', 'fxs-tilesize-mini':tile.size=='mini', 'fxs-tilesize-herowide':tile.size=='herowide'}" data-ng-style="{'left': tile.left, 'top': tile.top}">
20
+ <div class="fxs-part fxs-part-clickable" ng-click="$ctrl.vm.navigateTo(tile.bladePath);tile.clicked();" style="cursor:pointer;">
21
+ <header class="fxs-part-title">
22
+ <h2 class="msportalfx-tooltip-overflow">{{tile.title}}</h2>
23
+ <h3 class="msportalfx-tooltip-overflow">{{tile.subTitle}}</h3>
24
+ </header>
25
+ <section class="fxs-part-content css-scope-HubsExtension"></section>
26
+ </div>
27
+ <div class="fxs-title-overlay"></div>
28
+ </section>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
33
+ <div class="fxs-journey-target fxs-journey">
34
+ <div class="fxs-journey-layout fxs-stacklayout fxs-stacklayout-horizontal">
35
+ <div data-ng-repeat="blade in $ctrl.vm.blades track by $index" class="azureportalblade fxs-stacklayout-child" ng-include="blade.path"></div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ </div>
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@ardimedia/angular-portal-azure",
3
3
  "description": "Angular Portal Azure - GUI Framework.",
4
4
  "author": "Ardimedia Anstalt <info@ardimedia.com> (http://www.ardimedia.com)",
5
- "version": "0.2.49",
5
+ "version": "0.2.51",
6
6
  "main": "index.js",
7
7
  "typings": "apn.d.ts",
8
8
  "dependencies": {
@@ -11,6 +11,8 @@
11
11
  "@types/ng-dialog": "0.0.31",
12
12
  "angular": "^1.5.8",
13
13
  "angular-resource": "^1.5.8",
14
+ "angulartics": "^1.3.0",
15
+ "angulartics-google-analytics": "^0.4.0",
14
16
  "ng-dialog": "^0.6.4"
15
17
  },
16
18
  "devDependencies": {