/** * 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; }
/** * Returns file size. * * @param boolean Formatting size (default: false) [optional] * * @return integer File size */ public function getFileSize($format = false) { return $format ? File::bytesToString($this->file["size"]) : $this->file["size"]; }