コード例 #1
0
ファイル: Alliance.php プロジェクト: enriquesomolinos/Bengine
 /**
  * Alliance page action.
  *
  * @return Bengine_Comm_Controller_Alliance
  */
 public function pageAction()
 {
     Core::getLanguage()->load("Alliance");
     Core::getTPL()->clearHTMLHeaderFiles();
     Core::getTPL()->addHTMLHeaderFile("game.css", "css");
     Core::getTPL()->addHTMLHeaderFile("lib/jquery.js", "js");
     $tag = $this->getParam("1");
     $fNumber = array("member", "points", "rpoints", "fpoints", "dpoints");
     $attr = array("a.aid", "a.name", "a.tag", "a.logo", "a.textextern", "a.homepage", "a.showhomepage", "COUNT(u2a.userid) AS member", "SUM(u.points) AS points", "SUM(u.rpoints) AS rpoints", "SUM(u.fpoints) AS fpoints", "SUM(u.dpoints) AS dpoints");
     $joins = "LEFT JOIN " . PREFIX . "user2ally u2a ON (u2a.aid = a.aid) ";
     $joins .= "LEFT JOIN " . PREFIX . "user u ON (u2a.userid = u.userid) ";
     $result = Core::getQuery()->select("alliance a", $attr, $joins, Core::getDB()->quoteInto("tag = ?", $tag), "", 1, "a.aid");
     $row = $result->fetchRow();
     if ($row) {
         foreach ($fNumber as $field) {
             $row[$field] = fNumber($row[$field]);
         }
         $parser = new Bengine_Game_Alliance_Page_Parser($row["aid"]);
         if (Str::length(strip_tags($row["textextern"])) > 0) {
             $row["textextern"] = $parser->startParser($row["textextern"]);
         } else {
             $row["textextern"] = Core::getLang()->get("WELCOME");
         }
         $row["homepage"] = $row["homepage"] != "" ? Link::get($row["homepage"], $row["homepage"], $row["homepage"]) : "";
         $row["logo"] = $row["logo"] != "" ? Image::getImage($row["logo"], "") : "";
         Hook::event("ShowPublicAlliancePage", array(&$row));
         $this->assign($row);
         $this->setIsAjax();
     } else {
         $this->setNoDisplay(true);
     }
     return $this;
 }
コード例 #2
0
ファイル: Alliance.php プロジェクト: enriquesomolinos/Bengine
 /**
  * Shows the alliance page of given id.
  *
  * @return Bengine_Game_Controller_Alliance
  */
 protected function pageAction()
 {
     $select = array("u2a.userid", "u2a.joindate", "a.aid", "a.name", "a.tag", "a.textextern", "a.textintern", "a.founder", "a.foundername", "a.logo", "a.homepage", "a.showmember", "a.showhomepage", "count(aa.userid) as applications");
     $join = "LEFT JOIN " . PREFIX . "alliance a ON (u2a.aid = a.aid)";
     $join .= " LEFT JOIN " . PREFIX . "allyapplication aa ON (u2a.aid = aa.aid)";
     $result = Core::getQuery()->select("user2ally u2a", $select, $join, Core::getDB()->quoteInto("u2a.aid = ?", $this->aid), "", "", "u2a.userid");
     $totalmember = $result->rowCount();
     $row = $result->fetchRow();
     $result->closeCursor();
     Hook::event("ShowAlliancePage", array(&$row));
     if (Core::getUser()->get("aid") == $row["aid"] && $row["founder"] != Core::getUser()->get("userid")) {
         // Load rights
         $result = Core::getQuery()->select("allyrank ar", array("ar.name", "ar.CAN_SEE_MEMBERLIST", "ar.CAN_SEE_APPLICATIONS", "ar.CAN_MANAGE", "ar.CAN_WRITE_GLOBAL_MAILS"), "LEFT JOIN " . PREFIX . "user2ally u2a ON u2a.rank = ar.rankid", Core::getDB()->quoteInto("u2a.userid = ?", Core::getUser()->get("userid")));
         $rights = $result->fetchRow();
         $result->closeCursor();
         Core::getTPL()->assign("rank", $rights["name"] != "" ? $rights["name"] : Core::getLanguage()->getItem("NEWBIE"));
         Core::getTPL()->assign("CAN_SEE_MEMBERLIST", $rights["CAN_SEE_MEMBERLIST"]);
         Core::getTPL()->assign("CAN_SEE_APPLICATIONS", $rights["CAN_SEE_APPLICATIONS"]);
         Core::getTPL()->assign("CAN_MANAGE", $rights["CAN_MANAGE"]);
         Core::getTPL()->assign("CAN_WRITE_GLOBAL_MAILS", $rights["CAN_WRITE_GLOBAL_MAILS"]);
         if ($rights["CAN_MANAGE"]) {
             $manage = "(" . Link::get("game/" . SID . "/Alliance/Manage", Core::getLanguage()->getItem("MANAGEMENT")) . ")";
         } else {
             $manage = "";
         }
     } else {
         if ($row["founder"] == Core::getUser()->get("userid")) {
             Core::getTPL()->assign("rank", $row["foundername"] != "" ? $row["foundername"] : Core::getLanguage()->getItem("FOUNDER"));
             $manage = "(" . Link::get("game/" . SID . "/Alliance/Manage", Core::getLanguage()->getItem("MANAGEMENT")) . ")";
         } else {
             $where = Core::getDB()->quoteInto("userid = ? AND aid = ?", array(Core::getUser()->get("userid"), $row["aid"]));
             $result = Core::getQuery()->select("allyapplication", "userid", "", $where);
             Core::getTPL()->assign("appInProgress", $result->rowCount());
             $result->closeCursor();
             $manage = "";
         }
     }
     $parser = new Bengine_Game_Alliance_Page_Parser($this->aid);
     $row["textextern"] = strip_tags($row["textextern"]) != "" ? $parser->startParser($row["textextern"]) : Core::getLanguage()->getItem("WELCOME");
     $row["textintern"] = strip_tags($row["textintern"]) != "" ? $parser->startParser($row["textintern"]) : "";
     $parser->kill();
     Core::getTPL()->assign("appnumber", $row["applications"]);
     Core::getTPL()->assign("applications", Link::get("game/" . SID . "/Alliance/ShowCandidates", sprintf(Core::getLanguage()->getItem("CANDIDATES"), fNumber($row["applications"]))));
     Core::getTPL()->assign("founder", $row["founder"]);
     Core::getTPL()->assign("manage", $manage);
     Core::getTPL()->assign("tag", $row["tag"]);
     Core::getTPL()->assign("name", $row["name"]);
     Core::getTPL()->assign("aid", $row["aid"]);
     Core::getTPL()->assign("logo", $row["logo"] != "" ? Image::getImage($row["logo"], "") : "");
     Core::getTPL()->assign("textextern", $row["textextern"]);
     Core::getTPL()->assign("homepage", $row["homepage"] != "" ? Link::get($row["homepage"], $row["homepage"]) : "");
     Core::getTPL()->assign("showHomepage", $row["showhomepage"]);
     Core::getTPL()->assign("textintern", $row["textintern"]);
     Core::getTPL()->assign("memberNumber", fNumber($totalmember));
     Core::getTPL()->assign("memberList", Link::get("game/" . SID . "/Alliance/Memberlist/" . $row["aid"], Core::getLanguage()->getItem("MEMBER_LIST")));
     Core::getTPL()->assign("showMember", $row["showmember"]);
     return $this;
 }