Updating subscriber
diff --git a/views/ngXosViews/diagnostic/src/js/chart_data_service.js b/views/ngXosViews/diagnostic/src/js/chart_data_service.js
index 7326ac8..f39a1e2 100644
--- a/views/ngXosViews/diagnostic/src/js/chart_data_service.js
+++ b/views/ngXosViews/diagnostic/src/js/chart_data_service.js
@@ -80,10 +80,10 @@
};
- this.getSubscriberIP = () => {
- const ip = JSON.parse(this.currentServiceChain.children[0].children[0].tenant.service_specific_attribute).wan_container_ip;
+ this.getSubscriberIP = (subscriber) => {
+ // const ip = JSON.parse(this.currentServiceChain.children[0].children[0].tenant.service_specific_attribute).wan_container_ip;
// const ip = this.currentServiceChain.children[0].children[0].tenant.wan_container_ip;
- this.logicTopologyData.children[0].subscriberIP = ip;
+ this.logicTopologyData.children[0].subscriberIP = subscriber.wan_container_ip;
};
this.selectSubscriber = (subscriber) => {
@@ -96,7 +96,7 @@
this.highlightInstances([]);
this.getSubscriberTag(subscriber);
- this.getSubscriberIP();
+ this.getSubscriberIP(subscriber);
};
diff --git a/views/ngXosViews/diagnostic/src/js/rest_services.js b/views/ngXosViews/diagnostic/src/js/rest_services.js
index e88f098..5677f30 100644
--- a/views/ngXosViews/diagnostic/src/js/rest_services.js
+++ b/views/ngXosViews/diagnostic/src/js/rest_services.js
@@ -165,6 +165,10 @@
})
.service('Subscribers', function($resource, $q, SubscriberDevice){
return $resource('/xoslib/cordsubscriber/:id', {id: '@id'}, {
+ update: {
+ method: 'PUT',
+ isArray: false
+ },
queryWithDevices: {
method: 'GET',
isArray: true,
diff --git a/views/ngXosViews/diagnostic/src/js/subscriber-modal.js b/views/ngXosViews/diagnostic/src/js/subscriber-modal.js
index a8b93f5..74bb8a7 100644
--- a/views/ngXosViews/diagnostic/src/js/subscriber-modal.js
+++ b/views/ngXosViews/diagnostic/src/js/subscriber-modal.js
@@ -34,22 +34,31 @@
restrict: 'E',
templateUrl: 'templates/subscriber-status-modal.tpl.html',
controllerAs: 'vm',
- controller: function($log, $scope){
+ controller: function($log, $timeout, $scope, Subscribers){
- // mock until api
- $scope.$watch(() => this.subscriber, (subscriber) => {
- if(subscriber){
- subscriber.status = 'enabled';
- }
+ $scope.$watch(() => this.open, () => {
+ this.success = null;
+ this.formError = null;
});
this.close = () => {
this.open = false;
};
- this.setStatus = (status) => {
- this.subscriber.status = status;
- $log.info(`Set subscriber status to: ${status}`);
+ this.updateSubscriber = (subscriber) => {
+
+ Subscribers.update(subscriber).$promise
+ .then(() => {
+ this.success = 'Subscriber successfully updated!';
+ })
+ .catch((e) => {
+ this.formError = e;
+ })
+ .finally(() => {
+ $timeout(() => {
+ this.close();
+ }, 1500);
+ });
};
}
};