From 88d3bb8cc48c35bb1da87acc65e0d8d96c9525e9 Mon Sep 17 00:00:00 2001 From: mehdiboudjoudi Date: Wed, 18 Dec 2024 11:06:39 +0100 Subject: [PATCH 1/3] =?UTF-8?q?UI:=20User=20Login,=20Mitarbeiter=C3=BCbers?= =?UTF-8?q?ichts=20Page?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- angular.json | 3 +- public/img.png | Bin 0 -> 65203 bytes public/user.svg | 3 + src/app/app.component.html | 2 +- src/app/app.component.ts | 7 +- .../login-view/login-view.component.css | 56 +++++++++++ .../login-view/login-view.component.html | 26 +++++ .../login-view/login-view.component.spec.ts | 23 +++++ .../login-view/login-view.component.ts | 12 +++ .../mitarbeiterverwaltung-view.component.css | 93 ++++++++++++++++++ .../mitarbeiterverwaltung-view.component.html | 43 ++++++++ ...tarbeiterverwaltung-view.component.spec.ts | 23 +++++ .../mitarbeiterverwaltung-view.component.ts | 12 +++ 13 files changed, 300 insertions(+), 3 deletions(-) create mode 100644 public/img.png create mode 100644 public/user.svg create mode 100644 src/app/components/login-view/login-view.component.css create mode 100644 src/app/components/login-view/login-view.component.html create mode 100644 src/app/components/login-view/login-view.component.spec.ts create mode 100644 src/app/components/login-view/login-view.component.ts create mode 100644 src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css create mode 100644 src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html create mode 100644 src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.spec.ts create mode 100644 src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.ts diff --git a/angular.json b/angular.json index bb8d837..954709f 100644 --- a/angular.json +++ b/angular.json @@ -24,7 +24,8 @@ { "glob": "**/*", "input": "public" - } + }, + "src/assets" ], "styles": [ "src/styles.css" diff --git a/public/img.png b/public/img.png new file mode 100644 index 0000000000000000000000000000000000000000..aeaa9da1e19ea18f0ec99ac61810f1f980b406dd GIT binary patch literal 65203 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 LQ^Q09`{4frj=mLf literal 0 HcmV?d00001 diff --git a/public/user.svg b/public/user.svg new file mode 100644 index 0000000..3388c8a --- /dev/null +++ b/public/user.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/app/app.component.html b/src/app/app.component.html index 2f42d3e..ce0f108 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1 +1 @@ - + diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 5581240..febbfd1 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,12 +1,17 @@ import { Component } from '@angular/core'; import { RouterOutlet } from '@angular/router'; +import {LoginViewComponent} from "./components/login-view/login-view.component"; +import { + MitarbeiterverwaltungViewComponent +} from "./components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component"; + import { NavigationBarComponent } from './components/navigation-bar/navigation-bar.component'; import { EmployeeDetailComponent } from './components/employee-detail/employee-detail.component'; @Component({ selector: 'app-root', standalone: true, - imports: [RouterOutlet, NavigationBarComponent, EmployeeDetailComponent], + imports: [RouterOutlet, NavigationBarComponent, EmployeeDetailComponent, LoginViewComponent, MitarbeiterverwaltungViewComponent], templateUrl: './app.component.html', styleUrl: './app.component.css' }) diff --git a/src/app/components/login-view/login-view.component.css b/src/app/components/login-view/login-view.component.css new file mode 100644 index 0000000..4388089 --- /dev/null +++ b/src/app/components/login-view/login-view.component.css @@ -0,0 +1,56 @@ +body { + font-family: 'Roboto', sans-serif; + display: flex; + justify-content: center; + align-items: center; + height: 100vh; /* Use height instead of min-height */ + background-color: #f0f0f0; +} + +.container { + text-align: center; + padding: 20px; + border: 1px solid #ccc; + border-radius: 5px; + background-color: #fff; + width: 300px; /* Set a maximum width for the container */ +} + +h1 { + font-size: 2rem; + font-weight: 300; + margin-bottom: 15px; +} + +label { + display: block; + margin-bottom: 5px; + color: #aaa; + text-align: center; /* Center labels horizontally */ +} + +input[type="text"], +input[type="password"] { + width: 250px; + padding: 12px; + margin-bottom: 15px; + border: 1px solid #ddd; + border-radius: 4px; + font-size: 1rem; + color: #333; +} + +button { + background-color: transparent; + color: #9c88ff; + border: 1px solid #9c88ff; + padding: 12px 20px; + border-radius: 4px; + cursor: pointer; + font-size: 1rem; +} + +.logo-image { + width: 25%; /* Reduce width to 25% of its original size */ + height: auto; /* Maintain aspect ratio */ +} diff --git a/src/app/components/login-view/login-view.component.html b/src/app/components/login-view/login-view.component.html new file mode 100644 index 0000000..93f1bfd --- /dev/null +++ b/src/app/components/login-view/login-view.component.html @@ -0,0 +1,26 @@ + + + + + + Hi-Tec GmbH Login + + + + +
+

Hi-Tec GmbH

+ Logout Icon + +
+ +
+ + +

+ + +
+
+ + diff --git a/src/app/components/login-view/login-view.component.spec.ts b/src/app/components/login-view/login-view.component.spec.ts new file mode 100644 index 0000000..01375bc --- /dev/null +++ b/src/app/components/login-view/login-view.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LoginViewComponent } from './login-view.component'; + +describe('BrowserLoginViewComponent', () => { + let component: LoginViewComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [LoginViewComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(LoginViewComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/login-view/login-view.component.ts b/src/app/components/login-view/login-view.component.ts new file mode 100644 index 0000000..ffc3ab9 --- /dev/null +++ b/src/app/components/login-view/login-view.component.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-login-view', + standalone: true, + imports: [], + templateUrl: './login-view.component.html', + styleUrl: './login-view.component.css' +}) +export class LoginViewComponent { + +} diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css new file mode 100644 index 0000000..5118ab7 --- /dev/null +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css @@ -0,0 +1,93 @@ +body { + font-family: sans-serif; + margin: 0; + padding: 20px; + background-color: #f0f0f0; +} + +.container { + width: 80%; + max-width: 960px; + margin: 0 auto; + background-color: #fff; + border-radius: 5px; + padding: 20px; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); +} + +h1 { + font-size: 2rem; + margin-bottom: 20px; +} + +.search-bar { + display: flex; + margin-bottom: 20px; + align-items: center; +} + +.search-bar input[type="text"] { + padding: 8px; + border: 1px solid #ccc; + border-radius: 3px; + flex-grow: 1; + margin-right: 10px; +} + +.search-bar button { + padding: 10px 15px; + background-color: #007bff; + color: #fff; + border: none; + border-radius: 3px; + cursor: pointer; +} + +.add-button { + background-color: #07af16; + color: #fff; + padding: 10px 15px; + border: none; + border-radius: 3px; + cursor: pointer; + float: left; + margin-bottom: 10px; +} + +.employee-table { + width: 100%; + border-collapse: collapse; + margin-top: 20px; +} + +.employee-table th, +.employee-table td { + padding: 12px 15px; + border: 1px solid #ddd; + text-align: left; +} + +.employee-table th { + background-color: #f0f0f0; + font-weight: bold; +} + +.sortable { + cursor: pointer; +} + +.logout-button { + background-color: transparent; + border: none; + cursor: pointer; + border-radius: 50%; + width: 30px; + height: 30px; + display: flex; + float: right; +} + +.logout-button img { + width: 20px; + height: 20px; +} diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html new file mode 100644 index 0000000..7068d02 --- /dev/null +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html @@ -0,0 +1,43 @@ + + + + + + + + + +
+
+ +

Employees

+
+
+ + +
+ + + + + + + + + + + + + + + +
First NameLast NameStreetPostcodeCityPhoneActions
+
+ + + diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.spec.ts b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.spec.ts new file mode 100644 index 0000000..c9db222 --- /dev/null +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; + +import { MitarbeiterverwaltungViewComponent } from './mitarbeiterverwaltung-view.component'; + +describe('MitarbeiterverwaltungViewComponent', () => { + let component: MitarbeiterverwaltungViewComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [MitarbeiterverwaltungViewComponent] + }) + .compileComponents(); + + fixture = TestBed.createComponent(MitarbeiterverwaltungViewComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.ts b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.ts new file mode 100644 index 0000000..3a8f197 --- /dev/null +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.ts @@ -0,0 +1,12 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-mitarbeiterverwaltung-view', + standalone: true, + imports: [], + templateUrl: './mitarbeiterverwaltung-view.component.html', + styleUrl: './mitarbeiterverwaltung-view.component.css' +}) +export class MitarbeiterverwaltungViewComponent { + +} From 026278e53bf94fe3f23ce94b23e217e2b2a3653f Mon Sep 17 00:00:00 2001 From: Jan Klattenhoff Date: Wed, 18 Dec 2024 11:15:29 +0100 Subject: [PATCH 2/3] feat: replace mitarbeiterverwaltung with login view --- src/app/app.component.html | 2 +- .../login-view/login-view.component.css | 2 -- .../login-view/login-view.component.html | 15 ++------------- 3 files changed, 3 insertions(+), 16 deletions(-) diff --git a/src/app/app.component.html b/src/app/app.component.html index ce0f108..6d10711 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1 +1 @@ - + diff --git a/src/app/components/login-view/login-view.component.css b/src/app/components/login-view/login-view.component.css index 4388089..0ab8228 100644 --- a/src/app/components/login-view/login-view.component.css +++ b/src/app/components/login-view/login-view.component.css @@ -9,8 +9,6 @@ body { .container { text-align: center; - padding: 20px; - border: 1px solid #ccc; border-radius: 5px; background-color: #fff; width: 300px; /* Set a maximum width for the container */ diff --git a/src/app/components/login-view/login-view.component.html b/src/app/components/login-view/login-view.component.html index 93f1bfd..d73e36d 100644 --- a/src/app/components/login-view/login-view.component.html +++ b/src/app/components/login-view/login-view.component.html @@ -1,14 +1,5 @@ - - - - - - Hi-Tec GmbH Login - - - - -
+ +

Hi-Tec GmbH

Logout Icon @@ -22,5 +13,3 @@
- - From 7f37f2b477a7d2ed53582338246f4282fbab0797 Mon Sep 17 00:00:00 2001 From: Jan Klattenhoff Date: Wed, 18 Dec 2024 11:17:16 +0100 Subject: [PATCH 3/3] feat: replace login view with mitarbeiterverwaltung view --- src/app/app.component.html | 2 +- .../mitarbeiterverwaltung-view.component.css | 5 +---- .../mitarbeiterverwaltung-view.component.html | 12 ------------ 3 files changed, 2 insertions(+), 17 deletions(-) diff --git a/src/app/app.component.html b/src/app/app.component.html index 6d10711..ce0f108 100644 --- a/src/app/app.component.html +++ b/src/app/app.component.html @@ -1 +1 @@ - + diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css index 5118ab7..6f010a4 100644 --- a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.css @@ -6,13 +6,10 @@ body { } .container { - width: 80%; - max-width: 960px; + width: 100%; margin: 0 auto; background-color: #fff; - border-radius: 5px; padding: 20px; - box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } h1 { diff --git a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html index 7068d02..db1cbf9 100644 --- a/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html +++ b/src/app/components/mitarbeiterverwaltung-view/mitarbeiterverwaltung-view.component.html @@ -1,12 +1,3 @@ - - - - - - - - -
- - -