December 16th,2025 V.9
This commit is contained in:
parent
17c88f822f
commit
4990fbd609
BIN
assets/pasted-20251217-030415-8770fac7.png
Normal file
BIN
assets/pasted-20251217-030415-8770fac7.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.3 MiB |
99
hr_cases.php
99
hr_cases.php
@ -46,16 +46,105 @@ $cases = [
|
|||||||
'severity' => 'low',
|
'severity' => 'low',
|
||||||
'department' => 'Sales',
|
'department' => 'Sales',
|
||||||
'assignedTo' => 'Michael Torres',
|
'assignedTo' => 'Michael Torres',
|
||||||
'assignedToRole' => 'Senior HR Manager',
|
'assignedToRole' => 'HR Coordinator',
|
||||||
'createdDate' => 'Dec 12, 2024',
|
'createdDate' => 'Dec 12, 2024',
|
||||||
'lastUpdate' => '4 hours ago',
|
'lastUpdate' => '4 hours ago',
|
||||||
'commentsCount' => 3,
|
'commentsCount' => 3,
|
||||||
'partiesInvolved' => 1,
|
'partiesInvolved' => 1,
|
||||||
'tags' => ['Benefits', 'Inquiry'],
|
'tags' => ['Benefits', 'Inquiry', 'Insurance'],
|
||||||
'checklist' => [],
|
'checklist' => [
|
||||||
'timeline' => [],
|
['item' => 'Received employee question', 'completed' => true],
|
||||||
'comments' => []
|
['item' => 'Forwarded to benefits provider', 'completed' => true],
|
||||||
|
['item' => 'Awaiting provider response', 'completed' => false]
|
||||||
|
],
|
||||||
|
'timeline' => [
|
||||||
|
['status' => 'Opened', 'details' => 'Employee submitted a question about health insurance coverage.', 'date' => 'Dec 12, 2024 9:00 AM', 'completed' => true]
|
||||||
|
],
|
||||||
|
'comments' => [
|
||||||
|
['author' => 'Michael Torres', 'role' => 'HR Coordinator', 'time' => '4 hours ago', 'comment' => 'I have forwarded the inquiry to our insurance provider. Should have an answer within 2 business days.']
|
||||||
|
]
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
'id' => 'HR-2024-1850',
|
||||||
|
'title' => 'FMLA Request - Medical Leave',
|
||||||
|
'status' => 'open',
|
||||||
|
'severity' => 'medium',
|
||||||
|
'department' => 'Marketing',
|
||||||
|
'assignedTo' => 'Jennifer Smith',
|
||||||
|
'assignedToRole' => 'Senior HR Manager',
|
||||||
|
'createdDate' => 'Dec 11, 2024',
|
||||||
|
'lastUpdate' => '1 day ago',
|
||||||
|
'commentsCount' => 2,
|
||||||
|
'partiesInvolved' => 1,
|
||||||
|
'tags' => ['FMLA', 'Leave', 'Medical'],
|
||||||
|
'checklist' => [
|
||||||
|
['item' => 'Received FMLA request form', 'completed' => true],
|
||||||
|
['item' => 'Verify employee eligibility', 'completed' => true],
|
||||||
|
['item' => 'Awaiting medical certification', 'completed' => false],
|
||||||
|
['item' => 'Notify manager of leave dates', 'completed' => false]
|
||||||
|
],
|
||||||
|
'timeline' => [
|
||||||
|
['status' => 'Request Received', 'details' => 'FMLA request form submitted by employee.', 'date' => 'Dec 11, 2024 11:00 AM', 'completed' => true],
|
||||||
|
['status' => 'Eligibility Verified', 'details' => 'Employee eligibility for FMLA confirmed.', 'date' => 'Dec 12, 2024 3:00 PM', 'completed' => true],
|
||||||
|
['status' => 'Pending Certification', 'details' => 'Awaiting required medical certification from healthcare provider.', 'date' => null, 'completed' => false]
|
||||||
|
],
|
||||||
|
'comments' => [
|
||||||
|
['author' => 'Jennifer Smith', 'role' => 'Senior HR Manager', 'time' => '1 day ago', 'comment' => 'Eligibility for FMLA has been confirmed. I have notified the employee that we are now waiting for the medical certification documents to proceed.']
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'id' => 'HR-2024-1851',
|
||||||
|
'title' => 'Onboarding Documentation',
|
||||||
|
'status' => 'closed',
|
||||||
|
'severity' => 'low',
|
||||||
|
'department' => 'General',
|
||||||
|
'assignedTo' => 'Michael Torres',
|
||||||
|
'assignedToRole' => 'HR Coordinator',
|
||||||
|
'createdDate' => 'Dec 9, 2024',
|
||||||
|
'lastUpdate' => '3 days ago',
|
||||||
|
'commentsCount' => 1,
|
||||||
|
'partiesInvolved' => 1,
|
||||||
|
'tags' => ['Onboarding', 'New Hire'],
|
||||||
|
'checklist' => [
|
||||||
|
['item' => 'Sent welcome packet', 'completed' => true],
|
||||||
|
['item' => 'Received signed offer letter', 'completed' => true],
|
||||||
|
['item' => 'Completed I-9 verification', 'completed' => true]
|
||||||
|
],
|
||||||
|
'timeline' => [
|
||||||
|
['status' => 'Offer Sent', 'details' => 'Job offer and welcome packet sent to new hire.', 'date' => 'Dec 5, 2024', 'completed' => true],
|
||||||
|
['status' => 'Documents Signed', 'details' => 'Received all signed onboarding documents.', 'date' => 'Dec 8, 2024', 'completed' => true],
|
||||||
|
['status' => 'Onboarding Complete', 'details' => 'All onboarding steps have been successfully completed.', 'date' => 'Dec 9, 2024', 'completed' => true]
|
||||||
|
],
|
||||||
|
'comments' => [
|
||||||
|
['author' => 'Michael Torres', 'role' => 'HR Coordinator', 'time' => '3 days ago', 'comment' => 'All onboarding paperwork for the new hire is complete and has been filed. Marking this case as closed.']
|
||||||
|
]
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'id' => 'HR-2024-1855',
|
||||||
|
'title' => 'Workplace Safety Concern',
|
||||||
|
'status' => 'in-review',
|
||||||
|
'severity' => 'high',
|
||||||
|
'department' => 'Facilities',
|
||||||
|
'assignedTo' => 'Jennifer Smith',
|
||||||
|
'assignedToRole' => 'Senior HR Manager',
|
||||||
|
'createdDate' => 'Dec 14, 2024',
|
||||||
|
'lastUpdate' => '6 hours ago',
|
||||||
|
'commentsCount' => 5,
|
||||||
|
'partiesInvolved' => 2,
|
||||||
|
'tags' => ['Safety', 'Facilities', 'Urgent'],
|
||||||
|
'checklist' => [
|
||||||
|
['item' => 'Anonymous report received', 'completed' => true],
|
||||||
|
['item' => 'Initial walkthrough completed', 'completed' => false],
|
||||||
|
['item' => 'Interviewed relevant staff', 'completed' => false]
|
||||||
|
],
|
||||||
|
'timeline' => [
|
||||||
|
['status' => 'Report Filed', 'details' => 'Anonymous safety concern regarding the warehouse was received.', 'date' => 'Dec 14, 2024 4:30 PM', 'completed' => true],
|
||||||
|
['status' => 'Investigation Started', 'details' => 'Opened an official investigation into the reported concern.', 'date' => 'Dec 15, 2024 9:00 AM', 'completed' => false]
|
||||||
|
],
|
||||||
|
'comments' => [
|
||||||
|
['author' => 'Jennifer Smith', 'role' => 'Senior HR Manager', 'time' => '6 hours ago', 'comment' => 'I have received the anonymous report and will be conducting an initial walkthrough of the facilities tomorrow morning to assess the situation. All further updates will be logged here.']
|
||||||
|
]
|
||||||
|
]
|
||||||
];
|
];
|
||||||
|
|
||||||
$cases_json = json_encode($cases);
|
$cases_json = json_encode($cases);
|
||||||
|
|||||||
128
onboarding.php
128
onboarding.php
@ -5,6 +5,34 @@ if (!isset($_SESSION['user_id'])) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
require_once 'db/config.php';
|
require_once 'db/config.php';
|
||||||
|
|
||||||
|
// Template data from the React snippet
|
||||||
|
$templateTasks = [
|
||||||
|
['name' => "Setup Development Environment", 'status' => "in-progress", 'category' => "IT"],
|
||||||
|
['name' => "Complete HR Documentation", 'status' => "completed", 'category' => "HR"],
|
||||||
|
['name' => "Benefits Enrollment", 'status' => "completed", 'category' => "HR"],
|
||||||
|
['name' => "Team Introduction Meeting", 'status' => "pending", 'category' => "Manager"],
|
||||||
|
['name' => "Assign First Project", 'status' => "pending", 'category' => "Manager"],
|
||||||
|
['name' => "Security Training", 'status' => "pending", 'category' => "IT"],
|
||||||
|
['name' => "Code Review Process Training", 'status' => "pending", 'category' => "Manager"],
|
||||||
|
['name' => "Setup Communication Tools", 'status' => "completed", 'category' => "IT"],
|
||||||
|
];
|
||||||
|
|
||||||
|
$completedTasks = count(array_filter($templateTasks, function($t) { return $t['status'] === "completed"; }));
|
||||||
|
$progressPercent = ($completedTasks / count($templateTasks)) * 100;
|
||||||
|
|
||||||
|
$status_map = [
|
||||||
|
'completed' => ['icon' => 'check-circle-2', 'color' => 'text-green-500', 'bg' => 'bg-green-100'],
|
||||||
|
'in-progress' => ['icon' => 'clock', 'color' => 'text-blue-500', 'bg' => 'bg-blue-100'],
|
||||||
|
'pending' => ['icon' => 'file-text', 'color' => 'text-gray-500', 'bg' => 'bg-gray-100']
|
||||||
|
];
|
||||||
|
|
||||||
|
$category_map = [
|
||||||
|
'IT' => 'text-red-500',
|
||||||
|
'HR' => 'text-blue-500',
|
||||||
|
'Manager' => 'text-purple-500',
|
||||||
|
];
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
@ -13,17 +41,107 @@ require_once 'db/config.php';
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<title>Onboarding - FinMox</title>
|
<title>Onboarding - FinMox</title>
|
||||||
<script src="https://cdn.tailwindcss.com"></script>
|
<script src="https://cdn.tailwindcss.com"></script>
|
||||||
|
<script src="https://unpkg.com/lucide@latest"></script>
|
||||||
</head>
|
</head>
|
||||||
<body class="bg-gray-100">
|
<body class="bg-gray-100">
|
||||||
<div class="flex h-screen bg-gray-200">
|
<div class="flex h-screen bg-gray-200">
|
||||||
<?php include '_sidebar.php'; ?>
|
<?php include '_sidebar.php'; ?>
|
||||||
|
|
||||||
<!-- Main content -->
|
<main class="flex-1 flex overflow-hidden">
|
||||||
<main class="flex-1 overflow-x-hidden overflow-y-auto bg-[#fafafa]">
|
<div class="flex-1 overflow-y-auto bg-[#fafafa] p-8">
|
||||||
<div class="max-w-7xl mx-auto px-4 sm:px-6 md:px-8 py-8">
|
<h1 class="text-3xl font-bold text-gray-900 mb-8">Onboarding Plan for Sarah Kim</h1>
|
||||||
<h1 class="text-3xl font-bold text-gray-900">Onboarding</h1>
|
|
||||||
|
<div class="grid grid-cols-1 lg:grid-cols-3 gap-8">
|
||||||
|
|
||||||
|
<!-- Main Content -->
|
||||||
|
<div class="lg:col-span-2 space-y-8">
|
||||||
|
<!-- Welcome Card -->
|
||||||
|
<div class="bg-white p-6 rounded-2xl shadow-sm border border-gray-200">
|
||||||
|
<h3 class="text-xl font-semibold mb-4">Welcome to the Team, Sarah!</h3>
|
||||||
|
<p class="text-gray-600">We're thrilled to have you on board. This onboarding plan is designed to help you get up to speed quickly and smoothly. Please review the checklist and let your manager know if you have any questions.</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Sidebar -->
|
||||||
|
<div class="w-full space-y-6">
|
||||||
|
<!-- Employee Info -->
|
||||||
|
<div class="bg-white rounded-2xl shadow-sm border border-gray-200">
|
||||||
|
<div class="p-6 space-y-4">
|
||||||
|
<h3 class="flex items-center gap-2 font-semibold">
|
||||||
|
<i data-lucide="user" class="w-5 h-5 text-[#3A66FF]"></i>
|
||||||
|
Employee Information
|
||||||
|
</h3>
|
||||||
|
<div class="flex items-center gap-3 pt-2">
|
||||||
|
<img class="w-16 h-16 rounded-full" src="https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=400&h=400&fit=crop" alt="Sarah Kim">
|
||||||
|
<div>
|
||||||
|
<p class="font-semibold">Sarah Kim</p>
|
||||||
|
<p class="text-sm text-gray-500">New Hire</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="pt-4 border-t border-gray-200 space-y-3 text-sm">
|
||||||
|
<div class="flex items-center gap-3">
|
||||||
|
<i data-lucide="briefcase" class="w-4 h-4 text-gray-500"></i>
|
||||||
|
<div>
|
||||||
|
<p class="text-gray-500">Position</p>
|
||||||
|
<p class="font-medium">Senior Full-Stack Engineer</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex items-center gap-3">
|
||||||
|
<i data-lucide="mail" class="w-4 h-4 text-gray-500"></i>
|
||||||
|
<div>
|
||||||
|
<p class="text-gray-500">Email</p>
|
||||||
|
<p class="font-medium">sarah.kim@finmox.com</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex items-center gap-3">
|
||||||
|
<i data-lucide="calendar" class="w-4 h-4 text-gray-500"></i>
|
||||||
|
<div>
|
||||||
|
<p class="text-gray-500">Start Date</p>
|
||||||
|
<p class="font-medium">December 17, 2025</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Onboarding Checklist -->
|
||||||
|
<div class="bg-white rounded-2xl shadow-sm border border-gray-200">
|
||||||
|
<div class="p-6">
|
||||||
|
<h3 class="flex items-center gap-2 font-semibold">
|
||||||
|
<i data-lucide="layers" class="w-5 h-5 text-[#3A66FF]"></i>
|
||||||
|
Onboarding Checklist
|
||||||
|
</h3>
|
||||||
|
<div class="mt-4">
|
||||||
|
<div class="flex justify-between items-center mb-2">
|
||||||
|
<span class="text-sm font-medium text-gray-700">Progress</span>
|
||||||
|
<span class="text-sm font-medium text-gray-700"><?= number_format($progressPercent, 0) ?>%</span>
|
||||||
|
</div>
|
||||||
|
<div class="w-full bg-gray-200 rounded-full h-2.5">
|
||||||
|
<div class="bg-[#3A66FF] h-2.5 rounded-full" style="width: <?= $progressPercent ?>%"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="mt-6 space-y-4">
|
||||||
|
<?php foreach ($templateTasks as $task): ?>
|
||||||
|
<div class="flex items-start gap-3">
|
||||||
|
<div class="flex-shrink-0 w-6 h-6 rounded-full <?= $status_map[$task['status']]['bg'] ?> flex items-center justify-center mt-1">
|
||||||
|
<i data-lucide="<?= $status_map[$task['status']]['icon'] ?>" class="w-4 h-4 <?= $status_map[$task['status']]['color'] ?>"></i>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<p class="font-medium"><?= htmlspecialchars($task['name']) ?></p>
|
||||||
|
<span class="text-xs font-semibold px-2 py-0.5 rounded-full <?= $category_map[$task['category']] ?? 'text-gray-500' ?> bg-gray-100 border"><?= htmlspecialchars($task['category']) ?></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endforeach; ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
|
<script>
|
||||||
|
lucide.createIcons();
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
Loading…
x
Reference in New Issue
Block a user