getImage() public method

public getImage ( )
Example #1
0
 /**
  * @return Bengine_Admin_Controller_News
  */
 protected function indexAction()
 {
     if ($this->getParam("add")) {
         $this->add($this->getParam("language_id"), $this->getParam("title"), $this->getParam("text"));
     }
     $first = true;
     $i = 1;
     $news = array();
     $result = Core::getQuery()->select("news", array("news_id", "title", "text", "time", "enabled", "sort_index"), "", "", "sort_index ASC, news_id DESC");
     $total = $result->rowCount();
     foreach ($result->fetchAll() as $row) {
         $down = "";
         $up = "";
         if (!$first) {
             $up = Image::getImage("admin/up.gif", "", 16, 16);
             $up = Link::get("admin/news/moveup/" . $row["news_id"], $up);
         }
         $first = false;
         if ($i < $total) {
             $down = Image::getImage("admin/down.gif", "", 16, 16);
             $down = Link::get("admin/news/movedown/" . $row["news_id"], $down);
         }
         $i++;
         $news[] = array("news_id" => $row["news_id"], "title" => $row["title"], "text" => $row["text"], "time" => Date::timeToString(1, $row["time"]), "enabled" => $row["enabled"], "edit" => Link::get("admin/news/edit/" . $row["news_id"], Core::getLang()->get("Edit")), "delete" => Link::get("admin/news/delete/" . $row["news_id"], Core::getLang()->get("Delete")), "enable" => Link::get("admin/news/enable/" . $row["news_id"], Core::getLang()->get("Enable"), "", "green"), "disable" => Link::get("admin/news/disable/" . $row["news_id"], Core::getLang()->get("Disable"), "", "red"), "down" => $down, "up" => $up);
     }
     Core::getTemplate()->addLoop("news", $news);
     $languages = $this->getLanguages();
     Core::getTPL()->assign("languageCount", count($languages));
     if (count($languages) == 1) {
         Core::getTPL()->assign("languages", key($languages));
     } else {
         Core::getTPL()->assign("languages", $this->getLanguageSelect());
     }
     return $this;
 }
Example #2
0
 /**
  * Index action.
  *
  * @return Bengine_Game_Controller_Friends
  */
 protected function indexAction()
 {
     Core::getLanguage()->load(array("Statistics", "Buddylist"));
     if ($this->isPost()) {
         if ($this->getParam("delete")) {
             $this->remove($this->getParam("remove", array()));
         }
         if ($this->getParam("accept")) {
             $this->acceptRequest($this->getParam("relid"));
         }
     }
     $bl = array();
     $select = array("b.relid", "b.friend1", "b.friend2", "b.accepted", "u1.username as user1", "u1.points as points1", "u1.last as lastlogin1", "u2.points as points2", "u2.username as user2", "u2.last as lastlogin2", "a1.tag as ally1", "a1.aid as allyid1", "a2.tag as ally2", "a2.aid as allyid2", "g1.galaxy as gala1", "g1.system as sys1", "g1.position as pos1", "g2.galaxy as gala2", "g2.system as sys2", "g2.position as pos2");
     $joins = "LEFT JOIN " . PREFIX . "user u1 ON (u1.userid = b.friend1)";
     $joins .= "LEFT JOIN " . PREFIX . "user u2 ON (u2.userid = b.friend2)";
     $joins .= "LEFT JOIN " . PREFIX . "galaxy g1 ON (g1.planetid = u1.hp)";
     $joins .= "LEFT JOIN " . PREFIX . "galaxy g2 ON (g2.planetid = u2.hp)";
     $joins .= "LEFT JOIN " . PREFIX . "user2ally u2a1 ON (u2a1.userid = b.friend1)";
     $joins .= "LEFT JOIN " . PREFIX . "user2ally u2a2 ON (u2a2.userid = b.friend2)";
     $joins .= "LEFT JOIN " . PREFIX . "alliance a1 ON (a1.aid = u2a1.aid)";
     $joins .= "LEFT JOIN " . PREFIX . "alliance a2 ON (a2.aid = u2a2.aid)";
     $result = Core::getQuery()->select("buddylist b", $select, $joins, Core::getDB()->quoteInto("b.friend1 = ? OR b.friend2 = ?", Core::getUser()->get("userid")), "u1.points DESC, u2.points DESC, u1.username ASC, u2.username ASC");
     foreach ($result->fetchAll() as $row) {
         Hook::event("ShowBuddyFirst", array(&$row));
         if ($row["friend1"] == Core::getUser()->get("userid")) {
             if ($row["lastlogin2"] > TIME - 900) {
                 $status = Image::getImage("on.gif", getTimeTerm(TIME - $row["lastlogin2"]));
             } else {
                 $status = Image::getImage("off.gif", getTimeTerm(TIME - $row["lastlogin2"]));
             }
             $username = Link::get("game/" . SID . "/MSG/Write/" . rawurlencode($row["user2"]), Image::getImage("pm.gif", Core::getLanguage()->getItem("WRITE_MESSAGE"))) . " " . Link::get("game/" . SID . "/Profile/Page/" . $row["friend2"], $row["user2"]);
             $points = $row["points2"];
             $position = getCoordLink($row["gala2"], $row["sys2"], $row["pos2"]);
             $ally = Link::get("game/" . SID . "/Alliance/Page/" . $row["allyid2"], $row["ally2"]);
         } else {
             if ($row["lastlogin1"] > TIME - 900) {
                 $status = Image::getImage("on.gif", getTimeTerm(TIME - $row["lastlogin1"]));
             } else {
                 $status = Image::getImage("off.gif", getTimeTerm(TIME - $row["lastlogin1"]));
             }
             $username = Link::get("game/" . SID . "/MSG/Write/" . rawurlencode($row["user1"]), Image::getImage("pm.gif", Core::getLanguage()->getItem("WRITE_MESSAGE"))) . " " . Link::get("game/" . SID . "/Profile/Page/" . $row["friend1"], $row["user1"]);
             $points = $row["points1"];
             $position = getCoordLink($row["gala1"], $row["sys1"], $row["pos1"]);
             $ally = Link::get("game/" . SID . "/Alliance/Page/" . $row["allyid1"], $row["ally1"]);
         }
         $bl[$row["relid"]]["f1"] = $row["friend1"];
         $bl[$row["relid"]]["f2"] = $row["friend2"];
         $bl[$row["relid"]]["relid"] = $row["relid"];
         $bl[$row["relid"]]["username"] = $username;
         $bl[$row["relid"]]["accepted"] = $row["accepted"];
         $bl[$row["relid"]]["points"] = fNumber($points);
         $bl[$row["relid"]]["status"] = $status;
         $bl[$row["relid"]]["position"] = $position;
         $bl[$row["relid"]]["ally"] = $ally;
         Hook::event("ShowBuddyLast", array($row, &$bl));
     }
     $result->closeCursor();
     Core::getTPL()->addLoop("buddylist", $bl);
     return $this;
 }
