OXIESEC PANEL
- Current Dir:
/
/
var
/
www
/
cream
/
groupchat
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
06/17/2025 10:17:24 AM
rwxrwxr-x
📄
b_group.php
13.6 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
b_index.php
25.61 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
back_create_group.php
9.22 KB
05/19/2025 10:07:13 AM
rw-r--r--
📁
backup
-
05/19/2025 10:07:13 AM
rwxrwxr-x
📄
broadcast.php
22.48 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
create_broadcast.php
19.39 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
create_group.php
18.06 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📁
dump
-
05/19/2025 10:07:13 AM
rwxrwxr-x
📄
group.php
21.38 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📁
inc
-
05/19/2025 10:07:13 AM
rwxrwxr-x
📄
index.php
13.38 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
join_now.php
7.77 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📄
new2_index.php
17.63 KB
05/19/2025 10:07:13 AM
rw-r--r--
📄
new_index.php
17.11 KB
05/19/2025 10:07:13 AM
rw-r--r--
📄
sidebar.php
5.07 KB
05/19/2025 10:07:13 AM
rw-r--r--
📄
testing.php
3.32 KB
05/19/2025 10:07:13 AM
rw-rw-r--
📁
trash
-
05/19/2025 10:07:13 AM
rwxrwxr-x
📄
z_index.php
4.83 KB
05/19/2025 10:07:13 AM
rw-r--r--
Editing: create_group.php
Close
<?php include '../assets/php/validate.logged.php'; include '../assets/php/function.php'; include '../inc/config.php'; include 'inc/db_connect.php'; include 'inc/function.php'; if ($_SERVER["REQUEST_METHOD"] == "POST") { $group_name = $_POST['group_name']; $group_description = $_POST['group_description']; $owner_id = $gUserId; // Assuming you get this from the session or user input $group_image = $_POST['group_image']; // Assuming you get this from user input $group_membersId = $_POST['selected_members']; $group_membersId = convertStringToArray($group_membersId); create_group($conn, $group_name, $group_description, $owner_id, $group_membersId, $group_image); echo '<script>alert("Group Created Successfully...");setTimeout(function() { window.location.href = "index.php"; }, 100);</script>'; exit; } ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>Create Group • Knobly Cream</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <!-- jQuery and Bootstrap --> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" /> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css"> <!-- Custom Styles --> <link rel="stylesheet" href="../inc/fontawesome/css/all.min.css" /> <link rel="stylesheet" href="../inc/style.css" /> <link rel="stylesheet" href="../assets/css/styles.css" /> <link rel="stylesheet" href="inc/style.css"> <link rel="icon" type="image/x-icon" href="/img/logo.ico"> <script src="inc/script.js"></script> <script src="../inc/jquery.magnific-popup.min.js"></script> <script src="../inc/common.js"></script> <script src="../inc/genai_func.js"></script> <style> /* Global Styles */ body { background-color: #000000; /* Dark background */ color: #e5e5e5; font-family: 'Arial', sans-serif; margin: 0; } .create-chat-card { color: white !important; } .selected-options { max-width: 553px; } a { text-decoration: none; } .btn-danger:hover { background-color: #333333 !important; } .btn-danger.focus, .btn-danger:focus { color: #fff; background-color: #121212 !important; border-color: #121212 !important; box-shadow: 0 0 0 .2rem rgba(225, 83, 97, .5); } .btn-danger:hover { color: #fff; background-color: #c82333; border-color: #bd2130; } .list-group-item { background-color: transparent !important; padding: 10px !important; border: none !important; display: flex; align-items: center; gap: 15px; transition: background-color 0.3s ease; border-radius: 10px; } .list-group-item { position: relative; display: block; padding: .75rem 1.25rem; background-color: transparent !important; border: 1px solid rgba(0, 0, 0, .125); } .sidebar { width: 25%; background-color: #1c1c1c; border-radius: 10px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); overflow-y: auto; padding: 10px; padding-top: 15px; } .btn-danger { background-color: #121212 !important; border: none; color: white; font-size: 16px; padding: 10px 20px; border-radius: 30px; display: flex; align-items: center; gap: 10px; cursor: pointer; transition: background-color 0.3s ease; } .content { margin-left: 26%; flex-grow: 1; background-color: #1c1c1c; border-radius: 10px; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); padding: 20px; } .btn-danger { background-color: #25d366; border: none; color: white; font-size: 16px; padding: 10px 20px; border-radius: 30px; display: flex; align-items: center; gap: 10px; cursor: pointer; transition: background-color 0.3s ease; } .btn-danger:hover { background-color: #128c7e; } /* Chat List */ .list-group-item { background-color: #333333; padding: 15px; border: none; display: flex; align-items: center; gap: 15px; transition: background-color 0.3s ease; border-radius: 10px; } .list-group-item:hover { background-color: #444444; } .list-group-item .avatar { width: 45px; height: 45px; border-radius: 50%; overflow: hidden; background-color: #555; } .list-group-item .avatar img { width: 100%; height: 100%; object-fit: cover; } .list-group-item .info { flex-grow: 1; } .list-group-item .name { font-weight: bold; color: #e5e5e5; } .list-group-item .timestamp { font-size: 12px; color: #888; } /* Create Group and Broadcast Card */ .create-chat-card, .create-broadcast-card { background-color: #1c1c1c; padding: 20px; border-radius: 10px; display: none; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); } .create-chat-card input, .create-broadcast-card input { width: 100%; padding: 10px; border-radius: 10px; margin-bottom: 10px; border: 1px solid #444444; background-color: #333333; color: #e5e5e5; } .scrollable-list { max-height: 350px; overflow-y: auto; margin-bottom: 20px; } .scrollable-list-item { background-color: #333333; margin-bottom: 10px; padding: 10px; border-radius: 8px; transition: background-color 0.3s ease; } .scrollable-list-item:hover { background-color: #444444; } .scrollable-list { width: 100%; max-height: 350px; overflow-y: auto; margin-bottom: 20px; } /* Responsive Layout */ @media (max-width: 768px) { .sidebar { /* width: 100%; */ margin-bottom: 20px; } } form { max-width: 600px; background-color: #0c0b0b; padding: 20px; border-radius: 8px; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); } </style> </head> <body> <? include "../assets/php/navbar.php"; ?> <div class="container"> <!-- Sidebar --> <? include "sidebar.php"; ?> <!-- Content Area --> <div class="content"> <div class="create-chat-card" id="create-group-form-container" style="display: block;"> <h4 class="text-white">Create a Group</h4> <form id="create-group-form" method="post" action=""> <label for="group_name">Group Name:</label><br> <input type="text" id="group_name" name="group_name" required><br><br> <label for="group_description">Group Description:</label><br> <textarea id="group_description" name="group_description" required></textarea><br><br> <label for="members_list">Add Members:</label><br> <input type="text" id="search-input" placeholder="Search by name..."> <div class="scrollable-list"> <? $members = display_all_members($conn); foreach ($members as $member) { ?> <div class="scrollable-list-item"> <a href="#" class="member-link" data-user_id="<?= htmlspecialchars($member['user_id']) ?>" data-user_name="<?= htmlspecialchars($member['user_name']) ?>"><?= htmlspecialchars($member['user_name']) ?>, <?= htmlspecialchars($member['user_email']) ?></a> </div> <? } ?> </div> <br> <div class="selected-options"> <h3>Selected Members:</h3> <div id="selected-members-info"> <p>No members selected.</p> </div> <input type="hidden" name="selected_members" id="selected-members-hidden" value=""> </div> <br> <!-- <label for="group_image">Group Image URL:</label><br> <input type="text" id="group_image" name="group_image"><br><br> --> <label for="group_image">Group Image URL:</label><br> <input type="text" id="group_image" name="group_image" oninput="previewImage('group')"><br><br> <img id="imagePreview" alt="Image Preview"> <input type="submit" value="Create Group"> </form> </div> </div> </div> <? include '../assets/php/bottom_navbar.php'?> </body> <script> $(document).ready(function() { $('.group-item .group-link').contextmenu(function(e) { // Prevent default right-click context menu e.preventDefault(); // Hide any previous context menus $('.context-menu').hide(); // Show context menu at mouse position var contextMenu = $('#group-context-menu'); contextMenu.css({ display: 'block', left: e.pageX, top: e.pageY }); // Store the group item ID contextMenu.data('group-id', $(this).parent().attr('id')); }); $('.broadcast-item .broadcast-link').contextmenu(function(e) { // Prevent default right-click context menu e.preventDefault(); // Hide any previous context menus $('.context-menu').hide(); // Show context menu at mouse position var contextMenu = $('#broadcast-context-menu'); contextMenu.css({ display: 'block', left: e.pageX, top: e.pageY }); // Store the group item ID contextMenu.data('broadcast-id', $(this).parent().attr('id')); }); // Click handler for context menu items $('#group-context-menu').on('click', '.delete-group', function(e) { e.preventDefault(); // Prevent the default link behavior var groupId = $('#group-context-menu').data('group-id').replace('group_', ''); deleteGroup('group', groupId); }); $('#group-context-menu').on('click', '.exit-group', function(e) { e.preventDefault(); // Prevent the default link behavior var userid = <?= $gUserId ?>; var groupId = $('#group-context-menu').data('group-id').replace('group_', ''); exitgroup('group', userid, groupId); }); $('#broadcast-context-menu').on('click', '.delete-broadcast', function(e) { e.preventDefault(); // Prevent the default link behavior var broadcastId = $('#broadcast-context-menu').data('broadcast-id').replace('broadcast_', ''); deleteGroup('broadcast', broadcastId); }); $('#broadcast-context-menu').on('click', '.exit-broadcast', function(e) { e.preventDefault(); // Prevent the default link behavior var userid = <?= $gUserId ?>; var groupId = $('#broadcast-context-menu').data('broadcast-id').replace('broadcast_', ''); exitgroup('broadcast', userid, groupId); }); // Click handler to hide context menu on document click $(document).on('click', function() { $('.context-menu').hide(); }); }); </script> <script> $(document).ready(function() { // Function to handle input change $('#search-input').on('input', function() { var searchText = $(this).val().trim().toLowerCase(); // Get input value and normalize // Iterate over each div with class scrollable-list-item $('div.scrollable-list-item').each(function() { var memberName = $(this).find('a.member-link').text().trim().toLowerCase(); // Get member name // Check if member name contains the search text if (memberName.includes(searchText)) { $(this).show(); // Show the div if it matches } else { $(this).hide(); // Hide the div if it does not match } }); }); // Click handler for member links $('.member-link').on('click', function(event) { event.preventDefault(); $(this).toggleClass('selected'); updateSelectedMembersInfo(); }); // Submit handler for create group form $('#create-group-form').on('submit', function(event) { var json_data = $('#selected-members-hidden').val(); event.preventDefault(); // Prevent default form submission // Submit the form programmatically this.submit(); // This refers to the form element }); // Click handler for selected members info (to remove selection) $('#selected-members-info').on('click', 'p', function(event) { event.preventDefault(); const selectedMember = $(this).text().trim(); $('.member-link').each(function() { if ($(this).data('user_name') === selectedMember) { $(this).removeClass('selected'); return false; // Exit the loop once found } }); updateSelectedMembersInfo(); // Update display and hidden input }); }); </script> <script> $(document).ready(function() { $('#group').addClass('active'); // Function to handle input change $('.scrollable-list').hide(); $('#search-input').on('input', function() { var searchText = $(this).val().trim().toLowerCase(); // Get input value and normalize if (searchText === '') { $('.scrollable-list').hide(); // Hide the div if search text is empty } else { $('.scrollable-list').show(); // Iterate over each div with class scrollable-list-item $('div.scrollable-list-item').each(function() { var memberName = $(this).find('a.member-link').text().trim().toLowerCase(); // Get member name // Check if member name contains the search text if (memberName.includes(searchText)) { $(this).show(); // Show the div if it matches } else { $(this).hide(); // Hide the div if it does not match } }); } }); // Click handler for member links $('.member-link').on('click', function(event) { event.preventDefault(); $(this).toggleClass('selected'); updateSelectedMembersInfo(); }); // Submit handler for create group form $('#create-group-form').on('submit', function(event) { var json_data = $('#selected-members-hidden').val(); event.preventDefault(); // Prevent default form submission // Submit the form programmatically this.submit(); // This refers to the form element }); // Click handler for selected members info (to remove selection) $('#selected-members-info').on('click', 'p', function(event) { event.preventDefault(); const selectedMember = $(this).text().trim(); $('.member-link').each(function() { if ($(this).data('user_name') === selectedMember) { $(this).removeClass('selected'); return false; // Exit the loop once found } }); updateSelectedMembersInfo(); // Update display and hidden input }); }); </script> </html>