uawdijnntqw1x1x1
IP : 216.73.216.153
Hostname : 6.87.74.97.host.secureserver.net
Kernel : Linux 6.87.74.97.host.secureserver.net 4.18.0-553.83.1.el8_10.x86_64 #1 SMP Mon Nov 10 04:22:44 EST 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
emeraadmin
/
.caldav
/
..
/
www
/
8aabc
/
..
/
node_modules
/
..
/
4d695
/
viewusers2.php.tar
/
/
home/emeraadmin/public_html/pages/emeraadmin/viewusers2.php000064400000061046151677421450020153 0ustar00<?php include('head.php'); require_once '../../Service/UserService.php'; require_once '../../Classes/System.php'; $System = new System(); $userService = new UserService(); $users = $userService->getAllUsers(); ?> <div class="main-content"> <div class="container-fluid"> <div class="page-header"> <div class="row align-items-end"> <div class="col-lg-8"> <div class="page-header-title"> <i class="ik ik-layers bg-blue"></i> <div class="d-inline"> <h5>View Users</h5> <span>View all users</span> </div> </div> </div> <div class="col-lg-4"> <nav class="breadcrumb-container" aria-label="breadcrumb"> <ol class="breadcrumb"> <li class="breadcrumb-item"> <a href="../../index.html"><i class="ik ik-home"></i></a> </li> <li class="breadcrumb-item"> <a href="#">Users</a> </li> <li class="breadcrumb-item active" aria-current="page">View Users</li> </ol> </nav> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="card"> <div class="card-header"> <button type="button" class="btn btn-primary" data-toggle="modal" data-target="#addUserModal"> <i class="ik ik-plus"></i> Add User </button> </div> </div> </div> </div> <!-- Add User Modal --> <div class="modal fade" id="addUserModal" tabindex="-1" role="dialog" aria-labelledby="addUserModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="addUserModalLabel">Add New User</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <form id="addUserForm"> <div class="form-group"> <label for="first_name">First Name:</label> <input type="text" class="form-control" id="first_name" name="first_name" required> </div> <div class="form-group"> <label for="last_name">Last Name:</label> <input type="text" class="form-control" id="last_name" name="last_name" required> </div> <div class="form-group"> <label for="email">Email:</label> <input type="email" class="form-control" id="email" name="email" required> </div> <div class="form-group"> <label for="phone">Phone:</label> <input type="text" class="form-control" id="phone" name="phone"> </div> <div class="form-group"> <label for="password">Password:</label> <input type="password" class="form-control" id="password" name="password" required> </div> <div class="form-group"> <label for="confirm_password">Confirm Password:</label> <input type="password" class="form-control" id="confirm_password" name="confirm_password" required> </div> <div class="form-group"> <label for="role">Role:</label> <select class="form-control" id="role" name="role" required> <option value="emera_admin">Emera Admin</option> <option value="subcontractor">Sub Contractor</option> <option value="task_provider">Task Provider</option> </select> </div> </form> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> <button type="button" class="btn btn-primary" onclick="addUser()">Add User</button> </div> </div> </div> </div> <!-- Include this in your HTML file for the new edit modal --> <div class="modal fade" id="editUserModal2" tabindex="-1" role="dialog" aria-labelledby="editUserModal2Label" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="editUserModal2Label">Edit User</h5> <button type="button" class="close" aria-label="Close" onclick="closeModal('editUserModal2')"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <form id="editUserForm2"> <input type="hidden" id="edit_user_id" name="id"> <div class="form-group"> <label for="edit_first_name">First Name:</label> <input type="text" class="form-control" id="edit_first_name" name="first_name" required> </div> <div class="form-group"> <label for="edit_last_name">Last Name:</label> <input type="text" class="form-control" id="edit_last_name" name="last_name" required> </div> <div class="form-group"> <label for="edit_email">Email:</label> <input type="email" class="form-control" id="edit_email" name="email" required> </div> <div class="form-group"> <label for="edit_phone">Phone:</label> <input type="text" class="form-control" id="edit_phone" name="phone"> </div> <div class="form-group"> <label for="edit_role">Role:</label> <select class="form-control" id="edit_role" name="role" required> <option value="emera_admin">Emera Admin</option> <option value="subcontractor">Sub Contractor</option> <option value="task_provider">Task Provider</option> </select> </div> </form> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" onclick="closeModal('editUserModal2')">Close</button> <button type="button" class="btn btn-primary" onclick="updateUser()">Update User</button> </div> </div> </div> </div> <!-- update password--> <div class="modal fade" id="resetPasswordModal" tabindex="-1" role="dialog" aria-labelledby="resetPasswordModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="resetPasswordModalLabel">Reset Password</h5> <button type="button" class="close" aria-label="Close" onclick="closeModal('resetPasswordModal')"> <span aria-hidden="true">×</span> </button> </div> <div class="modal-body"> <form id="reset-password"> <input name="user_id" type="hidden"> <div class="form-group"> <label for="new-password">New Password:</label> <input type="password" class="form-control" name="new-password" required> </div> <div class="form-group"> <label for="confirm-password">Confirm Password:</label> <input type="password" class="form-control" name="confirm-password" required> </div> <div class="sign-btn text-center"> <button class="btn btn-theme" type="button" onclick="updatePassword()">Update Password</button> </div> <div id="reset-password-error" class="alert alert-danger d-none mt-3"></div> <div id="reset-password-success" class="alert alert-success d-none mt-3"></div> </form> </div> </div> </div> </div> <div class="row"> <div class="col-md-12"> <div class="card"> <div class="card-body"> <div class="row mb-3"> <div class="col-md-3"> <label for="filter_name" class="form-label">Filter by Name:</label> <input type="text" class="form-control" id="filter_name"> </div> <div class="col-md-3"> <label for="filter_email" class="form-label">Filter by Email:</label> <input type="text" class="form-control" id="filter_email"> </div> <div class="col-md-3"> <label for="filter_role" class="form-label">Filter by Role:</label> <select class="form-control" id="filter_role"> <option value="">All Roles</option> <option value="emera_admin">Emera Admin</option> <option value="subcontractor">Sub Contractor</option> <option value="task_provider">Task Provider</option> </select> </div> <div class="col-md-3"> <label for="filter_status" class="form-label">Filter by Status:</label> <select class="form-control" id="filter_status"> <option value="">All Statuses</option> <option value="active.">Active</option> <option value="inactive">Inactive</option> </select> </div> </div> <table class="table" id="super_advanced_table"> <thead> <tr> <th>ID</th> <th>Name</th> <th>Email</th> <th>Phone</th> <th>Role</th> <th>Status</th> <th>Actions</th> </tr> </thead> <tbody> <?php foreach ($users as $user): ?> <tr> <td><?php echo 'U-000'.$user->id; ?></td> <td><?php echo $user->first_name . ' ' . $user->last_name; ?></td> <td><?php echo $user->email; ?></td> <td><?php echo $user->phone; ?></td> <td><?php echo '<span class="badge badge-'.($user->role === 'emera_admin' ? 'warning' : 'success') .'">'.ucfirst($user->role).'</span>'; ?></td> <td><?php echo '<span class="badge badge-'.($user->status === 'active' ? 'success' : 'danger').'">'.($user->status === 'active' ? 'Active.' : 'Inactive').'</span>'; ?></td> <td> <button type="button" class="btn btn-primary btn-sm" onclick="editUser(<?php echo $user->id; ?>)">Edit</button> <button type="button" class="btn btn-info btn-sm" onclick="editPassword(<?php echo $user->id; ?>)">Reset Password</button> <?php if ($user->status === 'active'): ?> <button type="button" class="btn btn-warning btn-sm" onclick="deActivateUser(<?php echo $user->id; ?>)">Deactivate</button> <?php else: ?> <button type="button" class="btn btn-success btn-sm" onclick="activateUser(<?php echo $user->id; ?>)">Activate</button> <?php endif; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> </div> </div> </div> <script> $(document).ready(function () { var table = $('#super_advanced_table').DataTable({ // Configure initial settings if needed }); // Example filter for Name $('#filter_name').on('keyup', function () { table.column(1).search($(this).val()).draw(); }); // Example filter for Email $('#filter_email').on('keyup', function () { table.column(2).search($(this).val()).draw(); }); // Example filter for Role $('#filter_role').on('change', function () { var role = $(this).val(); table.column(4).search(role).draw(); }); // Example filter for Status $('#filter_status').on('change', function () { var status = $(this).val(); table.column(5).search(status).draw(); }); }); </script> </div> </div> </div> <?php include('footer.php'); ?> <!-- Include SweetAlert2 --> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> <script> function addUser() { const addUserForm = document.getElementById('addUserForm'); const formData = new FormData(addUserForm); // validate password const password = formData.get('password'); const confirmPassword = formData.get('confirm_password'); if (password !== confirmPassword) { Swal.fire('Error', 'Passwords do not match.', 'error'); return; } formData.append('action', 'addUser'); fetch('user_operations.php', { method: 'POST', body: formData }) .then(response => response.json()) .then(data => { if (data.status === 'success') { Swal.fire('Success', 'User added successfully!', 'success').then(() => { document.getElementById('addUserModal').classList.remove('show'); document.getElementById('addUserModal').style.display = 'none'; location.reload(); }); } else { Swal.fire('Error', data.message, 'error'); } }) .catch(error => { Swal.fire('Error', 'There was an error adding the user.', 'error'); console.error('Error:', error); }); } // Function to open the modal function openModal(modalId) { const modal = document.getElementById(modalId); modal.classList.add('show'); modal.style.display = 'block'; modal.removeAttribute('aria-hidden'); modal.setAttribute('aria-modal', 'true'); // Add backdrop manually const backdrop = document.createElement('div'); backdrop.className = 'modal-backdrop fade show'; backdrop.id = 'backdrop'; document.body.appendChild(backdrop); } // Function to close the modal function closeModal(modalId) { const modal = document.getElementById(modalId); modal.classList.remove('show'); modal.style.display = 'none'; modal.setAttribute('aria-hidden', 'true'); modal.removeAttribute('aria-modal'); // Remove the backdrop manually const backdrop = document.getElementById('backdrop'); if (backdrop) { backdrop.remove(); } } // Function to edit user function editUser(userId) { fetch(`user_operations.php?id=${userId}`) .then(response => response.json()) .then(data => { console.log('Server response:', data); // Log the response for debugging const editUserForm = document.getElementById('editUserForm2'); editUserForm.querySelector('#edit_user_id').value = data.id; editUserForm.querySelector('#edit_first_name').value = data.first_name; editUserForm.querySelector('#edit_last_name').value = data.last_name; editUserForm.querySelector('#edit_email').value = data.email; editUserForm.querySelector('#edit_phone').value = data.phone; editUserForm.querySelector('#edit_role').value = data.role; // Show the modal openModal('editUserModal2'); }) .catch(error => { Swal.fire('Error', 'There was an error fetching user data.', 'error'); console.error('Error fetching user data:', error); }); } // Function to update user function updateUser() { const editUserForm = document.getElementById('editUserForm2'); const formData = new FormData(editUserForm); formData.append('action', 'updateUser'); fetch('user_operations.php', { method: 'POST', body: formData }) .then(response => response.json()) .then(data => { if (data.status === 'success') { Swal.fire('Success', 'User updated successfully!', 'success').then(() => { closeModal('editUserModal2'); location.reload(); }); } else { Swal.fire('Error', data.message, 'error'); } }) .catch(error => { Swal.fire('Error', 'There was an error updating the user.', 'error'); console.error('Error:', error); }); } function activateUser(userId) { Swal.fire({ title: 'Are you sure?', text: "You want to activate this user?", icon: 'warning', showCancelButton: true, confirmButtonText: 'Yes, activate!', cancelButtonText: 'Cancel' }).then((result) => { fetch(`user_operations.php?id=${userId}`, { method: 'DELETE' }) .then(response => response.json()) .then(data => { console.log('Server response:', data); // Log the response for debugging if (data.status === 'success') { Swal.fire('Deleted!', 'User has been activated.', 'success').then(() => { location.reload(); }); } }) .catch(error => { Swal.fire('Error', 'There was an error activating the user.', 'error'); console.error('Error:', error); }); }); } function deActivateUser(userId) { Swal.fire({ title: 'Are you sure?', text: "You want to deactivate this user?", icon: 'warning', showCancelButton: true, confirmButtonText: 'Yes, deactivate!', cancelButtonText: 'Cancel' }).then((result) => { console.log('Result:', result); if (result.isConfirmed) { fetch(`user_operations.php?id=${userId}`, { method: 'DELETE' }) .then(response => response.json()) .then(data => { console.log('Server response:', data); // Log the response for debugging if (data.status === 'success') { Swal.fire('Deactivated!', 'User has been deactivated.', 'success').then(() => { location.reload(); }); } }) .catch(error => { Swal.fire('Error', 'There was an error deactivating the user.', 'error'); console.error('Error:', error); }); } }); } //edit password button function editPassword(userId) { const resetPasswordForm = document.getElementById('reset-password'); resetPasswordForm.querySelector('input[name="user_id"]').value = userId; openModal('resetPasswordModal'); } // Function to update password function updatePassword() { const resetPasswordForm = document.getElementById('reset-password'); const formData = new FormData(resetPasswordForm); const newPassword = formData.get('new-password'); const confirmPassword = formData.get('confirm-password'); if (newPassword !== confirmPassword) { Swal.fire('Error', 'Passwords do not match.', 'error'); return; } formData.append('action', 'updatePassword'); fetch('user_operations.php', { method: 'POST', body: formData }) .then(response => response.json()) .then(data => { if (data.status === 'success') { Swal.fire('Success', 'Password updated successfully!', 'success').then(() => { closeModal('resetPasswordModal'); }).then(() => { location.reload(); }); } else { Swal.fire('Error', data.message, 'error'); } }) .catch(error => { Swal.fire('Error', 'There was an error updating the password.', 'error'); console.error('Error:', error); }); } </script>
/home/emeraadmin/.caldav/../www/8aabc/../node_modules/../4d695/viewusers2.php.tar