/** * @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; }
/** * 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; }
/** * 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; }
/** * 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; }
/** * 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; }
/** * 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)); }
/** * 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; }
/** * 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; }
/** * 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; }
/** * 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(); }
//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; }
<?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(); }
/** * 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; }
/** * 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);
/** * @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); }
/** * 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); }
/** * 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; }
public function getImage() { return Link::get("game/" . SID . "/Unit/Info/" . $this->get("buildingid"), Image::getImage("buildings/" . $this->get("name") . ".gif", $this->getName())); }
/** * @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 ""; }
} } 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>"; }
/** * 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; }
/** * 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; }