public function __construct() { if (!isset($_SESSION['foxfw_document_path'])) { $_SESSION['foxfw_document_path'] = ''; } FoxFWKernel::addVendor('foxFW/FoxFWUrl.php'); $this->path = new FoxFWUrl(_HOME, $_SESSION['foxfw_document_path']); }
public function confirmPassLost() { if (!isset($_POST['email'])) { FoxFWKernel::loadRouter('index'); } //trouver le compte ! $user = FoxFWUsers::existe($_POST['email']); if ($user == NULL) { return $GLOBALS['Twig']->render(FoxFWKernel::getView('users_passlost'), array('msg' => 'Cette Email n\'existe pas !')); } // On définit le corps du message $code = @md5('P8lit' . $user . 'y4Ol'); //ligne 171 //envoi le message de reset du password FoxFWKernel::addVendor('PHPMailer/class.phpmailer.php'); $mail = new PHPMailer(); $mail->charSet = "UTF-8"; //Emetteur $mail->setFrom($GLOBALS['Config']->FoxFW->email, 'Mailer'); //email HTML $mail->isHTML(true); // Définition du sujet/objet $mail->Subject = "Changement de mot de passe !"; //corps du mail $mail->Body = $GLOBALS['Twig']->render(FoxFWKernel::getView('users_pattern_mail_change_mdp'), array('url' => FoxFWKernel::path('user/passlost/' . $code))); // Il reste encore à ajouter au moins un destinataire // (ou plus, par plusieurs appel à cette méthode) $mail->AddAddress($_POST['email'], "Utilisateur"); //Envoyer le message if (!$mail->send()) { echo 'Message could not be sent.'; echo 'Mailer Error: ' . $mail->ErrorInfo; exit; } //jeton secu $_SESSION['CHANGEPASSWORD'] = $user; return $GLOBALS['Twig']->render(FoxFWKernel::getView('users_passlost'), array('msg' => 'Email envoyé !')); }
public static function build($config) { //Début session @session_start(); //security FoxFWKernel::security(); //Chargement de la configuration $GLOBALS['Config'] = $config; //verifier la syntaxe JSON if ($GLOBALS['Config'] == NULL) { die($config_url . ': syntaxe error !'); } //activier ou pas les erreurs PHP if (!$GLOBALS['Config']['FoxFW']['php_error']) { error_reporting(0); } //------------------------------------------------------------- //Default constante foreach ($GLOBALS['Config']['Define'] as $key => $value) { define($key, $value); } //Dépendences foreach ($GLOBALS['Config']['Require'] as $key => $value) { FoxFWKernel::addVendor($value); } //model foreach ($GLOBALS['Config']['Model'] as $key => $value) { FoxFWKernel::addBundleFile($value); } //Route if (!isset($GLOBALS['Config']['Route'])) { exit('No route defined !'); } $GLOBALS['Route'] = FoxFWKernel::ObjJsonFileBuild($GLOBALS['Config']['Route'], 'route.json'); if ($GLOBALS['Route'] == NULL) { die('Route syntaxe error !'); } //------------------------------------------------------------- //Configuration RedBean ORM $co = $GLOBALS['Config']['RedBean']; R::setup($co['connect'], $co['user'], $co['pass']); //------------------------------------------------------------- //Chargement User $GLOBALS['User'] = new FoxFWUsers(); //------------------------------------------------------------- //création de la table de routage $GLOBALS['Router'] = new AltoRouter(); $GLOBALS['Router']->setBasePath($GLOBALS['Config']['AltoRouter']['BasePath'] . '/'); //Chargement des routes dans AltoRouter foreach ($GLOBALS['Route'] as $key => $value) { $GLOBALS['Router']->map($value->method, $value->path, $value->controller, $key); } //------------------------------------------------------------- //Configuration de twig $cache = false; if ($GLOBALS['Config']['FoxFW']['cache']) { $cache = _CACHE; } Twig_Autoloader::register(); $loader = new \Twig_Loader_Filesystem('./'); $GLOBALS['Twig'] = new \Twig_Environment($loader, array('cache' => $cache)); //twig extension function User ! $GLOBALS['Twig']->addGlobal('User', $GLOBALS['User']); //------------------------------------------------------------- //security formulaire FoxFWKernel::securityFormSend(); //------------------------------------------------------------- //extension du Kernel ! if (isset($GLOBALS['Config']['Addon'])) { foreach ($GLOBALS['Config']['Addon'] as $key => $value) { if (file_exists($value)) { require_once $value; } } } //------------------------------------------------------------- //traitement de la page $etat = 404; $match = $GLOBALS['Router']->match(); //recuperer la page charger //controller principal if ($match) { if ($GLOBALS['User']->isRole($GLOBALS['Route'][$match['name']]->firewall)) { $etat = FoxFWKernel::controller($match['target'], $match['params']); //si pas d'erreur if ($etat == 200) { return true; } } else { $etat = 401; } } //Erreur controller $error = $GLOBALS['Config']['FoxFW']['controller_error'] . '#e' . $etat; if (FoxFWKernel::controller($error, array()) == 200) { return true; } //Default error serveur header('HTTP/1.0 500 Not Found'); echo 'Erreur interne du serveur !'; return false; }
public function __construct() { FoxFWKernel::addVendor('foxFW/FoxFWbdd.php'); }