public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $steam = $GLOBALS["STEAM"]; $extensionMaster = \ExtensionMaster::getInstance(); $portalColumnExtension = $extensionMaster->getExtensionById("PortalColumn"); $this->getExtension()->addCSS(); $htmlBody = ""; $portalColumnObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $portlets = $portalColumnObject->get_inventory(); //handle column size $columnWidthPx = trim($portalColumnObject->get_attribute("bid:portal:column:width")); if (strEndsWith($columnWidthPx, "px")) { $columnWidth = str_replace("px", "", $columnWidthPx); $columnWidthExt = "px"; } else { if (strEndsWith($columnWidthPx, "%")) { $columnWidth = str_replace("%", "", $columnWidthPx); $columnWidthExt = "%"; } else { $columnWidth = $columnWidthPx; $columnWidthExt = "px"; } } if ((int) $columnWidth > 0) { $columnWidthPx = $columnWidth . $columnWidthExt; } else { $columnWidthPx = "200px"; } $this->rawHtmlWidget = new \Widgets\RawHtml(); $htmlBody .= '<div class="column" style="width:' . $columnWidthPx . ';">'; //popupmenu $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setCommand("GetPopupMenu"); $popupmenu->setData($portalColumnObject); $popupmenu->setNamespace("PortalColumn"); $popupmenu->setElementId("portal-overlay"); $htmlBody .= '<h2 class="editbutton columnheadline"><div class="editbutton">' . $popupmenu->getHtml() . '</div><div style="margin-left:3px;">Spalte</div></h2>'; foreach ($portlets as $portlet) { //handle link objects as portlets $params = array(); if ($portlet instanceof \steam_link) { $params["referenced"] = true; $params["referenceId"] = $portlet->get_id(); $portlet = $portlet->get_link_object(); if ($portlet == NULL) { continue; } } $widgets = $extensionMaster->getWidgetsByObjectId($portlet->get_id(), "view", $params); $this->rawHtmlWidget->addWidgets($widgets); $data = \Widgets\Widget::getData($widgets); $htmlBody .= $data["html"]; } $htmlBody .= "</div>"; $this->rawHtmlWidget->setHtml($htmlBody); }
public function processData(\IRequestObject $requestObject) { if ($requestObject instanceof \UrlRequestObject) { $this->params = $requestObject->getParams(); isset($this->params[0]) ? $this->id = $this->params[0] : ""; } else { if ($requestObject instanceof \IdRequestObject) { $this->id = $requestObject->getId(); } } $steam = $GLOBALS["STEAM"]; //get singleton and portlet path $portalInstance = \Portal::getInstance(); $portalPath = $portalInstance->getExtensionPath(); //template $templateFileName = $portalPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($templateFileName); $this->getExtension()->addCSS(); $this->getExtension()->addJS(); $currentUser = $GLOBALS["STEAM"]->get_current_steam_user(); $object = $currentUser->get_workroom(); $objectId = $this->id; //get the portal object $this->portalObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $type = getObjectType($this->portalObject); if (!($type === "portal")) { \ExtensionMaster::getInstance()->send404Error(); die; } \Portal::getInstance()->setPortalObject($this->portalObject); //get the content of the portal object $portalColumns = $this->portalObject->get_inventory(); $htmlBody = ""; $extensionMaster = \ExtensionMaster::getInstance(); $count = 0; $htmlCollectorColRow[][] = array(); $col = 0; $row = 0; $this->rawHtmlWidget = new \Widgets\RawHtml(); foreach ($portalColumns as $columnObject) { $columnObjectId = $columnObject->get_id(); $widgets = $extensionMaster->getWidgetsByObjectId($columnObjectId, "view"); $this->rawHtmlWidget->addWidgets($widgets); $data = \Widgets\Widget::getData($widgets); $htmlBody .= $data["html"]; $count++; } $currentUser = $GLOBALS["STEAM"]->get_current_steam_user(); if (isset($this->portalObject) && $this->portalObject->check_access_write($currentUser)) { $htmlBody .= "<script>if (readCookie(\"portalEditMode\") === \"{$objectId}\") {portalLockButton({$objectId})}</script>"; } $tmpl->setVariable("BODY", $htmlBody); $htmlBodyTemplated = $tmpl->get(); $this->rawHtmlWidget->setHtml($htmlBodyTemplated); }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portal = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $steam = $GLOBALS["STEAM"]; $portal_name = $portal->get_attribute(OBJ_DESC); $portalInstance = \Portal::getInstance(); $portalPath = $portalInstance->getExtensionPath(); $htmlBody = "Dummy output for properties command of portal"; $this->content = $htmlBody; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } $portletName = $portlet->get_attribute(OBJ_DESC); $this->getExtension()->addCSS(); $this->getExtension()->addJS(); //old bib include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } $portletInstance = \PortletRss::getInstance(); $portletPath = $portletInstance->getExtensionPath(); $num_items = isset($content["num_items"]) ? $content["num_items"] : 0; if (isset($content["address"])) { $feed = new \SimplePie(); $feed->set_cache_location(PATH_CACHE); $feed->set_feed_url(derive_url($content["address"])); $feed->init(); if ($num_items == 0) { $items = $feed->get_items(); } else { $items = array_slice($feed->get_items(), 0, $num_items); } } $desc_length = isset($content["desc_length"]) ? $content["desc_length"] : 0; if (isset($content["allow_html"])) { $allow_html = $content["allow_html"] == "checked" ? true : false; } else { $allow_html = false; } $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); $tmpl->setVariable("EDIT_BUTTON", ""); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("RSS_NAME", $portletName); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } //popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletRss"); $popupmenu->setElementId("portal-overlay"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if (sizeof($content) > 0) { if ($feed->error()) { $tmpl->setVariable("NOITEMSTEXT", "RSS-Ladefehler"); } else { if (count($items) == 0) { $tmpl->setVariable("NOITEMSTEXT", "RSS-Feed ist leer."); } else { foreach ($items as $item) { $tmpl->setCurrentBlock("BLOCK_RSS_ITEM"); if ($allow_html) { $itemtitle = $item->get_title(); $itemdesc = $item->get_description(); } else { $itemtitle = strip_tags($item->get_title()); $itemdesc = strip_tags($item->get_description()); } if ($desc_length == 0) { $itemdesc = ""; } else { if ($desc_length > 0 && strlen($itemdesc) > $desc_length) { $itemdesc = substr($itemdesc, 0, $desc_length) . "..."; } } $tmpl->setVariable("ITEMTITLE", $itemtitle); $tmpl->setVariable("ITEMDESC", $itemdesc); $tmpl->setVariable("ITEMURL", derive_url($item->get_permalink())); $tmpl->setVariable("LINK", ""); $tmpl->parse("BLOCK_RSS_ITEM"); } } } } else { $tmpl->setVariable("NOITEMSTEXT", "RSS-Feed nicht konfiguriert."); } $htmlBody = $tmpl->get(); $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->setHtml($htmlBody); $outputWidget->addWidget(new \Widgets\PopupMenu()); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portletInstance = \PortletMedia::getInstance(); $portletPath = $portletInstance->getExtensionPath(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } //hack include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } if (sizeof($content) > 0) { $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); //popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletMedia"); $popupmenu->setElementId("portal-overlay"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } $tmpl->setVariable("EDIT_BUTTON", ""); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("HEADLINE", $content["headline"]); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } $tmpl->setVariable("URL", $content["url"]); $tmpl->setVariable("DESCRIPTION", $content["description"]); $media_type = $content["media_type"]; if ($media_type == "image") { $tmpl->setCurrentBlock("image"); $tmpl->parse("MEDIA_ELEMENT", "image"); $tmpl->parse("image"); } else { if ($media_type == "movie") { $tmpl->setCurrentBlock("movie"); $width = str_replace(array("px", "%"), "", $portlet->get_environment()->get_attribute("bid:portal:column:width")) - 10; $media_player = $portletInstance->getAssetUrl() . 'mediaplayer.swf'; $tmpl->setVariable("MEDIA_PLAYER", $media_player); $tmpl->setVariable("MEDIA_PLAYER_WIDTH", $width); $tmpl->setVariable("MEDIA_PLAYER_HEIGHT", round($width * 3 / 4)); $tmpl->parse("movie"); } else { if ($media_type == "audio") { $tmpl->setCurrentBlock("audio"); $width = str_replace(array("px", "%"), "", $portlet->get_environment()->get_attribute("bid:portal:column:width")) - 10; $media_player = $portletInstance->getAssetUrl() . 'emff_lila_info.swf'; $tmpl->setVariable("MEDIA_PLAYER", $media_player); $tmpl->setVariable("MEDIA_PLAYER_WIDTH", $width); $tmpl->setVariable("MEDIA_PLAYER_HEIGHT", round($width * 11 / 40)); $tmpl->parse("audio"); } } } if ($portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $tmpl->parse("BLOCK_EDIT_BUTTON"); } //output $htmlBody = $tmpl->get(); } else { //output for no content $htmlBody = ""; } $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->setHtml($htmlBody); //popummenu $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletMedia"); $popupmenu->setElementId("portal-overlay"); $outputWidget->addWidget($popupmenu); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $portletName = $portlet->get_attribute(OBJ_DESC); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } $this->getExtension()->addCSS(); $this->getExtension()->addJS(); $htmlBody = ""; //hack include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } //get singleton and portlet path $portletInstance = \PortletTermplan::getInstance(); $portletPath = $portletInstance->getExtensionPath(); //create template $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); if (sizeof($content) > 0) { //popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletTermplan"); $popupmenu->setElementId("portal-overlay"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } $startDate = $content["start_date"]; $endDate = $content["end_date"]; if (time() > mktime(0, 0, 0, $startDate["month"], $startDate["day"], $startDate["year"]) && time() < mktime(24, 0, 0, $endDate["month"], $endDate["day"], $endDate["year"])) { $pollActive = true; } else { $pollActive = false; } $options = $content["options"]; $optionsVotecount = $content["options_votecount"]; $max_votecount = 1; foreach ($optionsVotecount as $option_votecount) { if ($option_votecount > $max_votecount) { $max_votecount = $option_votecount; } } $tmpl->setVariable("POLL_NAME", $portletName); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } $tmpl->setVariable("POLL_TOPIC", $content["poll_topic"]); //advanced result //decode content mapping $encodedVoteUserMapping = $portlet->get_attribute("termChoices"); if ($encodedVoteUserMapping == "0") { $mapping = array(); } else { $mapping = json_decode($encodedVoteUserMapping, true); } $currentUser = $GLOBALS["STEAM"]->get_current_steam_user(); $currentUserName = $currentUser->get_full_name(); $currentUserLogin = $currentUser->get_name(); //fehler //create table $userTimeTable = "<br/><table border='0' style='margin:auto;border-color:#C0C0C0;width:98%'>"; //headline $userTimeTable .= "<tr>"; $userTimeTable .= "<th style='background-color:#E0E0E0;'>Name</th>"; $optionsCount = 0; foreach ($options as $option) { if ($option != "") { //show $optionsCount++; $optionText = $this->termplanCutItemLenght($option); $userTimeTable .= "<th style='background-color:#E0E0E0;'>{$optionText}</th>"; } } $userTimeTable .= "</tr>"; $userVoteArray = array(); foreach ($mapping as $username => $encodedTermChoices) { @($voteUserArray = explode("#", $voteXuser)); //TODO $votes = explode(":", substr($encodedTermChoices, 12)); $user = $username; foreach ($votes as $vote) { if (isset($userVoteArray[$user][$vote]) && $userVoteArray[$user][$vote] == "X") { //hier den umschalter $userVoteArray[$user][$vote] = "N"; } else { $userVoteArray[$user][$vote] = "X"; } } } //initialize votecount $voteCount = array(); $voteCount[0] = 0; $voteCount[1] = 0; $voteCount[2] = 0; $voteCount[3] = 0; $voteCount[4] = 0; $voteCount[5] = 0; if (!("guest" == $GLOBALS["STEAM"]->get_current_steam_user()->get_name())) { //its not allowed for guest to vote //create first line for current user $userTimeTable .= "<tr>"; $userTimeTable .= "<td style='font-weight: bold;'>{$currentUserName}</td>"; if (isset($userVoteArray[$currentUserLogin])) { $votingForCurrentUser = $userVoteArray[$currentUserLogin]; } else { $votingForCurrentUser = array(); } $backGroundGreen = "#99EE99"; for ($i = 0; $i < $optionsCount; $i++) { //$userTimeTable.= "<td>"; $portletId = $portlet->get_id(); if (isset($votingForCurrentUser[$i]) && $votingForCurrentUser[$i] == "X") { if (!$pollActive) { $userTimeTable .= "<td style='background-color:{$backGroundGreen};'>"; } if ($pollActive) { $userTimeTable .= "<td style='background-color:{$backGroundGreen};'>"; } $voteCommand = 'sendRequest("VoteTerm", {"portletObjectId": "' . $objectId . '", "termId": "' . $i . '"}, "", "popup", "","", "PortletTermplan");return false;'; if ($pollActive) { $userTimeTable .= "<input onclick='{$voteCommand};' type='checkbox' name='termitem' value='{$i}' checked='checked'>"; } if (!$pollActive) { $userTimeTable .= "X"; } $voteCount[$i]++; $userTimeTable .= "</td>"; } else { $userTimeTable .= "<td>"; $voteCommand = 'sendRequest("VoteTerm", {"portletObjectId": "' . $objectId . '", "termId": "' . $i . '"}, "", "popup", "","", "PortletTermplan");return false;'; if ($pollActive) { $userTimeTable .= "<input onclick='{$voteCommand};' type='checkbox' name='termitem' value='{$i}'>"; } if (!$pollActive) { $userTimeTable .= ""; } $userTimeTable .= "</td>"; } } $userTimeTable .= "</tr>"; } //sort the users //$userVoteArray $sortedNames = array(); foreach ($userVoteArray as $login => $userElement) { $userObject = \steam_factory::get_user($GLOBALS["STEAM"]->get_id(), $login); $userRealName = $userObject->get_full_name(); $sortedNames[$login] = $userRealName; } asort($sortedNames, SORT_STRING); //resorting the other array foreach ($sortedNames as $userName => $realName) { $sortedNames[$userName] = $userVoteArray[$userName]; } $userVoteArraySorted = $sortedNames; //table for other users foreach ($userVoteArraySorted as $user => $userElement) { if ($user == $currentUserLogin) { continue; } //create row $userTimeTable .= "<tr>"; $userObject = \steam_factory::get_user($GLOBALS["STEAM"]->get_id(), $user); $realName = $userObject->get_full_name(); //create other users if ($currentUserName == $realName) { //DO NOTHING } else { $userTimeTable .= "<td>{$realName}</td>"; } for ($i = 0; $i < $optionsCount; $i++) { //create field if (isset($userElement[$i]) && $userElement[$i] == "X") { if ($currentUserName == $realName) { $userTimeTable .= "<td></td>"; //DO NOTHING } else { $userTimeTable .= "<td style='background-color:{$backGroundGreen};'>X</td>"; } $voteCount[$i]++; } else { $userTimeTable .= "<td></td>"; if ($currentUserName == $realName) { //DO NOTHING } } } $userTimeTable .= "</tr>"; } //count and show results $userTimeTable .= "<tr>"; $userTimeTable .= "<td>Summe</td>"; $portletId = $portlet->get_id(); for ($i = 0; $i < $optionsCount; $i++) { $userTimeTable .= "<td id='" . $portletId . "TermSum{$i}'>{$voteCount[$i]}</td>"; } $userTimeTable .= "</tr>"; $userTimeTable .= "</table>"; //table created $tmpl->setVariable("USER_VOTE_TABLE", $userTimeTable); $htmlBody = $tmpl->get(); //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->setHtml($htmlBody); $this->rawHtmlWidget = $outputWidget; } }
public function processData(\IRequestObject $requestObject) { $htmlBody = ""; $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } $portletName = $portlet->get_attribute(OBJ_DESC); $this->getExtension()->addCSS(); $this->getExtension()->addJS(); //hack //include_once("/Users/mjako/koala-development-workspace-next/koala-core/lib/bid/slashes.php"); include_once PATH_BASE . "/koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; $portletInstance = \PortletTopic::getInstance(); $portletPath = $portletInstance->getExtensionPath(); $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("PORTLET_NAME", $portletName); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } //popupmenu main if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON_MAIN"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletTopic"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setCommand("GetPopupMenu"); $popupmenu->setParams(array(array("key" => "menu", "value" => "nerd"))); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); $tmpl->parse("BLOCK_EDIT_BUTTON_MAIN"); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); $tmpl->parse("BLOCK_EDIT_BUTTON_MAIN"); } if (sizeof($content) > 0) { $categoryCount = 0; foreach ($content as $category) { $tmpl->setCurrentBlock("category"); //popupmenu category if ($portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON_CATEGORY"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletTopic"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setCommand("GetPopupMenuCategory"); $popupmenu->setParams(array(array("key" => "category", "value" => $categoryCount))); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); $tmpl->parse("BLOCK_EDIT_BUTTON_CATEGORY"); } $tmpl->setVariable("CATEGORY_TITLE", $UBB->encode($category["title"])); $tmpl->setVariable("TOPIC_ENTRY", ""); if (isset($category["topics"])) { $entryCount = 0; foreach ($category["topics"] as $topic) { $tmpl->setCurrentBlock("topic_entry"); //popupmenu topic if ($portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON_TOPIC"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletTopic"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setCommand("GetPopupMenuEntry"); $popupmenu->setParams(array(array("key" => "category", "value" => $categoryCount), array("key" => "entry", "value" => $entryCount))); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); $tmpl->parse("BLOCK_EDIT_BUTTON_TOPIC"); } if (trim($topic["link_url"]) != "") { $tmpl->setCurrentBlock("TOPIC_LINK"); $tmpl->setVariable("TOPIC_TITLE", $UBB->encode($topic["title"])); $tmpl->setVariable("TOPIC_LINK_URL", revealPath($topic["link_url"], $portlet->get_path())); $tmpl->setVariable("TOPIC_LINK_TARGET", $topic["link_target"] == "checked" ? "_blank" : "_top"); $tmpl->parse("TOPIC_LINK"); } else { $tmpl->setCurrentBlock("TOPIC_NOLINK"); $tmpl->setVariable("TOPIC_TITLE", $UBB->encode($topic["title"])); $tmpl->parse("TOPIC_NOLINK"); } $tmpl->setVariable("TOPIC_DESCRIPTION", $UBB->encode($topic["description"])); //if there is a url parse headline as link if (trim($topic["link_url"]) == "") { //$tmpl->parse("TOPIC_DISPLAY_TITLE", "topic_display_title"); } else { //$tmpl->parse("TOPIC_DISPLAY_TITLE", "topic_display_title_link"); } //if there is a description parse out $tmpl->setCurrentBlock("topic_display_description"); if (trim($topic["description"]) == "") { $tmpl->setVariable("TOPIC_DISPLAY_DESCRIPTION", ""); } else { //$tmpl->parse("TOPIC_DISPLAY_DESCRIPTION", "topic_display_description"); } $tmpl->parse("topic_display_description"); //parse out every topic $tmpl->parse("topic_entry"); $entryCount++; } } //parse out category $tmpl->parse("category"); $categoryCount++; } } else { $tmpl->setVariable("CATEGORY", ""); } $htmlBody = $tmpl->get(); $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->setHtml($htmlBody); //popummenu $outputWidget->addWidget(new \Widgets\PopupMenu()); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $portlet_name = $portlet->get_attribute(OBJ_DESC); $params = $requestObject->getParams(); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } //hack include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } $portletInstance = \PortletAppointment::getInstance(); $portletPath = $portletInstance->getExtensionPath(); $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("APPOINTMENT_NAME", $portlet_name); $tmpl->setVariable("linkurl", ""); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } //main popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON_MAIN"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletAppointment"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setCommand("GetPopupMenu"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } $tmpl->parse("BLOCK_EDIT_BUTTON_MAIN"); $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; if (sizeof($content) > 0) { $indexCount = 0; foreach ($content as $appointment) { $tmpl->setCurrentBlock("BLOCK_TERM"); //term popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON_MAIN"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setCommand("GetPopupMenuTerm"); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletAppointment"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "termIndex", "value" => $indexCount))); $tmpl->setVariable("POPUPMENU_ENTRY", $popupmenu->getHtml()); $tmpl->parse("BLOCK_EDIT_BUTTON_TERM"); } $indexCount++; $tmpl->setVariable("STARTDATE", $appointment["start_date"]["day"] . "." . $appointment["start_date"]["month"] . "." . $appointment["start_date"]["year"]); if (trim($appointment["location"]) != "" && trim($appointment["location"]) != "0") { $tmpl->setCurrentBlock("BLOCK_TERM_LOCATION"); $tmpl->setVariable("LOCATION", $UBB->encode($appointment["location"])); $tmpl->setVariable("LOCATION_ROW", ""); $tmpl->parse("BLOCK_TERM_LOCATION"); } if ($appointment["end_date"]["day"] != "") { $tmpl->setCurrentBlock("BLOCK_TERM_ENDDATE"); $tmpl->setVariable("ENDDATE", $appointment["end_date"]["day"] . "." . $appointment["end_date"]["month"] . "." . $appointment["end_date"]["year"]); $tmpl->setVariable("ENDDATE_ROW", ""); $tmpl->parse("BLOCK_TERM_ENDDATE"); } if ($appointment["start_time"]["hour"] != "") { $tmpl->setCurrentBlock("BLOCK_TERM_TIME"); $tmpl->setVariable("TIME", $appointment["start_time"]["hour"] . "." . $appointment["start_time"]["minutes"] . " Uhr"); $tmpl->setVariable("TIME_ROW", ""); $tmpl->parse("BLOCK_TERM_TIME"); } if (trim($appointment["description"]) != "" && trim($appointment["description"]) != "0") { $tmpl->setCurrentBlock("BLOCK_TERM_DESCRIPTION"); $tmpl->setVariable("DESCRIPTION", $UBB->encode($appointment["description"])); $tmpl->parse("BLOCK_TERM_DESCRIPTION"); } if (trim($appointment["linkurl"]) != "" && trim($appointment["linkurl"]) != "0") { $tmpl->setCurrentBlock("BLOCK_TERM_LINK"); $tmpl->setVariable("LINKURL", derive_url($appointment["linkurl"])); $tmpl->setVariable("TOPIC", $UBB->encode($appointment["topic"])); $tmpl->parse("BLOCK_TERM_LINK"); } else { $tmpl->setCurrentBlock("BLOCK_TERM_NOLINK"); $tmpl->setVariable("TOPIC", $UBB->encode($appointment["topic"])); $tmpl->parse("BLOCK_TERM_NOLINK"); } $tmpl->parse("BLOCK_TERM"); } } $htmlBody = $tmpl->get(); $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->setHtml($htmlBody); //popummenu $outputWidget->addWidget(new \Widgets\PopupMenu()); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } //hack include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } //get singleton and portlet path $portletInstance = \PortletHeadline::getInstance(); $portletPath = $portletInstance->getExtensionPath(); if (sizeof($content) > 0) { $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); //popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletHeadline"); $popupmenu->setElementId("portal-overlay"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; $tmpl->setVariable("DUMMY", ""); $tmpl->setVariable("EDIT_BUTTON", ""); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("ALIGNMENT", trim($content["alignment"])); $tmpl->setVariable("HEADLINE", $UBB->encode($content["headline"])); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } $tmpl->setVariable("SIZE", trim($content["size"])); if ($portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $tmpl->parse("BLOCK_EDIT_BUTTON"); } $htmlBody = $tmpl->get(); } else { $htmlBody = ""; } $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); //popummenu $outputWidget->addWidget(new \Widgets\PopupMenu()); $outputWidget->setHtml($htmlBody); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $params = $requestObject->getParams(); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } $this->getExtension()->addCSS(); $this->getExtension()->addJS(); $portletName = $portlet->get_attribute(OBJ_DESC); //hack include_once PATH_BASE . "koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } $portletInstance = \PortletMsg::getInstance(); $portletPath = $portletInstance->getExtensionPath(); $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); //headline $tmpl->setCurrentBlock("BLOCK_MESSAGE_HEADLINE"); $tmpl->setVariable("HEADLINE", $portletName); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } if (!$portletIsReference) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletMsg"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "portletObjectId", "value" => $portlet->get_id()))); $popupmenu->setCommand("GetPopupMenuHeadline"); $tmpl->setVariable("POPUPMENU_HEADLINE", $popupmenu->getHtml()); } else { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU_HEADLINE", $popupmenu->getHtml()); } //show empty headline in edit mode if (trim($portletName) == "") { $tmpl->setVariable("HEADLINE_CLASS", "headline editbutton"); } else { $tmpl->setVariable("HEADLINE_CLASS", "headline"); } $tmpl->parse("BLOCK_MESSAGE_HEADLINE"); if (sizeof($content) > 0) { /* * Convert old messages which save its content as UBB code to new messages * using a html representation */ $convertUBB = false; $version = $portlet->get_attribute("bid:portlet:version"); /* if(!$version){ $convertUBB = true; require_once("name.php"); $portlet->set_attribute("bid:portlet:version", $msg_version); } */ $separator = false; foreach ($content as $messageId) { $tmpl->setCurrentBlock("BLOCK_MESSAGE"); $message = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $messageId); $message->get_attributes(array("OBJ_DESC", "bid:portlet:msg:picture_id", "bid:portlet:msg:picture_alignment", "bid:portlet:msg:link_url", "bid:portlet:msg:link_url_label", "bid:portlet:msg:link_open")); //popupmenu $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($message); $popupmenu->setNamespace("PortletMsg"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "messageObjectId", "value" => $messageId), array("key" => "portletObjectId", "value" => $portlet->get_id()))); $popupmenu->setCommand("GetPopupMenuMessage"); if (!$portletIsReference) { $tmpl->setVariable("POPUPMENU_MESSAGE", $popupmenu->getHtml()); } /* * Convert old messages which save its content as UBB code to new messages * using a html representation */ if ($convertUBB) { $message->set_content($UBB->encode($message->get_content())); } $tmpl->setVariable("MESSAGE_PICTURE", ""); $tmpl->setVariable("MESSAGE_LINK", ""); $tmpl->setVariable("MESSAGE_HEADLINE", $UBB->encode($message->get_attribute("OBJ_NAME"))); if ($UBB->encode($message->get_attribute("OBJ_DESC")) != "") { $tmpl->setVariable("MESSAGE_SUBHEADLINE", $UBB->encode($message->get_attribute("OBJ_DESC"))); } $tmpl->setVariable("MESSAGE_CONTENT", $message->get_content()); //get column width $columnObject = $portletObject->get_environment(); $column_width = $columnObject->get_attribute("bid:portal:column:width"); //PICTURE // parse in picture if it exists if ($message->get_attribute("bid:portlet:msg:picture_id") != "") { $tmpl->setCurrentBlock("BLOCK_MESSAGE_PICTURE"); $picture_width = $message->get_attribute("bid:portlet:msg:picture_width") != "" ? trim($message->get_attribute("bid:portlet:msg:picture_width")) : ""; if (extract_percentual_length($picture_width) == "") { $bare_picture_width = extract_length($picture_width); if ($bare_picture_width == "") { $picture_width = ""; } else { if ($bare_picture_width > $column_width - 25) { $picture_width = $column_width - 25; } } } $tmpl->setVariable("MESSAGE_PICTURE_ID", $message->get_attribute("bid:portlet:msg:picture_id")); //not used anymore $tmpl->setVariable("MESSAGE_PICTURE_URL", getDownloadUrlForObjectId($message->get_attribute("bid:portlet:msg:picture_id"))); $tmpl->setVariable("MESSAGE_PICTURE_ALIGNMENT", $message->get_attribute("bid:portlet:msg:picture_alignment")); $tmpl->setVariable("MESSAGE_PICTURE_WIDTH", $picture_width); $tmpl->parse("BLOCK_MESSAGE_PICTURE"); } //LINK //parse in link if it exists if (trim($message->get_attribute("bid:portlet:msg:link_url")) != "") { $tmpl->setCurrentBlock("BLOCK_MESSAGE_LINK"); if (trim($message->get_attribute("bid:portlet:msg:link_open")) != "checked") { $tmpl->setVariable("MESSAGE_LINK_URL_LABEL", $message->get_attribute("bid:portlet:msg:link_url_label") !== "" ? $UBB->encode($message->get_attribute("bid:portlet:msg:link_url_label")) : $message->get_attribute("bid:portlet:msg:link_url")); $tmpl->setVariable("MESSAGE_LINK_URL", revealPath($message->get_attribute("bid:portlet:msg:link_url"), $message->get_path())); $tmpl->setVariable("MESSAGE_LINK_TARGET", "_top"); } else { $tmpl->setVariable("MESSAGE_LINK_URL_LABEL", $message->get_attribute("bid:portlet:msg:link_url_label") !== "" ? $UBB->encode($message->get_attribute("bid:portlet:msg:link_url_label")) : $message->get_attribute("bid:portlet:msg:link_url")); $tmpl->setVariable("MESSAGE_LINK_URL", revealPath($message->get_attribute("bid:portlet:msg:link_url"), $message->get_path())); $tmpl->setVariable("MESSAGE_LINK_TARGET", "_blank"); } $tmpl->parse("BLOCK_MESSAGE_LINK"); } //SEPARATOR if ($separator) { $tmpl->setCurrentBlock("BLOCK_SEPARATOR"); $tmpl->parse("BLOCK_SEPARATOR"); } $separator = true; $tmpl->parse("BLOCK_MESSAGE"); } } else { //NO MESSAGE $tmpl->setCurrentBlock("BLOCK_NO_MESSAGE"); $tmpl->setVariable("NO_MESSAGE_INFO", "Keine Nachrichten vorhanden."); $tmpl->parse("BLOCK_NO_MESSAGE"); } $tmpl->setVariable("PATH_URL", PATH_URL); $tmpl->parse("BLOCK_PORTLET_MESSAGE"); $htmlBody = $tmpl->get(); $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); $outputWidget->addWidget(new \Widgets\PopupMenu()); $outputWidget->setHtml($htmlBody); $this->rawHtmlWidget = $outputWidget; }
public function processData(\IRequestObject $requestObject) { $objectId = $requestObject->getId(); $portletInstance = \PortletPoll::getInstance(); $portletPath = $portletInstance->getExtensionPath(); //icon $referIcon = \Portal::getInstance()->getAssetUrl() . "icons/refer_white.png"; //reference handling $params = $requestObject->getParams(); if (isset($params["referenced"]) && $params["referenced"] == true) { $portletIsReference = true; $referenceId = $params["referenceId"]; } else { $portletIsReference = false; } $portlet = $portletObject = \steam_factory::get_object($GLOBALS["STEAM"]->get_id(), $objectId); $portletName = $portlet->get_attribute(OBJ_DESC); $this->getExtension()->addCSS(); $this->getExtension()->addJS(); //hack include_once PATH_BASE . "/koala-core/lib/bid/slashes.php"; //get content of portlet $content = $portlet->get_attribute("bid:portlet:content"); if (is_array($content) && count($content) > 0) { array_walk($content, "_stripslashes"); } else { $content = array(); } $UBB = new \UBBCode(); include_once PATH_BASE . "koala-core/lib/bid/derive_url.php"; $portletFileName = $portletPath . "/ui/html/index.html"; $tmpl = new \HTML_TEMPLATE_IT(); $tmpl->loadTemplateFile($portletFileName); if (sizeof($content) > 0) { //popupmenu if (!$portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("PortletPoll"); $popupmenu->setElementId("portal-overlay"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } if ($portletIsReference && $portlet->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $popupmenu = new \Widgets\PopupMenu(); $popupmenu->setData($portlet); $popupmenu->setNamespace("Portal"); $popupmenu->setElementId("portal-overlay"); $popupmenu->setParams(array(array("key" => "sourceObjectId", "value" => $portlet->get_id()), array("key" => "linkObjectId", "value" => $referenceId))); $popupmenu->setCommand("PortletGetPopupMenuReference"); $tmpl->setVariable("POPUPMENU", $popupmenu->getHtml()); } $startDate = $content["start_date"]; $end_date = $content["end_date"]; if (time() > mktime(0, 0, 0, $startDate["month"], $startDate["day"], $startDate["year"]) && time() < mktime(24, 0, 0, $end_date["month"], $end_date["day"], $end_date["year"])) { $pollActive = true; } else { $pollActive = false; } $options = $content["options"]; $options_votecount = $content["options_votecount"]; $max_votecount = 1; foreach ($options_votecount as $option_votecount) { if ($option_votecount > $max_votecount) { $max_votecount = $option_votecount; } } $tmpl->setVariable("PORTLET_ID", $portlet->get_id()); $tmpl->setVariable("POLL_NAME", $portletName); //refernce icon if ($portletIsReference) { $tmpl->setVariable("REFERENCE_ICON", "<img src='{$referIcon}'>"); } $tmpl->setVariable("POLL_TOPIC", $content["poll_topic"]); if ($pollActive) { $i = 0; foreach ($options as $option) { if ($option != "") { $tmpl->setCurrentBlock("choice"); $tmpl->setVariable("OPTION", $option); $tmpl->setVariable("OPTION_NUMBER", $i); //create command params $tmpl->setVariable("portletObjectId", $portlet->get_id()); $tmpl->setVariable("voteItemId", $i); $tmpl->parse("choice"); } $i++; } } else { $i = 0; foreach ($options as $option) { $tmpl->setCurrentBlock("BLOCK_VOTE_RESULT"); if ($option != "") { $tmpl->setVariable("OPTION", $option); $tmpl->setVariable("OPTION_VOTECOUNT", $options_votecount[$i]); $tmpl->setVariable("OPTION_NUMBER", $i); $tmpl->setVariable("PATH_COLOR", PATH_URL); $percentage = $options_votecount[$i] / $max_votecount * 100; $percentage = round($percentage); if ($percentage < 1) { $percentage = 1; } $tmpl->setVariable("WIDTH", $percentage); $tmpl->parse("BLOCK_VOTE_RESULT"); } $i++; } } // we show the edit button only if the user has write access to the portal // because all portal readers need write access in order to vote $portalCol = $portlet->get_environment(); $portal = $portalCol->get_environment(); if ($portal->check_access_write($GLOBALS["STEAM"]->get_current_steam_user())) { $tmpl->setCurrentBlock("BLOCK_EDIT_BUTTON"); $tmpl->setVariable("PORTLET_ID_EDIT", $portlet->get_id()); $tmpl->parse("BLOCK_EDIT_BUTTON"); } } $htmlBody = $tmpl->get(); $this->content = $htmlBody; //widgets $outputWidget = new \Widgets\RawHtml(); //popummenu $outputWidget->addWidget(new \Widgets\PopupMenu()); $outputWidget->setHtml($htmlBody); $this->rawHtmlWidget = $outputWidget; }