diff options
Diffstat (limited to 'ecomp-portal-FE-os/client/src/views')
2 files changed, 63 insertions, 16 deletions
diff --git a/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.controller.js b/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.controller.js index 1a6c5b1a..efd5165a 100644 --- a/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.controller.js +++ b/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.controller.js @@ -38,7 +38,7 @@ 'use strict'; (function () { class AppDetailsModalCtrl { - constructor($scope, $log, applicationsService, errorMessageByCode, + constructor($scope, $log, $timeout, applicationsService, errorMessageByCode, ECOMP_URL_REGEX,userProfileService, $cookies, confirmBoxService,items) { // let emptyImg = 'data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=='; // empty image should really be empty, or it causes problems for the back end @@ -173,14 +173,26 @@ this.saveChanges = () => { //if valid.. - if(((angular.isUndefined(this.app.name) || !this.app.name)&&(angular.isUndefined(this.app.url) || !this.app.url) - &&(angular.isUndefined(this.app.username) || !this.app.username)&&(angular.isUndefined(this.app.appPassword) || !this.app.appPassword))) { - confirmBoxService.showInformation('Please fill in all required fields').then(isConfirmed => {}); - return; - }else if(!((angular.isUndefined(this.app.name) || !!this.app.name)&&(angular.isUndefined(this.app.url) || !!this.app.url))){ - confirmBoxService.showInformation('Please fill in all required fields').then(isConfirmed => {}); - return; - } + if(this.app.isCentralAuth){ + //if valid.. + if(((angular.isUndefined(this.app.myLoginsAppName) || !this.app.myLoginsAppName)&&(angular.isUndefined(this.app.myLoginsAppOwner) || !this.app.myLoginsAppOwner)&&(angular.isUndefined(this.app.name) || !this.app.name)&&(angular.isUndefined(this.app.url) || !this.app.url) + &&(angular.isUndefined(this.app.username) || !this.app.username))) { + confirmBoxService.showInformation('Please fill in all required fields').then(isConfirmed => {}); + return; + }else if(!((angular.isUndefined(this.app.name) || !!this.app.name)&&(angular.isUndefined(this.app.url) || !!this.app.url))){ + confirmBoxService.showInformation('Please fill in all required fields').then(isConfirmed => {}); + return; + } + }else{ + if(((angular.isUndefined(this.app.myLoginsAppName) || !this.app.myLoginsAppName)||(angular.isUndefined(this.app.myLoginsAppOwner) || !this.app.myLoginsAppOwner)||(angular.isUndefined(this.app.name) || !this.app.name)||(angular.isUndefined(this.app.url) || !this.app.url) + ||(angular.isUndefined(this.app.username) || !this.app.username)||(angular.isUndefined(this.app.appPassword) || !this.app.appPassword))) { + confirmBoxService.showInformation('Please fill in all required fields along with password as the app is not centralized').then(isConfirmed => {}); + return; + }else if(!((angular.isUndefined(this.app.name) || !!this.app.name)&&(angular.isUndefined(this.app.url) || !!this.app.url))){ + confirmBoxService.showInformation('Please fill in all required fields').then(isConfirmed => {}); + return; + } + } this.isSaving = true; // For a restricted app, null out all irrelevant fields if (this.app.restrictedApp) { @@ -263,6 +275,23 @@ } }; + + // Caches the file name supplied by the event handler. + $scope.appImageHandler = (event, files) => { + if(files[0]){ + var fileName = files[0].name; + var validFormats = ['jpg', 'jpeg', 'bmp', 'gif', 'png']; + //Get file extension + var ext = fileName.substring(fileName.lastIndexOf('.') + 1).toLowerCase(); + //Check for valid format + if(validFormats.indexOf(ext) == -1){ + $scope.appImageTypeError=true; + $timeout(function(){ + $scope.appImageTypeError=false; + }, 5000); + } + } + }; // file change handler init(); @@ -293,7 +322,7 @@ }); } } - AppDetailsModalCtrl.$inject = ['$scope', '$log', 'applicationsService', 'errorMessageByCode', + AppDetailsModalCtrl.$inject = ['$scope', '$log', '$timeout', 'applicationsService', 'errorMessageByCode', 'ECOMP_URL_REGEX','userProfileService','$cookies', 'confirmBoxService','items']; angular.module('ecompApp').controller('AppDetailsModalCtrl', AppDetailsModalCtrl); -})();
\ No newline at end of file +})(); diff --git a/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.modal.html b/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.modal.html index 959bb90d..b4251f15 100644 --- a/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.modal.html +++ b/ecomp-portal-FE-os/client/src/views/applications/application-details-dialog/application-details.modal.html @@ -138,7 +138,7 @@ </div> </div> </div> - <div class="property required" + <!-- <div class="property required" ng-show="!appDetails.app.restrictedApp"> <div id="pwd-property-label" class="property-label">Password</div> <input type="password" id="input-mylogins-password" @@ -154,6 +154,12 @@ required</small> </div> </div> + </div> --> + <div class="property" ng-show="!appDetails.app.restrictedApp"> + <div id="pwd-property-label" class="property-label">Password</div> + <input type="password" id="input-mylogins-password" + ng-model="appDetails.app.appPassword" autocomplete="new-password" + name="appPassword" maxlength="256"/> </div> <div class="property" ng-show="!appDetails.app.restrictedApp"> <div id="pwd-property-label" class="property-label">Name @@ -173,15 +179,27 @@ image-upload-resize-max-height="300" image-upload-resize-max-width="360" image-upload-resize-quality="0.7" - image-upload-api="appDetails.imageApi" style="height: 24px;" /> + image-upload-api="appDetails.imageApi" style="height: 24px;" + file-change="appImageHandler($event,files)" /> + <div id="app-error-image-upload-type" class="error-container" + ng-show="appImageTypeError" class="ng-hide"> + <div class="error-container"> + <small id="error-app-invalid-image-size" class="err-message">File must be an image</small> + </div> + </div> + file-change="appImageHandler($event,files)" /> + <div id="app-error-image-upload-type" class="error-container" + ng-show="appImageTypeError" class="ng-hide"> + <div class="error-container"> + <small id="error-app-invalid-image-size" class="err-message">File must be an image</small> + </div> + </div> <div id="app-error-image-upload" class="error-container" ng-show="appForm.appImage.$dirty"> <div ng-messages="appForm.appImage.$error" class="error-container"> - <small id="error-app-invalid-image" class="err-message" - ng-message="mimeType">Uploaded file must be an image</small> <small - id="error-app-invalid-image-size" class="err-message" + <small id="error-app-invalid-image-size" class="err-message" ng-message="imageSize">Image file must be smaller than 1MB</small> </div> |