V1.4.7
This commit is contained in:
parent
3b20de71b5
commit
3b2871e0a5
37651
database/full.sql
37651
database/full.sql
File diff suppressed because one or more lines are too long
@ -1,4 +1,9 @@
|
||||
/*M!999999\- enable the sandbox mode */
|
||||
-- MariaDB dump 10.19 Distrib 10.11.14-MariaDB, for debian-linux-gnu (x86_64)
|
||||
--
|
||||
-- Host: 127.0.0.1 Database: app_39514
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 10.11.14-MariaDB-0+deb12u2
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
@ -10,6 +15,11 @@
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_auth`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_auth`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -17,11 +27,38 @@ CREATE TABLE `tbl_auth` (
|
||||
`cl_auth_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_auth_user` varchar(190) NOT NULL,
|
||||
`cl_auth_pass` varchar(255) NOT NULL,
|
||||
`cl_auth_right` enum('admin','member') NOT NULL DEFAULT 'member',
|
||||
`cl_auth_right` enum('admin','moderator','member') NOT NULL DEFAULT 'member',
|
||||
PRIMARY KEY (`cl_auth_id`),
|
||||
UNIQUE KEY `cl_auth_user` (`cl_auth_user`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_page_access`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_page_access`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `tbl_page_access` (
|
||||
`cl_page_access_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_page_key` varchar(190) NOT NULL,
|
||||
`cl_page_file` varchar(190) NOT NULL,
|
||||
`cl_page_label` varchar(190) NOT NULL,
|
||||
`cl_allow_admin` tinyint(1) NOT NULL DEFAULT 1,
|
||||
`cl_allow_moderator` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_allow_member` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_updated_at` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||
PRIMARY KEY (`cl_page_access_id`),
|
||||
UNIQUE KEY `cl_page_key` (`cl_page_key`),
|
||||
UNIQUE KEY `cl_page_file` (`cl_page_file`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scbanners`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scbanners`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -33,6 +70,73 @@ CREATE TABLE `tbl_scbanners` (
|
||||
PRIMARY KEY (`cl_scbanner_id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_sccharacteritems`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_sccharacteritems`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `tbl_sccharacteritems` (
|
||||
`cl_sccharacteritem_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_sccharacteritem_character_id` int(10) unsigned NOT NULL,
|
||||
`cl_sccharacteritem_source` enum('base','custom') NOT NULL DEFAULT 'base',
|
||||
`cl_sccharacteritem_scobjs_id` int(10) unsigned DEFAULT NULL,
|
||||
`cl_sccharacteritem_scitemcustom_id` int(11) DEFAULT NULL,
|
||||
`cl_sccharacteritem_slot` varchar(120) NOT NULL DEFAULT '',
|
||||
`cl_sccharacteritem_quantity` int(10) unsigned DEFAULT NULL,
|
||||
`cl_sccharacteritem_note` text DEFAULT NULL,
|
||||
`cl_sccharacteritem_sort_order` int(10) unsigned NOT NULL DEFAULT 0,
|
||||
`cl_sccharacteritem_created_at` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`cl_sccharacteritem_id`),
|
||||
KEY `idx_sccharacteritem_character` (`cl_sccharacteritem_character_id`),
|
||||
KEY `idx_sccharacteritem_scobjs` (`cl_sccharacteritem_scobjs_id`),
|
||||
KEY `idx_sccharacteritem_scitemcustom` (`cl_sccharacteritem_scitemcustom_id`),
|
||||
KEY `idx_sccharacteritem_character_sort` (`cl_sccharacteritem_character_id`,`cl_sccharacteritem_sort_order`,`cl_sccharacteritem_id`),
|
||||
CONSTRAINT `fk_sccharacteritem_character` FOREIGN KEY (`cl_sccharacteritem_character_id`) REFERENCES `tbl_sccharacters` (`cl_sccharacter_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_sccharacteritem_scitemcustom` FOREIGN KEY (`cl_sccharacteritem_scitemcustom_id`) REFERENCES `tbl_scitemcustom` (`cl_scitemcustom_id`) ON DELETE SET NULL ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_sccharacteritem_scobjs` FOREIGN KEY (`cl_sccharacteritem_scobjs_id`) REFERENCES `tbl_scobjs` (`cl_scobjs_id`) ON DELETE SET NULL ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_sccharacters`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_sccharacters`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `tbl_sccharacters` (
|
||||
`cl_sccharacter_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_sccharacter_owner_auth_id` int(10) unsigned NOT NULL,
|
||||
`cl_sccharacter_name` varchar(190) NOT NULL,
|
||||
`cl_sccharacter_role` varchar(190) NOT NULL DEFAULT '',
|
||||
`cl_sccharacter_faction` varchar(190) NOT NULL DEFAULT '',
|
||||
`cl_sccharacter_org_rsi_url` varchar(255) NOT NULL DEFAULT '',
|
||||
`cl_sccharacter_is_player` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_sccharacter_player_handle` varchar(190) NOT NULL DEFAULT '',
|
||||
`cl_sccharacter_avatar_url` varchar(255) NOT NULL DEFAULT '',
|
||||
`cl_sccharacter_description` text DEFAULT NULL,
|
||||
`cl_sccharacter_notes` text DEFAULT NULL,
|
||||
`cl_sccharacter_share_token` varchar(64) NOT NULL,
|
||||
`cl_sccharacter_share_enabled` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_sccharacter_is_pinned` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_sccharacter_category_order` text DEFAULT NULL,
|
||||
`cl_sccharacter_created_at` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`cl_sccharacter_updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||
PRIMARY KEY (`cl_sccharacter_id`),
|
||||
UNIQUE KEY `uq_sccharacter_share_token` (`cl_sccharacter_share_token`),
|
||||
KEY `idx_sccharacter_owner` (`cl_sccharacter_owner_auth_id`),
|
||||
KEY `idx_sccharacter_name` (`cl_sccharacter_name`),
|
||||
CONSTRAINT `fk_sccharacter_owner_auth` FOREIGN KEY (`cl_sccharacter_owner_auth_id`) REFERENCES `tbl_auth` (`cl_auth_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scitemcustom`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scitemcustom`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -42,13 +146,17 @@ CREATE TABLE `tbl_scitemcustom` (
|
||||
`cl_scitemcustom_obj_id` int(10) unsigned NOT NULL,
|
||||
`cl_scitemcustom_created_at` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
PRIMARY KEY (`cl_scitemcustom_id`),
|
||||
UNIQUE KEY `uq_scitemcustom_owner_obj` (`cl_scitemcustom_owner_auth_id`,`cl_scitemcustom_obj_id`),
|
||||
KEY `idx_scitemcustom_obj` (`cl_scitemcustom_obj_id`),
|
||||
KEY `idx_scitemcustom_owner` (`cl_scitemcustom_owner_auth_id`),
|
||||
CONSTRAINT `fk_scitemcustom_obj` FOREIGN KEY (`cl_scitemcustom_obj_id`) REFERENCES `tbl_scobjs` (`cl_scobjs_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_scitemcustom_owner_auth` FOREIGN KEY (`cl_scitemcustom_owner_auth_id`) REFERENCES `tbl_auth` (`cl_auth_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scitemcustomstat`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scitemcustomstat`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -65,8 +173,13 @@ CREATE TABLE `tbl_scitemcustomstat` (
|
||||
KEY `idx_scitemcustomstat_stat` (`cl_scitemcustomstat_stat_id`),
|
||||
CONSTRAINT `fk_scitemcustomstat_item` FOREIGN KEY (`cl_scitemcustomstat_itemcustom_id`) REFERENCES `tbl_scitemcustom` (`cl_scitemcustom_id`) ON DELETE CASCADE ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_scitemcustomstat_stat` FOREIGN KEY (`cl_scitemcustomstat_stat_id`) REFERENCES `tbl_scstatsitem` (`cl_scstatsitem_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scmanufactures`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scmanufactures`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -77,6 +190,66 @@ CREATE TABLE `tbl_scmanufactures` (
|
||||
UNIQUE KEY `cl_scmanufactures_name` (`cl_scmanufactures_name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scmanutentionitems`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scmanutentionitems`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `tbl_scmanutentionitems` (
|
||||
`cl_scmanutentionitem_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_scmanutentionitem_manutention_id` int(10) unsigned NOT NULL,
|
||||
`cl_scmanutentionitem_source` enum('base','custom') NOT NULL DEFAULT 'base',
|
||||
`cl_scmanutentionitem_scobjs_id` int(10) unsigned DEFAULT NULL,
|
||||
`cl_scmanutentionitem_scitemcustom_id` int(11) DEFAULT NULL,
|
||||
`cl_scmanutentionitem_quantity` int(10) unsigned NOT NULL DEFAULT 1,
|
||||
`cl_scmanutentionitem_extra_info` text DEFAULT NULL,
|
||||
`cl_scmanutentionitem_sort_order` int(10) unsigned NOT NULL DEFAULT 0,
|
||||
`cl_scmanutentionitem_created_at` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`cl_scmanutentionitem_updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||
PRIMARY KEY (`cl_scmanutentionitem_id`),
|
||||
KEY `idx_scmanutentionitem_sheet` (`cl_scmanutentionitem_manutention_id`),
|
||||
KEY `idx_scmanutentionitem_scobjs` (`cl_scmanutentionitem_scobjs_id`),
|
||||
KEY `idx_scmanutentionitem_scitemcustom` (`cl_scmanutentionitem_scitemcustom_id`),
|
||||
KEY `idx_scmanutentionitem_sheet_sort` (`cl_scmanutentionitem_manutention_id`,`cl_scmanutentionitem_sort_order`,`cl_scmanutentionitem_id`),
|
||||
CONSTRAINT `fk_scmanutentionitem_scitemcustom` FOREIGN KEY (`cl_scmanutentionitem_scitemcustom_id`) REFERENCES `tbl_scitemcustom` (`cl_scitemcustom_id`) ON DELETE SET NULL ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_scmanutentionitem_scobjs` FOREIGN KEY (`cl_scmanutentionitem_scobjs_id`) REFERENCES `tbl_scobjs` (`cl_scobjs_id`) ON DELETE SET NULL ON UPDATE CASCADE,
|
||||
CONSTRAINT `fk_scmanutentionitem_sheet` FOREIGN KEY (`cl_scmanutentionitem_manutention_id`) REFERENCES `tbl_scmanutentions` (`cl_scmanutention_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scmanutentions`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scmanutentions`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
CREATE TABLE `tbl_scmanutentions` (
|
||||
`cl_scmanutention_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`cl_scmanutention_owner_auth_id` int(10) unsigned NOT NULL,
|
||||
`cl_scmanutention_title` varchar(190) NOT NULL,
|
||||
`cl_scmanutention_type` varchar(120) NOT NULL DEFAULT '',
|
||||
`cl_scmanutention_subtype` varchar(120) NOT NULL DEFAULT '',
|
||||
`cl_scmanutention_description` text DEFAULT NULL,
|
||||
`cl_scmanutention_share_token` varchar(64) NOT NULL,
|
||||
`cl_scmanutention_share_enabled` tinyint(1) NOT NULL DEFAULT 0,
|
||||
`cl_scmanutention_created_at` datetime NOT NULL DEFAULT current_timestamp(),
|
||||
`cl_scmanutention_updated_at` datetime NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
|
||||
PRIMARY KEY (`cl_scmanutention_id`),
|
||||
UNIQUE KEY `uq_scmanutention_share_token` (`cl_scmanutention_share_token`),
|
||||
KEY `idx_scmanutention_owner` (`cl_scmanutention_owner_auth_id`),
|
||||
KEY `idx_scmanutention_title` (`cl_scmanutention_title`),
|
||||
CONSTRAINT `fk_scmanutention_owner_auth` FOREIGN KEY (`cl_scmanutention_owner_auth_id`) REFERENCES `tbl_auth` (`cl_auth_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scmining`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scmining`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -93,6 +266,11 @@ CREATE TABLE `tbl_scmining` (
|
||||
CONSTRAINT `fk_scmining_obj` FOREIGN KEY (`cl_scmining_obj_id`) REFERENCES `tbl_scobjs` (`cl_scobjs_id`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scnotifications`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scnotifications`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -114,6 +292,11 @@ CREATE TABLE `tbl_scnotifications` (
|
||||
CONSTRAINT `fk_scnotification_webhook` FOREIGN KEY (`cl_scnotification_webhook_id`) REFERENCES `tbl_scwebhooks` (`cl_scwebhook_id`) ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scobjs`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scobjs`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -128,8 +311,13 @@ CREATE TABLE `tbl_scobjs` (
|
||||
`cl_scobjs_description` text DEFAULT NULL,
|
||||
PRIMARY KEY (`cl_scobjs_id`),
|
||||
UNIQUE KEY `cl_scobjs_uuid` (`cl_scobjs_uuid`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=18305 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=18306 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scpreset`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scpreset`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -149,6 +337,11 @@ CREATE TABLE `tbl_scpreset` (
|
||||
CONSTRAINT `fk_scpreset_vaisseau` FOREIGN KEY (`cl_scpreset_vaisseau_id`) REFERENCES `tbl_scvaisseaux` (`cl_scvaisseaux_id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scstatsitem`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scstatsitem`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -161,6 +354,11 @@ CREATE TABLE `tbl_scstatsitem` (
|
||||
UNIQUE KEY `uq_scstatsitem_name` (`cl_scstatsitem_name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scvaisseaux`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scvaisseaux`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -173,6 +371,11 @@ CREATE TABLE `tbl_scvaisseaux` (
|
||||
CONSTRAINT `fk_vaisseaux_manufacture` FOREIGN KEY (`cl_scvaisseaux_manufacture_id`) REFERENCES `tbl_scmanufactures` (`cl_scmanufactures_id`) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tbl_scwebhooks`
|
||||
--
|
||||
|
||||
DROP TABLE IF EXISTS `tbl_scwebhooks`;
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8mb4 */;
|
||||
@ -196,117 +399,4 @@ CREATE TABLE `tbl_scwebhooks` (
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tbl_page_access (
|
||||
cl_page_access_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
cl_page_key VARCHAR(190) NOT NULL UNIQUE,
|
||||
cl_page_file VARCHAR(190) NOT NULL UNIQUE,
|
||||
cl_page_label VARCHAR(190) NOT NULL,
|
||||
cl_allow_admin TINYINT(1) NOT NULL DEFAULT 1,
|
||||
cl_allow_moderator TINYINT(1) NOT NULL DEFAULT 0,
|
||||
cl_allow_member TINYINT(1) NOT NULL DEFAULT 0,
|
||||
cl_updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tbl_sccharacters (
|
||||
cl_sccharacter_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
cl_sccharacter_owner_auth_id INT UNSIGNED NOT NULL,
|
||||
cl_sccharacter_name VARCHAR(190) NOT NULL,
|
||||
cl_sccharacter_role VARCHAR(190) NOT NULL DEFAULT '',
|
||||
cl_sccharacter_faction VARCHAR(190) NOT NULL DEFAULT '',
|
||||
cl_sccharacter_org_rsi_url VARCHAR(255) NOT NULL DEFAULT '',
|
||||
cl_sccharacter_player_handle VARCHAR(190) NOT NULL DEFAULT '',
|
||||
cl_sccharacter_avatar_url VARCHAR(255) NOT NULL DEFAULT '',
|
||||
cl_sccharacter_description TEXT DEFAULT NULL,
|
||||
cl_sccharacter_notes TEXT DEFAULT NULL,
|
||||
cl_sccharacter_share_token VARCHAR(64) NOT NULL,
|
||||
cl_sccharacter_share_enabled TINYINT(1) NOT NULL DEFAULT 0,
|
||||
cl_sccharacter_created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
cl_sccharacter_updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
UNIQUE KEY uq_sccharacter_share_token (cl_sccharacter_share_token),
|
||||
KEY idx_sccharacter_owner (cl_sccharacter_owner_auth_id),
|
||||
KEY idx_sccharacter_name (cl_sccharacter_name),
|
||||
CONSTRAINT fk_sccharacter_owner_auth FOREIGN KEY (cl_sccharacter_owner_auth_id)
|
||||
REFERENCES tbl_auth (cl_auth_id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tbl_sccharacteritems (
|
||||
cl_sccharacteritem_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
cl_sccharacteritem_character_id INT UNSIGNED NOT NULL,
|
||||
cl_sccharacteritem_source ENUM('base', 'custom') NOT NULL DEFAULT 'base',
|
||||
cl_sccharacteritem_scobjs_id INT UNSIGNED DEFAULT NULL,
|
||||
cl_sccharacteritem_scitemcustom_id INT(11) DEFAULT NULL,
|
||||
cl_sccharacteritem_slot VARCHAR(120) NOT NULL DEFAULT '',
|
||||
cl_sccharacteritem_quantity INT UNSIGNED DEFAULT NULL,
|
||||
cl_sccharacteritem_note TEXT DEFAULT NULL,
|
||||
cl_sccharacteritem_created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
KEY idx_sccharacteritem_character (cl_sccharacteritem_character_id),
|
||||
KEY idx_sccharacteritem_scobjs (cl_sccharacteritem_scobjs_id),
|
||||
KEY idx_sccharacteritem_scitemcustom (cl_sccharacteritem_scitemcustom_id),
|
||||
CONSTRAINT fk_sccharacteritem_character FOREIGN KEY (cl_sccharacteritem_character_id)
|
||||
REFERENCES tbl_sccharacters (cl_sccharacter_id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_sccharacteritem_scobjs FOREIGN KEY (cl_sccharacteritem_scobjs_id)
|
||||
REFERENCES tbl_scobjs (cl_scobjs_id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_sccharacteritem_scitemcustom FOREIGN KEY (cl_sccharacteritem_scitemcustom_id)
|
||||
REFERENCES tbl_scitemcustom (cl_scitemcustom_id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tbl_scmanutentions (
|
||||
cl_scmanutention_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
cl_scmanutention_owner_auth_id INT UNSIGNED NOT NULL,
|
||||
cl_scmanutention_title VARCHAR(190) NOT NULL,
|
||||
cl_scmanutention_type VARCHAR(120) NOT NULL DEFAULT '',
|
||||
cl_scmanutention_subtype VARCHAR(120) NOT NULL DEFAULT '',
|
||||
cl_scmanutention_description TEXT DEFAULT NULL,
|
||||
cl_scmanutention_share_token VARCHAR(64) NOT NULL,
|
||||
cl_scmanutention_share_enabled TINYINT(1) NOT NULL DEFAULT 0,
|
||||
cl_scmanutention_created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
cl_scmanutention_updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
UNIQUE KEY uq_scmanutention_share_token (cl_scmanutention_share_token),
|
||||
KEY idx_scmanutention_owner (cl_scmanutention_owner_auth_id),
|
||||
KEY idx_scmanutention_title (cl_scmanutention_title),
|
||||
CONSTRAINT fk_scmanutention_owner_auth FOREIGN KEY (cl_scmanutention_owner_auth_id)
|
||||
REFERENCES tbl_auth (cl_auth_id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tbl_scmanutentionitems (
|
||||
cl_scmanutentionitem_id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
cl_scmanutentionitem_manutention_id INT UNSIGNED NOT NULL,
|
||||
cl_scmanutentionitem_source ENUM('base', 'custom') NOT NULL DEFAULT 'base',
|
||||
cl_scmanutentionitem_scobjs_id INT UNSIGNED DEFAULT NULL,
|
||||
cl_scmanutentionitem_scitemcustom_id INT(11) DEFAULT NULL,
|
||||
cl_scmanutentionitem_quantity INT UNSIGNED NOT NULL DEFAULT 1,
|
||||
cl_scmanutentionitem_extra_info TEXT DEFAULT NULL,
|
||||
cl_scmanutentionitem_sort_order INT UNSIGNED NOT NULL DEFAULT 0,
|
||||
cl_scmanutentionitem_created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
cl_scmanutentionitem_updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
KEY idx_scmanutentionitem_sheet (cl_scmanutentionitem_manutention_id),
|
||||
KEY idx_scmanutentionitem_scobjs (cl_scmanutentionitem_scobjs_id),
|
||||
KEY idx_scmanutentionitem_scitemcustom (cl_scmanutentionitem_scitemcustom_id),
|
||||
KEY idx_scmanutentionitem_sheet_sort (cl_scmanutentionitem_manutention_id, cl_scmanutentionitem_sort_order, cl_scmanutentionitem_id),
|
||||
CONSTRAINT fk_scmanutentionitem_sheet FOREIGN KEY (cl_scmanutentionitem_manutention_id)
|
||||
REFERENCES tbl_scmanutentions (cl_scmanutention_id)
|
||||
ON DELETE CASCADE
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_scmanutentionitem_scobjs FOREIGN KEY (cl_scmanutentionitem_scobjs_id)
|
||||
REFERENCES tbl_scobjs (cl_scobjs_id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE,
|
||||
CONSTRAINT fk_scmanutentionitem_scitemcustom FOREIGN KEY (cl_scmanutentionitem_scitemcustom_id)
|
||||
REFERENCES tbl_scitemcustom (cl_scitemcustom_id)
|
||||
ON DELETE SET NULL
|
||||
ON UPDATE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
-- Dump completed on 2026-05-07 0:10:56
|
||||
|
||||
@ -949,12 +949,14 @@ $page_access_widget = auth_render_page_access_widget('scmanutention.php', 'Manut
|
||||
padding: 0.95rem;
|
||||
display: grid;
|
||||
gap: 0.8rem;
|
||||
position: relative;
|
||||
isolation: isolate;
|
||||
}
|
||||
|
||||
.item-head {
|
||||
display: flex;
|
||||
gap: 0.9rem;
|
||||
align-items: start;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.item-title-line {
|
||||
@ -978,27 +980,98 @@ $page_access_widget = auth_render_page_access_widget('scmanutention.php', 'Manut
|
||||
border: 1px solid rgba(255,255,255,0.07);
|
||||
color: var(--text-main);
|
||||
}
|
||||
|
||||
.item-actions {
|
||||
display: flex;
|
||||
gap: 0.6rem;
|
||||
gap: 0.55rem;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
align-items: flex-start;
|
||||
justify-content: flex-end;
|
||||
margin-left: auto;
|
||||
flex: none;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
details.item-edit {
|
||||
border-top: 1px solid rgba(255,255,255,0.08);
|
||||
padding-top: 0.8rem;
|
||||
position: relative;
|
||||
flex: none;
|
||||
}
|
||||
|
||||
details.item-edit summary {
|
||||
cursor: pointer;
|
||||
color: #fff2ca;
|
||||
font-weight: 700;
|
||||
details.item-edit summary.item-edit-toggle {
|
||||
list-style: none;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
details.item-edit summary::-webkit-details-marker { display: none; }
|
||||
details.item-edit summary.item-edit-toggle::-webkit-details-marker { display: none; }
|
||||
|
||||
details.item-edit[open] summary.item-edit-toggle {
|
||||
background: var(--primary);
|
||||
color: #111;
|
||||
box-shadow: 0 0 15px rgba(162, 155, 120, 0.35);
|
||||
}
|
||||
|
||||
.item-edit-backdrop {
|
||||
display: none;
|
||||
}
|
||||
|
||||
details.item-edit[open] .item-edit-backdrop {
|
||||
display: block;
|
||||
position: fixed;
|
||||
inset: 0;
|
||||
z-index: 10000;
|
||||
background: rgba(6, 10, 18, 0.78);
|
||||
backdrop-filter: blur(3px);
|
||||
}
|
||||
|
||||
.item-edit-panel {
|
||||
display: none;
|
||||
}
|
||||
|
||||
details.item-edit[open] .item-edit-panel {
|
||||
display: block;
|
||||
position: fixed;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
right: auto;
|
||||
transform: translate(-50%, -50%);
|
||||
z-index: 10001;
|
||||
width: min(860px, calc(100vw - 2rem));
|
||||
max-height: calc(100vh - 2rem);
|
||||
overflow-y: auto;
|
||||
padding: 1rem;
|
||||
border-radius: 18px;
|
||||
background: rgba(11, 16, 26, 0.985);
|
||||
border: 1px solid rgba(255,255,255,0.10);
|
||||
box-shadow: 0 28px 64px rgba(0,0,0,0.52);
|
||||
backdrop-filter: blur(10px);
|
||||
}
|
||||
|
||||
.item-edit-panel-head {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
justify-content: space-between;
|
||||
gap: 0.8rem;
|
||||
margin-bottom: 0.95rem;
|
||||
}
|
||||
|
||||
.item-edit-panel-title {
|
||||
display: grid;
|
||||
gap: 0.28rem;
|
||||
}
|
||||
|
||||
.item-edit-panel-title strong {
|
||||
font-size: 1rem;
|
||||
color: var(--text-main);
|
||||
}
|
||||
|
||||
.item-edit-panel form {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
body.item-edit-open {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.stats-list {
|
||||
gap: 0.5rem;
|
||||
@ -1050,13 +1123,32 @@ $page_access_widget = auth_render_page_access_widget('scmanutention.php', 'Manut
|
||||
justify-content: flex-start;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.picker-selection,
|
||||
.item-head,
|
||||
.hero-title-row,
|
||||
.admin-topbar {
|
||||
align-items: stretch;
|
||||
}
|
||||
|
||||
.item-head {
|
||||
align-items: stretch;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.item-actions {
|
||||
width: 100%;
|
||||
justify-content: flex-end;
|
||||
}
|
||||
|
||||
details.item-edit[open] .item-edit-panel {
|
||||
width: min(100vw - 1rem, 860px);
|
||||
max-height: calc(100vh - 1rem);
|
||||
padding: 0.9rem;
|
||||
}
|
||||
|
||||
.item-edit-panel-head {
|
||||
align-items: stretch;
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
@ -1356,91 +1448,96 @@ $page_access_widget = auth_render_page_access_widget('scmanutention.php', 'Manut
|
||||
<input type="hidden" name="item_id" value="<?php echo $item_id; ?>">
|
||||
<button type="submit" class="btn btn-danger btn-small">Supprimer</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if (!empty($item_row['cl_scmanutentionitem_extra_info'])): ?>
|
||||
<div class="item-extra"><?php echo nl2br(htmlspecialchars((string) $item_row['cl_scmanutentionitem_extra_info'], ENT_QUOTES, 'UTF-8')); ?></div>
|
||||
<?php endif; ?>
|
||||
<details class="item-edit" data-item-edit>
|
||||
<summary class="btn btn-secondary btn-small item-edit-toggle">Modifier</summary>
|
||||
<div class="item-edit-backdrop" data-item-edit-close aria-hidden="true"></div>
|
||||
<div class="item-edit-panel" role="dialog" aria-modal="true" aria-label="Modifier <?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?>">
|
||||
<div class="item-edit-panel-head">
|
||||
<div class="item-edit-panel-title">
|
||||
<strong>Modifier l’objet</strong>
|
||||
<span class="item-submeta"><?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?></span>
|
||||
</div>
|
||||
<button type="button" class="btn btn-secondary btn-small" data-item-edit-close>Fermer</button>
|
||||
</div>
|
||||
<form method="post">
|
||||
<input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($csrf_token, ENT_QUOTES, 'UTF-8'); ?>">
|
||||
<input type="hidden" name="action" value="update_item">
|
||||
<input type="hidden" name="item_id" value="<?php echo $item_id; ?>">
|
||||
|
||||
<details class="item-edit">
|
||||
<summary>Modifier la ligne</summary>
|
||||
<form method="post" style="margin-top:0.9rem;">
|
||||
<input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($csrf_token, ENT_QUOTES, 'UTF-8'); ?>">
|
||||
<input type="hidden" name="action" value="update_item">
|
||||
<input type="hidden" name="item_id" value="<?php echo $item_id; ?>">
|
||||
<div
|
||||
class="picker"
|
||||
data-item-picker-root
|
||||
data-endpoint="scmanutention.php?ajax=item_suggestions"
|
||||
data-min-query="2"
|
||||
data-initial-source="<?php echo htmlspecialchars($item_source, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-scobjs="<?php echo $item_scobjs_id; ?>"
|
||||
data-initial-scitemcustom="<?php echo $item_scitemcustom_id; ?>"
|
||||
data-initial-name="<?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-type="<?php echo htmlspecialchars($item_type, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-subtype="<?php echo htmlspecialchars($item_subtype, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-uuid="<?php echo htmlspecialchars($item_uuid, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-rarity="<?php echo htmlspecialchars($item_rarity, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
>
|
||||
<input type="hidden" name="item_source" data-picker-source value="<?php echo htmlspecialchars($item_source, ENT_QUOTES, 'UTF-8'); ?>">
|
||||
<input type="hidden" name="item_scobjs_id" data-picker-scobjs value="<?php echo $item_scobjs_id; ?>">
|
||||
<input type="hidden" name="item_scitemcustom_id" data-picker-scitemcustom value="<?php echo $item_scitemcustom_id; ?>">
|
||||
|
||||
<div
|
||||
class="picker"
|
||||
data-item-picker-root
|
||||
data-endpoint="scmanutention.php?ajax=item_suggestions"
|
||||
data-min-query="2"
|
||||
data-initial-source="<?php echo htmlspecialchars($item_source, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-scobjs="<?php echo $item_scobjs_id; ?>"
|
||||
data-initial-scitemcustom="<?php echo $item_scitemcustom_id; ?>"
|
||||
data-initial-name="<?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-type="<?php echo htmlspecialchars($item_type, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-subtype="<?php echo htmlspecialchars($item_subtype, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-uuid="<?php echo htmlspecialchars($item_uuid, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
data-initial-rarity="<?php echo htmlspecialchars($item_rarity, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
>
|
||||
<input type="hidden" name="item_source" data-picker-source value="<?php echo htmlspecialchars($item_source, ENT_QUOTES, 'UTF-8'); ?>">
|
||||
<input type="hidden" name="item_scobjs_id" data-picker-scobjs value="<?php echo $item_scobjs_id; ?>">
|
||||
<input type="hidden" name="item_scitemcustom_id" data-picker-scitemcustom value="<?php echo $item_scitemcustom_id; ?>">
|
||||
<div class="picker-wrap">
|
||||
<input
|
||||
type="search"
|
||||
class="picker-input"
|
||||
placeholder="Modifier l’objet..."
|
||||
aria-label="Modifier l’objet"
|
||||
autocomplete="off"
|
||||
spellcheck="false"
|
||||
data-picker-input
|
||||
value="<?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
>
|
||||
<div class="picker-dropdown hidden" data-picker-dropdown></div>
|
||||
</div>
|
||||
|
||||
<div class="picker-wrap">
|
||||
<input
|
||||
type="search"
|
||||
class="picker-input"
|
||||
placeholder="Modifier l’objet..."
|
||||
aria-label="Modifier l’objet"
|
||||
autocomplete="off"
|
||||
spellcheck="false"
|
||||
data-picker-input
|
||||
value="<?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?>"
|
||||
>
|
||||
<div class="picker-dropdown hidden" data-picker-dropdown></div>
|
||||
</div>
|
||||
|
||||
<div class="picker-selection" data-picker-selection>
|
||||
<div class="picker-selection-main">
|
||||
<img src="<?php echo $item_uuid !== '' ? 'https://cstone.space/uifimages/' . htmlspecialchars($item_uuid, ENT_QUOTES, 'UTF-8') . '.png' : ''; ?>" alt="" class="item-preview<?php echo $item_uuid !== '' ? '' : ' hidden'; ?>" data-picker-image>
|
||||
<div class="picker-item-text">
|
||||
<strong class="item-name <?php echo htmlspecialchars($item_rarity_class, ENT_QUOTES, 'UTF-8'); ?>" data-picker-name><?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?></strong>
|
||||
<div class="item-submeta" data-picker-meta>
|
||||
<?php
|
||||
$meta_parts = [];
|
||||
if ($item_type !== '') {
|
||||
$meta_parts[] = $item_type;
|
||||
}
|
||||
if ($item_subtype !== '') {
|
||||
$meta_parts[] = $item_subtype;
|
||||
}
|
||||
$meta_parts[] = $item_source === 'custom' ? 'Objet perso' : 'Base d\'objets';
|
||||
echo htmlspecialchars(implode(' / ', $meta_parts), ENT_QUOTES, 'UTF-8');
|
||||
?>
|
||||
<div class="picker-selection" data-picker-selection>
|
||||
<div class="picker-selection-main">
|
||||
<img src="<?php echo $item_uuid !== '' ? 'https://cstone.space/uifimages/' . htmlspecialchars($item_uuid, ENT_QUOTES, 'UTF-8') . '.png' : ''; ?>" alt="" class="item-preview<?php echo $item_uuid !== '' ? '' : ' hidden'; ?>" data-picker-image>
|
||||
<div class="picker-item-text">
|
||||
<strong class="item-name <?php echo htmlspecialchars($item_rarity_class, ENT_QUOTES, 'UTF-8'); ?>" data-picker-name><?php echo htmlspecialchars($item_name, ENT_QUOTES, 'UTF-8'); ?></strong>
|
||||
<div class="item-submeta" data-picker-meta>
|
||||
<?php
|
||||
$meta_parts = [];
|
||||
if ($item_type !== '') {
|
||||
$meta_parts[] = $item_type;
|
||||
}
|
||||
if ($item_subtype !== '') {
|
||||
$meta_parts[] = $item_subtype;
|
||||
}
|
||||
$meta_parts[] = $item_source === 'custom' ? 'Objet perso' : 'Base d\'objets';
|
||||
echo htmlspecialchars(implode(' / ', $meta_parts), ENT_QUOTES, 'UTF-8');
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-small" data-picker-clear>Effacer</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="button" class="btn btn-danger btn-small" data-picker-clear>Effacer</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-grid" style="margin-top:0.95rem;">
|
||||
<div class="field">
|
||||
<label>Quantité</label>
|
||||
<input class="input" type="number" min="1" max="999999" name="quantity" value="<?php echo (int) ($item_row['cl_scmanutentionitem_quantity'] ?? 1); ?>">
|
||||
<div class="form-grid" style="margin-top:0.95rem;">
|
||||
<div class="field">
|
||||
<label>Quantité</label>
|
||||
<input class="input" type="number" min="1" max="999999" name="quantity" value="<?php echo (int) ($item_row['cl_scmanutentionitem_quantity'] ?? 1); ?>">
|
||||
</div>
|
||||
<div class="field">
|
||||
<label>Info supplémentaire</label>
|
||||
<input class="input" type="text" name="extra_info" value="<?php echo htmlspecialchars((string) ($item_row['cl_scmanutentionitem_extra_info'] ?? ''), ENT_QUOTES, 'UTF-8'); ?>" placeholder="Case libre facultative">
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-row">
|
||||
<button type="submit" class="btn" data-picker-submit>Enregistrer les modifications</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label>Info supplémentaire</label>
|
||||
<input class="input" type="text" name="extra_info" value="<?php echo htmlspecialchars((string) ($item_row['cl_scmanutentionitem_extra_info'] ?? ''), ENT_QUOTES, 'UTF-8'); ?>" placeholder="Case libre facultative">
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-row">
|
||||
<button type="submit" class="btn" data-picker-submit>Enregistrer les modifications</button>
|
||||
</div>
|
||||
</form>
|
||||
</details>
|
||||
</details>
|
||||
</div>
|
||||
</article>
|
||||
<?php endforeach; ?>
|
||||
</div>
|
||||
@ -1767,7 +1864,52 @@ $page_access_widget = auth_render_page_access_widget('scmanutention.php', 'Manut
|
||||
}
|
||||
}
|
||||
|
||||
function syncItemEditState() {
|
||||
document.body.classList.toggle('item-edit-open', !!document.querySelector('details.item-edit[open]'));
|
||||
}
|
||||
|
||||
Array.prototype.slice.call(document.querySelectorAll('details.item-edit')).forEach(function (detailsNode) {
|
||||
detailsNode.addEventListener('toggle', function () {
|
||||
if (detailsNode.open) {
|
||||
Array.prototype.slice.call(document.querySelectorAll('details.item-edit[open]')).forEach(function (otherNode) {
|
||||
if (otherNode !== detailsNode) {
|
||||
otherNode.open = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
syncItemEditState();
|
||||
});
|
||||
});
|
||||
|
||||
document.addEventListener('click', function (event) {
|
||||
var closeTrigger = event.target.closest('[data-item-edit-close]');
|
||||
if (!closeTrigger) {
|
||||
return;
|
||||
}
|
||||
|
||||
var detailsNode = closeTrigger.closest('details.item-edit');
|
||||
if (!detailsNode) {
|
||||
return;
|
||||
}
|
||||
|
||||
detailsNode.open = false;
|
||||
syncItemEditState();
|
||||
});
|
||||
|
||||
document.addEventListener('keydown', function (event) {
|
||||
if (event.key !== 'Escape') {
|
||||
return;
|
||||
}
|
||||
|
||||
Array.prototype.slice.call(document.querySelectorAll('details.item-edit[open]')).forEach(function (detailsNode) {
|
||||
detailsNode.open = false;
|
||||
});
|
||||
syncItemEditState();
|
||||
});
|
||||
|
||||
Array.prototype.slice.call(document.querySelectorAll('[data-item-picker-root]')).forEach(initPicker);
|
||||
syncItemEditState();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user