diff options
author | Christopher Lott (Christopher) (cl778h) <clott@vm-ep-dev2.client.research.att.com> | 2017-06-12 09:49:00 -0400 |
---|---|---|
committer | Christopher Lott (cl778h) <clott@research.att.com> | 2017-06-12 13:42:43 -0400 |
commit | 627badaf69987c01811c477219fd943757a635f5 (patch) | |
tree | 97df9449a411d1ecf830cc76d8afd6f9b5677bda /ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs | |
parent | ba838f2e13f1e8050c75e68bd3733d56d8f416d5 (diff) |
[PORTAL-16 PORTAL-18] Widget ms; staging
Remove staging repositories from poms.
Add widget microservice code base.
Add portal unit tests.
Repair defects.
Normalize line endings.
Change-Id: Ia5e48da2a3141b352439ecd548cddf918f4df585
Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
Diffstat (limited to 'ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs')
3 files changed, 177 insertions, 0 deletions
diff --git a/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.controller.js b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.controller.js new file mode 100644 index 00000000..4720e752 --- /dev/null +++ b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.controller.js @@ -0,0 +1,87 @@ +/*- + * ================================================================================ + * eCOMP Portal + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property + * ================================================================================ + * 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. + * ================================================================================ + */ +'use strict'; +(function () { + class EditProfileModalCtrl { + constructor($log,ngDialog,usersService,confirmBoxService,adminsService) { + this.firstName =''; + this.middleName =''; + this.lastName =''; + this.email =''; + this.loginId =''; + this.loginPwd =''; + this.confirmLoginPwd='' + this.isLoading = false; + let getUser = () => { + this.isLoading = true; + usersService.getLoggedInUser() + .then(user=> { + var data = user.response; + console.log(data); + this.firstName =data.firstName; + this.middleName =data.middleName; + this.lastName =data.lastName; + this.email =data.email; + this.loginId =data.loginId; + this.loginPwd =data.loginPassword; + this.isLoading = false; + }).catch(err=> { + $log.error('EditProfileModalCtrl.getUser:: Error retrieving ECMOP portal user: ' + err); + }); + } + getUser(); + + this.save = ()=>{ + var profileDetail ={ + firstName : this.firstName, + middleName :this.middleName, + lastName :this.lastName, + email :this.email, + loginId :this.loginId, + loginPassword :this.loginPwd + } + if (this.firstName =='' || this.lastName == '' || this.email == '' || this.loginId =='' || this.loginPwd ==''|| this.confirmLoginPwd ==''){ + var warningMsg = "Please enter a value for all fields marked with *."; + confirmBoxService.showInformation(warningMsg).then(isConfirmed => {return;}); + return; + } else if (this.loginPwd != this.confirmLoginPwd) { + var warningMsg = "Passwords do not match, please try again."; + confirmBoxService.showInformation(warningMsg).then(isConfirmed => {return;}); + return; + } else { + // check password length complexity. + var warningMsg = adminsService.isComplexPassword(this.loginPwd); + if (warningMsg != null) { + confirmBoxService.showInformation(warningMsg).then(isConfirmed => {return;}); + return; + } + } + usersService.modifyLoggedInUser(profileDetail).then(res=> { + confirmBoxService.showInformation("Profile detail updated").then(isConfirmed => {return;}); + }).catch(err=> { + $log.error('EditProfileModalCtrl.getUser:: Error retrieving ECMOP portal user: ' + err); + confirmBoxService.showInformation("Error while updating profile detail: "+ err).then(isConfirmed => {return;}); + }); + } + } + } + EditProfileModalCtrl.$inject = ['$log', 'ngDialog','usersService','confirmBoxService','adminsService']; + angular.module('ecompApp').controller('EditProfileModalCtrl', EditProfileModalCtrl); +})(); diff --git a/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.html b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.html new file mode 100644 index 00000000..cfe5a15d --- /dev/null +++ b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.html @@ -0,0 +1,69 @@ +<!-- + ================================================================================ + eCOMP Portal + ================================================================================ + Copyright (C) 2017 AT&T Intellectual Property + ================================================================================ + 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. + ================================================================================ + --> +<div class="profile-detail-modal"> + <div id="div-profile-detail" class="prodile-detail"> + <div class="title" id="title">Profile Detail</div> + <span class="ecomp-spinner" ng-show="profileDetail.isLoading"></span> + + <div class="app-roles-main" ng-hide="profileDetail.isLoading"> + <div id="profile-div"> + <div> + <div class="profile-edit-div"> + <div class="">*First Name</div> + <input type="text" ng-model="profileDetail.firstName" /> + </div> + <div class="profile-edit-div"> + <div class="">Middle Name</div> + <input type="text" ng-model="profileDetail.middleName" /> + </div> + <div class="profile-edit-div"> + <div class="">*Last Name</div> + <input type="text" ng-model="profileDetail.lastName" /> + </div> + <div class="profile-edit-div"> + <div class="">*Email Address ID</div> + <input type="text" ng-model="profileDetail.email" readonly="readonly" /> + </div> + <div class="profile-edit-div"> + <div class="">*Login ID</div> + <input type="text" ng-model="profileDetail.loginId" readonly="readonly" /> + </div> + <div class="profile-edit-div"> + <div class="">*Login Password</div> + <input type="password" ng-model="profileDetail.loginPwd" /> + </div> + <div class="profile-edit-div"> + <div class="">*Confirm Login Password</div> + <input type="password" + ng-model="profileDetail.confirmLoginPwd" /> + </div> + </div> + </div> + <div class="dialog-control"> + <span class="ecomp-save-spinner" ng-show="newAdmin.isSaving"></span> + <button id="div-updateAdminAppsRoles" class="btn btn-alt btn-small" + ng-click="profileDetail.save()" + ng-class="{disabled: false}">Save</button> + <button id="div-cancel-button" class="btn btn-alt btn-small" + ng-click="closeThisDialog()">Cancel</button> + </div> + </div> + </div> +</div> diff --git a/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.less b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.less new file mode 100644 index 00000000..b103f304 --- /dev/null +++ b/ecomp-portal-FE-os/client/src/views/header/profile-edit-dialogs/profile-edit.modal.less @@ -0,0 +1,21 @@ +.profile-detail-modal { + height: 430px; + margin-left: 20px; + + .prodile-detail { + .title { + //.n18r; + .dGray18r; + border-bottom: @blue-active 3px solid; + + } + } + + + .profile-edit-div{ + display: inline-block; + width: 240px; + margin-left: 10px; + } +} + |