*/ namespace ImageHeberg; if (!defined('_PHPUNIT_')) { require 'config/config.php'; } // Anti flood $maSession = new SessionObject(); $msgErreur = ''; require _TPL_TOP_; // En cas de validation du formulaire if ( isset($_POST['Submit']) && $maSession->checkFlag() && !empty($_POST['userMail']) && !empty($_POST['urlImage']) ) { // Suivi du traitement $isTraitee = false; // Vérification du bon format de l'adresse mail if (filter_var($_POST['userMail'], FILTER_VALIDATE_EMAIL) !== false) { // On essaie de matcher l'image - nettoyage des paramètres $fileName = basename(parse_url(trim($_POST['urlImage']), PHP_URL_PATH)); if ( preg_match('#^[\d]+\.(?:' . implode('|', _ACCEPTED_EXTENSIONS_) . ')$#', $fileName) || (_PHPUNIT_ && $fileName === 'image_15.png') ) { // Suivi du traitement $isTraitee = true; // On flaggue l'image en signalée en BDD $monImage = new ImageObject($fileName); // Si l'image est approuvée, on ne la bloque pas en automatique if (!$monImage->isApprouvee()) { $monImage->setSignalee(true); $monImage->sauver(); // On cherche les autres images avec le même MD5 $images = HelperAdmin::getImageByMd5($monImage->getMd5()); foreach ($images as $uneImage) { // On flaggue en signalée... $monImage = new ImageObject($uneImage); $monImage->setSignalee(true); $monImage->sauver(); } // Les miniatures reprennent automatiquement les informations de l'image parent } else { $isTraitee = false; } } // Gestion travis if (!_PHPUNIT_) { // Je complète le message avec l'IP de mon émeteur $message = 'URL : ' . $_POST['urlImage']; $message .= PHP_EOL . 'Blocage automatique : ' . ($isTraitee ? 'OK' : 'KO'); $message .= PHP_EOL . 'Raison : ' . $_POST['raison']; $message .= PHP_EOL . 'Message : ' . $_POST['userMessage']; $message .= PHP_EOL . '---------------------------------------------'; $message .= PHP_EOL . 'IP : ' . $_SERVER['REMOTE_ADDR']; $message .= PHP_EOL . 'BROWSER : ' . $_SERVER['HTTP_USER_AGENT']; $message .= PHP_EOL . 'DATE : ' . date('Y-m-d H:i:s'); // Tout va bien, on envoit un mail $subject = '[' . _SITE_NAME_ . '] - Signalement d\'image'; mail(_ADMINISTRATEUR_EMAIL_, $subject, $message, 'From: ' . $_POST['userMail']); $maSession->removeFlag(); } // Retour utilisateur echo '
Votre signalement a été envoyé, merci !
'; } else { // Adresse mail invalide $msgErreur = '
Votre adresse mail n\'est pas valide !
' . $_POST['userMail'] . '
'; } } elseif (!isset($_POST['Submit'])) { // Premier affichage de la page => activation de la protection robot $maSession->setFlag(); } ?> checkFlag()) : ?>

Signaler une image

Indiquer toute l'URL de l'image, telle qu'affichée dans le navigateur ().
Sera utilisée uniquement pour vous apporter une réponse.