diff --git a/admin.php b/admin.php index dd4c923..89bfd44 100644 --- a/admin.php +++ b/admin.php @@ -521,6 +521,8 @@ $current_session_user = isset($_SESSION['user']) ? (string) $_SESSION['user'] : Utilisateurs Base d'Objets Scanner Minage + Manufactures + Vaisseaux Presets Vaisseau diff --git a/scitems.php b/scitems.php index 6434b68..7239f8f 100644 --- a/scitems.php +++ b/scitems.php @@ -403,6 +403,8 @@ if ($edit_id > 0) { Utilisateurs Base d'Objets Scanner Minage + Manufactures + Vaisseaux Presets Vaisseau diff --git a/scmanufactures.php b/scmanufactures.php new file mode 100644 index 0000000..e6e3ac0 --- /dev/null +++ b/scmanufactures.php @@ -0,0 +1,385 @@ +prepare("INSERT INTO tbl_scmanufactures (cl_scmanufactures_name) VALUES (:name)"); + $stmt->execute(['name' => $name]); + auth_flash_set('success', 'Manufacture ajoutée avec succès.'); + } catch (PDOException $e) { + if ($e->getCode() == 23000) { + auth_flash_set('error', 'Cette manufacture existe déjà.'); + } else { + auth_flash_set('error', 'Erreur lors de l\'ajout : ' . $e->getMessage()); + } + } + } else { + auth_flash_set('error', 'Le nom de la manufacture est requis.'); + } + header('Location: scmanufactures.php'); + exit; + } + + // Update manufacture + if ($action === 'update_manufacture') { + $id = (int)($_POST['manufacture_id'] ?? 0); + $name = trim($_POST['name'] ?? ''); + if ($id > 0 && $name !== '') { + try { + $stmt = $db->prepare("UPDATE tbl_scmanufactures SET cl_scmanufactures_name = :name WHERE cl_scmanufactures_id = :id"); + $stmt->execute(['name' => $name, 'id' => $id]); + auth_flash_set('success', 'Manufacture mise à jour.'); + } catch (PDOException $e) { + auth_flash_set('error', 'Erreur lors de la mise à jour : ' . $e->getMessage()); + } + } else { + auth_flash_set('error', 'Données invalides.'); + } + header('Location: scmanufactures.php'); + exit; + } + + // Delete manufacture + if ($action === 'delete_manufacture') { + $id = (int)($_POST['manufacture_id'] ?? 0); + if ($id > 0) { + try { + $stmt = $db->prepare("DELETE FROM tbl_scmanufactures WHERE cl_scmanufactures_id = :id"); + $stmt->execute(['id' => $id]); + auth_flash_set('success', 'Manufacture supprimée.'); + } catch (PDOException $e) { + auth_flash_set('error', 'Erreur lors de la suppression. Assurez-vous qu\'aucun vaisseau n\'est lié à cette manufacture.'); + } + } + header('Location: scmanufactures.php'); + exit; + } +} + +// Fetch all manufactures +$stmt_list = $db->query("SELECT * FROM tbl_scmanufactures ORDER BY cl_scmanufactures_name ASC"); +$manufactures = $stmt_list->fetchAll(); + +$current_session_user = $_SESSION['user'] ?? ''; +?> + + + + + + Manufactures | R.E.A.C.T. Admin + + + + + +
+
+
+

Gestion Manufactures

+

Niveau d\'accès : Administrateur | Session :

+
+
+ Site + Exit +
+
+ + + + +
+ +
+ + +
+ +
+
+

Nouvelle Manufacture

+
+ + + + +
+ + +
+ + + +
+
+
+ + +
+
+

Liste des Manufactures

