/** * Renvoie les Groupes liés à une collection de DroitGroupes * @param DroitGroupeCollection $droitGroupes * @return GroupeCollection */ public static function getFromDroitGroupes(DroitGroupeCollection $droitGroupes) { $ids = $droitGroupes->getIdGroupes(); if (!$ids) { return new GroupeCollection(); } $req = "SELECT * FROM groupe WHERE idGroupe IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Groupe', 'GroupeCollection'); }
/** * @param Batiment $batiment * @return BatimentCollection */ public static function getNiveauxAuDessus(Batiment $batiment) { $req = "SELECT * from batiment WHERE idHexa = " . $batiment->getIdHexa() . " AND idType = " . $batiment->getIdType() . " AND niveau > " . $batiment->getNiveau() . ";"; return DbHandler::collFromQuery($req, 'Batiment', 'BatimentCollection'); }
/** * * Refait la connexion à la DB * @return void */ public function reconnectDb() { DbHandler::connect(Conf::common()['DB']['HOST'], Conf::common()['DB']['DB'], Conf::common()['DB']['USER'], Conf::common()['DB']['PASS']); }
/** * Renvoie les Qgs liés à une collection de Unites * @param UniteCollection $unites * @return QgCollection */ public static function getFromUnites(UniteCollection $unites) { $ids = $unites->getIdQgs(); if (!$ids) { return new QgCollection(); } $req = "SELECT * FROM qg WHERE idQg IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Qg', 'QgCollection'); }
/** * Renvoie les Joueurs liés à une collection de Visibles * @param VisibleCollection $visibles * @return JoueurCollection */ public static function getFromVisibles(VisibleCollection $visibles) { $ids = $visibles->getIdJoueurs(); if (!$ids) { return new JoueurCollection(); } $req = "SELECT * FROM joueur WHERE idJoueur IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Joueur', 'JoueurCollection'); }
/** * Supprime l'objet en base * @param Bean $bean */ public static function delete(Bean $bean) { $req = "DELETE FROM `" . static::$table . "` WHERE " . static::$fields[0] . " = " . $bean->getId() . ";"; DbHandler::update($req); }
/** * Renvoie les Trajs liés aux Parties de la collection fournie * @var PartieCollection $parties * @return TrajCollection */ public static function getFromParties(PartieCollection $parties) { $req = "SELECT * from traj WHERE idHexa IN (SELECT hexa.idHexa FROM hexa WHERE hexa.idPartie IN (" . $parties->getIdsStr() . "))"; return DbHandler::collFromQuery($req, 'Traj', 'TrajCollection'); }
?> ### BEGIN INIT INFO # Provides: nj # Required-Start: $local_fs $remote_fs $network $syslog $named # Required-Stop: $local_fs $remote_fs $network $syslog $named # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # X-Interactive: true # Short-Description: Start/stop nj server ### END INIT INFO <?php ob_end_clean(); require dirname(__FILE__) . '/vendor/autoload.php'; Conf::initCommon(dirname(__FILE__) . '/common.ini'); require_once Conf::common()['path']['commonClasses'] . '/inc.php'; DbHandler::connect(Conf::common()['DB']['HOST'], Conf::common()['DB']['DB'], Conf::common()['DB']['USER'], Conf::common()['DB']['PASS']); define('SCRIPT_TO_LAUNCH', dirname(__FILE__) . '/index.php --idPartie='); if (!isset($_SERVER['argv'][1])) { echo "invalid or excess argument(s)\n"; exit(2); } if (!in_array($_SERVER['argv'][1], array('start', 'stop', 'restart', 'try-restart', 'reload', 'force-reload', 'status'))) { echo "invalid or excess argument(s)\n"; exit(2); } switch ($_SERVER['argv'][1]) { case 'start': if (isRunning()) { exit; } start();
/** * @param string $code * @return Texte */ public static function getByCode($code) { $req = "SELECT * FROM texte WHERE code = '" . $code . "';"; return DbHandler::objFromQuery($req, 'Texte'); }
/** * Renvoie les Hexas liés à une collection de Visibles * @param VisibleCollection $visibles * @return HexaCollection */ public static function getFromVisibles(VisibleCollection $visibles) { $ids = $visibles->getIdHexas(); if (!$ids) { return new HexaCollection(); } $req = "SELECT * FROM hexa WHERE idHexa IN (" . $ids . ");"; return DbHandler::collFromQuery($req, 'Hexa', 'HexaCollection'); }
/** * Renvoie les unités en cours de transfert vers le Qg fourni en paramètre * @param Qg $qg * @return UniteCollection */ public static function getUnitesEnTransfertVersQg(Qg $qg) { $req = "SELECT * from unite WHERE idQgTransfert='" . $qg->getId() . "';"; return DbHandler::collFromQuery($req, 'Unite', 'UniteCollection'); }
/** * Renvoie les Parties liés aux Rivieres de la collection fournie * @var RiviereCollection $rivieres * @return PartieCollection */ public static function getFromRivieres(RiviereCollection $rivieres) { $req = "SELECT * FROM partie WHERE idPartie IN (SELECT hexa.idPartie FROM hexa WHERE hexa.idHexa2 IN (" . $rivieres->getIdHexa2s() . "))"; return DbHandler::collFromQuery($req, 'Partie', 'PartieCollection'); }
/** * Renvoie les Utilisateurs liés aux DroitGroupes de la collection fournie * @var DroitGroupeCollection $droitGroupes * @return UtilisateurCollection */ public static function getFromDroitGroupes(DroitGroupeCollection $droitGroupes) { $req = "SELECT * FROM utilisateur WHERE idGroupe IN (SELECT groupe.idGroupe FROM groupe WHERE groupe.idGroupe IN (" . $droitGroupes->getIdGroupes() . "))"; return DbHandler::collFromQuery($req, 'Utilisateur', 'UtilisateurCollection'); }
/** * Renvoie les Visible liées à un Joueur * @param Joueur $joueur * @return VisibleCollection */ public static function getByJoueur(Joueur $joueur) { $req = "SELECT * FROM visible WHERE idJoueur = '" . $joueur->getIdJoueur() . "';"; return DbHandler::collFromQuery($req, 'Visible', 'VisibleCollection'); }
/** * Purge les sessions trop anciennes * @param Utilisateur $utilisateur * @return void */ public function purgeSessions(Utilisateur $utilisateur) { $req = "DELETE FROM `session` WHERE idUtilisateur = " . $utilisateur->getId() . " AND timeSession < " . (time() - Conf::common()['env']['sessionTTL'] * 3600) . ";"; DbHandler::update($req); }
/** * Renvoie les Productions liés aux Qgs de la collection fournie * @var QgCollection $qgs * @return ProductionCollection */ public static function getFromQgs(QgCollection $qgs) { $req = "SELECT * from production WHERE idUnite IN (SELECT unite.idUnite FROM unite WHERE unite.idQg IN (" . $qgs->getIdsStr() . "))"; return DbHandler::collFromQuery($req, 'Production', 'ProductionCollection'); }
/** * Renvoie les Competences liés aux Hexas de la collection fournie * @var HexaCollection $hexas * @return CompetenceCollection */ public static function getFromHexas(HexaCollection $hexas) { $req = "SELECT * from competence WHERE idQg IN (SELECT qg.idQg FROM qg WHERE qg.idHexa IN (" . $hexas->getIdsStr() . "))"; return DbHandler::collFromQuery($req, 'Competence', 'CompetenceCollection'); }
/** * Renvoie les ponts sur les rivières de la collection * @param RiviereCollection $rivieres * @return InfrastructureCollection */ public static function getPontsDeRivieres(RiviereCollection $rivieres) { if ($rivieres->count() == 0) { return new InfrastructureCollection(); } $req = "SELECT * FROM infrastructure WHERE "; $prem = true; $req .= ' ( '; foreach ($rivieres as $riviere) { /** @var Riviere $riviere */ if (!$prem) { $req .= ' OR '; } $req .= " ((idHexa = " . $riviere->getIdHexa1() . " AND idHexa2 = " . $riviere->getIdHexa2() . ") OR (idHexa = " . $riviere->getIdHexa2() . " AND idHexa2 = " . $riviere->getIdHexa1() . ")) "; $prem = false; } $req .= ") AND idType=" . Infrastructures::PONT . ";"; return DbHandler::collFromQuery($req, 'Infrastructure', 'InfrastructureCollection'); }
/** * Renvoie les DroitGroupes liés aux Utilisateurs de la collection fournie * @var UtilisateurCollection $utilisateurs * @return DroitGroupeCollection */ public static function getFromUtilisateurs(UtilisateurCollection $utilisateurs) { $req = "SELECT * from droit_groupe WHERE idGroupe IN (SELECT groupe.idGroupe FROM groupe WHERE groupe.idGroupe IN (" . $utilisateurs->getIdsStr() . "))"; return DbHandler::collFromQuery($req, 'DroitGroupe', 'DroitGroupeCollection'); }