Example #1
0
 public static function recupArticle($id)
 {
     $arch = new Archiviste(Commentaire::$dbSite);
     $article = new Archivable('Article');
     $article->set('id', $id);
     $articles = $arch->restituer($article);
     $retour = false;
     //si l'article est present dans la base de donnée
     if (count($articles) > 0) {
         $article = $articles[0];
         $commActif = $article->get('comment');
         $retour = array('statut' => 'ok');
         $retour['article'] = array('nom' => $article->get('nom'), 'code' => $article->get('code'), 'date' => $article->get('date'), 'idCateg' => $article->get('id_menu'), 'pageNews' => $article->get('pageNews'), 'commActif' => $commActif);
         $retour['coms'] = array();
         if ($commActif == "oui") {
             $commentaire = new Archivable('Commentaire');
             $commentaire->set('id_article', $id);
             $commentaires = $arch->restituer($commentaire);
             $commentaires = $arch->trierNumCroissant($commentaires, 'date');
             $nbCom = count($commentaires);
             for ($i = 0; $i < $nbCom; $i++) {
                 $retour['coms'][$i] = array('pseudo' => $commentaires[$i]->get('pseudo'), 'date' => $commentaires[$i]->get('date'), 'texte' => $commentaires[$i]->get('texte'));
             }
         }
     }
     return $retour;
 }
Example #2
0
function validRecupPass()
{
    $cleToken = $_REQUEST['token'];
    $auth = new Auth();
    $arch = new Archiviste($dbPath);
    $token = new Archivable('Token');
    $token->set('cle', $cleToken);
    $tokens = $arch->restituer($token);
    if (count($tokens) == 1) {
        $token = $tokens[0];
        $newPass = $auth->genererToken(12);
        $user = new Archivable('User');
        $userNew = new Archivable('User');
        $user->set('mail', $token->get('mail'));
        $userNew->set('pass', md5($newPass));
        $nomSite = Config::get('nomSite');
        $adresseSite = Config::get('adresseSite');
        $expediteur = '"' . $nomSite . '"<robot@' . $adresseSite . '>';
        $sujet = "Votre nouveau mot de passe";
        $message = 'Bonjour ' . $token->get('login') . ', <br />' . PHP_EOL . '<br />' . PHP_EOL . 'Suite a votre demande de récupération, voici votre nouveau de mot de passe : <b>' . $newPass . '</b><br />' . PHP_EOL . '<br />' . PHP_EOL . 'Ceci est un message automatique. Merci de ne pas y repondre.';
        Mail::envoyer($token->get('mail'), $expediteur, $sujet, $message);
        $arch->modifier($user, $userNew);
        $arch->supprimer($token);
        $retour = ['etatReinit' => 'ok'];
    } else {
        $retour = ['etatReinit' => 'noToken'];
    }
    return $retour;
}
Example #3
0
 public static function setVal($champ, $valeur)
 {
     $arch = new Archiviste();
     $conf = new Archivable('Config');
     $conf->set('nom', $champ);
     $newConf = new Archivable('Config');
     $newConf->set('val', $valeur);
     $confs = $arch->modifier($conf, $newConf);
 }
Example #4
0
 public function listerUsers()
 {
     //creation des objets qui vont contenir leur fonctions respectives
     $arch = new Archiviste();
     $user = new User();
     //ici on va recuperer les section dans la BDD
     $usersListe = $arch->restituer($user);
     $usersListe = $arch->trier($usersListe, 'login', true);
     return $usersListe;
 }
Example #5
0
 public function getNewsMenu()
 {
     $arch = new Archiviste();
     $menu = new Archivable('Menu');
     $menu->set('mod', 'news');
     $menus = $arch->restituer($menu);
     $menu = false;
     if (count($menus) > 0) {
         $menu = $menus[0];
     }
     return $menu;
 }
Example #6
0
 public static function news()
 {
     $article = new Archivable('Article');
     $article->set('pageNews', 'oui');
     $arch = new Archiviste(Article::$dbSite);
     //recuperation de tous les article
     $articles = $arch->restituer($article);
     $articles = $arch->trier($articles, 'date', false);
     $nbArticles = count($articles);
     for ($i = 0; $i < $nbArticles; $i++) {
         if ($articles[$i]->get('comment') == "oui") {
             $comment = new Archivable("Commentaire");
             $comment->set('id_article', $articles[$i]->get('id'));
             $listeComm = $arch->restituer($comment);
             $articles[$i]->set('nbrComment', count($listeComm));
         }
     }
     return $articles;
 }
