[UI] Support UI partial control
[validation.git] / ui / src / main / webapp / app / BluvalUI / CommittedSubmissions / CommittedSubmissionsController.js
diff --git a/ui/src/main/webapp/app/BluvalUI/CommittedSubmissions/CommittedSubmissionsController.js b/ui/src/main/webapp/app/BluvalUI/CommittedSubmissions/CommittedSubmissionsController.js
new file mode 100644 (file)
index 0000000..8f7a8a3
--- /dev/null
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 2019 AT&T Intellectual Property. All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var app = angular.module('CommittedSubmissions');
+
+app.controller('CommittedSubmissionsController', function($scope, restAPISvc,
+        $interval, refreshPeriod, committedSubmissionsSvc, NgTableParams,
+        appContext, $window) {
+
+    $scope.getLayer = committedSubmissionsSvc.getLayer;
+    $scope.getResultUrl = committedSubmissionsSvc.getResultUrl;
+    $scope.mapResult = committedSubmissionsSvc.mapResult;
+
+    initialize();
+
+    function initialize() {
+        restAPISvc.getRestAPI("/api/v1/submission/", function(submissions) {
+            $scope.submissionDatas = submissions;
+            var data = submissions;
+            $scope.tableParams = new NgTableParams({
+                page : 1,
+                count : 5
+            }, {
+                dataset : data
+            });
+        });
+    }
+
+    $scope.refreshCommittedSubmissions = function() {
+        initialize();
+    }
+
+    $scope.getValidationResults = function(submissionData) {
+        if (!submissionData.validationNexusTestResult.timestamp) {
+            return;
+        }
+        $window.location.href = appContext
+                + "/validationresults#?submissionId="
+                + submissionData.submissionId;
+    }
+
+    $interval(function() {
+        $scope.refreshCommittedSubmissions();
+    }, refreshPeriod);
+
+});