Line 1... |
Line 1... |
1 |
<?php
|
1 |
<?php
|
2 |
/**
|
2 |
/**
|
3 |
* Formulaire de rapport d'erreur assisté
|
3 |
* Formulaire de remarques assisté
|
- |
|
4 |
* - envoie un email et écrit dans un fichier log
|
4 |
*
|
5 |
*
|
5 |
* Utilisation: http://www.tela-botanica.org/widget:reseau:rapportErreur
|
6 |
* Utilisation: http://www.tela-botanica.org/widget:reseau:remarques
|
6 |
* Paramètres GET (optionnels):
|
7 |
* Paramètres GET (optionnels):
|
7 |
* pageSource : URL de la page depuis laquelle l'utilisateur a cliqué sur "rapporter une erreur"
|
8 |
* pageSource : URL de la page depuis laquelle l'utilisateur a cliqué sur "nous contacter"
|
8 |
* (exemple: http://www.tela-botanica.org/appli:cel)
|
9 |
* (exemple: http://www.tela-botanica.org/appli:cel)
|
9 |
* email : adresse à laquelle envoyer le rapport, par défaut webmestre@tela-botanica.org, limité à la liste self::$emailsAutorises
|
10 |
* email : adresse à laquelle envoyer le rapport, par défaut webmestre@tela-botanica.org, limité à la liste self::$emailsAutorises
|
10 |
* (exemple: cel_remarques@tela-botanica.org)
|
11 |
* (exemple: cel_remarques@tela-botanica.org)
|
11 |
*
|
12 |
*
|
12 |
* @author Mathias Chouet <mathias@tela-botanica.org>
|
13 |
* @author Mathias Chouet <mathias@tela-botanica.org>
|
13 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
14 |
* @license GPL v3 <http://www.gnu.org/licenses/gpl.txt>
|
14 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
15 |
* @license CECILL v2 <http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt>
|
15 |
* @version 0.1
|
16 |
* @version 0.1
|
16 |
* @copyright 2014, Tela Botanica (accueil@tela-botanica.org)
|
17 |
* @copyright 2014, Tela Botanica (accueil@tela-botanica.org)
|
17 |
*/
|
18 |
*/
|
18 |
class RapportErreur extends WidgetCommun {
|
19 |
class Remarques extends WidgetCommun {
|
Line 19... |
Line 20... |
19 |
|
20 |
|
Line 20... |
Line 21... |
20 |
const DS = DIRECTORY_SEPARATOR;
|
21 |
const DS = DIRECTORY_SEPARATOR;
|
21 |
|
22 |
|
Line 60... |
Line 61... |
60 |
$this->gravite = null;
|
61 |
$this->gravite = null;
|
61 |
$this->navigateur = null;
|
62 |
$this->navigateur = null;
|
62 |
$this->systeme = null;
|
63 |
$this->systeme = null;
|
63 |
$this->coordonnees = null;
|
64 |
$this->coordonnees = null;
|
Line 64... |
Line 65... |
64 |
|
65 |
|
65 |
$this->cheminLog = $this->config['rapport_erreur']['cheminFichierLog'];
|
66 |
$this->cheminLog = $this->config['remarques']['cheminFichierLog'];
|
Line 66... |
Line 67... |
66 |
}
|
67 |
}
|
67 |
|
68 |
|
68 |
/**
|
69 |
/**
|
69 |
* Méthode appelée par défaut pour charger ce widget
|
70 |
* Méthode appelée par défaut pour charger ce widget
|
70 |
*/
|
71 |
*/
|
71 |
public function executer() {
|
72 |
public function executer() {
|
Line 72... |
Line 73... |
72 |
$this->collecterParametres();
|
73 |
$this->collecterParametres();
|
73 |
$squelette = dirname(__FILE__) . self::DS . 'squelettes' . self::DS . 'rapportErreur.tpl.php';
|
74 |
$squelette = dirname(__FILE__) . self::DS . 'squelettes' . self::DS . 'remarques.tpl.php';
|
74 |
|
75 |
|
75 |
$widget['donnees']['url_css'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/rapporterreur/squelettes/css/defaut.css');
|
76 |
$widget['donnees']['url_css'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/remarques/squelettes/css/defaut.css');
|
76 |
$widget['donnees']['url_js'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/rapporterreur/squelettes/js/defaut.js');
|
77 |
$widget['donnees']['url_js'] = sprintf($this->config['chemins']['baseURLAbsoluDyn'], 'modules/remarques/squelettes/js/defaut.js');
|
Line 77... |
Line 78... |
77 |
$widget['donnees']['email'] = $this->emailDestination;
|
78 |
$widget['donnees']['email'] = $this->emailDestination;
|
Line 158... |
Line 159... |
158 |
$contenu .= "Description:\n " . str_replace("\n", "\n ", $this->description);
|
159 |
$contenu .= "Description:\n " . str_replace("\n", "\n ", $this->description);
|
Line 159... |
Line 160... |
159 |
|
160 |
|
160 |
$entetes = 'Content-Type: text/plain; charset="utf-8" ';
|
161 |
$entetes = 'Content-Type: text/plain; charset="utf-8" ';
|
Line 161... |
Line 162... |
161 |
$entetes .= 'Content-Transfer-Encoding: 8bit';
|
162 |
$entetes .= 'Content-Transfer-Encoding: 8bit';
|
162 |
|
163 |
|
Line 163... |
Line 164... |
163 |
$sujet = "[Rapport d'erreur] - " . substr($this->description, 0, 25) .
|
164 |
$sujet = "[Remarque] - " . substr($this->description, 0, 25) .
|
164 |
"..." . " (" . ($this->coordonnees == '' ? 'inconnu' : $this->coordonnees) . ")";
|
165 |
"..." . " (" . ($this->coordonnees == '' ? 'inconnu' : $this->coordonnees) . ")";
|
165 |
|
166 |
|