Example #3
0
 /**
  * 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;
 }
Example #4
0
 /**
  * Index action.
  *
  * @return Bengine_Game_Controller_MSG
  */
 protected function indexAction()
 {
     $select = array("f.folder_id", "f.label", "f.is_standard", "COUNT(m.msgid) AS messages", "SUM(m.read) AS `read`", "SUM(LENGTH(m.message)) AS `storage`");
     $joins = "LEFT JOIN " . PREFIX . "message m ON (m.mode = f.folder_id AND m.receiver = '" . Core::getUser()->get("userid") . "')";
     $where = Core::getDB()->quoteInto("f.userid = ? OR f.is_standard = '1'", Core::getUser()->get("userid"));
     $result = Core::getQuery()->select("folder f", $select, $joins, $where, "", "", "f.folder_id");
     $folders = array();
     foreach ($result->fetchAll() as $row) {
         $unreadMessages = $row["messages"] - (int) $row["read"];
         if ($unreadMessages > 1) {
             $read = "UNREAD";
             $newMessages = sprintf(Core::getLanguage()->getItem("F_NEW_MESSAGES"), fNumber($unreadMessages));
         } else {
             if ($unreadMessages > 0) {
                 $read = "UNREAD";
                 $newMessages = Core::getLanguage()->getItem("F_NEW_MESSAGE");
             } else {
                 $read = "READ";
                 $newMessages = "";
             }
         }
         $label = $row["is_standard"] ? Core::getLang()->get($row["label"]) : $row["label"];
         $link = "game/" . SID . "/MSG/ReadFolder/" . $row["folder_id"];
         $folders[] = array("image" => Link::get("game/" . SID . "/MSG/markasread/" . $row["folder_id"], Image::getImage(strtolower($read) . ".gif", Core::getLang()->get($read))), "label" => Link::get($link, $label, Core::getLang()->get($read)), "messages" => fNumber($row["messages"]), "newMessages" => $newMessages, "size" => File::bytesToString($row["storage"]));
     }
     $result->closeCursor();
     Core::getTPL()->addLoop("folders", $folders);
     return $this;
 }
Example #5
0
 /**
  * Shows all unit information.
  *
  * @param integer $id
  * @throws Recipe_Exception_Generic
  * @return Bengine_Game_Controller_Unit
  */
 protected function infoAction($id)
 {
     // Bengine_Game_Common unit data
     $select = array("c.name", "c.mode", "c.basic_metal", "c.basic_silicon", "c.basic_hydrogen", "ds.capicity", "ds.speed", "ds.consume", "ds.attack", "ds.shield");
     $join = "LEFT JOIN " . PREFIX . "ship_datasheet ds ON (ds.unitid = c.buildingid)";
     $result = Core::getQuery()->select("construction c", $select, $join, Core::getDB()->quoteInto("c.buildingid = ?", $id));
     if ($row = $result->fetchRow()) {
         $result->closeCursor();
         Core::getLanguage()->load("info,UnitInfo");
         Hook::event("ShowUnitInfo", array(&$row));
         Core::getTPL()->assign("mode", $row["mode"]);
         Core::getTPL()->assign("structure", fNumber($row["basic_metal"] + $row["basic_silicon"]));
         Core::getTPL()->assign("shield", fNumber($row["shield"]));
         Core::getTPL()->assign("attack", fNumber($row["attack"]));
         Core::getTPL()->assign("shell", fNumber(($row["basic_metal"] + $row["basic_silicon"]) / 10));
         Core::getTPL()->assign("capacity", fNumber($row["capicity"]));
         Core::getTPL()->assign("speed", fNumber($row["speed"]));
         Core::getTPL()->assign("consume", fNumber($row["consume"]));
         Core::getTPL()->assign("name", Core::getLanguage()->getItem($row["name"]));
         Core::getTPL()->assign("description", Core::getLanguage()->getItem($row["name"] . "_FULL_DESC"));
         Core::getTPL()->assign("pic", Image::getImage("buildings/" . $row["name"] . ".gif", Core::getLanguage()->getItem($row["name"]), null, null, "leftImage"));
         Core::getTPL()->assign("edit", Link::get("game/" . SID . "/Unit/Edit/" . $id, "[" . Core::getLanguage()->getItem("EDIT") . "]"));
         // Rapidfire
         $i = 0;
         $rf = array();
         $_result = Core::getQuery()->select("rapidfire rf", array("rf.target", "rf.value", "c.name"), "LEFT JOIN " . PREFIX . "construction c ON (c.buildingid = rf.target)", Core::getDB()->quoteInto("rf.unitid = ?", $id));
         foreach ($_result->fetchAll() as $_row) {
             Hook::event("ShowUnitRapidfire", array($row, &$_row));
             $name = Link::get("game/" . SID . "/Unit/Info/" . $_row["target"], Core::getLanguage()->getItem($_row["name"]));
             $rf[$i]["rapidfire"] = sprintf(Core::getLanguage()->getItem("RAPIDFIRE_TO"), $name);
             $rf[$i]["value"] = "<span class=\"available\">" . fNumber($_row["value"]) . "</span>";
             $i++;
         }
         $_result->closeCursor();
         $_result = Core::getQuery()->select("rapidfire rf", array("rf.unitid", "rf.value", "c.name"), "LEFT JOIN " . PREFIX . "construction c ON (c.buildingid = rf.unitid)", Core::getDB()->quoteInto("rf.target = ?", $id));
         foreach ($_result->fetchAll() as $_row) {
             Hook::event("ShowUnitRapidfire", array($row, &$_row));
             $name = Link::get("game/" . SID . "/Unit/Info/" . $_row["unitid"], Core::getLanguage()->getItem($_row["name"]));
             $rf[$i]["rapidfire"] = sprintf(Core::getLanguage()->getItem("RAPIDFIRE_FROM"), $name);
             $rf[$i]["value"] = "<span class=\"notavailable\">" . fNumber($_row["value"]) . "</span>";
             $i++;
         }
         $_result->closeCursor();
         Core::getTPL()->addLoop("rapidfire", $rf);
         $engines = array();
         $_result = Core::getQuery()->select("ship2engine s2e", array("s2e.base_speed", "s2e.base", "s2e.level", "e.engineid", "factor", "c.name"), "LEFT JOIN " . PREFIX . "engine e ON (e.engineid = s2e.engineid) " . "LEFT JOIN " . PREFIX . "construction c ON (c.buildingid = e.engineid)", Core::getDB()->quoteInto("s2e.unitid = ?", $id), "s2e.level ASC");
         foreach ($_result->fetchAll() as $_row) {
             $_row["name"] = Link::get("game/" . SID . "/Constructions/Info/" . $_row["engineid"], Core::getLanguage()->get($_row["name"]));
             $_row["base_speed"] = fNumber($_row["base_speed"]);
             $engines[] = $_row;
         }
         $_result->closeCursor();
         Core::getTPL()->addLoop("engines", $engines);
     } else {
         $result->closeCursor();
         throw new Recipe_Exception_Generic("Unkown unit. You'd better don't mess with the URL.");
     }
     return $this;
 }
Example #6
0
 /**
  * Creates a new user list object.
  *
  * @param resource $list Query result for a list
  * @param int $start
  * @return \Bengine_Game_User_List
  */
 public function __construct($list = null, $start = 0)
 {
     $this->pmPic = Image::getImage("pm.gif", Core::getLanguage()->getItem("WRITE_MESSAGE"));
     $this->buddyPic = Image::getImage("b.gif", Core::getLanguage()->getItem("ADD_TO_BUDDYLIST"));
     $this->modPic = Image::getImage("moderator.gif", Core::getLanguage()->getItem("MODERATE"));
     $this->points = Core::getUser()->get("points");
     parent::__construct($list, $start);
 }
 public function testImageClearCache()
 {
     $image = new Image();
     $image->setSourcePath("tests/test.jpg");
     $image->getImage(128);
     $this->assertEquals(true, file_exists(Image::$cache_directory));
     $this->assertEquals(3, count(scandir(Image::$cache_directory)));
     $image->clearCache();
     $this->assertEquals(false, file_exists(Image::$cache_directory));
     $this->assertEquals(false, file_exists(Image::$cache_hints_file));
 }