+
+ + + + + + + + + + + + + + + + + + + + + +
IDNomActions
Aucune manufacture enregistrée.
# + + +
+ +
+ + + + +
+
+
+
+
+
+
+
+ + + + diff --git a/scmining.php b/scmining.php index eca9fee..36c9fb1 100644 --- a/scmining.php +++ b/scmining.php @@ -332,6 +332,8 @@ $current_session_user = $_SESSION['user'] ?? ''; Utilisateurs Base d'Objets Scanner Minage + Manufactures + Vaisseaux Presets Vaisseau diff --git a/scpreset.php b/scpreset.php index 7a259f8..7bd74e7 100644 --- a/scpreset.php +++ b/scpreset.php @@ -327,6 +327,8 @@ $presets = $stmt_list->fetchAll(); Utilisateurs Base d\'Objets Scanner Minage + Manufactures + Vaisseaux Presets Vaisseau diff --git a/scvaisseaux.php b/scvaisseaux.php new file mode 100644 index 0000000..0e27741 --- /dev/null +++ b/scvaisseaux.php @@ -0,0 +1,412 @@ + 0) { + try { + $stmt = $db->prepare("INSERT INTO tbl_scvaisseaux (cl_scvaisseaux_name, cl_scvaisseaux_manufacture_id) VALUES (:name, :manufacture_id)"); + $stmt->execute(['name' => $name, 'manufacture_id' => $manufacture_id]); + auth_flash_set('success', 'Vaisseau ajouté avec succès.'); + } catch (PDOException $e) { + auth_flash_set('error', 'Erreur lors de l\'ajout : ' . $e->getMessage()); + } + } else { + auth_flash_set('error', 'Veuillez remplir tous les champs obligatoires.'); + } + header('Location: scvaisseaux.php'); + exit; + } + + // Update ship + if ($action === 'update_ship') { + $id = (int)($_POST['ship_id'] ?? 0); + $name = trim($_POST['name'] ?? ''); + $manufacture_id = (int)($_POST['manufacture_id'] ?? 0); + if ($id > 0 && $name !== '' && $manufacture_id > 0) { + try { + $stmt = $db->prepare("UPDATE tbl_scvaisseaux SET cl_scvaisseaux_name = :name, cl_scvaisseaux_manufacture_id = :manufacture_id WHERE cl_scvaisseaux_id = :id"); + $stmt->execute(['name' => $name, 'manufacture_id' => $manufacture_id, 'id' => $id]); + auth_flash_set('success', 'Vaisseau mis à jour.'); + } catch (PDOException $e) { + auth_flash_set('error', 'Erreur lors de la mise à jour : ' . $e->getMessage()); + } + } else { + auth_flash_set('error', 'Données invalides.'); + } + header('Location: scvaisseaux.php'); + exit; + } + + // Delete ship + if ($action === 'delete_ship') { + $id = (int)($_POST['ship_id'] ?? 0); + if ($id > 0) { + $stmt = $db->prepare("DELETE FROM tbl_scvaisseaux WHERE cl_scvaisseaux_id = :id"); + $stmt->execute(['id' => $id]); + auth_flash_set('success', 'Vaisseau supprimé.'); + } + header('Location: scvaisseaux.php'); + exit; + } +} + +// Fetch all manufactures for the dropdown +$stmt_mans = $db->query("SELECT * FROM tbl_scmanufactures ORDER BY cl_scmanufactures_name ASC"); +$manufactures = $stmt_mans->fetchAll(); + +// Fetch all ships with manufacture names +$stmt_list = $db->query("SELECT v.*, m.cl_scmanufactures_name + FROM tbl_scvaisseaux v + JOIN tbl_scmanufactures m ON v.cl_scvaisseaux_manufacture_id = m.cl_scmanufactures_id + ORDER BY m.cl_scmanufactures_name ASC, v.cl_scvaisseaux_name ASC"); +$ships = $stmt_list->fetchAll(); + +$current_session_user = $_SESSION['user'] ?? ''; +?> + + + + + + Vaisseaux | R.E.A.C.T. Admin + + + + + +
+
+
+

Gestion Vaisseaux

+

Niveau d\'accès : Administrateur | Session :

+
+
+ Site + Exit +
+
+ + + + +
+ +
+ + +
+ +
+
+

Nouveau Vaisseau

+ +

Veuillez d\'abord ajouter au moins une manufacture.

+ Aller aux Manufactures + +
+ + + + +
+ + +
+ +
+ + +
+ + + +
+ +
+
+ + +
+
+

Liste des Vaisseaux

+
+ + + + + + + + + + + + + + + + + + + +
Manufacture / ModèleActions
Aucun vaisseau enregistré.
+ + + +
+ +
+ + + + +
+
+
+
+
+
+
+
+ + + +