Further updates on 03-11-2025

This commit is contained in:
2025-11-03 13:46:43 +05:30
parent 91cb073c78
commit 434d95eeaf
87 changed files with 17782 additions and 3451 deletions
@@ -1,46 +1,80 @@
<div class="container" style="margin-top: 100px;">
<div class="d-flex justify-content-center h-50">
<div class="user_card">
<div class="d-flex justify-content-center">
<div style="margin-top: 10px;margin-bottom:-90px;">
<h3>User Management Portal</h3>
<div class="login-layout">
<div class="login-container">
<!-- Login Card -->
<div class="login-card">
<!-- Logo/Header Section -->
<div class="login-header">
<div class="logo-wrapper">
<img src="assets/images/cmc/logo.png" alt="Logo" class="logo-image">
</div>
<h1 class="login-title">Welcome Back</h1>
<p class="login-subtitle">Sign in to continue</p>
</div>
<div class="d-flex justify-content-center form_container">
<form #loginForm="ngForm" (ngSubmit)="onLogin(loginForm.value)">
<div class="input-group mb-3">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-user"></i></span>
</div>
<input type="text" class="form-control" name="username" placeholder="Username"
ngModel #usernameInput="ngModel" required>
<!-- Login Form -->
<form #loginForm="ngForm" (ngSubmit)="onLogin(loginForm.value)" class="login-form">
<!-- Username Field -->
<div class="form-group">
<label for="username">Username</label>
<div class="input-wrapper">
<input
type="text"
id="username"
class="form-input"
name="username"
placeholder="Enter your username"
ngModel
#usernameInput="ngModel"
required
[class.input-error]="usernameInput.invalid && usernameInput.touched">
<i class="fas fa-user input-icon"></i>
</div>
<span class="help-block" style="color:red;" *ngIf="usernameInput.invalid && usernameInput.touched">
Please enter a username</span>
<div class="input-group mb-2">
<div class="input-group-append">
<span class="input-group-text"><i class="fas fa-key"></i></span>
</div>
<input type="password" class="form-control" name="password" placeholder="Password"
ngModel #passwordInput="ngModel" required>
<div class="error-message" *ngIf="usernameInput.invalid && usernameInput.touched">
<i class="fas fa-exclamation-circle"></i>
Please enter a username
</div>
<span class="help-block" style="color:red;" *ngIf="passwordInput.invalid && passwordInput.touched"
>Please enter a password.</span>
<div class="d-flex justify-content-center mt-3 login_container">
<button type="submit" [disabled]="loginForm.invalid || showLoading" name="button" class="btn login_btn">
<i class="fas fa-spinner fa-spin" *ngIf="showLoading"></i>&nbsp;&nbsp;
<span>{{showLoading ? 'Loading...' : 'Login'}}</span>
</button>
</div>
</form>
</div>
<div class="mt-4">
<div class="d-flex justify-content-center links">
Don't have an account? <a routerLink="/register" class="ml-2" style="color: #2C3E50;">Sign Up</a>
</div>
<!-- Password Field -->
<div class="form-group">
<label for="password">Password</label>
<div class="input-wrapper">
<input
type="password"
id="password"
class="form-input"
name="password"
placeholder="Enter your password"
ngModel
#passwordInput="ngModel"
required
[class.input-error]="passwordInput.invalid && passwordInput.touched">
<i class="fas fa-lock input-icon"></i>
</div>
<div class="error-message" *ngIf="passwordInput.invalid && passwordInput.touched">
<i class="fas fa-exclamation-circle"></i>
Please enter a password
</div>
</div>
<!-- Login Button -->
<button
type="submit"
class="btn-login"
[disabled]="loginForm.invalid || showLoading">
<i class="fas fa-spinner fa-spin" *ngIf="showLoading"></i>
<i class="fas fa-sign-in-alt" *ngIf="!showLoading"></i>
<span>{{ showLoading ? 'Signing in...' : 'Sign In' }}</span>
</button>
</form>
<!-- Register Link -->
<div class="login-footer">
<p class="footer-text">
Don't have an account?
<a routerLink="/register" class="footer-link">Sign Up</a>
</p>
</div>
</div>
</div>
</div>
</div>