-
-
-
-
+
+ {{loggeduser.RoleDescription}}
-
-
-
-
Dados Perfil
-
{{loggeduser.RoleDescription}}
-
{{loggeduser.Email}}
-
-
-
-
Preferência Login
-
-
-
-
-
- PIN
-
-
-
-
-
-
- Impressão Digital
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
2 novas notificações
+
+
+
+
+

+
+
+
+
Luanda | Palácio Presidencial
+
Almoço de Família
+
+
+
+
+
+
+
+

+
+
+
+
Relatório FMI
+
Luanda | Palácio Presidencial
+
+
+
+
+
-
-
- Alterar PIN
-
-
-
-
diff --git a/src/app/modals/profile/profile.page.scss b/src/app/modals/profile/profile.page.scss
index 65d3675e1..081d3b5ff 100644
--- a/src/app/modals/profile/profile.page.scss
+++ b/src/app/modals/profile/profile.page.scss
@@ -1,64 +1,114 @@
-.profile-content{
+.profile-header{
+ margin: 0 em(20px);
+ // background-color: #0782c9;
padding: 20px 20px;
+ border: 0!important;
+ overflow: auto;
+
+ .div-logo{
+ background: transparent;
+ width: calc(100% - 40px) !important;
+ justify-content: center;
+ display: flex;
+ float: left;
+
+ .logo{
+ width: 140px;
+ .img{
+ width: 100%;
+ margin: 0px auto;
+ }
+ }
+ }
+}
+.btn-close{
+ justify-content: center;
+ align-items: center;
+ float: left;
+}
+.profile-content{
+ padding: 20px 20px;
}
.icon{
- font-size: 35px;
+ font-size: 40px;
}
-.go-back{
- font-family: Roboto;
- font-size: 25px;
- .icon{
- margin-right: 7px;
- }
+.profile-title{
+ font-weight: 300;
+ font-size: 20px !important;
+ margin-bottom: 40px !important;
}
-.profile-pic{
- width: 200px;
- height: 200px;
- border-radius: 20px;
- margin: 0px auto;
+.line{
+ width: 100% !important;
+ margin-top: 15px;
+ border-top: 1px solid #d8d8d8;
}
-.profile-info{
- .label-text{
- font-size: 15px;
- font-weight: bold;
- color: white;
- margin-bottom: 10px;
- }
-
- .user-role{
- background-color: white;
- border-radius: 5px;
- padding: 12px;
- font-family: Roboto;
- font-size: 13px;
- color: black;
- text-align: center;
- }
-
- .email {
- margin-top: 15px;
- }
-
+.btn-delete{
+ width: 40% !important;
+ margin-left: 0 !important;
}
-
-.login-preference{
- margin-top: 44px;
-
- .preference{
- font-family: Roboto;
- font-size: 15px;
- margin-bottom: 20px;
- font-weight: bold;
- }
- .checkBox{
- margin-right: 10px;
- }
+.btn-cancel{
+ width: 40% !important;
+ margin-right: 0 !important;
}
.buttonSize {
width: 100% !important;
}
+
+ion-list{
+ background-color: transparent !important;
+}
+
+.notifications-content{
+ padding: 0px 20px;
+ .item{
+ display: flex;
+ border-radius: 15px;
+ box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07);
+ border: solid 1px #e9e9e9;
+ background-color: var(--white);
+ margin: 0 auto;
+ padding: 10px;
+ margin-bottom: 10px;
+ color: #000;
+ overflow: hidden;
+
+ border: 1px solid blue;
+
+ .notification-item{
+ width: fit-content;
+ float: left;
+ margin-right: 10px;
+ padding: 0 !important;
+ overflow: auto;
+
+
+ }
+ .notification-icon{
+ font-size: 35px !important;
+ }
+ .approve-event-time{
+ width: fit-content !important;
+ float: left;
+ }
+ .approve-event-detail{
+ width: calc(100% - 115px) !important;
+ float: left;
+ }
+ .notification-label{
+ float: right;
+ width: 5px;
+ height: 100%;
+ border-radius: 0% 100% 100% 0%;
+ background-color: #ffb703;
+ }
+ }
+
+}
+.item-inner{
+ padding: 0 !important;
+}
diff --git a/src/app/modals/profile/profile.page.ts b/src/app/modals/profile/profile.page.ts
index d77d04348..60b1cc2f2 100644
--- a/src/app/modals/profile/profile.page.ts
+++ b/src/app/modals/profile/profile.page.ts
@@ -6,6 +6,7 @@ import { AuthService } from 'src/app/services/auth.service';
import { FingerprintPage } from 'src/app/shared/fingerprint/fingerprint.page';
import { PinPage } from 'src/app/shared/pin/pin.page';
import { LocalstoreService } from 'src/app/store/localstore.service';
+import { EditProfilePage } from './edit-profile/edit-profile.page';
@Component({
selector: 'app-profile',
@@ -37,80 +38,7 @@ export class ProfilePage implements OnInit {
this.modalController.dismiss();
}
- async addPin() {
- const enterAnimation = (baseEl: any) => {
- const backdropAnimation = this.animationController.create()
- .addElement(baseEl.querySelector('ion-backdrop')!)
- .fromTo('opacity', '0.01', 'var(--backdrop-opacity)');
-
- const wrapperAnimation = this.animationController.create()
- .addElement(baseEl.querySelector('.modal-wrapper')!)
- .keyframes([
- { offset: 0, opacity: '1', right: '-100%' },
- { offset: 1, opacity: '1', right: '0px' }
- ]);
-
- return this.animationController.create()
- .addElement(baseEl)
- .easing('ease-out')
- .duration(500)
- .addAnimation([backdropAnimation, wrapperAnimation]);
- }
-
- const leaveAnimation = (baseEl: any) => {
- return enterAnimation(baseEl).direction('reverse');
- }
-
-
- const modal = await this.modalController.create({
- enterAnimation,
- leaveAnimation,
- component: PinPage,
- cssClass: 'model profile-modal',
- componentProps: {
- }
- });
-
- modal.present();
- }
-
-
- async addFingerprint() {
- const enterAnimation = (baseEl: any) => {
- const backdropAnimation = this.animationController.create()
- .addElement(baseEl.querySelector('ion-backdrop')!)
- .fromTo('opacity', '0.01', 'var(--backdrop-opacity)');
-
- const wrapperAnimation = this.animationController.create()
- .addElement(baseEl.querySelector('.modal-wrapper')!)
- .keyframes([
- { offset: 0, opacity: '1', right: '-100%' },
- { offset: 1, opacity: '1', right: '0px' }
- ]);
-
- return this.animationController.create()
- .addElement(baseEl)
- .easing('ease-out')
- .duration(500)
- .addAnimation([backdropAnimation, wrapperAnimation]);
- }
-
- const leaveAnimation = (baseEl: any) => {
- return enterAnimation(baseEl).direction('reverse');
- }
-
-
- const modal = await this.modalController.create({
- enterAnimation,
- leaveAnimation,
- component: FingerprintPage,
- cssClass: 'model profile-modal',
- componentProps: {
- }
- });
-
- modal.present();
- }
+ notImplemented(){}
logout() {
// clear local storage
@@ -121,28 +49,6 @@ export class ProfilePage implements OnInit {
location.reload();
}, 1000)
-
- }
-
- LoginPreferenceMethod(type: string) {
-
- let userData = this.localstoreService.get('UserData', {})
-
- if (userData.hasOwnProperty('loginPreference')) {
- if (userData.loginPreference != type) {
- if (type) {
- userData.loginPreference = type
- }
- } else {
- userData.loginPreference = 'none'
- }
-
- } else {
- userData.loginPreference = 'none'
- }
-
-
- this.localstoreService.set('UserData', userData)
}
checkState() {
@@ -157,4 +63,41 @@ export class ProfilePage implements OnInit {
}
+ async editProfile() {
+
+ const enterAnimation = (baseEl: any) => {
+ const backdropAnimation = this.animationController.create()
+ .addElement(baseEl.querySelector('ion-backdrop')!)
+ .fromTo('opacity', '0.01', 'var(--backdrop-opacity)');
+
+ const wrapperAnimation = this.animationController.create()
+ .addElement(baseEl.querySelector('.modal-wrapper')!)
+ .keyframes([
+ { offset: 0, opacity: '1', right: '-100%' },
+ { offset: 1, opacity: '1', right: '0px' }
+ ]);
+
+ return this.animationController.create()
+ .addElement(baseEl)
+ .easing('ease-out')
+ .duration(500)
+ .addAnimation([backdropAnimation, wrapperAnimation]);
+ }
+
+ const leaveAnimation = (baseEl: any) => {
+ return enterAnimation(baseEl).direction('reverse');
+ }
+
+
+ const modal = await this.modalController.create({
+ enterAnimation,
+ leaveAnimation,
+ component: EditProfilePage,
+ cssClass: 'model profile-modal',
+ componentProps: {
+ }
+ });
+ return await modal.present();
+ }
+
}
diff --git a/src/app/pages/events/events.page.html b/src/app/pages/events/events.page.html
index 9b3866f23..a5179fa11 100644
--- a/src/app/pages/events/events.page.html
+++ b/src/app/pages/events/events.page.html
@@ -25,7 +25,7 @@
-
+
@@ -36,9 +36,9 @@
A sua Agenda
@@ -46,8 +46,7 @@
+ (click)="goToEvent(event.EventId)">
-
+
-
+
-
\ No newline at end of file
+
diff --git a/src/app/shared/headers/header-no-search/header-no-search.page.ts b/src/app/shared/headers/header-no-search/header-no-search.page.ts
index cc42609fe..13c72f775 100644
--- a/src/app/shared/headers/header-no-search/header-no-search.page.ts
+++ b/src/app/shared/headers/header-no-search/header-no-search.page.ts
@@ -6,6 +6,7 @@ import { ProfileComponent } from './profile/profile.page';
import { Router } from '@angular/router';
import { AuthService } from 'src/app/services/auth.service';
import { User } from 'src/app/models/user.model';
+import { ProfilePage } from 'src/app/modals/profile/profile.page';
@Component({
selector: 'app-header-no-search',
templateUrl: './header-no-search.page.html',
@@ -14,12 +15,12 @@ import { User } from 'src/app/models/user.model';
export class HeaderNoSearchPage implements OnInit {
loggeduser: User;
-
+
constructor(private modalController: ModalController,
private menu: MenuController,
private animationController: AnimationController,
private router: Router,
- authService: AuthService) {
+ authService: AuthService) {
this.loggeduser = authService.ValidatedUser;
}
@@ -51,12 +52,12 @@ export class HeaderNoSearchPage implements OnInit {
const leaveAnimation = (baseEl: any) => {
return enterAnimation(baseEl).direction('reverse');
}
-
+
const modal = await this.modalController.create({
enterAnimation,
leaveAnimation,
- component: ProfileComponent,
+ component: ProfilePage,
cssClass: 'model profile-modal',
componentProps: {
}
diff --git a/src/assets/images/icons-default-profile.svg b/src/assets/images/icons-default-profile.svg
new file mode 100644
index 000000000..dd82c44a7
--- /dev/null
+++ b/src/assets/images/icons-default-profile.svg
@@ -0,0 +1,34 @@
+
diff --git a/src/theme/variables.scss b/src/theme/variables.scss
index c09c7af4e..5651bbcf2 100644
--- a/src/theme/variables.scss
+++ b/src/theme/variables.scss
@@ -408,10 +408,10 @@ $app-theme: mat-light-theme((
}
.approve-event-time{
+ width: 33px;
float: left;
}
.approve-event-time p{
- width: 33px;
font-family: Roboto;
font-size: 13px;
font-weight: normal;