Example #7
0
function mailCreation($nom, $time, $idEvent)
{
    include '../../../core/model/Mail.php';
    $date = Agenda::timeToDate($time);
    $nomSite = Config::getVal('nom');
    $adresseSite = Config::getVal('adresse');
    $expediteur = '"' . $nomSite . '"<robot@' . $adresseSite . '>';
    $sujet = "Nouvel evenement sur " . $nomSite;
    $arch = new Archiviste();
    $user = new User();
    $users = $arch->restituer($user);
    foreach ($users as $user) {
        $mail = $user->get('mail');
        $notif = $user->get('notifEvent');
        $login = $user->get('login');
        if ($mail && $notif != 'n') {
            $message = 'Bonjour ' . $login . ', <br />' . PHP_EOL . '<br />' . PHP_EOL . 'L\'évenement <b>' . $nom . '</b> a été ajouté sur le site ' . $nomSite . '. Il aura lieu le ' . $date . '<br />' . PHP_EOL . '<br />' . PHP_EOL . 'Pour y accéder, cliquez sur le lien suivant : <a href="http://' . $adresseSite . '/?mod=raidplanner&action=event&id=' . $idEvent . '">' . $nom . '</a><br />' . PHP_EOL . '<br />' . PHP_EOL . '<br />' . PHP_EOL . 'Si vous ne souhaitez plus recevoir ces notifications, consultez vos <a href="http://' . $adresseSite . '/?mod=raidplanner&action=options">options</a>.' . PHP_EOL . '<br />' . PHP_EOL . 'Ceci est un message automatique. Merci de ne pas y repondre. ';
            Mail::envoyer($mail, $expediteur, $sujet, $message);
        }
    }
}
Example #8
0
function majProfil(&$vueForum)
{
    $auth = new Auth();
    $user = $auth->infoUser();
    if ($user) {
        $traitementOk = true;
        $message = '';
        $arch = new Archiviste();
        $userMAJ = new User();
        //recuperation de la requete
        $urlAvatar = '';
        $signature = '';
        if (isset($_REQUEST['urlAvatar']) && !Securisator::checkIntrusion($_REQUEST['urlAvatar'])) {
            $urlAvatar = $_REQUEST['urlAvatar'];
        }
        if (isset($_REQUEST['signature']) && !Securisator::checkIntrusion($_REQUEST['signature'])) {
            $signature = $_REQUEST['signature'];
        }
        if (isset($_REQUEST['notifMP'])) {
            $userMAJ->set('notifMP', 'x');
        } else {
            $userMAJ->set('notifMP', 'n');
        }
        if ($urlAvatar) {
            $userMAJ->set('avatar', $urlAvatar);
        }
        if ($signature) {
            $userMAJ->set('sign', $signature);
        }
        $arch->modifier($user, $userMAJ);
        $message = '<div class="alert alert-success" role="alert">Mise a jour effectuée.</div>';
        $ariane = '
		<ol class="breadcrumb">
		  <li><a href="./?mod=forum"> Forum </a></li>
		  <li>Profil</li>
		</ol>';
        $vueForum->setBreadCrumb($ariane);
        $user = $auth->infoUser();
        $vueForum->pageProfil($user, $message);
    }
}
Example #9
0
    }
    return $html;
}
//====================== MAIN ===============================
$menus = Menu::lister();
$menu = forgerMenu($menus);
$stylePage = '';
$styleMenu = '';
$categ = 0;
$nomPage = '';
//on utilise les atributs specifiques au menu pour le header pour tous les mods sauf le forum et l'agenda
if (isset($_GET['id'])) {
    $categ = $_GET['id'];
    $infosPage = new Archivable('Menu');
    $infosPage->set('id', $categ);
    $arch = new Archiviste();
    $infosMenusRecup = $arch->restituer($infosPage);
    if (count($infosMenusRecup) == 1) {
        $infosPage = $infosMenusRecup[0];
    }
    if ($infosPage->get('metaDesc')) {
        $metaDesc = $infosPage->get('metaDesc');
        $head .= '<meta name="description" content="' . $infosPage->get('metaDesc') . '">
		';
    }
    $nomPage = $infosPage->get('nom');
    $styleMenu = $infosPage->get('stylePage');
    if ($styleMenu) {
        $stylePage = $styleMenu;
    }
}
Example #10
0
    }
    return 'templates/' . $templatePath . '/';
}
//initialization of variables site
$switcher = null;
$scripts = '';
$head = '';
$nomSite = Config::getVal('nom');
$metaDesc = false;
$indexPath = 'index.php';
$stylePage = '';
if (isset($_GET['mod'])) {
    $switcher = $_GET['mod'];
} else {
    $idHome = Config::getVal('idHome');
    $arch = new Archiviste();
    $menu = new Archivable('Menu');
    $menu->set('id', $idHome);
    $menus = $arch->restituer($menu);
    if (count($menus) > 0) {
        $menu = $menus[0];
        $switcher = $menu->get('mod');
        $_GET['id'] = $idHome;
        $_GET['mod'] = $switcher;
    }
}
$templatePath = getTemplatePath();
//inclusion du module selectionné
if (in_array($switcher, $modList)) {
    include 'mods/' . $switcher . '/controller/root.php';
} else {
Example #11
0
<?php

include '../metier/Archivable.php';
include '../metier/Archiviste.php';
include '../metier/Ribosome.php';
//########################################################################################################
$arch = new Archiviste();
$menu = new Archivable('Menu');
$menus = $arch->restituer($menu);
$menus = $arch->trier($menus, 'ordre', true);
$nbMenu = count($menus);
$json = array('statut' => 'ok');
$json['menus'] = array();
for ($i = 0; $i < $nbMenu; $i++) {
    $json['menus'][$i] = array('id' => strval($menus[$i]->get('id')), 'mod' => $menus[$i]->get('mod'), 'idParent' => $menus[$i]->get('id_parent'), 'nom' => $menus[$i]->get('nom'));
}
echo json_encode($json);
Example #12
0
 function getFil($idFil)
 {
     $arch = new Archiviste($this->dbPath);
     $fil = new Archivable('ForumFil');
     $fil->set('id', $idFil);
     //ici on va recuperer les fils dans la BDD
     $fils = $arch->restituer($fil);
     //$nom= false;
     $nbFils = count($fils);
     if ($nbFils > 0) {
         $fil = $fils[0];
     }
     return $fil;
 }
Example #13
0
function deplacerFil()
{
    $reponse = array('statut' => 'ok');
    $idFil = convertDataSent($_REQUEST['idFil']);
    $idNouvelleSec = convertDataSent($_REQUEST['idNouvelleSec']);
    $arch = new Archiviste();
    $testSection = new Section();
    $testSection->set('id', $idNouvelleSec);
    $blobSection = $arch->restituer($testSection);
    if (count($blobSection) == 1) {
        $filAncien = new Fil();
        $filAncien->set('id', $idFil);
        $filNouveau = new Fil();
        $filNouveau->set('idSection', $idNouvelleSec);
        $arch->modifier($filAncien, $filNouveau);
    } else {
        $reponse = array('statut' => 'nok');
    }
    return $reponse;
}
Example #14
0
 private function cleanExpire()
 {
     $arch = new Archiviste();
     $token = new Token();
     $tokens = $arch->restituer($token);
     $toDay = time();
     foreach ($tokens as $tokenTemp) {
         $token = new Token();
         $token->setAttributs($tokenTemp->getAttributs());
         $expire = $token->get("expire");
         if ($expire < $toDay) {
             $arch->supprimer($token);
         }
     }
 }
Example #15
0
function supprimerCompte(&$vueAuth)
{
    $auth = new Auth();
    $user = $auth->checkStatut();
    if ($user && ($retour['statut'] = 'connect')) {
        $arch = new Archiviste();
        $userD = new User();
        $userD->set('id', $user['id']);
        $eventInscrit = new Archivable('EventInscrit');
        $eventInscrit->set('idUser', $user['id']);
        $arch->supprimer($userD);
        $arch->supprimer($eventInscrit);
        deconnexion($vueAuth);
    } else {
        $vueAuth->setContentDeco();
    }
}
Example #16
0
function genererRss()
{
    $article = new Article();
    $article->set('pageNews', 'oui');
    $arch = new Archiviste();
    $articles = $arch->restituer($article);
    $rssGen = new RssGen();
    $rssGen->setArtList($articles);
    $rssGen->generer();
}
Example #17
0
function supprEntite()
{
    $id = $_GET['idEntite'];
    $arch = new Archiviste();
    $entite = new Entite();
    $entite->set('id', $id);
    $entites = $arch->supprimer($entite);
}