소스 검색

Switched snapshot ctrl to angularjs2

utkarshcmu 10 년 전
부모
커밋
a854f0c4d4
2개의 변경된 파일33개의 추가작업 그리고 34개의 파일을 삭제
  1. 2 2
      public/app/features/snapshot/partials/snapshots.html
  2. 31 32
      public/app/features/snapshot/snapshot_ctrl.ts

+ 2 - 2
public/app/features/snapshot/partials/snapshots.html

@@ -14,7 +14,7 @@
      
      
      </thead>
      </thead>
       
       
-      <tr ng-repeat="snapshot in snapshots">
+      <tr ng-repeat="snapshot in ctrl.snapshots">
         <td>
         <td>
 					<a href="dashboard/snapshot/{{snapshot.key}}">{{snapshot.name}}</a>
 					<a href="dashboard/snapshot/{{snapshot.key}}">{{snapshot.name}}</a>
         </td>
         </td>
@@ -28,7 +28,7 @@
           </a>
           </a>
         </td>
         </td>
         <td  class="text-right">
         <td  class="text-right">
-          <a ng-click="removeSnapshot(snapshot)" class="btn btn-danger btn-mini">
+          <a ng-click="ctrl.removeSnapshot(snapshot)" class="btn btn-danger btn-mini">
             <i class="fa fa-remove"></i>
             <i class="fa fa-remove"></i>
           </a>
           </a>
         </td>
         </td>

+ 31 - 32
public/app/features/snapshot/snapshot_ctrl.ts

@@ -5,39 +5,38 @@ import _ from 'lodash';
 
 
 export class SnapshotsCtrl {
 export class SnapshotsCtrl {
 
 
+  snapshots: any;
+
   /** @ngInject */
   /** @ngInject */
-  constructor(backendSrv, $scope) {
-    $scope.init = function() {
-      backendSrv.get('/api/dashboard/snapshots').then(function(result) {
-        $scope.snapshots = result;
-      });
-    };
-
-    $scope.removeSnapshot = function(snapshot) {
-      $scope.appEvent('confirm-modal', {
-        title: 'Confirm delete snapshot',
-        text: 'Are you sure you want to delete snapshot ' + snapshot.name + '?',
-        yesText: "Delete",
-        icon: "fa-warning",
-        onConfirm: function() {
-          $scope.removeSnapshotConfirmed(snapshot);
-        }
-      });
-    };
-
-    $scope.removeSnapshotConfirmed = function(snapshot) {
-      _.remove($scope.snapshots, {key: snapshot.key});
-      backendSrv.get('/api/snapshots-delete/' + snapshot.deleteKey)
-      .then(function() {
-        $scope.appEvent('alert-success', ['Snapshot deleted', '']);
-      }, function() {
-        $scope.appEvent('alert-error', ['Unable to delete snapshot', '']);
-        $scope.snapshots.push(snapshot);
-      });
-    };
-
-    $scope.init();
+  constructor(private $rootScope, private backendSrv) {
+    this.backendSrv.get('/api/dashboard/snapshots').then(result => {
+      this.snapshots = result;
+    });
+  }
+
+  removeSnapshotConfirmed(snapshot) {
+    _.remove(this.snapshots, {key: snapshot.key});
+    this.backendSrv.get('/api/snapshots-delete/' + snapshot.deleteKey)
+    .then(() => {
+      this.$rootScope.appEvent('alert-success', ['Snapshot deleted', '']);
+    }, () => {
+      this.$rootScope.appEvent('alert-error', ['Unable to delete snapshot', '']);
+      this.snapshots.push(snapshot);
+    });
   }
   }
+
+  removeSnapshot(snapshot) {
+    this.$rootScope.appEvent('confirm-modal', {
+      title: 'Confirm delete snapshot',
+      text: 'Are you sure you want to delete snapshot ' + snapshot.name + '?',
+      yesText: "Delete",
+      icon: "fa-warning",
+      onConfirm: () => {
+        this.removeSnapshotConfirmed(snapshot);
+      }
+    });
+  }
+
 }
 }
-  
+
 angular.module('grafana.controllers').controller('SnapshotsCtrl', SnapshotsCtrl);
 angular.module('grafana.controllers').controller('SnapshotsCtrl', SnapshotsCtrl);