Installation (old)

Installation process is pretty simple, all you need to do is:

  1. Move it to your resources folder, and add ensure lc_adminmenu to your server.cfg

  2. Execute this SQL Query:

__INSTALL__/lc_adminmenu.sql
CREATE TABLE IF NOT EXISTS `lc_admin_administrators` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `identifier` varchar(56) NOT NULL,
  `nick` text NOT NULL,
  `avatar_url` text NOT NULL DEFAULT '',
  `permissions` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NOT NULL DEFAULT '[]',
  `memberSince` bigint(20) NOT NULL DEFAULT 0,
  `addedBy` text DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `identifier` (`identifier`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_banlist` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `nick` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
  `banned_by` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
  `reason` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
  `banned_at` bigint(20) DEFAULT NULL,
  `expire_at` bigint(20) NOT NULL,
  `discord` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  `steam` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  `license` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  `xbl` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  `live` varchar(65) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL,
  PRIMARY KEY (`id`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_player_history` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `player_identifier` varchar(65) DEFAULT NULL,
  `action` varchar(50) DEFAULT NULL,
  `description` text DEFAULT NULL,
  `date` varchar(50) DEFAULT NULL,
  `added_by` text DEFAULT NULL,
  PRIMARY KEY (`id`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_player_identifiers` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `discord` varchar(65) DEFAULT NULL,
  `steam` varchar(65) DEFAULT NULL,
  `license` varchar(65) DEFAULT NULL,
  `xbl` varchar(65) DEFAULT NULL,
  `live` varchar(65) DEFAULT NULL,
  `fivem` varchar(65) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `discord` (`discord`),
  UNIQUE KEY `steam` (`steam`),
  UNIQUE KEY `license` (`license`),
  UNIQUE KEY `xbl` (`xbl`),
  UNIQUE KEY `live` (`live`),
  UNIQUE KEY `fivem` (`fivem`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_player_trust_score` (
  `identifier` varchar(56) DEFAULT NULL,
  `trust_score` int(11) DEFAULT 100,
  UNIQUE KEY `identifier` (`identifier`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_reports` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `created_at` bigint(20) NOT NULL DEFAULT 0,
  `creator_identifier` varchar(65) NOT NULL,
  `creator_nick` varchar(50) NOT NULL,
  `creator_avatar` text DEFAULT NULL,
  `report_type` text NOT NULL,
  `report_description` text NOT NULL,
  `close_admin_id` int(11) DEFAULT NULL,
  `close_reason` text DEFAULT NULL,
  PRIMARY KEY (`id`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_reports_messages` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `report_id` int(11) NOT NULL,
  `sender_identifier` varchar(65) NOT NULL,
  `sender_nick` varchar(50) NOT NULL,
  `sender_avatar` text DEFAULT NULL,
  `message` text DEFAULT NULL,
  `timestamp` bigint(20) DEFAULT 0,
  PRIMARY KEY (`id`)
);

CREATE TABLE IF NOT EXISTS `lc_admin_stats` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `category_name` varchar(80) NOT NULL,
  `label` varchar(65) NOT NULL,
  `value` varchar(65) NOT NULL,
  PRIMARY KEY (`id`)
);

And that's it! You can also configure things like the command / key to open the menu. This can be done in the config_shared.lua file.

config_shared.lua
return {
  panel_open_command = 'admin',
  panel_open_key = 'DELETE',

  use_report_system = true,
  report_command = 'report',
  delete_reports_after = 3600 * 24 * 14, -- in seconds, if you want to keep all reports forever you can set this option to false

  locale = 'en', -- you can create your own translation file by creating json file in locale folder
  time_language_subtag = 'en', -- https://en.wikipedia.org/wiki/IETF_language_tag#List_of_common_primary_language_subtags

  plate_pattern = 'AAA 111', -- https://overextended.dev/ox_lib/Modules/String/Shared#stringrandom
  high_balance_warning = 1000000, -- If player have more than this amount, warning will be shown

  -- ADMIN UI
  open_player_profile_key = 'g',
  noclip_key = 'f11', -- If you don't want to assign it to any key, you can just set it to nil
  noclip_command = 'nc', -- Same with command - If you don't want command for noclip, just set it to nil
  freecam_key = 'f10', -- Same as above ^
  freecam_command = 'fc',

  frameworks = {
    esx = 'es_extended',
    qb = 'qb-core'
  },
}

Last updated