Example #8
0
 /**
  * Formats the message.
  *
  * @param Bengine_Game_Model_Message $message
  *
  * @return Bengine_Game_MessageFolder_User
  */
 protected function _format(Bengine_Game_Model_Message $message)
 {
     $sender = $message->get("sender");
     if (!empty($sender)) {
         $url = "game/" . SID . "/MSG/Write/" . rawurlencode($message->get("username")) . "/" . Link::urlEncode("RE: " . $message->get("subject"));
         $reply = Link::get($url, Image::getImage("pm.gif", Core::getLanguage()->getItem("REPLY")));
         $message->set("reply_link", $reply);
         $sender = $message->get("username") . " " . getCoordLink($message->get("galaxy"), $message->get("system"), $message->get("position"));
     } else {
         $sender = "System";
     }
     $message->set("sender", $sender);
     $this->replaceForeignSessionId($message);
     return $this;
 }
Example #9
0
 /**
  * Formats the message.
  *
  * @param Bengine_Game_Model_Message $message
  *
  * @return Bengine_Game_MessageFolder_Alliance
  */
 protected function _format(Bengine_Game_Model_Message $message)
 {
     $senderName = $message->get("username");
     $sender = !empty($senderName) ? Core::getLanguage()->getItem("ALLIANCE_GLOBAL_MAIL") . " (" . $senderName . ")" : Core::getLanguage()->getItem("ALLIANCE");
     $message->set("sender", $sender);
     $this->replaceForeignSessionId($message);
     if (Core::getUser()->get("aid")) {
         $subject = "RE: " . preg_replace("#((RE|FW):\\s)+#is", "\\1", $message->get("subject"));
         $subject = rawurlencode($subject);
         $linkUrl = "game/";
         if (URL_SESSION) {
             $linkUrl .= SID . "/";
         }
         $linkUrl .= "Alliance/GlobalMail/" . $subject;
         if (!empty($senderName)) {
             $replyImg = Image::getImage("pm.gif", Core::getLanguage()->getItem("REPLY_ALLIANCE_MAIL"));
             $message->set("reply_link", Link::get($linkUrl, $replyImg));
         }
     }
     return $this;
 }
