aboutsummaryrefslogtreecommitdiffstats
path: root/vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js
diff options
context:
space:
mode:
Diffstat (limited to 'vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js')
-rw-r--r--vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js58
1 files changed, 58 insertions, 0 deletions
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js b/vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js
new file mode 100644
index 000000000..930240437
--- /dev/null
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/attach-test-env-manifest/attach-test-env-manifest.controller.js
@@ -0,0 +1,58 @@
+(function () {
+ 'use strict';
+
+ appDS2.controller("attachTestEnvManifestController", ["$uibModalInstance", "$uibModal", "$log", "$scope",
+ attachTestEnvManifestController]);
+
+ function attachTestEnvManifestController($uibModalInstance, $uibModal, $log, $scope) {
+ var vm = this;
+
+ var init = function () {
+ vm.manifest = "";
+ vm.error="";
+ };
+
+ vm.close = function () {
+ $uibModalInstance.close();
+ };
+
+ vm.submit = function () {
+ $uibModalInstance.close(vm.manifest);
+ };
+
+ vm.isSubmitDisabled = function () {
+ return !(vm.manifest);
+ };
+
+
+
+ /*
+ Must be $scope because we bind to the onchange of the html (cannot attached to vm variable).
+ We use scope because angular doesn't support ng-change on input file
+ https://github.com/angular/angular.js/issues/1375
+ https://stackoverflow.com/questions/17922557/angularjs-how-to-check-for-changes-in-file-input-fields
+ */
+ $scope.selectAttachmentManifest = function (fileInput) {
+ if (fileInput && fileInput.id) {
+ vm.manifest = "";
+ vm.error="";
+ var file = fileInput.files[0];
+ vm.filename=file.name;
+ var fileReader = new FileReader();
+ fileReader.onload = function (load) {
+ try {
+ var lines = load.target.result;
+ vm.manifest = JSON.parse(lines);
+ } catch (error) {
+ $log.error(error);
+ vm.error = "file: " + vm.filename + " is not a valid JSON"
+ }
+ $scope.$apply();
+ };
+ fileReader.readAsText(file);
+ }
+ };
+
+ init();
+ }
+})(); \ No newline at end of file