Quoi de plus désagréable que des mauvais joueurs ? Tricherie, harcèlement, vol, grief, etc.
Il existe plusieurs manières de se débarrasser de tout ça, comme le bannissement, le kick, le ban-ip, etc. mais pourquoi ne pas couper le problème à la racine et s’en débarrasser par défaut ?
Snitch répertorie tous les signalements faits par des administrateurs ou modérateurs de serveur dans une base de données et permet aux serveurs s’en servant de chercher si un utilisateur suspect a déjà été dénoncé pour tricherie ou mauvais comportement sur d’autres serveurs.
Notre but : une communauté Minecraft francophone sûre et agréable.
- Fonctionnalités
- Technologies utilisées
- Installation
- Permissions
- API Externes
- Base de données
- Fonctionnalités futures
- Création de compte
- Photo de profil automatique liée au skin Minecraft
- Édition du profil utilisateur
- Dénoncer un utilisateur
- Trouver un UUID via un username
- Image isométrique de skin du joueur dénoncé
- Liste d'utilisateurs dénoncés
- Panel administrateur
- Mode maintenance
- Personnalisation du mode maintenance
- Mode sombre et clair
POO (Programmation Orientée Objet) et MVC
PHP, HTML, CSS, JavaScript et Base de données
API Externes
Pour installer le CMS sur votre serveur, veuillez suivre ces instructions :
-
Copiez le projet GitHub dans la racine de votre site web.
-
Redirigez votre serveur PHP vers /public au chargement
-
Créez une nouvelle base de données en important le fichier SQL présent dans le projet ( /Core/snitch.sql )
-
Modifiez le fichier ( /Core/cred_example.php ) avec les bonnes données de connexion vers votre base de données puis renommez le fichier credentials.php Les informations de connexions par défaut sont dans le fichier d’exemple.
Le site fonctionne maintenant avec des utilisateurs factices et des posts factices. Vous pouvez importer une base de données vierge en prenant le fichier snitch_empty.sql au lieu de snitch.sql.
Pour vous connecter aux comptes factices, utilisez les deux premières lettres de chacun de leur email comme mot de passe et le tour est joué. Après ça vous pouvez supprimer les deux fichiers SQL.
Il existe 4 niveaux d’utilisateurs qui confèrent certaines permissions ou non.
Pour modifier les accès selon les niveaux, vous devez modifier les Controllers.
Le premier niveau est l’administrateur ( permission = 1 ) qui peut tout faire sur le site.
- Panel administrateur
- Bypass maintenance
- Signaler des joueurs
- Voir les signalements
- Gestion du profil
- Accéder au site web
Le deuxième niveau est le Gérant de serveur ( permission = 2 )
- Signaler des joueurs
- Voir les signalements
- Gestion du profil
- Accéder au site web
Le troisième niveau est le Membre ( permission = 3 )
- Voir les signalements
- Gestion du profil
- Accéder au site web
Le dernier niveau est pour les visiteurs du site, non-inscrits
- Accéder au site web
L'API la plus utile sur ce projet est PlayerDB, que nous contactons lorsqu'on recherche un UUID.
-> public/js/main.js
var url = "https://playerdb.co/api/player/minecraft/" + username;
var xhr = new XMLHttpRequest();
xhr.open("GET", url);Dans la réponse à cette requête, si l'utilisateur existe, on obtient entre autres son UUID.
Cette API nous permet d'avoir la tête du skin du compte connecté.
-> Views/layout.php
src="https://mc-heads.net/avatar/<?php echo $user; ?>/100">Crafatar nous permet d'afficher le skin du joueur en isométrique dans la page Signaler et dans la page d'informations du signalement
-> public/js/main.js
document.getElementById("report-left-player").setAttribute("src", "https://crafatar.com/renders/body/" + obj.data.player.id +"?overlay")- Trouver un pseudo avec le UUID
- Plugin minecraft pour les serveurs
- Permet de notifier un utilisateur lorsqu’un joueur déjà dénoncé rejoint le serveur
- Permet de dénoncer un joueur directement depuis le serveur
- Permissions avancées
- Fonction de recherche sur le site, pour trouver un utilisateur dénoncé
- Filtres pour voir les utilisateurs dénoncés selon certaines conditions
- Formulaire de réinitialisation de mot de passe
- Validation par courriel lors de l’inscription

