public function initTable() { $adminConf = getConfigFile(); $query = $this->db->prepare("INSERT INTO user(UserName,Mdp,DateInscription,email,Tel) VALUES (:username , :mdp , NOW() , :email , :tel);\n INSERT INTO user_droit(id_Droits, id_User, Date) VALUES (1,1,NOW());"); $admin = new User(array("UserName" => $adminConf['pseudo'], "Mdp" => "admin", "email" => $adminConf['mail'], "tel" => $adminConf['tel'])); $admin->setHashMdp(); $query->execute(array(":username" => $admin->getUserName(), ":mdp" => $admin->getMdp(), ":email" => $admin->getEmail(), ":tel" => $admin->getTel())); }
function getConfig($configName) { $config = parse_ini_file(getConfigFile()); if (!$config) { throw new Exception("No Config file found"); } return $config[$configName]; }
public function __construct($username, $password) { $this->username = $username; $this->password = $password; $this->loggerObj = new Logger(getConfig("logPath")); $this->configFile = getConfigFile(); $this->vpnFolder = getConfig("vpnFolderPath"); $this->vpn2Folder = getConfig("vpn2FolderPath"); }
/** * Fonction permettant de vérifier si le formulaire d'inscription est correct et ne contient pas d'erreurs. * @return array : un tableau contenant tous les messages d'erreurs liés au formulaire ou un booléen true si l'inscription * s'est bien passée. */ function isValidBis() { $tabReturn = array("Retour" => false, "Error" => array()); $ini = getConfigFile(); $userName = strtolower($_POST['userName']); $mdp = $_POST['mdp']; $email = $_POST['email']; $emailConfirm = $_POST['emailConfirm']; $mdpConfirm = $_POST['mdpConfirm']; if (strlen($userName) < $ini['CONSTANTE']['size_user_name']) { $tabReturn['Error'][] = "Votre nom d'utilisateur est trop court, 6 caractères minimum ! <br>"; } if (strlen($mdp) < $ini['CONSTANTE']['size_user_mdp']) { $tabReturn['Error'][] = "Votre mot de passe est trop court, 5 caractères minimum ! <br>"; } if ($mdp != $mdpConfirm) { $tabReturn['Error'][] = "Les mots de passe ne correspondent pas ! <br>"; } if ($email != $emailConfirm) { $tabReturn['Error'][] = "Les adresses mail ne correspondent pas ! <br>"; } $um = new UserManager(connexionDb()); $tabUser = $um->getAllUser(); $validUserName = true; $validUserMail = true; $champValid = true; foreach ($tabUser as $userTest) { if ($userName == strtolower($userTest->getUserName())) { $validUserName = false; } if ($email == $userTest->getEmail()) { $validUserMail = false; } } if (!$validUserMail) { $tabReturn['Error'][] = "Cette adresse mail est déjà utilisée, veuillez en choisir une autre ! <br>"; } if (!$validUserName) { $tabReturn['Error'][] = "Ce login est déjà pris, veuillez en choisir en autre ! <br>"; } if (!champsEmailValable($email)) { $tabReturn['Error'][] = "Votre adresse mail contient des caractères indésirables !<br>"; $champValid = false; } if (!champsLoginValable($userName)) { $tabReturn['Error'][] = "Votre nom d'utilisateur contient des caractères indésirables !<br>"; $champValid = false; } if (!champsMdpValable($mdp)) { $tabReturn['Error'][] = "Votre mot de passe contient des caractères indésirables !<br>"; $champValid = false; } if ($validUserMail and $validUserName and $champValid) { $tabReturn['Retour'] = true; } return $tabReturn; }
/** * Fonction permettant la connexion à la base de donnée * @return PDO la base de donnée */ function connexionDb() { $confDb = getConfigFile()['DATABASE']; $type = $confDb['type']; $host = $confDb['host']; $servername = "{$type}:host={$host}"; $username = $confDb['username']; $password = $confDb['password']; $dbname = $confDb['dbname']; $db = new PDO("{$servername};dbname={$dbname}", $username, $password); return $db; }
function administrationViewConfig() { $configArray = getConfigFile(); ?> <form class="form-horizontal" action="?to=editConfig" method="post"> <div class="form-group"> <?php foreach ($configArray as $section => $element) { ?> <?php if ($section != 'DATABASE') { ?> <div class="col-sm-12" style="font-weight: bold;"><p style="text-decoration: underline"><?php echo $section; ?> </p></div> <?php foreach ($element as $labelElem => $elemElement) { ?> <div class="form-group col-sm-10"> <span class="col-sm-2"> </span> <span class="col-sm-2"><label style="font-weight: normal" for="<?php echo $labelElem; ?> "><?php echo $labelElem; ?> </label></span> <span class="col-sm-8"><?php echo $elemElement; ?> </span> </div> <?php } ?> <div class="col-sm-12"><hr size="50"></div> <?php } ?> <?php } ?> </div> </form> <?php }
/** * Si l'user envoie le formulaire pour recevoir un code, la fonction vérifie si son email existe et envoie * un mail contenant l'url contenant le code d'activation à cette adresse. La fonction ajoute aussi le code * à la BDD */ function envoiCode() { if (isset($_POST['email']) && !empty($_POST['email'])) { $ini = getConfigFile(); $email = $_POST['email']; $um = new UserManager(connexionDb()); $userToSend = $um->getUserByEmail($email); $inconnu = false; if ($userToSend->getId() == NULL) { $inconnu = true; } if ($inconnu) { echo "<div class='alert alert-danger' role='alert'>Cet email n'est pas répertorié chez nous, désolé !</div>"; } else { $code_aleatoire = genererCode(); $adresseAdmin = $ini['ADMINISTRATEUR']['mail']; $to = $email; $sujet = "Confirmation de la demande du mot de passe"; $entete = "From:" . $adresseAdmin . "\r\n"; $entete .= "Content-Type: text/html; charset=utf-8\r\n"; $message = "Nous confirmons que vous avez bien demandé un nouveau mot de passe : <br>\n\t\t\t\t\t\t\tVotre lien pour pouvoir le modifier est : <a href='http://www.everydayidea.be/Page/mdpOublie.page.php?code=" . $code_aleatoire . "'>www.everydayidea/mdpOublie.page.php?code=" . $code_aleatoire . "</a>"; mail($to, $sujet, $message, $entete); echo "<div class='alert alert-success' role='alert'>Un mail vous a été envoyé avec un code d'activation pour le changement de votre mot de passe !</div>"; $am = new ActivationManager(connexionDb()); $ac = new Activation(array("code" => $code_aleatoire, "id_user" => $userToSend->getId(), "libelle" => "Récupération")); /** * Si le user possède déjà un code de récupération de mdp, je le delete pour lui en mettre un nouveau */ $actDelete = $am->getActivationByLibelleAndId('Récupération', $userToSend->getId()); if ($actDelete->getCode() == NULL) { $am->deleteActivationByIdAndLibelle($actDelete->getIdUser(), 'Récupération'); } $am->addActivation($ac); } } }
require "./Library/constante.lib.php"; require "./Library/get.lib.php"; require "./Library/session.lib.php"; require "./Entity/User.class.php"; require "./Entity/Droit.class.php"; require "Manager/ActivityManager.manager.php"; require "Manager/User_ActivityManager.manager.php"; require "Entity/Activity.class.php"; require "Library/database.lib.php"; require "Library/config.lib.php"; require "Library/Fonctions/Fonctions.php"; require "Manager/UserManager.manager.php"; require "Manager/DroitManager.manager.php"; startSession(); $isConnect = isConnect(); $configIni = getConfigFile(); if (isConnect()) { $um = new UserManager(connexionDb()); $user = $um->getUserById($_SESSION['User']->getId()); $_SESSION['User'] = $user; } ?> <!doctype html> <html lang="fr"> <head> <meta charset="UTF-8"> <title>Accueil</title> <link rel="icon" type="image/png" href="Images/favicon.png" /> <link rel="stylesheet" type="text/css" href="./vendor/twitter/bootstrap/dist/css/bootstrap.css"> <link rel="stylesheet" type="text/css" href="./Style/general.css">
include_once $sBasePath . "core/oxutils.php"; $myConfig = oxConfig::getInstance(); // Includes Utility module. $sUtilModule = $myConfig->getConfigParam('sUtilModule'); if ($sUtilModule && file_exists(getShopBasePath() . "modules/" . $sUtilModule)) { include_once getShopBasePath() . "modules/" . $sUtilModule; } require_once substr(__DIR__, 0, -3) . 'core' . DS . 'chromephp.php'; $sMySqlConfigPath = substr(__DIR__, 0, -3) . 'tmp' . DS . 'mySqlConfig.json'; if (file_exists($sMySqlConfigPath)) { $aResult = json_decode(file_get_contents($sMySqlConfigPath, true), true); } $iSleepTime = isset($aResult['sleep']) && !empty($aResult['sleep']) ? $aResult['sleep'] : 3; $iLimit = isset($aResult['limit']) && !empty($aResult['limit']) ? $aResult['limit'] : 30; $bIfComplete = isset($aResult['send']) && $aResult['send'] == true ? true : false; $aConfig = getConfigFile(); $iBacktrace = $aConfig['filter']['backtrace']; unset($aConfig); if (!isset($_GET["checkid"]) || $_GET["checkid"] != '720a7d2b56c90e503d2589f8c565b02c' && !empty($sIdent)) { die('..'); } elseif ($_GET["start"] == true) { sleep($iSleepTime); } $bResult = false; $oDb = oxDb::getDb(true); $sIdent = $_SESSION['debugPHP'] ? $_SESSION['debugPHP'] : getIdent(); //$sSql = 'select id, sql1, timer,params, tracer, type from adodb_debugphp_logsql WHERE `check` is null ORDER BY `id` ASC LIMIT ' . $iLimit; $sSql = 'select id, sql1, timer,params, tracer, type from adodb_debugphp_logsql WHERE `check` is null AND `ident` = ? ORDER BY `id` ASC LIMIT ?'; $rs = $oDb->execute($sSql, array($sIdent, $iLimit)); if ($rs != false && $rs->recordCount() > 0) { while (!$rs->EOF) {
/** * Fonction permettant de vérifier si le formulaire de modification de profil est correct et si il ne contient pas d'erreurs. * @param User $user : l'utilisateur qui a fait la demande de changement de profil. * @return array : un tableau contenant tous les messages d'erreur liés au formulaire de changement de profil ou un booleen * si le formulaire est correct. */ function isValidForm(User $user) { $config = getConfigFile()['CONSTANTE']; $UserName = $_POST['userName']; $Email = $_POST['email']; $Mdp = $_POST['Mdp']; $MdpBis = $_POST['MdpBis']; $tel = $_POST['Tel']; $MdpActuel = $_POST['MdpActuel']; if ($Mdp == '') { $Mdp = NULL; $MdpBis = NULL; } $userTest = new User(array("UserName" => $UserName, "email" => $Email, "Mdp" => $Mdp, "tel" => $tel)); $tab = array("RETURN" => false, "ERROR" => array()); $nameValable = false; $emailValable = false; $mdpValable = false; $nameExistant = false; $mailExistant = false; $goodMdp = false; $boolean_name = false; $boolean_mdp = false; $mdpIdentique = false; $noMdp = false; $um = new UserManager(connexionDb()); $nameVerif = $um->getUserByUserName($userTest->getUserName()); if ($nameVerif->getUserName() != NULL && $user->getUserName() != $UserName) { $nameExistant = true; $tab['ERROR']['Name'] = "Nom déjà existant "; } if (champsEmailValable($Email)) { $emailValable = true; } else { $tab['ERROR']['EmailValable'] = "Votre email contient des caractères indésirables"; } if (champsEmailValable($UserName)) { $nameValable = true; } else { $tab['ERROR']['NameValable'] = "Votre nom d'utilisateur contient des caractères indésirables"; } $mailVerif = $um->getUserByEmail($userTest->getEmail()); if ($mailVerif->getUserName() != NULL && $user->getEmail() != $Email) { $mailExistant = true; $tab['ERROR']['Email'] = "Email déjà existant"; } if ($user->getMdp() == hash("sha256", $MdpActuel . $user->getSalt())) { $goodMdp = true; } else { $tab['ERROR']['MdpActuel'] = "Mauvais mot de passe actuel ! Annulation de la modification"; } if (isset($UserName) and strlen($UserName) >= $config['size_user_name']) { $boolean_name = true; } else { $tab['ERROR']['UserName'] = "******" . $config['size_user_name'] . ")"; } if (isset($Mdp) and isset($MdpBis) and $Mdp == $MdpBis and $Mdp != NULL) { if (strlen($Mdp) >= $config['size_user_mdp']) { $boolean_mdp = true; } else { $tab['ERROR']['Mdp'] = "Mots de passe trop court (min: " . $config['size_user_mdp'] . ")"; } if (champsMdpValable($Mdp)) { $mdpValable = true; } else { $tab['ERROR']['mdpValable'] = "Votre mot de passe contient des caractères indésirables"; } } else { $noMdp = true; } if (isset($Mdp) and isset($MdpBis) and $Mdp != $MdpBis) { $tab['ERROR']['Mdp'] = "Le mot de passe et le mot de passe de vérification sont différents"; } else { $mdpIdentique = true; } $tab['RETURN'] = ($boolean_mdp && $mdpValable || $noMdp and $boolean_name and !$nameExistant and !$mailExistant and $goodMdp && $mdpIdentique && $nameValable && $emailValable); if ($tab['RETURN']) { if (isset($UserName) and $userTest->getUserName() != $user->getUserName()) { $user->setUserName($UserName); } if (isset($Email) and $userTest->getEmail() != $user->getEmail()) { $user->setEmail($Email); } if (isset($Mdp) and strlen($Mdp) > 4 and hash("sha256", $userTest->getMdp() . $userTest->getSalt()) != $user->getMdp()) { $user->setMdp($Mdp); $user->setHashMdp(); } if (isset($tel) and $tel != $user->getTel()) { $user->setTel($tel); } $um->updateUserProfil($user); $userToReconnect = $um->getUserById($user->getId()); setSessionUser($userToReconnect); } return $tab; }
<?php define('APPLICATION_PATH', realpath(dirname(__FILE__))); include APPLICATION_PATH . '/vendor/autoload.php'; require_once 'lib.php'; use Aws\CloudWatch\CloudWatchClient; // Load config file. $conf = getConfigFile(); if ($conf === false) { echo "Conf file is not valid"; die; } // Store metric by namespace in order to call "AWS Could Watch" one time per namespace $metricsToPush = array(); // Get Instance Id $instanceId = file_get_contents("http://169.254.169.254/latest/meta-data/instance-id"); $client = getCloudWatchClient($conf); foreach ($conf->metrics as $metrics) { foreach ($metrics as $metricName => $metric) { $pluginName = isset($metric->{'plugin'}) === true ? $metric->{'plugin'} : $metricName; $className = "CloudWatchScript\\Plugins\\" . $pluginName . "Monitoring"; $metricController = new $className($metric, $metric->name); foreach ($metricController->getAlarms() as $key => $alarm) { $client->putMetricAlarm(array('AlarmName' => $alarm["Name"], 'AlarmDescription' => $metric->description, 'ActionsEnabled' => true, 'OKActions' => array($conf->alarms->action), 'AlarmActions' => array($conf->alarms->action), 'InsufficientDataActions' => array($conf->alarms->action), 'Dimensions' => array(array('Name' => 'InstanceId', 'Value' => $instanceId), array('Name' => 'Metrics', 'Value' => $metricName)), 'MetricName' => $metric->name, 'Namespace' => $metric->namespace, 'Statistic' => 'Average', 'Period' => 300, 'Unit' => $metricController->getUnit(), 'EvaluationPeriods' => 2, 'Threshold' => $alarm["Threshold"], 'ComparisonOperator' => $alarm["ComparisonOperator"])); } } }
/** * Fonction permettant de modifier le fichier de configuration du site. * @return string : le message d'erreur dans le cas où l'admin rentre un mauvais mot de passe. */ function modifConfig() { if (isPostFormulaire()) { if (hash("sha256", $_POST['mdp'] . $_SESSION['User']->getSalt()) == $_SESSION['User']->getMdp()) { $ini = getConfigFile(); $fichier = fopen('../config.ini.php', 'w'); $ini['CONSTANTE']['size_user_name'] = $_POST['size_user_name']; $ini['CONSTANTE']['size_user_name'] = $_POST['size_user_mdp']; $ini['ADMINISTRATEUR']['pseudo'] = $_POST['pseudo']; $ini['ADMINISTRATEUR']['mail'] = $_POST['mail']; $ini['ADMINISTRATEUR']['tel'] = $_POST['tel']; $ini['DOMAINE']['nom_domaine'] = $_POST['nom_domaine']; $ini['SERVEUR_ADDRESS']['web'] = $_POST['web']; $ini['SERVEUR_ADDRESS']['web'] = $_POST['bdd']; $ini['SERVEUR_ADDRESS']['web'] = $_POST['mail']; $newConfig = ';<?php echo "Acces refuse"; exit;?>' . "\n"; foreach ($ini as $key => $value) { $newConfig .= '[' . $key . ']' . "\n"; foreach ($value as $nom => $valeur) { $newConfig .= "{$nom} = {$valeur}" . "\n"; } } fputs($fichier, $newConfig); fclose($fichier); echo "<div class='alert alert-success' role='alert'> Config modifiée ! </div>"; header("Location:administration.page.php?to=viewConfig"); } else { return "<div class='alert alert-danger' role='alert'> Votre password actuel est faux, rééssayez ! </div>"; } } }