Example #10
0
 /**
  * Parses an event.
  *
  * @param Bengine_Game_Model_Event $f
  *
  * @return array	Parsed event data
  */
 protected function parseEvent(Bengine_Game_Model_Event $f)
 {
     if ($f->getCode() == "game/alliedFleet" && $f->getUserid() != Core::getUser()->get("userid")) {
         return false;
         // Hide foreign formations
     }
     $event = array();
     $event["time_r"] = $f->getTimeLeft();
     $event["time"] = $f->getFormattedTimeLeft();
     $event["eventid"] = $f->getEventid();
     $event["time_finished"] = Date::timeToString(1, $f->getTime());
     $event["raw_coordinates"] = $f->getDestinationCoords(false);
     Core::getLanguage()->assign("rockets", $f->getData("rockets", 0));
     Core::getLanguage()->assign("planet", !$f->getData("oldmode") || $f->getData("oldmode") != 9 ? $f->getPlanetname() : Core::getLanguage()->getItem("DEBRIS"));
     // TODO: Old mode should be translated to code
     Core::getLanguage()->assign("coords", $f->getPlanetCoords());
     Core::getLanguage()->assign("target", $f->getCode() != "game/recycling" ? $f->getDestinationPlanetname() : Core::getLanguage()->getItem("DEBRIS"));
     Core::getLanguage()->assign("targetcoords", $f->getDestinationCoords());
     Core::getLanguage()->assign("metal", fNumber($f->getData("metal", 0)));
     Core::getLanguage()->assign("silicon", fNumber($f->getData("silicon", 0)));
     Core::getLanguage()->assign("hydrogen", fNumber($f->getData("hydrogen", 0)));
     Core::getLanguage()->assign("username", $f->getUsername());
     Core::getLanguage()->assign("message", Link::get("game/" . SID . "/MSG/Write/" . rawurlencode($f->getUsername()), Image::getImage("pm.gif", Core::getLanguage()->getItem("WRITE_MESSAGE"))));
     Core::getLanguage()->assign("mission", $f->getCode() == "game/return" ? $f->getOrgModeName() : $f->getModeName());
     Core::getLanguage()->assign("fleet", $f->getFleetString());
     $event["class"] = $f->getCssClass();
     if ($f->getCode() == "game/allianceAttack") {
         if ($f->getUserid() == Core::getUser()->get("userid")) {
             $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_OWN");
         } else {
             $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_OTHER");
         }
         $allyFleets = Game::getEH()->getFormationFleets($f->getEventid());
         foreach ($allyFleets as $af) {
             $coords = $af->getPlanetCoords();
             $msg = Core::getLanguage()->getItem("FLEET_MESSAGE_FORMATION");
             $msg = sprintf($msg, $af->getUsername(), $af->getPlanetname(), $coords, $af->getFleetString());
             $event["message"] .= $msg;
         }
     } else {
         if ($f->getCode() == "game/alliedFleet") {
             $mainFleet = Game::getModel("game/event")->load($f->getParentId());
             if ($mainFleet->getUsierid() == Core::getUser()->get("userid")) {
                 return false;
             }
             $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_OWN");
             $allyFleets = Game::getEH()->getFormationFleets($mainFleet->getEventid());
             $allyFleets->add($mainFleet);
             foreach ($allyFleets as $af) {
                 if ($af->getUserid() == Core::getUser()->get("userid")) {
                     continue;
                 }
                 $coords = $af->getPlanetCoords();
                 $msg = Core::getLanguage()->getItem("FLEET_MESSAGE_FORMATION");
                 $msg = sprintf($msg, $af->getUsername(), $af->getPlanetname(), $coords, $af->getFleetString());
                 $event["message"] .= $msg;
             }
         } else {
             if ($f->getCode() == "game/holding" && $f->getUserid() == Core::getUser()->get("userid")) {
                 $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_HOLDING_1");
             } else {
                 if ($f->getCode() == "game/holding") {
                     $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_HOLDING_2");
                 } else {
                     if ($f->getCode() == "game/return" && $f->getUserid() == Core::getUser()->get("userid")) {
                         $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_RETURN");
                     } else {
                         if ($f->getUserid() == Core::getUser()->get("userid") && $f->getCode() == "game/missileAttack") {
                             $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_ROCKET_ATTACK");
                         } else {
                             if ($f->getCode() == "game/missileAttack") {
                                 $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_ROCKET_ATTACK_FOREIGN");
                             } else {
                                 if ($f->getUserid() == Core::getUser()->get("userid")) {
                                     $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_OWN");
                                 } else {
                                     $event["message"] = Core::getLanguage()->getItem("FLEET_MESSAGE_OTHER");
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
     return $event;
 }
Example #11
0
 /**
  * paint a 3d-pie
  *
  * @param int $w
  * @param int $h
  * @param int $cx
  * @param int $cy
  * @param int $sx
  * @param int $sy
  * @param int $sz
  * @param array $bg []
  * @param array $values []
  * @param array $colors [][]
  * @param array $legend []
  * @param int $legendX
  * @param int $legendY
  * @param int $legendFont
  * @param int $legendSpace
  */
 function paintPie3D($w, $h, $cx, $cy, $sx, $sy, $sz, $bg, $values, $colors, $legend = false, $legendX = 0, $legendY = 0, $legendFont = 2, $legendSpace = 14)
 {
     // img
     $imageObject = false;
     // gif
     $imageObject = Image::getImage(IMG_GIF, $w, $h);
     // try png if failed
     if (!$imageObject) {
         $imageObject = Image::getImage(IMG_PNG, $w, $h);
     }
     // try jpg if failed
     if (!$imageObject) {
         $imageObject = Image::getImage(IMG_JPG, $w, $h);
     }
     // bail if no object
     if (!$imageObject) {
         Image::paintNotSupported();
     }
     // background
     $background = imagecolorallocate($imageObject->image, $bg['r'], $bg['g'], $bg['b']);
     // convert to angles.
     $valueCount = count($values);
     $valueSum = array_sum($values);
     for ($i = 0; $i < $valueCount; $i++) {
         $angle[$i] = $values[$i] / $valueSum * 360;
         $angle_sum[$i] = array_sum($angle);
     }
     // colors.
     for ($i = 0; $i < $valueCount; $i++) {
         $col_s[$i] = imagecolorallocate($imageObject->image, $colors[$i]['r'], $colors[$i]['g'], $colors[$i]['b']);
         $col_d[$i] = imagecolorallocate($imageObject->image, $colors[$i]['r'] >> 1, $colors[$i]['g'] >> 1, $colors[$i]['b'] >> 1);
     }
     // 3D effect.
     for ($z = 1; $z <= $sz; $z++) {
         for ($i = 0; $i < $valueCount; $i++) {
             imagefilledarc($imageObject->image, $cx, $cy + $sz - $z, $sx, $sy, $angle_sum[$i != 0 ? $i - 1 : $valueCount - 1], $angle_sum[$i], $col_d[$i], IMG_ARC_PIE);
         }
     }
     // top pie.
     for ($i = 0; $i < $valueCount; $i++) {
         imagefilledarc($imageObject->image, $cx, $cy, $sx, $sy, $angle_sum[$i != 0 ? $i - 1 : $valueCount - 1], $angle_sum[$i], $col_s[$i], IMG_ARC_PIE);
     }
     // legend
     if ($legend) {
         $curY = $legendY;
         for ($i = 0; $i < $valueCount; $i++) {
             $textcolor = imagecolorallocate($imageObject->image, $colors[$i]['r'], $colors[$i]['g'], $colors[$i]['b']);
             imagestring($imageObject->image, $legendFont, $legendX, $curY, $legend[$i], $textcolor);
             $curY += $legendSpace;
         }
     }
     // output
     $imageObject->paint();
 }
Example #12
0
//echo $caminho; exit;
$div1 = explode(".", $caminho);
$new = $div1[0];
for ($i = 1; $i < count($div1) - 1; $i++) {
    $new .= "." . $div1[$i];
}
$nome = basename($caminho);
$nome = str_replace("." . $div1[count($div1) - 1], "", $nome);
$div2 = explode('-', $new);
$width = $div2[count($div2) - 2];
$height = $div2[count($div2) - 1];
$caminho = str_replace("size-" . $width . "-" . $height, "", $caminho);
$arq = new Arquivos(str_replace("", '', Sistema::$caminhoDiretorio) . urldecode($caminho));
header('Expires: 0');
header('Pragma: no-cache');
if (strtoupper($arq->extensao) == "JPEG" || strtoupper($arq->extensao) == "JPG" || strtoupper($arq->extensao) == "PNG" || strtoupper($arq->extensao) == "GIF" || strtoupper($arq->extensao) == "BMP") {
    header("Content-type: image/" . $arq->extensao);
    $img = new Image($arq);
    $img->open();
    if (!empty($width) && !empty($height)) {
        $img->redimensionar($width, $height);
        $img->saveImage(dirname(substr(str_replace("", '', Sistema::$caminhoDiretorio), 0, -1) . urldecode($caminho)), urldecode($nome));
    }
    $img->getImage();
} else {
    header("Content-Type: application/" . $arq->extensao);
    header('Content-disposition: attachment; filename="' . $arq->getNome() . '";');
    $len = filesize($arq->url);
    header("Content-Length: " . $len . ";\n");
    echo $arq->arquivo;
}
Example #13
0
<?php

if (isset($_GET['url'])) {
    $default_size = 50;
    $width = isset($_GET['width']) ? $_GET['width'] : $default_size;
    $height = isset($_GET['height']) ? $_GET['height'] : $default_size;
    require_once 'image.php';
    $image = new Image();
    $image->getImage($_GET['url']);
    $image->resizeImage($width, $height);
    $image->displayImage();
}
Example #14
0
 /**
  * Index action.
  *
  * @return Bengine_Game_Controller_Galaxy
  */
 protected function indexAction()
 {
     if ($this->isPost()) {
         $this->setCoordinatesByPost($this->getParam("galaxy"), $this->getParam("system"), $this->getParam("submittype"));
     }
     $this->validateInputs()->subtractHydrogen();
     // Star surveillance
     $canMonitorActivity = false;
     if (Game::getPlanet()->getBuilding("STAR_SURVEILLANCE") > 0) {
         $range = pow(Game::getPlanet()->getBuilding("STAR_SURVEILLANCE"), 2) - 1;
         $diff = abs(Game::getPlanet()->getData("system") - $this->system);
         if ($this->galaxy == Game::getPlanet()->getData("galaxy") && $range >= $diff) {
             $canMonitorActivity = true;
         }
     }
     Core::getTPL()->assign("canMonitorActivity", $canMonitorActivity);
     // Images
     $rockimg = Image::getImage("rocket.gif", Core::getLanguage()->getItem("ROCKET_ATTACK"));
     // Get sunsystem data
     $select = array("g.planetid", "g.position", "g.destroyed", "g.metal", "g.silicon", "g.moonid", "p.picture", "p.planetname", "p.last as planetactivity", "u.username", "u.usertitle", "u.userid", "u.points", "u.last as useractivity", "u.umode", "u.level", "m.planetid AS moon", "m.picture AS moonpic", "m.planetname AS moonname", "m.diameter AS moonsize", "m.temperature", "m.last as moonactivity", "a.tag", "a.name", "a.showmember", "a.homepage", "a.showhomepage", "u2a.aid", "b.to");
     $joins = "LEFT JOIN " . PREFIX . "planet p ON (p.planetid = g.planetid)";
     $joins .= "LEFT JOIN " . PREFIX . "user u ON (u.userid = p.userid)";
     $joins .= "LEFT JOIN " . PREFIX . "planet m ON (m.planetid = g.moonid)";
     $joins .= "LEFT JOIN " . PREFIX . "user2ally u2a ON (u2a.userid = u.userid)";
     $joins .= "LEFT JOIN " . PREFIX . "alliance a ON (a.aid = u2a.aid)";
     $joins .= "LEFT JOIN " . PREFIX . "ban_u b ON (b.userid = u.userid AND b.to > '" . TIME . "')";
     $where = Core::getDB()->quoteInto("g.galaxy = ? AND g.system = ?", array($this->galaxy, $this->system));
     $result = Core::getQuery()->select("galaxy g", $select, $joins, $where);
     $UserList = new Bengine_Game_User_List();
     $UserList->setKey("position");
     $UserList->setNewbieProtection(true);
     $UserList->setFetchRank(true);
     $UserList->setTagAsLink(false);
     $UserList->load($result);
     $sys = $UserList->getArray();
     Hook::event("SolarSystemDataBefore", array($this, &$sys));
     for ($i = 1; $i <= 15; $i++) {
         if (isset($sys[$i]) && !$sys[$i]["destroyed"]) {
             $sys[$i]["systempos"] = $i;
             if ($sys[$i]["tag"] != "") {
                 $sys[$i]["allydesc"] = sprintf(Core::getLanguage()->getItem("GALAXY_ALLY_HEADLINE"), $sys[$i]["tag"], $sys[$i]["alliance_rank"]);
             }
             $sys[$i]["metal"] = fNumber($sys[$i]["metal"]);
             $sys[$i]["silicon"] = fNumber($sys[$i]["silicon"]);
             $sys[$i]["picture"] = Image::getImage("planets/small/s_" . $sys[$i]["picture"] . Core::getConfig()->get("PLANET_IMG_EXT"), $sys[$i]["planetname"], 30, 30);
             $sys[$i]["picture"] = Link::get("game/" . SID . "/Mission/Index/" . $this->galaxy . "/" . $this->system . "/" . $i, $sys[$i]["picture"]);
             $sys[$i]["planetname"] = Link::get("game/" . SID . "/Mission/Index/" . $this->galaxy . "/" . $this->system . "/" . $i, $sys[$i]["planetname"]);
             $sys[$i]["moonpicture"] = $sys[$i]["moonpic"] != "" ? Image::getImage("planets/small/s_" . $sys[$i]["moonpic"] . Core::getConfig()->get("PLANET_IMG_EXT"), $sys[$i]["moonname"], 22, 22) : "";
             $sys[$i]["moon"] = sprintf(Core::getLanguage()->getItem("MOON_DESC"), $sys[$i]["moonname"]);
             $sys[$i]["moonsize"] = fNumber($sys[$i]["moonsize"]);
             $sys[$i]["moontemp"] = fNumber($sys[$i]["temperature"]);
             if ($sys[$i]["moonactivity"] > $sys[$i]["planetactivity"]) {
                 $activity = $sys[$i]["moonactivity"];
             } else {
                 $activity = $sys[$i]["planetactivity"];
             }
             if ($activity > TIME - 900 && $sys[$i]["userid"] != Core::getUser()->get("userid")) {
                 $sys[$i]["activity"] = "(*)";
             } else {
                 if ($activity > TIME - 3600 && $sys[$i]["userid"] != Core::getUser()->get("userid")) {
                     $sys[$i]["activity"] = "(" . floor((TIME - $activity) / 60) . " min)";
                 } else {
                     $sys[$i]["activity"] = "";
                 }
             }
             if (Game::getPlanet()->getBuilding("ROCKET_STATION") > 3 && $sys[$i]["userid"] != Core::getUser()->get("userid") && $this->inMissileRange()) {
                 $sys[$i]["rocketattack"] = Link::get("game/" . SID . "/RocketAttack/Index/" . $sys[$i]["planetid"], $rockimg);
                 $sys[$i]["moonrocket"] = "<tr><td colspan=\"3\" class=\"center\">" . Link::get("game/" . SID . "/RocketAttack/Index/" . $sys[$i]["moonid"] . "/1", Core::getLanguage()->getItem("ROCKET_ATTACK")) . "</td></tr>";
             } else {
                 $sys[$i]["rocketattack"] = "";
                 $sys[$i]["moonrocket"] = "";
             }
             $sys[$i]["allypage"] = Str::replace("\"", "", Link::get("game/" . SID . "/Alliance/Page/" . $sys[$i]["aid"], Core::getLanguage()->getItem("ALLIANCE_PAGE"), 1));
             if (($sys[$i]["showhomepage"] || $sys[$i]["aid"] == Core::getUser()->get("aid")) && $sys[$i]["homepage"] != "") {
                 $sys[$i]["homepage"] = "<tr><td>" . Str::replace("'", "\\'", Link::get($sys[$i]["homepage"], Core::getLanguage()->getItem("HOMEPAGE"), 2)) . "</td></tr>";
             } else {
                 $sys[$i]["homepage"] = "";
             }
             if ($sys[$i]["showmember"]) {
                 $sys[$i]["memberlist"] = "<tr><td>" . Str::replace("\"", "", Link::get("game/" . SID . "/Alliance/Memberlist/" . $sys[$i]["aid"], Core::getLanguage()->getItem("SHOW_MEMBERLIST"), 3)) . "</td></tr>";
             }
             $sys[$i]["debris"] = Image::getImage("debris.jpg", "", 25, 25);
         } else {
             if (empty($sys[$i]["destroyed"])) {
                 $sys[$i] = array();
                 $sys[$i]["destroyed"] = false;
                 $sys[$i]["metal"] = 0;
                 $sys[$i]["silicon"] = 0;
                 $sys[$i]["debris"] = "";
                 $sys[$i]["picture"] = "";
                 $sys[$i]["planetname"] = "";
                 $sys[$i]["planetid"] = "";
             } else {
                 $sys[$i]["metal"] = fNumber($sys[$i]["metal"]);
                 $sys[$i]["silicon"] = fNumber($sys[$i]["silicon"]);
                 $sys[$i]["debris"] = Image::getImage("debris.jpg", "", 25, 25);
                 $sys[$i]["picture"] = Image::getImage("planets/small/s_" . $sys[$i]["picture"] . Core::getConfig()->get("PLANET_IMG_EXT"), $sys[$i]["planetname"], 30, 30);
                 $sys[$i]["picture"] = Link::get("game/" . SID . "/Mission/Index/" . $this->galaxy . "/" . $this->system . "/" . $i, $sys[$i]["picture"]);
                 $sys[$i]["planetname"] = Core::getLanguage()->getItem("DESTROYED_PLANET");
                 $sys[$i]["planetname"] = Link::get("game/" . SID . "/Mission/Index/" . $this->galaxy . "/" . $this->system . "/" . $i, $sys[$i]["planetname"]);
             }
             $sys[$i]["systempos"] = $i;
             $sys[$i]["userid"] = null;
             $sys[$i]["moon"] = "";
             $sys[$i]["moonid"] = "";
             $sys[$i]["username"] = "";
             $sys[$i]["alliance"] = "";
             $sys[$i]["activity"] = "";
             $sys[$i]["moonpicture"] = "";
             $sys[$i]["user_status_long"] = "";
         }
     }
     ksort($sys);
     Hook::event("SolarSystemDataAfter", array($this, &$sys));
     Core::getTPL()->assign("sendesp", Image::getImage("esp.gif", Core::getLanguage()->getItem("SEND_ESPIONAGE_PROBE")));
     Core::getTPL()->assign("monitorfleet", Image::getImage("binocular.gif", Core::getLanguage()->getItem("MONITOR_FLEET_ACTIVITY")));
     Core::getTPL()->assign("moon", Str::replace("\"", "", Image::getImage("planets/mond" . Core::getConfig()->get("PLANET_IMG_EXT"), Core::getLanguage()->getItem("MOON"), 75, 75)));
     Core::getTPL()->addLoop("sunsystem", $sys);
     Core::getTPL()->assign("debris", Str::replace("\"", "", Image::getImage("debris.jpg", Core::getLanguage()->getItem("DEBRIS"), 75, 75)));
     Core::getTPL()->assign("galaxy", $this->galaxy);
     Core::getTPL()->assign("system", $this->system);
     return $this;
 }
Example #15
0
 /**
  * Shows the candidates and their application.
  *
  * @return Bengine_Game_Controller_Alliance
  */
 protected function showCandidatesAction()
 {
     if ($this->isPost()) {
         $this->manageCadidates($this->getParam("receipt"), $this->getParam("refuse"), $this->getParam("users"));
     }
     if ($this->getRights(array("CAN_SEE_APPLICATIONS"))) {
         $apps = array();
         $result = Core::getQuery()->select("allyapplication a", array("a.userid", "a.date", "a.application ", "u.username", "u.points", "g.galaxy", "g.system", "g.position"), "LEFT JOIN " . PREFIX . "user u ON (u.userid = a.userid) LEFT JOIN " . PREFIX . "galaxy g ON (g.planetid = u.hp)", Core::getDB()->quoteInto("a.aid = ?", $this->aid), "u.username ASC, a.date ASC");
         foreach ($result->fetchAll() as $row) {
             $apps[$row["userid"]]["date"] = Date::timeToString(1, $row["date"]);
             $apps[$row["userid"]]["message"] = Link::get("game/" . SID . "/MSG/Write/" . $row["username"], Image::getImage("pm.gif", Core::getLanguage()->getItem("WRITE_MESSAGE")));
             $apps[$row["userid"]]["apptext"] = nl2br($row["application"]);
             $apps[$row["userid"]]["userid"] = $row["userid"];
             $apps[$row["userid"]]["username"] = $row["username"];
             $apps[$row["userid"]]["points"] = fNumber(floor($row["points"]));
             $apps[$row["userid"]]["position"] = getCoordLink($row["galaxy"], $row["system"], $row["position"]);
         }
         Core::getTPL()->assign("candidates", sprintf(Core::getLanguage()->getItem("CANDIDATES"), $result->rowCount()));
         $result->closeCursor();
         Hook::event("ShowAllianceCandidates", array(&$apps));
         Core::getTPL()->addLoop("applications", $apps);
     }
     return $this;
 }
                $tabGal[] = array('title' => $donnee['nom_galerie'], 'thumbnail' => 'img/upload/mini/' . $lien, 'id_galerie' => $donnee['id_galerie']);
                $compte = $compte + 1;
            }
            $arr = array('items' => $tabGal, 'size' => $compte);
        } else {
            $arr = array('Erreur' => 'Donnée \'id_user\' manquante !');
        }
    } else {
        if (isset($_POST['id_gal']) && !empty($_POST['id_gal'])) {
            $gal = new Galerie($bdd);
            $img = new Image($bdd);
            $compte = 0;
            $galerie = $gal->getGallery($_POST['id_gal']);
            $allImg = $gal->getImagesFromGallery($_POST['id_gal']);
            $tabImg = array();
            foreach ($allImg as $donnee) {
                $infos = $img->getImage($donnee['id_img']);
                if ($infos['is_public_img'] == "true") {
                    $tabImg[] = array('title' => $infos['titre_img'], 'link' => 'image.php?id=' . $donnee['id_img'], 'thumbnail' => 'img/upload/mini/' . $infos['lien_img']);
                    $compte = $compte + 1;
                }
            }
            $arr = array('title' => $galerie['nom_galerie'], 'items' => $tabImg, 'size' => $compte);
        } else {
            $arr = array('Erreur' => 'Donnée \'id_gal\' manquante !');
        }
    }
} else {
    $arr = array('Erreur' => 'Donnée \'op\' manquante !');
}
echo json_encode($arr);
Example #17
0
 /**
  * @param \Moszkva\CGraph\Image $image
  */
 public function __construct(Image $image)
 {
     $this->image = $image->getImage();
     $this->charMapCount = count(ImageHandler::$charMap);
 }
 /**
  * Generates a page link
  *
  * @param integer $page	Page number
  * @param string $title	Title [optional]
  * @param string $image	Image [optional]
  *
  * @return string
  */
 protected function getPageLink($page, $title = null, $image = null)
 {
     $title = is_null($title) ? $page : Core::getLang()->get($title);
     $image = is_null($image) || !$this->getConfig("show_images") ? "" : Image::getImage($image, $title);
     if ($page > $this->getCurrentPage()) {
         $label = $title . " " . $image;
     } else {
         $label = $image . " " . $title;
     }
     $label = trim($label);
     if ($page == 1 && $this->getConfig("base_url")) {
         $url = $this->getConfig("base_url");
     } else {
         if ($this->getConfig("page_url")) {
             $url = sprintf($this->getConfig("page_url"), $page);
         } else {
             $url = $this->getPageUrl($page);
         }
     }
     return Link::get($url, $label);
 }
Example #19
0
 /**
  * Returns the moderator link.
  *
  * @return string
  */
 public function getModerateLink()
 {
     $img = Image::getImage("moderator.gif", Core::getLanguage()->getItem("MODERATE"));
     return Link::get("game/" . SID . "/Moderator/Index/" . $this->getUserid(), $img);
 }
Example #20
0
 /**
  * Formats an alliance record.
  *
  * @param array $row Alliance data
  *
  * @return array	Formatted alliance data
  */
 protected function formatRow(array $row)
 {
     $row["tag"] = $this->formatAllyTag($row["tag"], $row["name"], $row["aid"]);
     if (isset($row["showhomepage"]) && isset($row["homepage"]) && $row["showhomepage"] && $row["homepage"] != "") {
         $row["name"] = Link::get($row["homepage"], $row["name"]);
     }
     if (!Core::getUser()->get("aid") && $row["open"] > 0) {
         $row["join"] = Link::get("game/" . SID . "/Alliance/Apply/" . $row["aid"], Image::getImage("apply.gif", Core::getLanguage()->getItem("JOIN")));
     }
     $row["average"] = $row["members"] > 0 ? fNumber(floor($row["points"] / $row["members"])) : 0;
     $row["members"] = fNumber($row["members"]);
     if ($this->fetchRankByQuery) {
         $row["rank"] = $this->getAllianceRank($row["aid"], $this->pointType);
     } else {
         $row["rank"] = fNumber($row["rank"]);
     }
     $row["totalpoints"] = fNumber(floor($row[$this->pointType]));
     $row["points"] = fNumber(floor($row["points"]));
     if (isset($row["fpoints"])) {
         $row["fpoints"] = fNumber(floor($row["fpoints"]));
     }
     if (isset($row["dpoints"])) {
         $row["dpoints"] = fNumber(floor($row["dpoints"]));
     }
     if (isset($row["rpoints"])) {
         $row["rpoints"] = fNumber(floor($row["rpoints"]));
     }
     return $row;
 }
 /**
  * Shows all building information.
  *
  * @param integer $id
  * @throws Recipe_Exception_Generic
  * @return Bengine_Game_Controller_Constructions
  */
 protected function infoAction($id)
 {
     $select = array("name", "demolish", "basic_metal", "basic_silicon", "basic_hydrogen", "basic_energy", "prod_metal", "prod_silicon", "prod_hydrogen", "prod_energy", "special", "cons_metal", "cons_silicon", "cons_hydrogen", "cons_energy", "charge_metal", "charge_silicon", "charge_hydrogen", "charge_energy");
     $result = Core::getQuery()->select("construction", $select, "", Core::getDB()->quoteInto("buildingid = ? AND (mode = '1' OR mode = '2' OR mode = '5')", $id));
     if ($row = $result->fetchRow()) {
         $result->closeCursor();
         Core::getLanguage()->load("info,Resource");
         Hook::event("BuildingInfoBefore", array(&$row));
         // Assign general building data
         Core::getTPL()->assign("buildingName", Core::getLanguage()->getItem($row["name"]));
         Core::getTPL()->assign("buildingDesc", Core::getLanguage()->getItem($row["name"] . "_FULL_DESC"));
         Core::getTPL()->assign("buildingImage", Image::getImage("buildings/" . $row["name"] . ".gif", Core::getLanguage()->getItem($row["name"]), null, null, "leftImage"));
         Core::getTPL()->assign("edit", Link::get("game/" . SID . "/Construction_Edit/Index/" . $id, "[" . Core::getLanguage()->getItem("EDIT") . "]"));
         // Production and consumption of the building
         $prodFormula = false;
         if (!empty($row["prod_metal"])) {
             $prodFormula = $row["prod_metal"];
             $baseCost = $row["basic_metal"];
         } else {
             if (!empty($row["prod_silicon"])) {
                 $prodFormula = $row["prod_silicon"];
                 $baseCost = $row["basic_metal"];
             } else {
                 if (!empty($row["prod_hydrogen"])) {
                     $prodFormula = $row["prod_hydrogen"];
                     $baseCost = $row["basic_hydrogen"];
                 } else {
                     if (!empty($row["prod_energy"])) {
                         $prodFormula = $row["prod_energy"];
                         $baseCost = $row["basic_energy"];
                     } else {
                         if (!empty($row["special"])) {
                             $prodFormula = $row["special"];
                             $baseCost = 0;
                         }
                     }
                 }
             }
         }
         $consFormula = false;
         if (!empty($row["cons_metal"])) {
             $consFormula = $row["cons_metal"];
         } else {
             if (!empty($row["cons_silicon"])) {
                 $consFormula = $row["cons_silicon"];
             } else {
                 if (!empty($row["cons_hydrogen"])) {
                     $consFormula = $row["cons_hydrogen"];
                 } else {
                     if (!empty($row["cons_energy"])) {
                         $consFormula = $row["cons_energy"];
                     }
                 }
             }
         }
         // Production and consumption chart
         $chartType = false;
         if ($prodFormula != false || $consFormula != false) {
             $chart = array();
             $chartType = "cons_chart";
             if ($prodFormula && $consFormula) {
                 $chartType = "prod_and_cons_chart";
             } else {
                 if ($prodFormula) {
                     $chartType = "prod_chart";
                 }
             }
             if (Game::getPlanet()->getBuilding($id) - 7 < 0) {
                 $start = 7;
             } else {
                 $start = Game::getPlanet()->getBuilding($id);
             }
             $productionFactor = (double) Core::getConfig()->get("PRODUCTION_FACTOR");
             if (!empty($row["prod_energy"])) {
                 $productionFactor = 1;
             }
             $currentProduction = 0;
             if ($prodFormula) {
                 $currentProduction = parseFormula($prodFormula, $baseCost, Game::getPlanet()->getBuilding($id)) * $productionFactor;
             }
             $currentConsumption = 0;
             if ($consFormula) {
                 $currentConsumption = parseFormula($consFormula, 0, Game::getPlanet()->getBuilding($id));
             }
             for ($i = $start - 7; $i <= Game::getPlanet()->getBuilding($id) + 7; $i++) {
                 $chart[$i]["level"] = $i;
                 $chart[$i]["s_prod"] = $prodFormula ? parseFormula($prodFormula, $baseCost, $i) * $productionFactor : 0;
                 $chart[$i]["s_diffProd"] = $prodFormula ? $chart[$i]["s_prod"] - $currentProduction : 0;
                 $chart[$i]["s_cons"] = $consFormula ? parseFormula($consFormula, 0, $i) : 0;
                 $chart[$i]["s_diffCons"] = $consFormula ? $currentConsumption - $chart[$i]["s_cons"] : 0;
                 $chart[$i]["prod"] = fNumber($chart[$i]["s_prod"]);
                 $chart[$i]["diffProd"] = fNumber($chart[$i]["s_diffProd"]);
                 $chart[$i]["cons"] = fNumber($chart[$i]["s_cons"]);
                 $chart[$i]["diffCons"] = fNumber($chart[$i]["s_diffCons"]);
             }
             Hook::event("BuildingInfoProduction", array(&$chart));
             Core::getTPL()->addLoop("chart", $chart);
         }
         if ($chartType) {
             Core::getTPL()->assign("chartType", "game/constructions/" . $chartType);
         }
         // Show demolish function
         $factor = floatval($row["demolish"]);
         if (Game::getPlanet()->getBuilding($id) > 0 && $factor > 0.0) {
             Core::getTPL()->assign("buildingLevel", Game::getPlanet()->getBuilding($id));
             Core::getTPL()->assign("demolish", true);
             $metal = "";
             $_metal = 0;
             $silicon = "";
             $_silicon = 0;
             $hydrogen = "";
             $_hydrogen = 0;
             if ($row["basic_metal"] > 0) {
                 $_metal = 1 / $factor * parseFormula($row["charge_metal"], $row["basic_metal"], Game::getPlanet()->getBuilding($id));
                 $metal = Core::getLanguage()->getItem("METAL") . ": " . fNumber($_metal);
             }
             Core::getTPL()->assign("metal", $metal);
             if ($row["basic_silicon"] > 0) {
                 $_silicon = 1 / $factor * parseFormula($row["charge_silicon"], $row["basic_silicon"], Game::getPlanet()->getBuilding($id));
                 $silicon = Core::getLanguage()->getItem("SILICON") . ": " . fNumber($_silicon);
             }
             Core::getTPL()->assign("silicon", $silicon);
             if ($row["basic_hydrogen"] > 0) {
                 $_hydrogen = 1 / $factor * parseFormula($row["charge_hydrogen"], $row["basic_hydrogen"], Game::getPlanet()->getBuilding($id));
                 $hydrogen = Core::getLanguage()->getItem("HYDROGEN") . ": " . fNumber($_hydrogen);
             }
             Core::getTPL()->assign("hydrogen", $hydrogen);
             $time = getBuildTime($_metal, $_silicon, self::BUILDING_CONSTRUCTION_TYPE);
             Core::getTPL()->assign("dimolishTime", getTimeTerm($time));
             $showLink = Game::getPlanet()->getData("metal") >= $_metal && Game::getPlanet()->getData("silicon") >= $_silicon && Game::getPlanet()->getData("hydrogen") >= $_hydrogen;
             if ($id == 12 && Game::getEH()->getResearchEvent()) {
                 $showLink = false;
             }
             $shipyardSize = Game::getEH()->getShipyardEvents()->getCalculatedSize();
             if (($id == 8 || $id == 7) && $shipyardSize > 0) {
                 $showLink = false;
             }
             Core::getTPL()->assign("showLink", $showLink && !$this->event && !Core::getUser()->get("umode"));
             Core::getTPL()->assign("demolishNow", Link::get("game/" . SID . "/Constructions/Demolish/{$id}", Core::getLanguage()->getItem("DEMOLISH_NOW")));
         } else {
             Core::getTPL()->assign("demolish", false);
         }
         Hook::event("BuildingInfoAfter", array(&$row));
     } else {
         $result->closeCursor();
         throw new Recipe_Exception_Generic("Unkown building. You'd better don't manipulate the URL. We see everything ;)");
     }
     return $this;
 }
Example #22
0
 public function getImage()
 {
     return Link::get("game/" . SID . "/Unit/Info/" . $this->get("buildingid"), Image::getImage("buildings/" . $this->get("name") . ".gif", $this->getName()));
 }
Example #23
0
 /**
  * @param string $function
  * @param string $param
  *
  * @return string
  */
 protected function func($function, $param = null)
 {
     $function = strtolower($function);
     switch ($function) {
         case "version":
             return "v" . Game::getVersion();
             break;
         case "const":
             return constant($param);
             break;
         case "config":
             return Core::getConfig()->get($param);
             break;
         case "user":
             return Core::getUser()->get($param);
             break;
         case "cookie":
             return Core::getRequest()->getCOOKIE($param);
             break;
         case "image":
             return Image::getImage($param, "");
             break;
         case "callback":
             return call_user_func_array($param["function"], $param["arguments"]);
             break;
     }
     return "";
 }
Example #24
0
         }
     } else {
         $reponse->message = "utilisateur";
     }
 } else {
     if ($op == "suppimage") {
         $image = new Image($bdd);
         $suppression = $image->deleteImage($id);
         if ($suppression) {
             $bdd = null;
             $reponse->success = true;
         }
     } else {
         $image = new Image($bdd);
         $user = new User($bdd);
         $data = $image->getImage($id);
         $author = $user->getPseudo($data['id_user']);
         if ($data['is_public_img'] == "true") {
             $public = "Image publique";
         } else {
             $public = "Image privée";
         }
         $reponse->success = true;
         $reponse->titre = $data['titre_img'];
         $reponse->description = $data['description_img'];
         $reponse->auteur = "AUTEUR : " . $author['pseudo_user'];
         $reponse->theme = "THÈME : " . $data['theme_img'];
         $reponse->confid = "CONFIDENTIALITÉ : " . $public;
         $reponse->jaime = "NOMBRE DE J'AIME : " . $data['nombre_aime_img'];
         $reponse->lien = "<a href=\"../img/upload/" . $data['lien_img'] . "\" target=\"_blank\">http://picstore.16mb.com/img/upload/" . $data['lien_img'] . "</a>";
     }
Example #25
0
 /**
  * Generic template assignments.
  *
  * @return void
  */
 protected static function globalTPLAssigns()
 {
     // JavaScript & CSS
     Core::getTPL()->addHTMLHeaderFile("game.css", "css");
     // TODO: change to responsive
     Core::getTPL()->addHTMLHeaderFile("jquery-ui.css", "css");
     Core::getTPL()->addHTMLHeaderFile("lib/jquery.js", "js");
     Core::getTPL()->addHTMLHeaderFile("lib/jquery-ui.js", "js");
     Core::getTPL()->addHTMLHeaderFile("main.js", "js");
     // Set planets for right menu and fill planet stack.
     $planets = array();
     $i = 0;
     $order = "p.sort_index ASC, p.planetid ASC";
     $joins = "LEFT JOIN " . PREFIX . "galaxy g ON (g.planetid = p.planetid)";
     $joins .= "LEFT JOIN " . PREFIX . "planet m ON (g.moonid = m.planetid)";
     $atts = array("p.planetid", "p.ismoon", "p.planetname", "p.picture", "g.galaxy", "g.system", "g.position", "m.planetid AS moonid", "m.planetname AS moon", "m.picture AS mpicture");
     $where = Core::getDB()->quoteInto("p.userid = ?", Core::getUser()->get("userid"));
     $where .= Core::getDB()->quoteInto(" AND p.ismoon = ?", 0);
     $result = Core::getQuery()->select("planet p", $atts, $joins, $where, $order);
     unset($order);
     foreach ($result->fetchAll() as $row) {
         $planets[$i] = $row;
         $coords = $row["galaxy"] . ":" . $row["system"] . ":" . $row["position"];
         $coords = "[" . $coords . "]";
         $planets[$i]["coords"] = $coords;
         $planets[$i]["picture"] = Image::getImage("planets/small/s_" . $row["picture"] . Core::getConfig()->get("PLANET_IMG_EXT"), $row["planetname"] . " " . $coords, 60, 60);
         if ($row["moonid"]) {
             $planets[$i]["mpicture"] = Image::getImage("planets/small/s_" . $row["mpicture"] . Core::getConfig()->get("PLANET_IMG_EXT"), $row["moon"] . " " . $coords, 20, 20);
         }
         self::$planetStack[] = $row["planetid"];
         $i++;
     }
     $result->closeCursor();
     Hook::event("GamePlanetList", array(&$planets));
     Core::getTPL()->addLoop("planetHeaderList", $planets);
     // Menu
     Core::getTPL()->addLoop("navigation", new Bengine_Game_Menu("Menu"));
     // Assignments
     $planet = self::getPlanet();
     Core::getTPL()->assign("themePath", Core::getUser()->get("theme") ? Core::getUser()->get("theme") : HTTP_HOST . REQUEST_DIR);
     Core::getTPL()->assign("planetImageSmall", Image::getImage("planets/small/s_" . $planet->getData("picture") . Core::getConfig()->get("PLANET_IMG_EXT"), $planet->getData("planetname"), 88, 88));
     Core::getTPL()->assign("currentPlanet", Link::get("game/" . SID . "/Index/PlanetOptions", $planet->getData("planetname")));
     Core::getTPL()->assign("currentCoords", $planet->getCoords());
     // Show message if user is in vacation or deletion mode.
     $delete = false;
     if (Core::getUser()->get("delete") > 0) {
         $delete = Core::getLanguage()->getItem("ACCOUNT_WILL_BE_DELETED");
     }
     $umode = false;
     if (Core::getUser()->get("umode")) {
         $umode = Core::getLanguage()->getItem("UMODE_ENABLED");
     }
     Core::getTPL()->assign("delete", $delete);
     Core::getTPL()->assign("umode", $umode);
     return;
 }
Example #26
0
 /**
  * Applies the watermark to the given image.
  *
  * @param  Image  $image The image where apply the watermark.
  * @return Image         The resulting watermarked Image, so you can
  *                       do $watermark->apply($image)->generate().
  */
 public function apply(Image $image)
 {
     $metadata = $image->getMetadata();
     $this->calculateSize($metadata);
     list($x, $y) = $this->calculatePosition($metadata);
     $resource = $this->imagecreate($metadata['width'], $metadata['height']);
     // @codingStandardsIgnoreStart
     imagecopyresampled($resource, $image->getImage(), 0, 0, 0, 0, $metadata['width'], $metadata['height'], $metadata['width'], $metadata['height']);
     // @codingStandardsIgnoreEnd
     imagealphablending($resource, true);
     imagesavealpha($resource, false);
     // @codingStandardsIgnoreStart
     imagecopy($resource, $this->image, $x, $y, 0, 0, $this->width, $this->height);
     // @codingStandardsIgnoreEnd
     $image->setImage($resource);
     return $image;
 }