private static function save() { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Valider si une banque existe déjà dans ce lieu $query = 'SELECT casino_id' . ' FROM ' . DB_PREFIX . 'casino' . ' WHERE casino_lieu=:casinoLieu' . ' AND casino_id!=:casinoId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':casinoLieu', $_POST['casino_lieu'], PDO::PARAM_STR); $prep->bindValue(':casinoId', $_POST['id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr !== false) { return fctErrorMSG('Un casino existe déjà dans ce lieu.', '?mj=Lieu_CasinoMod', array('id' => $_POST['id']), false); } $query = 'UPDATE ' . DB_PREFIX . 'casino' . ' SET' . ' casino_lieu = :lieu,' . ' casino_nom = :nom,' . ' casino_cash = :cash' . ' WHERE casino_id=:casinoId;'; $prep = $db->prepare($query); $prep->bindValue(':lieu', $_POST['casino_lieu'], PDO::PARAM_STR); $prep->bindValue(':nom', $_POST['casino_nom'], PDO::PARAM_STR); $prep->bindValue(':cash', $_POST['casino_cash'], PDO::PARAM_INT); $prep->bindValue(':casinoId', $_POST['id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; return true; }
/** * Initialise la session. */ private function sessionStart() { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante $db->beginTransaction(); $this->sessId = $this->getCookieNo(); if (empty($this->sessId)) { $this->sessId = $this->generateSessId(); setcookie('sessId', $this->sessId, time() + 60 * 60 * 24 * 30); //Créer le cookie (expire après 30 jours) } elseif (!isset($_COOKIE['sessId'])) { fctErrorMSG("Votre navigateur ne supporte pas les cookies, vous devez les accepter pour ce site."); die; } $this->createOrExtendSession(); $db->commit(); //Effacer les sessions expirées $query = 'DELETE FROM ' . DB_PREFIX . 'session' . ' WHERE expiration < :expiration;'; $prep = $db->prepare($query); $prep->bindValue(':expiration', CURRENT_TIME, PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { if (!isset($_POST['db_id'])) { return fctErrorMSG("Aucun item sélectionné."); } if ($_POST['db_id'] < 10) { return fctErrorMSG("Item système, suppression interdite."); } $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante $query = 'DELETE FROM `' . DB_PREFIX . 'item_db`' . ' WHERE `db_id` = :db_id' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':db_id', $_POST['db_id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; //Suppression de l'item en inventaire $query = 'DELETE FROM `' . DB_PREFIX . 'item_inv`' . ' WHERE `inv_dbid` = :db_id'; $prep = $db->prepare($query); $prep->bindValue(':db_id', $_POST['db_id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; //Suppression des actions actuelles $query = 'DELETE FROM `' . DB_PREFIX . 'item_menu`' . ' WHERE `item_dbid` = :db_id'; $prep = $db->prepare($query); $prep->bindValue(':db_id', $_POST['db_id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; die("<script>location.href='?mj=Item_Sac';</script>"); }
public static function generatePage(&$tpl, &$session, &$account) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['id'])) { return fctErrorMSG('Données requises manquantes. (cheat)'); } //Trouver les informations sur le perso $query = 'SELECT id, nom' . ' FROM ' . DB_PREFIX . 'perso' . ' WHERE id=:persoId ' . ' AND userid=:userId' . ' AND inscription_valide="mod"' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':persoId', $_GET['id'], PDO::PARAM_INT); $prep->bindValue(':userId', $account->getId(), PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { return fctErrorMSG('Ce personnage n\'existe pas, ne vous appartiend pas, ou n\'est pas en phase de refus. (cheat)'); } $tpl->set('PERSO', $arr); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/delPerso.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { if (!$mj->accessDev()) { return fctErrorMSG('Vous n\'avez pas accès à cette page.'); } if (!isset($_GET['id'])) { return fctErrorMSG('Id manquant.'); } $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Récupérer l'erreur dans la base de donnée $query = 'SELECT * FROM `' . DB_PREFIX . 'buglog`' . ' WHERE `id` = :id' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':id', $_GET['id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $result = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if (count($result) == 0) { return fctErrorMSG('L\'erreur n\'existe pas.'); } $tpl->set("ERROR", $result); return $tpl->fetch($account->getSkinRemotePhysicalPath() . '/html/Mj/Dev/ErrLogDetails.htm'); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['id']) || empty($_GET['id'])) { return fctErrorMSG('Vous devez sélectionner un personnage.'); } //suppression du perso si le MJ est sûr if (isset($_GET['action']) && $_GET['action'] == 'suppr') { self::delete($_GET['id'], $mj->getNom()); die("<script type=\"text/javascript\">location.href='?mj=index';</script>"); } //Trouver les infos sur le persos : $query = 'SELECT *' . ' FROM ' . DB_PREFIX . 'perso' . ' WHERE id=:id' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':id', $_GET['id'], PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; //envoie des infos à l'autre page (tpl) $tpl->set('perso', $arr); return $tpl->fetch($account->getSkinRemotePhysicalPath() . '/html/Mj/Perso/Del.htm'); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Valider l'état du perso if (!$perso->isConscient()) { return fctErrorMSG('Vous n\'êtes pas en état d\'effectuer cette action.'); } //Afficher la liste des livres disponibles dans ce lieu $query = 'SELECT l.* ' . ' FROM ' . DB_PREFIX . 'lieu_livre as b' . ' LEFT JOIN ' . DB_PREFIX . 'item_db as l ON (l.db_id = b.itemDbId)' . ' WHERE lieuId=:lieuId' . ' ORDER BY l.db_nom ASC;'; $prep = $db->prepare($query); $prep->bindValue(':lieuId', $perso->getLieu()->getId(), PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $arrLivre = $prep->fetchAll(); $prep->closeCursor(); $prep = NULL; $LIVRES = array(); if (count($arrLivre) != 0) { foreach ($arrLivre as &$arr) { $LIVRES[] = new Member_ItemLivre($arr); } $tpl->set('LIVRES', $LIVRES); } //Retourner le template bâti. return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/BiblioListe.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { if (!$perso->isConscient()) { return fctErrorMSG('Vous n\'êtes pas en état d\'effectuer cette action.'); } //Lister tout les accès média du lieu $i = 0; $mediaAccesEmetteur = array(); $mediaAccesRecepteur = array(); while ($media = $perso->getLieu()->getMediaAcces($i++)) { if ($media->isRecepteur()) { $mediaAccesRecepteur[] = $media; } else { $mediaAccesEmetteur[] = $media; } } //Définir si le perso est gérant $gerant = false; if ($perso->getLieu()->isgerant($perso)) { $gerant = true; } $tpl->set('LIST_MEDIA_ACCES_RECEPTEUR', $mediaAccesRecepteur); $tpl->set('LIST_MEDIA_ACCES_EMETTEUR', $mediaAccesEmetteur); $tpl->set('GERANT', $gerant); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/MediaListe.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Vérifier que le lieu dans lequel est le perso permet bien de recycler les items $query = 'SELECT *' . ' FROM `' . DB_PREFIX . 'lieu_menu`' . ' WHERE `lieutech`=:lieuTech' . ' AND `url`="Recycler"' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':lieuTech', $perso->getLieu()->getNomTech(), PDO::PARAM_STR); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { return fctErrorMSG('Vous n\'êtes pas dans un lieu permettant ce type d\'action.'); } $i = 0; $e = 0; $objets = array(); while ($item = $perso->getInventaire($i++)) { $objets[$e++] = $item; } $tpl->set('OBJETS', $objets); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/Recycler.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //BUT: Démarrer un template propre à cette page $errorUrl = '?popup=1&m=Action_Lieu_Boutique'; //Définir les accès d'administration if (!$perso->getLieu()->isGerant($perso)) { return fctErrorMSG('Vous devez être propriétaire du lieu pour pouvoir l\'administrer.', $errorUrl, array('perso' => $perso, 'lieu' => $lieu)); } //Valider si le lieu actuel est une boutique if (!$perso->getLieu()->isBoutique()) { return fctErrorMSG('Ce lieu n\'est pas une boutique.'); } //LISTER TOUT LES ITEMS EN VENTE DANS LA BOUTIQUE $i = 0; $query = 'UPDATE `' . DB_PREFIX . 'item_inv`' . ' SET `inv_boutiquePrixVente`=:prixVente,' . ' `inv_boutiquePrixAchat`=:prixAchat' . ' WHERE `inv_id`=:invId' . ' LIMIT 1;'; $prep = $db->prepare($query); while ($item = $perso->getLieu()->getBoutiqueInventaire($i++)) { $btvnt = str_replace(",", ".", $_POST['btvnt_' . $item->getInvId()]); $btach = str_replace(",", ".", $_POST['btach_' . $item->getInvId()]); $btvnt = is_numeric($btvnt) ? $btvnt : -1; $btach = is_numeric($btach) ? $btach : -1; $prep->bindValue(':prixVente', $btvnt, PDO::PARAM_INT); $prep->bindValue(':prixAchat', $btach, PDO::PARAM_INT); $prep->bindValue(':invId', $item->getInvId(), PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); } $prep->closeCursor(); $prep = NULL; $tpl->set('PAGE', 'Action_Lieu_BoutiqueAdmin'); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/action_redirect.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { //Valider si le # du compte à été recu if (!isset($_GET['id'])) { return fctErrorMSG('Id du compte manquant.'); } //Valider si le # de la banque a été reçu if (!isset($_GET['bid'])) { return fctErrorMSG('Id de la banque manquant.'); } //Passer l'id de la banque au template (pour le retour) $tpl->set('BANKID', $_GET['bid']); try { $compte = Member_BanqueCompte::getCompteFromId($_GET['id']); } catch (Exception $e) { return fctErrorMSG($e->getMessage()); } //Passer le compte au template $tpl->set('COMPTE', $compte); //Charger les transactions du compte $transactions = $compte->getTransactionsAuto(); if (!empty($transactions)) { $tpl->set('TRANSACTIONS', $transactions); } return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Lieu/BanqueTransactionAuto.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['id'])) { return fctErrorMSG('Données requises manquantes.'); } //Instancier le lieu try { $lieu = Member_LieuFactory::createFromId((int) $_GET['id']); } catch (Exception $e) { die($e->getMessage()); } $tpl->set('LIEU_TECH', $lieu->getNomTech()); //Lister tout les items que le lieu possède (section de gauche) $i = 0; $e = 0; $f = 0; $arrItem = array(); //Listing d'un lieu while ($item = $lieu->getBoutiqueInventaire($i++)) { $arrItem[$e++] = $item; } usort($arrItem, "compare"); $tpl->set('ITEMS', $arrItem); $tpl->set('CASIER', isset($_GET['cid']) ? $_GET['cid'] : false); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Lieu/Boutique.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['id']) || !isset($_POST['yes'])) { return fctErrorMSG('Données requises manquantes. (cheat)'); } if ($session->getVar('persoId') == $_GET['id']) { $session->setVar('persoId', NULL); } //Trouver les informations sur le perso / Valider s'il est authorisé à être modifié $query = 'SELECT id' . ' FROM ' . DB_PREFIX . 'perso' . ' WHERE id=:persoId' . ' AND userid=:userId' . ' AND inscription_valide="mod"' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':persoId', $_GET['id'], PDO::PARAM_INT); $prep->bindValue(':userId', $account->getId(), PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { return fctErrorMSG('Ce personnage n\'existe pas, ne vous appartiend pas, ou n\'est pas en phase de refus. (cheat)'); } //Apeller la fonction qui gère la suppression de perso. Mj_Perso_Del::delete($_GET['id'], $account->getUser()); //Augmenter le nombre de création de perso de 1 $query = 'UPDATE ' . DB_PREFIX . 'account' . ' SET auth_creation_perso=auth_creation_perso+1' . ' WHERE id=:userId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':userId', $account->getId(), PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); //Retourner le template complété/rempli $tpl->set('PAGE', 'News'); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/redirect.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { //Valider si le # du compte à été recu if (!isset($_POST['compte'])) { return fctErrorMSG('Ce compte est invalide (aucun compte).'); } //Passer le # de compte au template $tpl->set('COMPTE', $_POST['compte']); try { $compte = Member_BanqueCompte::getCompteFromNoCompte($_POST['compte']); } catch (Exception $e) { return fctErrorMSG($e->getMessage()); } //Vérifier si le compte appartiend bien au perso if ($compte->getIdPerso() != $perso->getId()) { return fctErrorMSG('Ce compte ne vous appartiend pas.'); } //Vérifier si le compte est autorisé à avoir des transactions automatiques if (!$compte->authAutoTransactions()) { return fctErrorMSG('Ce compte n\'est pas autorisé à faire des transactions automatiques.'); } //Charger les transactions du compte $transactions = $compte->getTransactionsAuto(); if (!empty($transactions)) { $tpl->set('TRANSACTIONS', $transactions); } return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/BanqueTransactionAuto.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['id'])) { return fctErrorMSG('Vous devez sélectionner un item.'); } if (!is_numeric($_GET['id'])) { return fctErrorMSG('ID non numérique'); } //Trouver des informations sur l'item $query = 'SELECT *' . ' FROM `' . DB_PREFIX . 'item_inv`' . ' WHERE `id` = :id;'; $prep = $db->prepare($query); $prep->bindValue(':id', $_GET['id'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $result = $prep->fetchAll(); $prep->closeCursor(); $prep = NULL; if (count($result) == 0) { return fctErrorMSG('Cet item n\'existe pas.'); } //Effectuer le rendu tableau de l'inventaire $query = 'SELECT *' . ' FROM `' . DB_PREFIX . 'item_inv`' . ' INNER JOIN `' . DB_PREFIX . 'item_db` ON (`db_id` = `inv_dbid`)' . ' WHERE `inv_itemid` = ' . mysql_real_escape_string($_GET['id']) . ';'; $tableHTML = generateInventaireTable($tpl, $query, 'Item_Inventaire', $_GET['id'], '800px'); if (!empty($tableHTML)) { $tpl->set('ITEMS_TABLE', $tableHTML); } //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Item/Inventaire.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //BUT: Démarrer un template propre à cette page $coutPa = 50; //Vérifier l'état du perso if (!$perso->isAutonome()) { return fctErrorMSG('Votre n\'êtes pas en état d\'effectuer cette action.'); } //Valider si le lieu actuel est un labo if (!$perso->getLieu()->isLaboDrogue()) { return fctErrorMSG('Ce lieu n\'est pas un laboratoire de drogue.'); } //LISTER TOUTES LES DROGUES_SUBSTANCS QUE LE PERSO POSSÈDE SUR LUI $i = 0; $items = array(); while ($item = $perso->getInventaire($i++)) { if ($item instanceof Member_ItemDrogueSubstance) { $items[] = $item; } } $tpl->set('INV_PERSO', $items); $tpl->set('COUT_PA', $coutPa); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/LaboDrogue.htm', __FILE__, __LINE__); }
private static function save() { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!is_numeric($_POST['carte_nip'])) { return fctErrorMSG('Le NIP doit être un entier.', '?mj=Lieu_BanqueCompteMod', null, false); } //Valider si le # de banque+compte existe $query = 'SELECT compte_id' . ' FROM ' . DB_PREFIX . 'banque_comptes' . ' WHERE compte_banque=:banqueNo' . ' AND compte_compte=:compte' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':banqueNo', $_POST['carte_banque'], PDO::PARAM_INT); $prep->bindValue(':compte', $_POST['carte_compte'], PDO::PARAM_STR); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { return fctErrorMSG('Le # de compte (' . $_POST['carte_banque'] . '-' . $_POST['carte_compte'] . ') est innexistant.', '?mj=Lieu_BanqueCompteCarteAdd&id=' . $_GET['id'], null, false); } $query = 'INSERT INTO ' . DB_PREFIX . 'banque_cartes' . ' (carte_banque, carte_compte, carte_nom, carte_nip, carte_valid)' . ' VALUES' . ' (:banqueNo, :compte, :nom, :nip, :valid);'; $prep = $db->prepare($query); $prep->bindValue(':banqueNo', $_POST['carte_banque'], PDO::PARAM_INT); $prep->bindValue(':compte', $_POST['carte_compte'], PDO::PARAM_STR); $prep->bindValue(':nom', $_POST['carte_nom'], PDO::PARAM_STR); $prep->bindValue(':nip', $_POST['carte_nip'], PDO::PARAM_STR); $prep->bindValue(':valid', $_POST['carte_valid'], PDO::PARAM_STR); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante $errorUrl = '?popup=1&m=Action_Lieu_Guichet'; //Vérifier l'état du perso if (!$perso->isAutonome()) { return fctErrorMSG('Votre n\'êtes pas en état d\'effectuer cette action.', $errorUrl); } //Vérifier si une carte à été sélectionnée if (!isset($_POST['carteid']) || !is_numeric($_POST['carteid'])) { return fctErrorMSG('Aucune carte sélectionnée.', $errorUrl); } $tpl->set('CARD_ID', $_POST['carteid']); //ToDo: Vérifier si le # de carte est valide $query = 'SELECT *' . ' FROM ' . DB_PREFIX . 'banque_cartes' . ' WHERE carte_id = :carteId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':carteId', $_POST['carteid'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { return fctErrorMSG('Cette carte à été désactivée.', $errorUrl); } //Afficher le clavier numérique pour composer le NIP return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/Guichet2.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Afficher un message critique sur la page principale. if (defined('WARNING_MESSAGE') && WARNING_MESSAGE !== NULL) { $tpl->set('WARNING_MESSAGE', WARNING_MESSAGE); } //Générer le contenu de la page $query = 'SELECT db_param' . ' FROM ' . DB_PREFIX . 'item_db' . ' WHERE db_id=:livreId' . ' LIMIT 1;'; //4 = Texte page d'intro $prep = $db->prepare($query); $prep->bindValue(':livreId', 4, PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $content = $prep->fetch(); if ($content === false) { return fctErrorMSG('Texte non-trouvé :('); } //Placer le contenu de la page dans le template $tpl->set('PAGE_CONTENU', BBCodes(stripslashes($content[0]))); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Visitor/main.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_GET['u']) || !isset($_GET['c'])) { return fctErrorMSG('Adresse invalide.'); } $query = 'SELECT code_validation' . ' FROM ' . DB_PREFIX . 'account' . ' WHERE user=:user' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':user', $_GET['u'], PDO::PARAM_STR); $prep->execute($db); $content = $prep->fetch(); if ($content === false) { return fctErrorMSG('Aucune correspondance pour ce nom d\'utilisateur.'); } if ($content[0] != $_GET['c']) { return fctErrorMSG('Le code de validation est invalide.'); } $query = 'UPDATE ' . DB_PREFIX . 'account' . ' SET code_validation = NULL' . ' WHERE user = :user' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':user', $_GET['u'], PDO::PARAM_STR); $prep->execute($db); //Retourner le template complété/rempli if (isset($_GET['change'])) { return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Visitor/validerEmailChange.htm', __FILE__, __LINE__); } else { return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Visitor/validerEmail.htm', __FILE__, __LINE__); } }
private static function save() { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Valider si un casino existe déjà dans ce lieu $query = 'SELECT casino_id' . ' FROM ' . DB_PREFIX . 'casino' . ' WHERE casino_lieu=:casinoLieu' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':casinoLieu', $_POST['casino_lieu'], PDO::PARAM_STR); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr !== false) { return fctErrorMSG('Un casino existe déjà dans ce lieu.', '?mj=Lieu_CasinoAdd', null, false); } $query = 'INSERT INTO ' . DB_PREFIX . 'casino' . ' (casino_lieu, casino_nom, casino_cash)' . ' VALUES' . ' (:lieu, :nom, :cash);'; $prep = $db->prepare($query); $prep->bindValue(':lieu', $_POST['casino_lieu'], PDO::PARAM_STR); $prep->bindValue(':nom', $_POST['casino_nom'], PDO::PARAM_STR); $prep->bindValue(':cash', $_POST['casino_cash'], PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; return true; }
public static function generatePage(&$tpl, &$session, &$account) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Définir la page à afficher ( par défaut: resume ) if (!isset($_GET['p'])) { $p = "resume"; } elseif (is_numeric($_GET['p'])) { $p = (int) $_GET['p']; } else { return fctErrorMSG('page introuvable'); } //Validation de la page if ($p != "resume" && !is_numeric($p)) { return fctBugReport("Format invalide", $p, __FILE__, __LINE__, __FUNCTION__, __CLASS__, __METHOD__, true, true, true); } if (is_numeric($p) && ($p < 1 || $p > 9)) { return fctBugReport("Range invalide", $p, __FILE__, __LINE__, __FUNCTION__, __CLASS__, __METHOD__, true, true, true); } //Fetcher le contenu adéquat $pageContenu = $tpl->fetch($account->getSkinRemotePhysicalPath() . '../_common/background/bg_' . $p . '.htm', __FILE__, __LINE__); $pageMenu = $tpl->fetch($account->getSkinRemotePhysicalPath() . '../_common/background/bg_menu.htm', __FILE__, __LINE__); //Placer le contenu de la page dans le template et appliquer les BBCodes si nécéssaires $tpl->set('PAGE_MENU', $pageMenu); $tpl->set('PAGE_CONTENU', BBCodes($pageContenu, false, false)); //Ne pas remplacer les sauts de lignes //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Visitor/background.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_POST['casierId'])) { return fctErrorMSG('Vous devez sélectionner un casier.', '?mj=Lieu_Inventaire&id=' . $_GET['id'] . '&cid=' . $_POST['casier'], null, false); } $query = 'SELECT *' . ' FROM ' . DB_PREFIX . 'lieu_casier' . ' WHERE id=:casierId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':casierId', $_POST['casierId'], PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; //Créer l'objet Casier (à qui donner l'item) $casier = new Member_Casier($arr); foreach ($_POST['invId'] as $itemId) { //Si l'item ne supporte pas la gestion de quantité, simplement considérer sa quantité comme étant de 1. if (!isset($_POST['inv' . $itemId])) { $_POST['inv' . $itemId] = 1; } //Créer l'objet item à transférer $item = Member_ItemFactory::createFromInvId($itemId); //Si l'item est caché, le dé-cacher if ($item->iscache()) { $item->decacherObjet(); } $item->transfererVersCasier($casier, $_POST['inv' . $itemId]); } //Retourner le template complété/rempli $tpl->set('PAGE', 'Lieu_Inventaire&id=' . $_GET['id']); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/redirect.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //BUT: Démarrer un template propre à cette page //Valider si le joueur à accès à Internet if (Member_Action_Item_Navigateur::checkAccess($perso) === false) { return fctErrorMSG('Vous n\'avez pas accès à Internet.'); } //Vérifier l'état du perso if (!$perso->isConscient()) { die('01|' . rawurlencode('Votre n\'êtes pas en état d\'effectuer cette action.')); } if (!is_numeric($_POST['no'])) { die('13|Id de la page invalide'); } //Valider si la personne a le droit de modifier la page $query = 'SELECT a.modifier, a.admin, p.*, pa.id as paid, w.url' . ' FROM ' . DB_PREFIX . 'sitesweb_pages as p' . ' LEFT JOIN ' . DB_PREFIX . 'sitesweb_acces as a ON (a.site_id=p.site_id)' . ' LEFT JOIN ' . DB_PREFIX . 'sitesweb_pages_acces as pa ON (pa.page_id = p.id AND user_id = a.id)' . ' LEFT JOIN ' . DB_PREFIX . 'sitesweb as w ON (w.id = a.site_id)' . ' WHERE p.id =:id' . ' AND a.user=:user' . ' AND a.pass=:pass' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':user', $_POST['user'], PDO::PARAM_STR); $prep->bindValue(':pass', $_POST['pass'], PDO::PARAM_STR); $prep->bindValue(':id', $_POST['no'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; if ($arr === false) { die('10|' . rawurlencode('Cette URL n\'existe pas.')); } if ($arr['modifier'] == '0' && $arr['admin'] == '0') { die('11|' . rawurlencode('Vous ne possèdez pas les autorisations nécésaires (1).')); } if ($arr['admin'] == '0' && $arr['acces'] == 'priv' && empty($arr['paid'])) { die('12|' . rawurlencode('Vous ne possèdez pas les autorisations nécésaires (2).')); } //Tout est ok, Créer la page !!!!! if ($_POST['adddel'] == 'true') { $query = 'INSERT INTO ' . DB_PREFIX . 'sitesweb_pages_acces (`user_id`,`page_id`) VALUES (:user_id, :page_id);'; $prep = $db->prepare($query); $prep->bindValue(':user_id', $_POST['userid'], PDO::PARAM_INT); $prep->bindValue(':page_id', $_POST['no'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; } else { $query = 'DELETE FROM ' . DB_PREFIX . 'sitesweb_pages_acces' . ' WHERE `user_id` =:user_id' . ' AND `page_id` =:page_id;'; $prep = $db->prepare($query); $prep->bindValue(':user_id', $_POST['userid'], PDO::PARAM_INT); $prep->bindValue(':page_id', $_POST['no'], PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; } die('OK|' . $perso->getPa() . '|' . $arr['url'] . '/' . $_POST['no']); //Tout est OK }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //BUT: Démarrer un template propre à cette page //Vérifier l'état du perso if (!$perso->isAutonome()) { return fctErrorMSG('Votre n\'êtes pas en état d\'effectuer cette action.'); } //Rechercher le casino $query = 'SELECT *' . ' FROM ' . DB_PREFIX . 'casino' . ' WHERE casino_lieu=:nomTech' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':nomTech', $perso->getLieu()->getNomTech(), PDO::PARAM_STR); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; //Valider si le casino existe if (!$arr) { return fctErrorMSG('Ce casino est actuellement innaccessible ou innexistante (' . $perso->getLieu()->getNomTech() . ').'); } $tpl->set('CASINO', $arr); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/CasinoMachine.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$perso) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //BUT: Démarrer un template propre à cette page //Rechercher la banque $query = 'SELECT *' . ' FROM ' . DB_PREFIX . 'banque' . ' WHERE banque_lieu=:nomTech' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':nomTech', $perso->getLieu()->getNomTech(), PDO::PARAM_STR); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; //Valider si la banque existe if ($arr === false) { return fctErrorMSG('Cette banque n\'existe pas (' . $perso->getLieu()->getNomTech() . ').'); } //Instancier la banque $banque = new Member_Banque($arr); //Passer objets au template $tpl->set('PA', $perso->getPa()); $tpl->set('CASH', $perso->getCash()); $tpl->set('BANQUE', $banque); $tpl->set('BANK_ACCOUNT_NAME', $perso->getNom()); //Afficher la page return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Member/Action/Lieu/Banque_compte_add.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Options de tri $arrTriable = array('db_id', 'db_nom', 'db_valeur', 'db_pr'); if (isset($_GET['tri']) && isset($_GET['par'])) { if (!in_array($_GET['tri'], array('ASC', 'DESC'), true)) { return fctErrorMSG('Paramètre de tri invalide(1).'); } if (!in_array('db_' . $_GET['par'], $arrTriable, true)) { return fctErrorMSG('Paramètre de tri invalide(2).'); } $field = 'db_' . $_GET['par']; $sort = $_GET['tri']; } else { $field = 'db_soustype, db_nom'; $sort = 'ASC'; } $query = 'SELECT ' . implode(',', $arrTriable) . ',' . ' COUNT(`inv_id`) as `qte_circu`' . ' FROM `' . DB_PREFIX . 'item_db`' . ' LEFT JOIN `' . DB_PREFIX . 'item_inv` ON(`inv_dbid` = `db_id`)' . ' WHERE `db_type` = "talkiewalkie"' . ' GROUP BY `db_id`' . ' ORDER BY ' . $field . ' ' . $sort . ';'; $prep = $db->prepare($query); $prep->executePlus($db, __FILE__, __LINE__); $result = $prep->fetchAll(); $prep->closeCursor(); $prep = NULL; if (count($result) > 0) { $tpl->set("ITEMS", $result); } return $tpl->fetch($account->getSkinRemotePhysicalPath() . '/html/Mj/Item/Talkiewalkie.htm'); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { if (!isset($_POST['db_id']) && isset($_GET['id'])) { $_POST['db_id'] = $_GET['id']; } if (!isset($_POST['db_id'])) { return fctErrorMSG('Vous devez sélectionner un objet.'); } $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (isset($_POST['save'])) { self::save(); die("<script>location.href='?mj=Item_Livre';</script>"); } $tpl->set('ACTIONTYPETXT', "Modifier"); $tpl->set('SUBMITNAME', 'Mod'); $tpl->set('SHOWID', true); $query = 'SELECT `db_id`,' . ' `db_nom`,' . ' `db_desc`,' . ' `db_pass`,' . ' `db_img`,' . ' `db_pr`,' . ' `db_param`,' . ' `db_valeur`,' . ' `db_resistance`,' . ' `db_notemj`' . ' FROM `' . DB_PREFIX . 'item_db`' . ' WHERE `db_id` = :db_id;'; $prep = $db->prepare($query); $prep->bindValue(':db_id', $_POST['db_id'], PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $arr = $prep->fetch(); $prep->closeCursor(); $prep = NULL; $tpl->set('ITEM', $arr); //lister le dossier d'image $dir2 = dir($account->getSkinRemotePhysicalPath() . "../_common/items/"); $counter = 0; $arrurl = array(); $arr = array(); while ($url = $dir2->read()) { $arrurl[$counter++] = $url; } natcasesort($arrurl); $arrurl = array_values($arrurl); for ($i = 0; $i < count($arrurl); $i++) { if ($arrurl[$i] != '' && substr($arrurl[$i], 0, 1) != '.') { $arr[$i] = $arrurl[$i]; } } $tpl->set('IMGS', $arr); //Générer la liste des actions associable à un lieu $query = 'SELECT `id`, `url`, `caption`' . ' FROM `' . DB_PREFIX . 'item_menu`' . ' WHERE `item_dbid` = :db_id;'; $prep = $db->prepare($query); $prep->bindValue(':db_id', $_POST['db_id'], PDO::PARAM_INT); $prep->execute($db, __FILE__, __LINE__); $result = $prep->fetchAll(); $prep->closeCursor(); $prep = NULL; if (count($result) > 0) { $ACTIONS = array(); foreach ($result as $arr) { $ACTIONS[] = $arr; } $tpl->set('ACTIONS', $ACTIONS); } return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Item/Livre_Addmod.htm'); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante if (!isset($_POST['itemId'])) { return fctErrorMSG('Vous devez sélectionner un item.', '?mj=Lieu_Inventaire&id=' . $_GET['id'], null, false); } //Créer l'objet item vers/dans lequel transférer les items. $itemTo = Member_ItemFactory::createFromInvId($_POST['itemId']); foreach ($_POST['invId'] as $itemId) { //Si l'item ne supporte pas la gestion de quantité, simplement considérer sa quantité comme étant de 1. if (!isset($_POST['inv' . $itemId])) { $_POST['inv' . $itemId] = 1; } //Créer l'objet item à transférer $item = Member_ItemFactory::createFromInvId($itemId); //Si l'item est caché, le dé-cacher if ($item->iscache()) { $item->decacherObjet(); } $item->transfererVersItem($itemTo, $_POST['inv' . $itemId]); } //Retourner le template complété/rempli $tpl->set('PAGE', 'Lieu_Inventaire&id=' . $_GET['id']); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/redirect.htm', __FILE__, __LINE__); }
function generatePage(&$tpl, &$session, &$account) { //BUT: Démarrer un template propre à cette page $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Aller chercher les notices de pré-inscription $query = 'SELECT db_param' . ' FROM ' . DB_PREFIX . 'item_db' . ' WHERE db_id=:livre_id;'; //8 = NOTICES $prep = $db->prepare($query); $prep->bindValue(':livre_id', 8, PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); if ($arr === false) { return fctErrorMSG('Les notices de pré-inscription sont introuvables.'); } $tpl->set('NOTICES', BBCodes(stripslashes($arr['db_param']))); //Aller chercher les règles HJ $query = 'SELECT db_param FROM ' . DB_PREFIX . 'item_db WHERE db_id=:livre_id;'; //6 = Règles HJ $prep = $db->prepare($query); $prep->bindValue(':livre_id', 6, PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $arr = $prep->fetch(); if ($arr === false) { return fctErrorMSG('Texte des règles HJ introuvable.'); } $tpl->set('REGLES', BBCodes(stripslashes($arr['db_param']))); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Visitor/inscription.htm', __FILE__, __LINE__); }