aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/app/_pages/login-page
diff options
context:
space:
mode:
authorSonja Galovic <galovicsonja@gmail.com>2022-03-05 22:03:03 +0100
committerSonja Galovic <galovicsonja@gmail.com>2022-03-05 22:03:03 +0100
commitcd2188997ff4cbcce83e3cada3fc220375ebc78e (patch)
tree3e82fff661cc20c33198c0f330e3f8c733a6e0a4 /frontend/src/app/_pages/login-page
parent843c57eba8709d1001cf8cae3a0180f865171167 (diff)
Login and Register page - v. 0.1.0
Diffstat (limited to 'frontend/src/app/_pages/login-page')
-rw-r--r--frontend/src/app/_pages/login-page/login-page.component.css0
-rw-r--r--frontend/src/app/_pages/login-page/login-page.component.html39
-rw-r--r--frontend/src/app/_pages/login-page/login-page.component.spec.ts25
-rw-r--r--frontend/src/app/_pages/login-page/login-page.component.ts46
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;
+ }
+ }
+
+}