$active_page = NULL;
+
foreach ($pages as $name => $page)
{
$script = $_SERVER['SCRIPT_FILENAME'];
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<?php echo $name; ?>
</a>
- <div class="dropdown-menu" aria-labelledby="navbarDropdown">
- <?php foreach($page as $k => $p)
- {
- ?>
- <a class="dropdown-item" href="<?php echo BASE_URL.$p;?>"><?php echo $k; ?></a>
- <?php
- } ?>
- </div>
- </li>
- <?php
-
+ <div class="dropdown-menu" aria-labelledby="navbarDropdown">
+ <?php foreach($page as $k => $p)
+ {
+ ?>
+ <a class="dropdown-item" href="<?php echo BASE_URL.$p;?>"><?php echo $k; ?></a>
+ <?php
+ } ?>
+ </div>
+ </li>
+ <?php
}
}
session_set_cookie_params(3600);
session_start();
}
- do_log($_SESSION);
if (!isset($_SESSION['id']) || empty($_SESSION))
{
$secure = ($_SERVER['HTTPS'] == 'on') ? "https://" : "http://";
$columns = $conn->query("SHOW COLUMNS FROM " . SQL_PREFIX . "users");
$column_names = array();
$c = $columns->fetchAll();
+
foreach($c as $column) {
$column_names[] = $column['Field'];
}
$conn->query("ALTER TABLE " . SQL_PREFIX . "users ADD COLUMN user_email varchar(255)");
}
+ /**
+ * Another patch for beta users
+ * This changes the size of the meta_value so we can store more
+ */
+ $columns = $conn->query("SHOW COLUMNS FROM ".SQL_PREFIX."user_meta");
+ $c = $columns->fetchAll();
+ if (!empty($c))
+ $conn->query("ALTER TABLE `".SQL_PREFIX."user_meta` CHANGE `meta_value` `meta_value` VARCHAR(5000) CHARACTER SET utf8mb3 COLLATE utf8mb3_bin NULL DEFAULT NULL");
+
$conn->query("CREATE TABLE IF NOT EXISTS " . SQL_PREFIX . "user_meta (
meta_id int AUTO_INCREMENT NOT NULL,
public static function get_usermeta(&$u)
{
- //do_log($u);
$list = &$u['meta'];
$id = $u['id'];
$conn = sqlnew();
require_once "../common.php";
require_once "../header.php";
-do_log($_POST, $_GET, $_FILES);
+
$us = unreal_get_current_user();
$id = (isset($_GET['id'])) ? $_GET['id'] : $us->id;
$edit_user = new PanelUser(NULL, $id);
-$can_edit = (user_can($us, PERMISSION_MANAGE_USERS) || $edit_user->id == $us->id) ? "" : "disabled";
+$canedit = (user_can($us, PERMISSION_MANAGE_USERS) || $edit_user->id == $us->id) ? true : false;
+$can_edit = ($canedit) ? "" : "disabled";
+
+$permissions = (isset($_POST['permissions'])) ? $_POST['permissions'] : false;
+$edit_perms = (isset($edit_user->user_meta['permissions'])) ? unserialize($edit_user->user_meta['permissions']) : [];
+/* Check if they can edit their permissions and if the permissions have indeed been changed */
+if (is_array($permissions) && $canedit
+ && $permissions != $edit_perms)
+{
+ foreach ($permissions as $p)
+ if (!in_array($p, $edit_perms))
+ $edit_user->add_permission($p);
+
+ foreach($edit_perms as $p)
+ if (!in_array($p, $permissions))
+ $edit_user->delete_permission($p);
+}
+
?>
<h4>Edit User: "<?php echo $edit_user->username; ?>"</h4>
<div class="input-group mb-3">
<div class="input-group-prepend">
<span class="input-group-text" style="width: 100px;">Email</span>
- </div><input <?php echo $can_edit; ?> type="text" class="form-control" name="email" id="email" autocomplete="off">
+ </div><input <?php echo $can_edit; ?> type="text" class="form-control" name="email" id="email" autocomplete="off" value="<?php echo $edit_user->email; ?>">
</div>
<div class="input-group mb-3">