diff options
author | Sonja Galovic <galovicsonja@gmail.com> | 2022-03-05 22:03:03 +0100 |
---|---|---|
committer | Sonja Galovic <galovicsonja@gmail.com> | 2022-03-05 22:03:03 +0100 |
commit | cd2188997ff4cbcce83e3cada3fc220375ebc78e (patch) | |
tree | 3e82fff661cc20c33198c0f330e3f8c733a6e0a4 /frontend/src/app/_pages/login-page | |
parent | 843c57eba8709d1001cf8cae3a0180f865171167 (diff) |
Login and Register page - v. 0.1.0
Diffstat (limited to 'frontend/src/app/_pages/login-page')
4 files changed, 110 insertions, 0 deletions
diff --git a/frontend/src/app/_pages/login-page/login-page.component.css b/frontend/src/app/_pages/login-page/login-page.component.css new file mode 100644 index 00000000..e69de29b --- /dev/null +++ b/frontend/src/app/_pages/login-page/login-page.component.css diff --git a/frontend/src/app/_pages/login-page/login-page.component.html b/frontend/src/app/_pages/login-page/login-page.component.html new file mode 100644 index 00000000..b8620e2f --- /dev/null +++ b/frontend/src/app/_pages/login-page/login-page.component.html @@ -0,0 +1,39 @@ +<div *ngIf="pageLoaded" style="min-height: 100vh; position: relative;"> + + <!-- TODO : <app-navbar [activeNav]="'login'"></app-navbar>--> + + <div class="container p-5 rounded-3 shadow-sm border" style="max-width: 50em; margin-top: 50px;"> + <h3 class="text-center pb-5">Prijavite se</h3> + <form> + <!-- Email input --> + <div class="form-outline mb-4"> + <label class="form-label" for="email">Email adresa</label> + <input [(ngModel)]="email" name="email" type="email" id="email" class="form-control form-control-lg" placeholder="Unesite email adresu..." /> + </div> + + <!-- Password input --> + <div class="form-outline mb-3"> + <label class="form-label" for="password">Lozinka</label> + <input [(ngModel)]="password" name="password" type="password" id="password" class="form-control form-control-lg" placeholder="Unesite lozinku..." /> + </div> + + <div class="text-center text-lg-start mt-4 pt-2"> + <!-- Pogresna lozinka --> + <p *ngIf="wrongCreds" class="small fw-bold mt-2 pt-1 mb-0 text-danger">Lozinka ili e-mail su pogrešni</p> + <!-- Nepotvrdjena registracija + <p *ngIf="notApproved" class="small fw-bold mt-2 pt-1 mb-0 text-danger">Vaša registracija još uvek nije potvrđena</p>--> + <br> + + <button type="button" class="btn btn-primary btn-lg" style="padding-left: 2.5rem; padding-right: 2.5rem;" + (click)="onSubmit()">Prijava + </button> + + <p class="small fw-bold mt-2 pt-1 mb-0">Još uvek nemate nalog? + <a routerLink="/register" class="link-danger">Registrujte se</a></p> + </div> + </form> + </div> + + <!-- TODO: <app-footer></app-footer>--> + +</div>
\ No newline at end of file diff --git a/frontend/src/app/_pages/login-page/login-page.component.spec.ts b/frontend/src/app/_pages/login-page/login-page.component.spec.ts new file mode 100644 index 00000000..9da3aca8 --- /dev/null +++ b/frontend/src/app/_pages/login-page/login-page.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LoginPageComponent } from './login-page.component'; + +describe('LoginPageComponent', () => { + let component: LoginPageComponent; + let fixture: ComponentFixture<LoginPageComponent>; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [ LoginPageComponent ] + }) + .compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(LoginPageComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/frontend/src/app/_pages/login-page/login-page.component.ts b/frontend/src/app/_pages/login-page/login-page.component.ts new file mode 100644 index 00000000..c041003d --- /dev/null +++ b/frontend/src/app/_pages/login-page/login-page.component.ts @@ -0,0 +1,46 @@ +import { Component, OnInit } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { AuthService } from 'src/app/_services/auth.service'; +//import { LoginService } from 'src/app/_services/login.service'; + +@Component({ + selector: 'app-login-page', + templateUrl: './login-page.component.html', + styleUrls: ['./login-page.component.css'] +}) +export class LoginPageComponent implements OnInit { + + public pageLoaded: boolean = false; //ako korisnik ne sme da ima pristup stranici (vec je ulogovan itd), ona ne sme ni da se ucita + email: string = ''; + password: string = ''; + + public wrongCreds: boolean = false; //RAZMOTRITI + //public notApproved: boolean = false; //RAZMOTRITI + + pattEmail: RegExp = /^[a-zA-Z0-9]+([\.\-\+][a-zA-Z0-9]+)*\@([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}$/; + + constructor( + private activatedRoute: ActivatedRoute, + private authService: AuthService + //private loginService: LoginService + ) { } + + ngOnInit(): void { + /*this.authService.checkAccess(this.activatedRoute, this, + (self: any) => self.pageLoaded = true; + );*/ + } + + onSubmit() { + //this.wrongCreds = false; + //this.notApproved = false; RAZMOTRITI + + if (this.pattEmail.test(this.email)) { + //this.loginService.login(this.email, this.password); + } + else { + //this.wrongCreds = true; + } + } + +} |