Merged CEO and Client App

This commit is contained in:
andrei-mihnea-cerbu
2025-02-06 10:25:13 +02:00
parent eda2e2d2a0
commit 23802acd98
186 changed files with 365 additions and 11234 deletions
@@ -0,0 +1,36 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/announcement.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<title>Send Announcement</title>
</head>
<body onload="fadeIn()">
<div class="page">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
<h4 class="subheading">Send an Important Announcement</h4>
</div>
<form class="announcement-form" id="announcementForm">
<textarea name="message" id="announcementMessage" placeholder="Type your announcement here..." rows="8"></textarea>
<div class="announcement-form-footer">
<button id="backButton" type="button">Back</button>
<button id="submitAnnouncement" type="button">Send Announcement</button>
</div>
</form>
</div>
</div>
<script src="../js/announcement.js"></script>
<script src="../js/helpers.js"></script>
</body>
</html>
@@ -0,0 +1,30 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<!-- Reuse the same CSS files as UC Not Found -->
<link href="../css/loading.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<title>Welcome</title>
</head>
<body onload="fadeIn()">
<div class="container">
<div class="header">
<h1 class="title">Team Vault</h1>
</div>
<img src="../assets/refresh-data.webp" alt="Backup Fetcher" class="backup-img">
<div class="loading-section">
<div class="spinner"></div>
<p>Backup is not searched, please wait...</p>
</div>
</div>
</body>
</html>
+43
View File
@@ -0,0 +1,43 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/login.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<title>Login</title>
</head>
<body onload="fadeIn()">
<div class="page">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
<h4 class="subheading">Do we know each other?</h4>
</div>
<form class="login-form" id="loginForm">
<div class="login-form-title">
<h2 class="login-title">Login</h2>
</div>
<div class="login-form-content">
<input name="email" placeholder="Email" type="email">
<input name="password" placeholder="Password" type="password">
</div>
<div class="login-form-footer">
<div>
<button id="resetPassword" name="underline" type="button">Reset Password</button>
</div>
<button id="submit" name="submit" type="submit">Submit</button>
</div>
</form>
</div>
</div>
<script src="../js/login.js"></script>
<script src="../js/helpers.js"></script>
</body>
</html>
@@ -0,0 +1,65 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/main_menu.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/main_menu.js"></script>
<script src="../js/helpers.js"></script>
<title>Main Page</title>
</head>
<body onload="initialSetup(); fadeIn()">
<div class="page">
<div class="container">
<div class="left_block">
<div class="notification-title">
<h1 class="notif-title">Notifications</h1>
</div>
<div class=left-content>
<div class="notifications" id="notifications">
<!--Notifications are generated here-->
</div>
<div class="left_block_footer">
<button class="logout-button" id="logout" name="logout">Logout</button>
</div>
</div>
</div>
<div class="right_block">
<div class="navbar">
<div class="welcome">
<img alt="" src="../assets/user_1144760.png">
<h3 class="user">Welcome Back,&nbsp; </h3>
<h3 class="user" id="username-field"></h3>
<h3 class="user">!</h3>
</div>
<h1 class="title">TeamVault</h1>
</div>
<div class="right_block_content">
<button id="change-info" name="menu_button">Change your info</button>
<button id="share-file" name="menu_button">Share a file</button>
<button id="send-announcement" name="menu_button">Send an announcement</button>
<button id="backup-dir" name="menu_button">Set backup directory</button>
<button id="share-dir" name="menu_button">Set share directory</button>
<button id="overview-departments" name="menu_button">Overview departments</button>
<button id="overview-users" name="menu_button">Overview users</button>
<button id="reset-database" name="menu_button">Reset database</button>
<button id="restore-backup" name="menu_button">Restore backup</button>
</div>
</div>
</div>
</div>
</body>
</html>
@@ -0,0 +1,57 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/overview_departments.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<script src="../js/overview_departments.js"></script>
<title>Manage Departments</title>
</head>
<body onload="fetchDepartments(); fadeIn()">
<div class="page">
<div class="container">
<div class="user-management-container">
<h1 class="title">Manage Departments</h1>
<div id="departments-container" class="departments-container">
<!-- Department divs will be dynamically inserted here -->
</div>
<div class="footer">
<button id="backButton" name="underline" type="button">Back</button>
<button id="createDepartmentButton" name="submit" type="button">Create</button>
</div>
</div>
</div>
</div>
<!-- Create Department Modal -->
<div id="createDepartmentModal" class="modal">
<div class="modal-content">
<span id="closeCreateModal" class="close-button">&times;</span>
<h2 class="title" style="color: black; margin-bottom: 16px;">Create Department</h2>
<input type="text" id="newDepartmentName" placeholder="Department Name" />
<button id="confirmCreateButton" name="submit" type="button"
style="width: 30%;"
>Create</button>
</div>
</div>
<!-- Modify Department Modal -->
<div id="modifyDepartmentModal" class="modal">
<div class="modal-content">
<span id="closeModifyModal" class="close-button">&times;</span>
<h2 class="title" style="color: black; margin-bottom: 16px;">Modify Department</h2>
<input type="text" id="modifiedDepartmentName" placeholder="New Department Name" />
<button id="confirmModifyButton" name="submit" type="button"
style="width: 30%;"
>Modify</button>
</div>
</div>
</body>
</html>
@@ -0,0 +1,34 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/overview_users.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<script src="../js/overview_users.js"></script>
<title>Manage Users</title>
</head>
<body onload="fetchData(); fadeIn()">
<div class="page">
<div class="container">
<div class="user-management-container">
<h1 class="title">Manage Users</h1>
<div id="users-container" class="users-container">
<!-- User divs will be dynamically inserted here -->
</div>
<div class="footer">
<button id="backButton" name="underline" type="button">Back</button>
</div>
</div>
</div>
</div>
</body>
</html>
+40
View File
@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/profile.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/profile.js"></script>
<script src="../js/helpers.js"></script>
<title>Profile</title>
</head>
<body onload="fadeIn()">
<div class="page">
<div class="container">
<form class="profile-form" id="profileForm">
<div class="header">
<h1 class="title">Profile</h1>
<h3 class="subheading">Who are you?</h3>
</div>
<div class="profile-form-content">
<input name="email" placeholder="Email" type="email">
<input name="username" placeholder="Username" type="text">
<input name="password" placeholder="Password" type="password">
</div>
<div class="profile-form-footer">
<button id="back" name="underline" type="button">Back</button>
<button id="submit" name="submit" type="submit">Submit</button>
</div>
</form>
</div>
</div>
</body>
</html>
@@ -0,0 +1,30 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/loading.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<script src="../js/reset_database.js"></script>
<title>UC Not Found</title>
</head>
<body onload="fadeIn()">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
</div>
<img src="../assets/2581896.png" style="margin-left: 20px" alt="Connecting to server" class="server-img">
<div class="loading-section">
<div class="spinner"></div>
<p>Please wait while we reset the database.</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,40 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/reset_password.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<title>Reset Password</title>
</head>
<body onload="fadeIn()">
<div class="page">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
<h3 class="subheading">Forgot your password? No worries, it happens to the best of us!</h3>
</div>
<form class="login-form" id="resetPasswordForm">
<div class="login-form-title">
<h2 class="login-title">Reset Password</h2>
</div>
<div class="login-form-content">
<input name="email" placeholder="Email" type="email" required>
<input name="newPassword" placeholder="New Password" type="password" required>
</div>
<div class="login-form-footer">
<button id="backToLogin" name="underline" type="button">Back to Login</button>
<button id="resetPassword" name="submit" type="submit">Reset Password</button>
</div>
</form>
</div>
</div>
<script src="../js/reset_password.js"></script>
<script src="../js/helpers.js"></script>
</body>
</html>
@@ -0,0 +1,30 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/loading.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<title>Sending Announcement</title>
</head>
<body onload="fadeIn()">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
</div>
<img src="../assets/mail_2772213.png" alt="Sending announcement" class="announcement-img">
<div class="loading-section">
<div class="spinner"></div>
<p>Sending announcement to all users. Please wait...</p>
</div>
</div>
</body>
</html>
@@ -0,0 +1,45 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/share_file.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/share_file.js"></script>
<script src="../js/helpers.js"></script>
<title>Share File</title>
</head>
<body onload="fetchUsersAndCreateCheckboxes(); updateFileName(); fadeIn()">
<div class="page">
<div class="container">
<div class="form">
<div class="header">
<h1 class="title">Share a File</h1>
<h3 class="subheading">First select the file you want to share.</h3>
<button class="filename-title" id="selectFile" name="submit" type="button">Select</button>
<form class="users_block" id="userDestForm">
<h5>Users</h5>
<h3 class="subheading">Select the users you want to share the file with.</h3>
<div id="choose_user_form_content" class="choose_user_form_content">
<!-- Insert the users from the database -->
</div>
</form>
</div>
<div class="footer">
<button id="backButton" name="underline" type="button">Back</button>
<button id="submitButton" name="submit" type="submit">Submit</button>
</div>
</div>
</div>
</div>
</body>
</html>
@@ -0,0 +1,30 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<link href="../css/loading.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<title>UC Not Found</title>
</head>
<body onload="fadeIn()">
<div class="container">
<div class="header">
<h1 class="title">TeamVault</h1>
</div>
<img src="../assets/cloud-computing.webp" alt="Connecting to server" class="server-img">
<div class="loading-section">
<div class="spinner"></div>
<p>Please wait while we try to connect to the server.</p>
</div>
</div>
</body>
</html>
+29
View File
@@ -0,0 +1,29 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<link href="../assets/hard-disk.ico" rel="icon" type="image/x-icon">
<link href="../css/normalizer.css" rel="stylesheet">
<!-- Reuse the same CSS files as UC Not Found -->
<link href="../css/loading.css" rel="stylesheet">
<link href="../css/transition.css" rel="stylesheet">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Pridi:wght@200;300;400;500;600;700&display=swap" rel="stylesheet">
<script src="../js/helpers.js"></script>
<title>Welcome</title>
</head>
<body onload="fadeIn()">
<div class="container">
<div class="header">
<h1 class="title">Welcome to TeamVault</h1>
</div>
<div class="loading-section">
<div class="spinner"></div>
<p>Initializing the application, please wait...</p>
</div>
</div>
</body>
</html>