2,6 → 2,13 |
/** |
* Formulaire de rapport d'erreur assisté |
* |
* Utilisation: http://www.tela-botanica.org/widget:reseau:rapportErreur |
* Paramètres GET (optionnels): |
* pageSource : URL de la page depuis laquelle l'utilisateur a cliqué sur "rapporter une erreur" |
* (exemple: http://www.tela-botanica.org/appli:cel) |
* email : adresse à laquelle envoyer le rapport, par défaut webmestre@tela-botanica.org, limité à la liste self::$emailsAutorises |
* (exemple: cel_remarques@tela-botanica.org) |
* |
* @author Mathias Chouet <mathias@tela-botanica.org> |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt> |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt> |
12,6 → 19,15 |
|
const DS = DIRECTORY_SEPARATOR; |
|
/** |
* adresse de destination par défaut, si une adresse non autorisée est spécifiée, |
* ou si aucune adresse n'est spécifiée |
*/ |
const EMAIL_PAR_DEFAUT = 'webmestre@tela-botanica.org'; |
|
/** |
* liste des adresses de destination autorisées |
*/ |
private static $emailsAutorises = array( |
'eflore_remarques@tela-botanica.org', |
'pictoflora_remarques@tela-botanica.org', |
23,7 → 39,6 |
); |
|
protected $cheminLog; |
|
protected $pageSource; |
protected $emailDestination; |
protected $action; |
36,8 → 51,9 |
|
public function __construct($config, $parametres) { |
parent::__construct($config, $parametres); |
|
$this->pageSource = 'inconnue'; |
$this->emailDestination = 'webmestre@tela-botanica.org'; |
$this->emailDestination = self::EMAIL_PAR_DEFAUT; |
$this->action = null; |
|
$this->description = null; |
138,11 → 154,14 |
$contenu .= "Système: " . $this->systeme . "\n"; |
$contenu .= "Description:\n " . str_replace("\n", "\n ", $this->description); |
|
$entetes = 'Content-Type: text/plain; charset="utf-8" '; |
$entetes .= 'Content-Transfer-Encoding: 8bit'; |
|
$sujet = "[Rapport d'erreur] - " . substr($this->description, 0, 25) . |
"..." . " (" . ($this->coordonnees == '' ? 'inconnu' : $this->coordonnees) . ")"; |
|
// mode charlot - mais y a rien dans le framework pour faire mieux |
mail($this->emailDestination, $sujet, $contenu); |
mail($this->emailDestination, $sujet, $contenu, $entetes); |
} |
} |
?> |