private static function save() { $oldLieu = Member_LieuFactory::createFromId($_POST['LIEU_ID']); $i = 0; while ($media = $oldLieu->getMediaAcces($i++)) { if ($media->getId() == $_POST['id_mediaAcces']) { break; } } if ($media === false) { return fctErrorMSG('L\'accès média #' . $_POST['id_mediaAcces'] . ' n\'existe pas.'); } if (empty($_POST['nom'])) { return fctErrorMSG('Vous devez donner un nom à l\'accès média.'); } if (empty($_POST['channelId'])) { return fctErrorMSG('Vous devez entrer un canal.'); } if (!is_numeric($_POST['lieuId'])) { $newLieu = Member_LieuFactory::createFromNomTech($_POST['lieuId']); $_POST['lieuId'] = $newLieu->getId(); } $media->changeNom($_POST['nom']); $media->changeMediaType($_POST['mediaType']); $media->changeChannelId($_POST['channelId']); $media->changeInteractionType($_POST['interactionType']); $media->changeLieuId($_POST['lieuId']); $media->setNom(); $media->setMediaType(); $media->setChannelId(); $media->setInteractionType(); $media->setLieuId(); die("<script type=\"text/javascript\">location.href='?mj=Lieu_MediaAcces&id=" . $_POST['lieuId'] . "';</script>"); }
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['lieuTech'])) { return fctErrorMSG('Vous devez sélectionner un lieu.', '?mj=Perso_Inventaire&id=' . $_GET['id'], null, false); } //Instancier le lieu try { $lieu = Member_LieuFactory::createFromNomTech($_POST['lieuTech']); } catch (Exception $e) { return fctErrorMSG($e->getMessage()); } 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->transfererVersBoutique($lieu, $_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, &$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, &$mj) { 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()); //$tpl->set('ID', $_GET['id']); //suppression if (isset($_POST['del'])) { $lieu->supprimerBoutiqueHistorique(); } //Lister toutes les transactions $historique = $lieu->getBoutiqueHistorique(); if ($historique != null) { $tpl->set('HISTORIQUE_LIST', $historique); } //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Lieu/BoutiqueHistorique.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 //Instancier le lieu try { $lieu = Member_LieuFactory::createFromId((int) $_GET['id']); } catch (Exception $e) { return fctErrorMSG($e->getMessage()); } //Lister l'inventaire $i = 0; $e = 0; $arrItem = array(); while ($item = $lieu->getItems($i++)) { if (isset($_POST['inv' . $item->getInvId()]) && is_numeric($_POST['inv' . $item->getInvId()]) && $_POST['inv' . $item->getInvId()] != $item->getQte()) { $item->setQte((int) $_POST['inv' . $item->getInvId()]); } if (isset($_POST[$item->getInvId() . '_cache']) && isset($_POST['inv' . $item->getInvId() . 'TauxCache']) && is_numeric($_POST['inv' . $item->getInvId() . 'TauxCache']) && isset($_POST['inv' . $item->getInvId() . 'CacheNo']) && is_numeric($_POST['inv' . $item->getInvId() . 'CacheNo'])) { $item->cacherObjet($_POST['inv' . $item->getInvId() . 'TauxCache'], $_POST['inv' . $item->getInvId() . 'CacheNo']); } elseif ($item->iscache()) { $item->decacherObjet(); } } //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, &$mj) { $dbMgr = DbManager::getInstance(); //Instancier le gestionnaire $db = $dbMgr->getConn('game'); //Demander la connexion existante //Instancier le lieu try { $lieu = Member_LieuFactory::createFromId((int) $_GET['id']); } catch (Exception $e) { return fctErrorMSG($e->getMessage()); } //Lister l'inventaire $i = 0; $arrItem = array(); while ($item = $lieu->getBoutiqueInventaire($i++)) { //Sauvegarder la quantité if (isset($_POST['inv' . $item->getInvId()]) && is_numeric($_POST['inv' . $item->getInvId()]) && $_POST['inv' . $item->getInvId()] != $item->getQte()) { $item->setQte((int) $_POST['inv' . $item->getInvId()]); } //Sauvegarder le prix de vente $prix_vente = $item->getBoutiquePrixVente(); $prix_achat = $item->getBoutiquePrixAchat(); if (isset($_POST['prixvente_' . $item->getInvId()])) { $prix_vente = $_POST['prixvente_' . $item->getInvId()]; } if (isset($_POST['prixachat_' . $item->getInvId()])) { $prix_achat = $_POST['prixachat_' . $item->getInvId()]; } if ($item->getBoutiquePrixVente() != $prix_vente || $item->getBoutiquePrixAchat() != $prix_achat) { $query = 'UPDATE ' . DB_PREFIX . 'item_inv' . ' SET inv_boutiquePrixVente=:prixVente,' . ' inv_boutiquePrixAchat=:prixAchat' . ' WHERE inv_id=:invId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':prixVente', $prix_vente, PDO::PARAM_INT); $prep->bindValue(':prixAchat', $prix_achat, PDO::PARAM_INT); $prep->bindValue(':invId', $item->getInvId(), PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; } } //Retourner le template complété/rempli $tpl->set('PAGE', 'Lieu_Boutique&id=' . (int) $_GET['id']); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/redirect.htm', __FILE__, __LINE__); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { if (!isset($_GET['id'])) { return fctErrorMSG('Données requises manquantes.'); } //Trouver le lieu $lieu = Member_LieuFactory::createFromId($_GET['id']); //Lister les accès médias $mediaAcces = array(); $i = 0; while ($media = $lieu->getMediaAcces($i++)) { $mediaAcces[] = $media; } $tpl->set('LIEU_TECH', $lieu->getNomTech()); $tpl->set('LIEU_ID', $lieu->getId()); $tpl->set('MEDIA_ACCES', $mediaAcces); //Retourner le template complété/rempli return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/Lieu/MediaAcces.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']) && !isset($_POST['id']) || !isset($_GET['id']) && empty($_POST['id']) || empty($_GET['id']) && !isset($_POST['id'])) { return fctErrorMSG('Vous devez sélectionner un lieu.'); } //Si en provenance de Tout les lieux: POST, si en provenance du panel MJ: GET $lieuId = isset($_POST['id']) ? (int) $_POST['id'] : (int) $_GET['id']; //Instancier le lieu try { $lieu = Member_LieuFactory::createFromId($lieuId); } catch (Exception $e) { die($e->getMessage()); } $nom_tech = $lieu->getNomTech(); $query = 'DELETE FROM ' . DB_PREFIX . 'lieu_lien' . ' WHERE `from`=:from OR `to`=:to;'; $prep = $db->prepare($query); $prep->bindValue(':from', $nom_tech, PDO::PARAM_STR); $prep->bindValue(':to', $nom_tech, PDO::PARAM_STR); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; //supprimer l'historique des transactions de la boutique $lieu->supprimerBoutiqueHistorique(); $query = 'DELETE FROM ' . DB_PREFIX . 'lieu' . ' WHERE id=:lieuId' . ' LIMIT 1;'; $prep = $db->prepare($query); $prep->bindValue(':lieuId', $lieuId, PDO::PARAM_INT); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; //Supprimer les gérants associés au lieu $query = 'DELETE FROM ' . DB_PREFIX . 'boutiques_gerants' . ' WHERE `boutiqueid` = :idLieu;'; $prep = $db->prepare($query); $prep->bindValue(':idLieu', $lieuId, PDO::PARAM_STR); $prep->executePlus($db, __FILE__, __LINE__); $prep->closeCursor(); $prep = NULL; die("<script>location.href='?mj=Lieu';</script>"); }
public static function generatePage(&$tpl, &$session, &$account, &$mj) { $lieu = Member_LieuFactory::createFromId($_POST['LIEU_ID']); if (!isset($_POST['id_mediaAcces'])) { return fctErrorMSG('Vous devez sélectionner un accès média.'); } $i = 0; while ($media = $lieu->getMediaAcces($i++)) { if ($media->getId() == $_POST['id_mediaAcces']) { break; } } if ($media === false) { return fctErrorMSG('L\'accès média #' . $_POST['id_mediaAcces'] . ' n\'existe pas.'); } $lieu->delMediaAcces($media); if (isset($_POST['LIEU_ID'])) { die("<script type=\"text/javascript\">location.href='?mj=Lieu_MediaAcces&id=" . $_POST['LIEU_ID'] . "';</script>"); } else { die("Supprimé."); } }
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_Boutique&id=' . $_GET['id'], null, false); } //Instancier le lieu try { $lieu = Member_LieuFactory::createFromId((int) $_GET['id']); } catch (Exception $e) { die($e->getMessage()); } $arrItemId = array(); if (is_array($_POST['itemId'])) { $arrItemId = $_POST['itemId']; } else { $arrItemId[] = $_POST['itemId']; } $queryAddon = array(); foreach ($arrItemId as $id) { $queryAddon[] = '?'; } $queryAddon = implode(',', $queryAddon); $query = 'SELECT * FROM ' . DB_PREFIX . 'item_db WHERE db_id IN (' . $queryAddon . ');'; $prep = $db->prepare($query); for ($i = 1; $i <= count($arrItemId); $i++) { $prep->bindValue($i, $arrItemId[$i - 1], PDO::PARAM_INT); } $prep->executePlus($db, __FILE__, __LINE__); $arrAll = $prep->fetchAll(); $prep->closeCursor(); $prep = NULL; $query = 'INSERT INTO ' . DB_PREFIX . 'item_inv' . ' (`inv_id`, `inv_dbid`, `inv_boutiquelieutech`, `inv_qte`, `inv_munition`, `inv_resistance`,`inv_remiseleft`,`inv_pn`, `inv_boutiquePrixVente`,`inv_boutiquePrixAchat`, `inv_extradesc`, `inv_notemj`)' . ' VALUES' . ' (NULL, :dbId, :lieuTech, :qte, :munition, :resistance, NULL, :pn, -1, -1, "", "");'; $prep = $db->prepare($query); foreach ($arrAll as &$arr) { //Vérifier si la boutique actuelle possède déjà cet item $i = 0; $item = false; while ($item = $lieu->getBoutiqueInventaire($i++)) { if (self::itemIdentique($arr, $item) !== false) { break; } } if ($item !== false) { //L'item à été trouvé, l'incrémenter. $item_qte = $item->getQte() + $_POST['item' . $item->getDbId()]; $item->setQte($item_qte); } else { //L'item n'existe pas, le créer $prep->bindValue(':dbId', $arr['db_id'], PDO::PARAM_INT); $prep->bindValue(':lieuTech', $lieu->getNomTech(), PDO::PARAM_STR); $prep->bindValue(':qte', $_POST['item' . $arr['db_id']], PDO::PARAM_INT); if ($arr['db_soustype'] == 'arme_feu') { $prep->bindValue(':munition', 0, PDO::PARAM_INT); } else { $prep->bindValue(':munition', NULL, PDO::PARAM_NULL); } if (isset($arr['db_resistance'])) { $prep->bindValue(':resistance', $arr['db_resistance'], PDO::PARAM_INT); } else { $prep->bindValue(':resistance', NULL, PDO::PARAM_NULL); } if ($arr['db_type'] == 'nourriture') { $prep->bindValue(':pn', $arr['db_pn'], PDO::PARAM_INT); } else { $prep->bindValue(':pn', NULL, PDO::PARAM_NULL); } $prep->executePlus($db, __FILE__, __LINE__); } } $prep->closeCursor(); $prep = NULL; //Retourner le template complété/rempli $tpl->set('PAGE', 'Lieu_Boutique&id=' . $_GET['id']); return $tpl->fetch($account->getSkinRemotePhysicalPath() . 'html/Mj/redirect.htm', __FILE__, __LINE__); }
/** * Retourne le lieu dans lequel le personnage se trouve. * * @see Member_Lieu * @return Member_Lieu */ public function getLieu() { //Si le lieu n'est que le nom technique, charger l'objet try { if (!$this->lieu instanceof Member_Lieu) { $this->lieu = Member_LieuFactory::createFromNomTech($this->lieu); } return $this->lieu; } catch (Exception $e) { throw $e; return null; } }
private static function save() { $lieuSave = Member_LieuFactory::createFromId($_POST['lieuId']); $lieuSave->addMediaAcces($_POST['nom'], $_POST['mediaType'], $_POST['channelId'], $_POST['interactionType']); die("<script type=\"text/javascript\">location.href='?mj=Lieu_MediaAcces&id=" . $_POST['lieuId'] . "';</script>"); }