ILIAS  Release_4_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilNewsForContextBlockGUI Class Reference

BlockGUI class for block NewsForContext. More...

+ Inheritance diagram for ilNewsForContextBlockGUI:
+ Collaboration diagram for ilNewsForContextBlockGUI:

Public Member Functions

 ilNewsForContextBlockGUI ()
 Constructor.
 getNewsData ()
 Get news for context.
executeCommand ()
 execute command
 setEnableEdit ($a_enable_edit=0)
 Set EnableEdit.
 getEnableEdit ()
 Get EnableEdit.
 fillDataSection ()
 Fill data section.
 getHTML ()
 Get bloch HTML code.
 handleView ()
 Handles show/hide notification view and removes notifications if hidden.
 fillRow ($news)
 get flat bookmark list for personal desktop
 getOverview ()
 Get overview.
 showNews ()
 show news
 unsubscribeNews ()
 Unsubscribe current user from news.
 subscribeNews ()
 Subscribe current user from news.
 fillFooter ()
 block footer
 showViewFooter ()
 Show additional footer for show/hide notifications.
 showNotifications ()
 hideNotifications ()
 editSettings ()
 Show settings screen.
 initSettingsForm ()
 Init setting form.
 cancelSettings ()
 Cancel settings.
 saveSettings ()
 Save settings.
 showFeedUrl ()
 Show feed URL.
 addCloseCommand ($a_content_block)
 getDynamic ()
 getDynamicReload ()
 getJSEnabler ()
 disableJS ()
 enableJS ()
- Public Member Functions inherited from ilBlockGUI
 ilBlockGUI ()
 Constructor.
 addHeaderLink ($a_href, $a_text, $status=true)
 getHeaderLinks ()
 setData ($a_data)
 Set Data.
 getData ()
 Get Data.
 setBigMode ($a_bigmode)
 Set Big Mode.
 getBigMode ()
 Get Big Mode.
 setBlockId ($a_block_id=0)
 Set Block Id.
 getBlockId ()
 Get Block Id.
 setAvailableDetailLevels ($a_max, $a_min=0)
 Set Available Detail Levels.
 setCurrentDetailLevel ($a_currentdetaillevel)
 Set Current Detail Level.
 setGuiObject (&$a_gui_object)
 Set GuiObject.
 getGuiObject ()
 Get GuiObject.
 getCurrentDetailLevel ()
 Get Current Detail Level.
 setTitle ($a_title)
 Set Title.
 getTitle ()
 Get Title.
 setImage ($a_image)
 Set Image.
 getImage ()
 Get Image.
 setOffset ($a_offset)
 Set Offset.
 getOffset ()
 Get Offset.
 correctOffset ()
 setLimit ($a_limit)
 Set Limit.
 getLimit ()
 Get Limit.
 setRepositoryMode ($a_repositorymode)
 Set RepositoryMode.
 getRepositoryMode ()
 Get RepositoryMode.
 setFooterInfo ($a_footerinfo, $a_hide_and_icon=false)
 Set Footer Info.
 getFooterInfo ($a_hide_and_icon=false)
 Get Footer Info.
 setSubtitle ($a_subtitle)
 Set Subtitle.
 getSubtitle ()
 Get Subtitle.
 setRefId ($a_refid)
 Set Ref Id (only used if isRepositoryObject() is true).
 getRefId ()
 Get Ref Id (only used if isRepositoryObject() is true).
 setAdminCommands ($a_admincommands)
 Set Administration Commmands.
 getAdminCommands ()
 Get Administration Commmands.
 setColSpan ($a_colspan)
 Set Columns Span.
 getColSpan ()
 Get Columns Span.
 setEnableDetailRow ($a_enabledetailrow)
 Set EnableDetailRow.
 getEnableDetailRow ()
 Get EnableDetailRow.
 setEnableNumInfo ($a_enablenuminfo)
 Set Enable Item Number Info.
 getEnableNumInfo ()
 Get Enable Item Number Info.
 setProperties ($a_properties)
 This function is supposed to be used for block type specific properties, that should be inherited through ilColumnGUI->setBlockProperties.
 getProperty ($a_property)
 setProperty ($a_property, $a_value)
 setRowTemplate ($a_rowtemplatename, $a_rowtemplatedir="")
 Set Row Template Name.
 getNavParameter ()
 getDetailParameter ()
 getConfigParameter ()
 getMoveParameter ()
 getRowTemplateName ()
 Get Row Template Name.
 getRowTemplateDir ()
 Get Row Template Directory.
 addBlockCommand ($a_href, $a_text, $a_target="", $a_img="", $a_right_aligned=false)
 Add Block Command.
 getBlockCommands ()
 Get Block commands.
 addHeaderCommand ($a_href, $a_text, $a_as_close=false)
 Add Header Block Command.
 getHeaderCommands ()
 Get Header Block commands.
 addFooterLink ($a_text, $a_href="", $a_onclick="", $a_block_id="", $a_top=false, $a_omit_separator=false)
 Add a footer text/link.
 getFooterLinks ()
 Get footer links.
 clearFooterLinks ()
 Clear footer links.
 handleDetailLevel ()
 Handle read/write current detail level.
 setConfigMode ($a_configmode)
 Handle config status.
 getConfigMode ()
 Get Config Mode (move blocks).
 fillHeaderCommands ()
 Fill header commands block.
 fillHeaderTitleBlock ()
 Fill header title block (title and.
 setDataSection ($a_content)
 Call this from overwritten fillDataSection(), if standard row based data is not used.
 fillPreviousNext ()
 Fill previous/next row.
 setPreviousNextLinks ()
 Get previous/next linkbar.
 fillFooterLinks ($a_top=false, $a_numinfo="")
 Fill footer links.
 fillDetailRow ()
 Fill Detail Setting Row.
 fillMoveRow ()
 Fill row for Moving.
 getAllowMove ($a_direction)
 setAllowMove ($a_direction, $a_allow=true)
 fillMoveLink ($a_value, $a_img, $a_txt)

Static Public Member Functions

static getBlockType ()
 Get block type.
static isRepositoryObject ()
 Is this a repository object.
static getScreenMode ()
 Get Screen Mode for current command.

Static Public Attributes

static $block_type = "news"
static $st_data

Additional Inherited Members

- Protected Member Functions inherited from ilBlockGUI
 fillRowColor ($a_placeholder="CSS_ROW")
- Protected Attributes inherited from ilBlockGUI
 $data = array()
 $colspan = 1
 $enablenuminfo = true
 $detail_min = 0
 $detail_max = 0
 $bigmode = false
 $footer_links = array()
 $block_id = 0
 $header_commands = array()
 $allow_moving = true
 $move = array("left" => false, "right" => false, "up" => false, "down" => false)
 $enabledetailrow = true
 $header_links = array()

Detailed Description

BlockGUI class for block NewsForContext.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
Id:
class.ilNewsForContextBlockGUI.php 22539 2009-12-11 10:50:29Z akill

ilNewsForContextBlockGUI: ilColumnGUI ilNewsForContextBlockGUI: ilNewsItemGUI

Definition at line 37 of file class.ilNewsForContextBlockGUI.php.

Member Function Documentation

ilNewsForContextBlockGUI::addCloseCommand (   $a_content_block)

Reimplemented in ilPDNewsBlockGUI.

Definition at line 1165 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, and $lng.

Referenced by showNews().

{
global $lng, $ilCtrl;
$a_content_block->addHeaderCommand($ilCtrl->getParentReturn($this),
$lng->txt("close"), true);
}

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::cancelSettings ( )

Cancel settings.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 1073 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl.

{
global $ilCtrl;
$ilCtrl->returnToParent($this);
}
ilNewsForContextBlockGUI::disableJS ( )

Definition at line 1236 of file class.ilNewsForContextBlockGUI.php.

References $_SESSION, and $ilCtrl.

{
global $ilCtrl, $ilUser;
$_SESSION["il_feed_js"] = "n";
$ilUser->writePref("il_feed_js", "n");
$ilCtrl->returnToParent($this);
//$ilCtrl->redirectByClass("ilpersonaldesktopgui", "show");
}
ilNewsForContextBlockGUI::editSettings ( )

Show settings screen.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 945 of file class.ilNewsForContextBlockGUI.php.

References initSettingsForm().

{
$this->initSettingsForm();
return $this->settings_form->getHTML();
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::enableJS ( )

Definition at line 1246 of file class.ilNewsForContextBlockGUI.php.

References $_SESSION, exit, and getHTML().

{
global $ilUser;
//echo "enableJS";
$_SESSION["il_feed_js"] = "y";
$ilUser->writePref("il_feed_js", "y");
echo $this->getHTML();
}

+ Here is the call graph for this function:

& ilNewsForContextBlockGUI::executeCommand ( )

execute command

Reimplemented in ilPDNewsBlockGUI.

Definition at line 197 of file class.ilNewsForContextBlockGUI.php.

References $cmd, $ilCtrl, and getEnableEdit().

{
global $ilCtrl;
$next_class = $ilCtrl->getNextClass();
$cmd = $ilCtrl->getCmd("getHTML");
switch ($next_class)
{
case "ilnewsitemgui":
include_once("./Services/News/classes/class.ilNewsItemGUI.php");
$news_item_gui = new ilNewsItemGUI();
$news_item_gui->setEnableEdit($this->getEnableEdit());
$html = $ilCtrl->forwardCommand($news_item_gui);
return $html;
default:
return $this->$cmd();
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::fillDataSection ( )

Fill data section.

Reimplemented from ilBlockGUI.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 241 of file class.ilNewsForContextBlockGUI.php.

References ilBlockGUI\getCurrentDetailLevel(), ilBlockGUI\getData(), getDynamicReload(), getOverview(), and ilBlockGUI\setDataSection().

{
if ($this->dynamic)
{
$this->setDataSection($this->getDynamicReload());
}
else if ($this->getCurrentDetailLevel() > 1 && count($this->getData()) > 0)
{
}
else
{
$this->setDataSection($this->getOverview());
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::fillFooter ( )

block footer

Reimplemented from ilBlockGUI.

Definition at line 844 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, and showViewFooter().

{
global $ilCtrl, $lng, $ilUser;
if ($this->show_view_selection)
{
$this->showViewFooter();
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::fillRow (   $news)

get flat bookmark list for personal desktop

Reimplemented from ilBlockGUI.

Definition at line 406 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, $type, ilObject\_getIcon(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), ilObject\_lookupType(), ilNewsItem\determineNewsTitle(), ilDatePresentation\formatDate(), ilBlockGUI\getCurrentDetailLevel(), IL_CAL_DATETIME, and ilUtil\shortenWords().

{
global $ilUser, $ilCtrl, $lng;
if ($this->getCurrentDetailLevel() > 2)
{
$this->tpl->setCurrentBlock("long");
//$this->tpl->setVariable("VAL_CONTENT", $news["content"]);
$this->tpl->setVariable("VAL_CREATION_DATE",
$this->tpl->parseCurrentBlock();
}
// notification
if ($news["priority"] == 0)
{
/*
$this->tpl->setCurrentBlock("notification");
$this->tpl->setVariable("CHAR_NOT", $lng->txt("news_first_letter_of_word_notification"));
$this->tpl->parseCurrentBlock();
*/
}
// title image type
if ($news["ref_id"] > 0)
{
if ($news["agg_ref_id"] > 0)
{
$obj_id = ilObject::_lookupObjId($news["agg_ref_id"]);
$context_ref = $news["agg_ref_id"];
}
else
{
$obj_id = $news["context_obj_id"];
$type = $news["context_obj_type"];
$context_ref = $news["ref_id"];
}
$lang_type = in_array($type, array("sahs", "lm", "dbk", "htlm"))
? "lres"
: "obj_".$type;
$this->tpl->setCurrentBlock("news_context");
$this->tpl->setVariable("TYPE", $lng->txt($lang_type));
$this->tpl->setVariable("IMG_TYPE",
ilObject::_getIcon($obj_id, "tiny", $type));
$this->tpl->setVariable("TITLE",
if ($news["user_read"] > 0)
{
$this->tpl->setVariable("TITLE_CLASS", 'class="light"');
}
$this->tpl->parseCurrentBlock();
$ilCtrl->setParameter($this, "news_context", $context_ref);
}
else
{
$ilCtrl->setParameter($this, "news_context", "");
}
// title
$this->tpl->setVariable("VAL_TITLE",
($news["context_obj_type"], $news["title"], $news["content_is_lang_var"],
$news["agg_ref_id"], $news["aggregation"])));
if ($news["user_read"] > 0)
{
$this->tpl->setVariable("A_CLASS", 'class="light"');
}
$ilCtrl->setParameter($this, "news_id", $news["id"]);
$this->tpl->setVariable("HREF_SHOW",
$ilCtrl->getLinkTarget($this, "showNews"));
$ilCtrl->clearParameters($this);
}

+ Here is the call graph for this function:

static ilNewsForContextBlockGUI::getBlockType ( )
static

Get block type.

Returns
string Block type.

Reimplemented from ilBlockGUI.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 149 of file class.ilNewsForContextBlockGUI.php.

References $block_type.

Referenced by getDynamicReload(), getHTML(), getJSEnabler(), handleView(), hideNotifications(), initSettingsForm(), saveSettings(), and showNotifications().

{
}

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getDynamic ( )

Definition at line 1173 of file class.ilNewsForContextBlockGUI.php.

References $_SESSION, and $ilCtrl.

Referenced by ilNewsForContextBlockGUI(), and ilPDNewsBlockGUI\ilPDNewsBlockGUI().

{
global $ilCtrl, $ilUser;
if ($ilCtrl->getCmd() == "hideNotifications" ||
$ilCtrl->getCmd() == "showNotifications")
{
return false;
}
if ($ilCtrl->getCmdClass() != "ilcolumngui" && $ilCtrl->getCmd() != "enableJS")
{
if ($_SESSION["il_feed_js"] != "n" &&
($ilUser->getPref("il_feed_js") != "n" || $_SESSION["il_feed_js"] == "y"))
{
// do not get feed dynamically, if cache hit is given.
// if (!$this->feed->checkCacheHit())
// {
return true;
// }
}
}
return false;
}

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getDynamicReload ( )

Definition at line 1199 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, ilBlockGUI\getBlockId(), and getBlockType().

Referenced by ilPDNewsBlockGUI\fillDataSection(), and fillDataSection().

{
global $ilCtrl, $lng;
$ilCtrl->setParameterByClass("ilcolumngui", "block_id",
"block_".$this->getBlockType()."_".$this->getBlockId());
$rel_tpl = new ilTemplate("tpl.dynamic_reload.html", true, true, "Services/News");
$rel_tpl->setVariable("TXT_LOADING", $lng->txt("news_loading_news"));
$rel_tpl->setVariable("BLOCK_ID", "block_".$this->getBlockType()."_".$this->getBlockId());
$rel_tpl->setVariable("TARGET",
$ilCtrl->getLinkTargetByClass("ilcolumngui", "updateBlock", "", true));
// no JS
$rel_tpl->setVariable("TXT_NEWS_CLICK_HERE", $lng->txt("news_no_js_click_here"));
$rel_tpl->setVariable("TARGET_NO_JS",
$ilCtrl->getLinkTargetByClass(strtolower(get_class($this)), "disableJS"));
return $rel_tpl->get();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getEnableEdit ( )

Get EnableEdit.

Returns
boolean Edit mode on/off

Reimplemented from ilBlockGUI.

Definition at line 233 of file class.ilNewsForContextBlockGUI.php.

Referenced by executeCommand(), and getHTML().

{
return $this->enable_edit;
}

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getHTML ( )

Get bloch HTML code.

Reimplemented from ilBlockGUI.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 260 of file class.ilNewsForContextBlockGUI.php.

References $_GET, $ilCtrl, $lng, ilBlockSetting\_lookup(), ilBlockGUI\addBlockCommand(), getBlockType(), ilBlockGUI\getData(), getEnableEdit(), ilUtil\getImagePath(), ilBlockGUI\getProperty(), ilBlockGUI\getRepositoryMode(), ilBlockGUI\setFooterInfo(), and ilBlockGUI\setTitle().

Referenced by enableJS(), hideNotifications(), and showNotifications().

{
global $ilCtrl, $lng, $ilUser;
$news_set = new ilSetting("news");
$enable_internal_rss = $news_set->get("enable_rss_for_internal");
$hide_block = ilBlockSetting::_lookup($this->getBlockType(), "hide_news_block",
0, $this->block_id);
if ($hide_block)
{
$this->setFooterInfo($lng->txt("news_hidden_news_block"));
}
if ($this->getProperty("title") != "")
{
$this->setTitle($this->getProperty("title"));
}
$public_feed = ilBlockSetting::_lookup($this->getBlockType(), "public_feed",
0, $this->block_id);
if ($public_feed)
{
if ($enable_internal_rss)
{
ILIAS_HTTP_PATH."/feed.php?client_id=".rawurlencode(CLIENT_ID)."&".
"ref_id=".$_GET["ref_id"],
$lng->txt("news_feed_url"), "_blank",
ilUtil::getImagePath("rss.gif"));
}
}
/* Subscription Concept is abandonded for now (Alex)
// subscribe/unsibscribe link
include_once("./Services/News/classes/class.ilNewsSubscription.php");
if (ilNewsSubscription::_hasSubscribed($_GET["ref_id"], $ilUser->getId()))
{
$this->addBlockCommand(
$ilCtrl->getLinkTarget($this, "unsubscribeNews"),
$lng->txt("news_unsubscribe"));
}
else
{
$this->addBlockCommand(
$ilCtrl->getLinkTarget($this, "subscribeNews"),
$lng->txt("news_subscribe"));
}
*/
// add edit commands
if ($this->getEnableEdit())
{
$ilCtrl->getLinkTargetByClass("ilnewsitemgui", "editNews"),
$lng->txt("edit"));
$ilCtrl->setParameter($this, "add_mode", "block");
$ilCtrl->getLinkTargetByClass("ilnewsitemgui", "createNewsItem"),
$lng->txt("add"));
$ilCtrl->setParameter($this, "add_mode", "");
}
if ($this->getProperty("settings") == true)
{
$ilCtrl->getLinkTarget($this, "editSettings"),
$lng->txt("settings"));
}
// do not display hidden repository news blocks for users
// who do not have write permission
if (!$this->getEnableEdit() && $this->getRepositoryMode() &&
ilBlockSetting::_lookup($this->getBlockType(), "hide_news_block",
0, $this->block_id))
{
return "";
}
// do not display empty news blocks for users
// who do not have write permission
if (count($this->getData()) == 0 && !$this->getEnableEdit() &&
$this->getRepositoryMode() && !$this->dynamic)
{
return "";
}
$en = "";
if ($ilUser->getPref("il_feed_js") == "n")
{
// $en = getJSEnabler();
}
return parent::getHTML().$en;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getJSEnabler ( )

Definition at line 1220 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, ilBlockGUI\getBlockId(), and getBlockType().

Referenced by ilPDNewsBlockGUI\getHTML().

{
global $ilCtrl, $lng;
$ilCtrl->setParameterByClass("ilcolumngui", "block_id",
"block_".$this->getBlockType()."_".$this->getBlockId());
//echo "hh";
$rel_tpl = new ilTemplate("tpl.js_enabler.html", true, true, "Services/News");
$rel_tpl->setVariable("BLOCK_ID", "block_".$this->getBlockType()."_".$this->getBlockId());
$rel_tpl->setVariable("TARGET",
$ilCtrl->getLinkTargetByClass(strtolower(get_class($this)), "enableJS", true));
return $rel_tpl->get();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getNewsData ( )

Get news for context.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 103 of file class.ilNewsForContextBlockGUI.php.

References $_GET, and $ilCtrl.

Referenced by hideNotifications(), ilNewsForContextBlockGUI(), showNews(), and showNotifications().

{
global $ilCtrl, $ilUser;
include_once("./Services/News/classes/class.ilNewsCache.php");
$this->acache = new ilNewsCache();
/* $cres = $this->acache->getEntry($ilUser->getId().":".$_GET["ref_id"]);
if ($this->acache->getLastAccessStatus() == "hit" && false)
{
$news_data = unserialize($cres);
}
else
{*/
$news_item = new ilNewsItem();
$news_item->setContextObjId($ilCtrl->getContextObjId());
$news_item->setContextObjType($ilCtrl->getContextObjType());
// workaround, better: reduce constructor and introduce
//$prevent_aggregation = $this->getProperty("prevent_aggregation");
$prevent_aggregation = true;
if ($ilCtrl->getContextObjType() != "frm")
{
$forum_grouping = true;
}
else
{
$forum_grouping = false;
}
$news_data = $news_item->getNewsForRefId($_GET["ref_id"], false, false, 0,
$prevent_aggregation, $forum_grouping);
$this->acache->storeEntry($ilUser->getId().":".$_GET["ref_id"],
serialize($news_data));
// }
//var_dump($news_data);
return $news_data;
}

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::getOverview ( )

Get overview.

Definition at line 490 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, and ilBlockGUI\getData().

Referenced by ilPDNewsBlockGUI\fillDataSection(), and fillDataSection().

{
global $ilUser, $lng, $ilCtrl;
return '<div class="small">'.((int) count($this->getData()))." ".$lng->txt("news_news_items")."</div>";
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilNewsForContextBlockGUI::getScreenMode ( )
static

Get Screen Mode for current command.

Reimplemented from ilBlockGUI.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 167 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, IL_SCREEN_CENTER, IL_SCREEN_FULL, and IL_SCREEN_SIDE.

{
global $ilCtrl;
if ($ilCtrl->getCmdClass() == "ilnewsitemgui")
{
}
switch($ilCtrl->getCmd())
{
case "showNews":
case "showFeedUrl":
break;
case "editSettings":
case "saveSettings":
break;
default:
break;
}
}
ilNewsForContextBlockGUI::handleView ( )

Handles show/hide notification view and removes notifications if hidden.

Definition at line 360 of file class.ilNewsForContextBlockGUI.php.

References ilBlockGUI\$block_id, $row, ilBlockSetting\_lookup(), and getBlockType().

Referenced by hideNotifications(), ilNewsForContextBlockGUI(), ilPDNewsBlockGUI\ilPDNewsBlockGUI(), and showNotifications().

{
global $ilUser;
include_once("Services/Block/classes/class.ilBlockSetting.php");
$this->view = ilBlockSetting::_lookup($this->getBlockType(), "view",
$ilUser->getId(), $this->block_id);
// check whether notices and messages exist
$got_notices = $got_messages = false;
foreach($this->data as $row)
{
if ($row["priority"] == 0) $got_notices = true;
if ($row["priority"] == 1) $got_messages = true;
}
$this->show_view_selection = false;
if ($got_notices && $got_messages)
{
$this->show_view_selection = true;
}
else if ($got_notices)
{
$this->view = "";
}
// remove notifications if hidden
/*
if (($this->view == "hide_notifications") && $this->show_view_selection)
{
$rset = array();
foreach($this->data as $k => $row)
{
if ($row["priority"] == 1)
{
$rset[$k] = $row;
}
}
$this->data = $rset;
}
*/
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::hideNotifications ( )

Definition at line 918 of file class.ilNewsForContextBlockGUI.php.

References ilBlockGUI\$block_id, ilBlockGUI\$data, $ilCtrl, $view, ilBlockSetting\_write(), exit, getBlockType(), getHTML(), getNewsData(), handleView(), and ilBlockGUI\setData().

{
global $ilCtrl, $ilUser;
include_once("Services/Block/classes/class.ilBlockSetting.php");
$view = ilBlockSetting::_write($this->getBlockType(), "view", "hide_notifications",
$ilUser->getId(), $this->block_id);
// reload data
$data = $this->getNewsData();
$this->setData($data);
$this->handleView();
if ($ilCtrl->isAsynch())
{
echo $this->getHTML();
}
else
{
$ilCtrl->returnToParent($this);
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::ilNewsForContextBlockGUI ( )

Constructor.

Definition at line 45 of file class.ilNewsForContextBlockGUI.php.

References $_GET, ilBlockGUI\$data, $ilCtrl, $lng, $st_data, ilBlockGUI\getCurrentDetailLevel(), getDynamic(), ilUtil\getImagePath(), getNewsData(), handleView(), ilBlockGUI\ilBlockGUI(), ilBlockGUI\setAvailableDetailLevels(), ilBlockGUI\setBlockId(), ilBlockGUI\setData(), ilBlockGUI\setEnableNumInfo(), ilBlockGUI\setImage(), ilBlockGUI\setLimit(), ilBlockGUI\setRowTemplate(), and ilBlockGUI\setTitle().

{
global $ilCtrl, $lng, $ilUser;
$this->setImage(ilUtil::getImagePath("icon_news_s.gif"));
$lng->loadLanguageModule("news");
include_once("./Services/News/classes/class.ilNewsItem.php");
$this->setBlockId($ilCtrl->getContextObjId());
$this->setLimit(5);
$this->setEnableNumInfo(true);
$this->dynamic = false;
include_once("./Services/News/classes/class.ilNewsCache.php");
$this->acache = new ilNewsCache();
$cres = $this->acache->getEntry($ilUser->getId().":".$_GET["ref_id"]);
$this->cache_hit = false;
if ($this->acache->getLastAccessStatus() == "hit")
{
self::$st_data = unserialize($cres);
$this->cache_hit = true;
}
if ($this->getDynamic() && !$this->cache_hit)
{
$this->dynamic = true;
$data = array();
}
else if ($this->getCurrentDetailLevel() > 0)
{
if (!empty(self::$st_data))
{
}
else
{
$data = $this->getNewsData();
self::$st_data = $data;
}
}
else
{
$data = array();
}
$this->setTitle($lng->txt("news_internal_news"));
$this->setRowTemplate("tpl.block_row_news_for_context.html", "Services/News");
$this->setData($data);
$this->allow_moving = false;
$this->handleView();
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::initSettingsForm ( )

Init setting form.

Definition at line 954 of file class.ilNewsForContextBlockGUI.php.

References $_GET, $ilCtrl, $ilSetting, $lng, ilNewsItem\_getDefaultVisibilityForRefId(), ilBlockSetting\_lookup(), getBlockType(), ilUtil\getImagePath(), ilBlockGUI\getProperty(), IL_CAL_DATETIME, ilDateTimeInputGUI\setDate(), ilRadioOption\setInfo(), and ilFormPropertyGUI\setInfo().

Referenced by editSettings(), and saveSettings().

{
global $ilUser, $lng, $ilCtrl, $ilSetting;
$news_set = new ilSetting("news");
$enable_internal_rss = $news_set->get("enable_rss_for_internal");
$public = ilBlockSetting::_lookup($this->getBlockType(), "public_notifications",
0, $this->block_id);
$public_feed = ilBlockSetting::_lookup($this->getBlockType(), "public_feed",
0, $this->block_id);
$hide_block = ilBlockSetting::_lookup($this->getBlockType(), "hide_news_block",
0, $this->block_id);
$hide_news_per_date = ilBlockSetting::_lookup($this->getBlockType(), "hide_news_per_date",
0, $this->block_id);
$hide_news_date = ilBlockSetting::_lookup($this->getBlockType(), "hide_news_date",
0, $this->block_id);
if ($hide_news_date != "")
{
$hide_news_date = explode(" ", $hide_news_date);
}
include_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
$this->settings_form = new ilPropertyFormGUI();
$this->settings_form->setTitle($lng->txt("news_settings"));
$this->settings_form->setTitleIcon(ilUtil::getImagePath("icon_news.gif"));
// hide news block for learners
if ($this->getProperty("hide_news_block_option"))
{
$ch = new ilCheckboxInputGUI($lng->txt("news_hide_news_block"),
"hide_news_block");
$ch->setInfo($lng->txt("news_hide_news_block_info"));
$ch->setChecked($hide_block);
$this->settings_form->addItem($ch);
$hnpd = new ilCheckboxInputGUI($lng->txt("news_hide_news_per_date"),
"hide_news_per_date");
$hnpd->setInfo($lng->txt("news_hide_news_per_date_info"));
$hnpd->setChecked($hide_news_per_date);
$dt_prop = new ilDateTimeInputGUI($lng->txt("news_hide_news_date"),
"hide_news_date");
if ($hide_news_date != "")
{
$dt_prop->setDate(new ilDateTime($hide_news_date[0].' '.$hide_news_date[1],IL_CAL_DATETIME));
}
#$dt_prop->setDate($hide_news_date[0]);
#$dt_prop->setTime($hide_news_date[1]);
$dt_prop->setShowTime(true);
//$dt_prop->setInfo($lng->txt("news_hide_news_date_info"));
$hnpd->addSubItem($dt_prop);
$this->settings_form->addItem($hnpd);
}
// default visibility
if ($this->getProperty("default_visibility_option") &&
$enable_internal_rss)
{
$default_visibility = ilBlockSetting::_lookup($this->getBlockType(), "default_visibility",
0, $this->block_id);
if ($default_visibility == "")
{
$default_visibility =
}
// Default Visibility
$radio_group = new ilRadioGroupInputGUI($lng->txt("news_default_visibility"), "default_visibility");
$radio_option = new ilRadioOption($lng->txt("news_visibility_users"), "users");
$radio_group->addOption($radio_option);
$radio_option = new ilRadioOption($lng->txt("news_visibility_public"), "public");
$radio_group->addOption($radio_option);
$radio_group->setInfo($lng->txt("news_news_item_visibility_info"));
$radio_group->setRequired(false);
$radio_group->setValue($default_visibility);
$this->settings_form->addItem($radio_group);
}
// public notifications
if ($this->getProperty("public_notifications_option") &&
$enable_internal_rss)
{
$ch = new ilCheckboxInputGUI($lng->txt("news_notifications_public"),
"notifications_public");
$ch->setInfo($lng->txt("news_notifications_public_info"));
$ch->setChecked($public);
$this->settings_form->addItem($ch);
}
// extra rss feed
if ($enable_internal_rss)
{
$ch = new ilCheckboxInputGUI($lng->txt("news_public_feed"),
"notifications_public_feed");
$ch->setInfo($lng->txt("news_public_feed_info"));
$ch->setChecked($public_feed);
$this->settings_form->addItem($ch);
}
//$this->settings_form->addCheckboxProperty($lng->txt("news_public_feed"), "notifications_public_feed",
// "1", $public_feed, $lng->txt("news_public_feed_info"));
//if ($this->getProperty("public_notifications_option"))
//{
// $this->settings_form->addCheckboxProperty($lng->txt("news_notifications_public"), "notifications_public",
// "1", $public, $lng->txt("news_notifications_public_info"));
//}
$this->settings_form->addCommandButton("saveSettings", $lng->txt("save"));
$this->settings_form->addCommandButton("cancelSettings", $lng->txt("cancel"));
$this->settings_form->setFormAction($ilCtrl->getFormaction($this));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static ilNewsForContextBlockGUI::isRepositoryObject ( )
static

Is this a repository object.

Returns
string Block type.

Reimplemented from ilBlockGUI.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 159 of file class.ilNewsForContextBlockGUI.php.

{
return false;
}
ilNewsForContextBlockGUI::saveSettings ( )

Save settings.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 1083 of file class.ilNewsForContextBlockGUI.php.

References $_POST, ilBlockGUI\$block_id, $ilCtrl, ilBlockSetting\_write(), getBlockType(), ilBlockGUI\getProperty(), IL_CAL_DATETIME, and initSettingsForm().

{
global $ilCtrl, $ilUser;
$this->initSettingsForm();
if ($this->settings_form->checkInput())
{
$news_set = new ilSetting("news");
$enable_internal_rss = $news_set->get("enable_rss_for_internal");
if ($enable_internal_rss)
{
ilBlockSetting::_write($this->getBlockType(), "public_notifications", $_POST["notifications_public"],
0, $this->block_id);
ilBlockSetting::_write($this->getBlockType(), "public_feed", $_POST["notifications_public_feed"],
0, $this->block_id);
ilBlockSetting::_write($this->getBlockType(), "default_visibility", $_POST["default_visibility"],
0, $this->block_id);
}
if ($this->getProperty("hide_news_block_option"))
{
ilBlockSetting::_write($this->getBlockType(), "hide_news_block", $_POST["hide_news_block"],
0, $this->block_id);
ilBlockSetting::_write($this->getBlockType(), "hide_news_per_date", $_POST["hide_news_per_date"],
0, $this->block_id);
// hide date
$hd = $this->settings_form->getInput("hide_news_date");
$hide_date = new ilDateTime($hd["date"]." ".
$hd["time"],IL_CAL_DATETIME,$ilUser->getTimeZone());
ilBlockSetting::_write($this->getBlockType(), "hide_news_date",
$hide_date->get(IL_CAL_DATETIME),
}
$ilCtrl->returnToParent($this);
}
else
{
$this->settings_form->setValuesByPost();
return $this->settings_form->getHtml();
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::setEnableEdit (   $a_enable_edit = 0)

Set EnableEdit.

Parameters
boolean$a_enable_editEdit mode on/off

Reimplemented from ilBlockGUI.

Definition at line 223 of file class.ilNewsForContextBlockGUI.php.

{
$this->enable_edit = $a_enable_edit;
}
ilNewsForContextBlockGUI::showFeedUrl ( )

Show feed URL.

Reimplemented in ilPDNewsBlockGUI.

Definition at line 1132 of file class.ilNewsForContextBlockGUI.php.

References $ilCtrl, $lng, $title, $tpl, ilObject\_lookupTitle(), and ilUtil\getImagePath().

{
global $lng, $ilCtrl, $ilUser;
include_once("./Services/News/classes/class.ilNewsItem.php");
$title = ilObject::_lookupTitle($this->block_id);
$tpl = new ilTemplate("tpl.show_feed_url.html", true, true, "Services/News");
$tpl->setVariable("TXT_TITLE",
sprintf($lng->txt("news_feed_url_for"), $title));
$tpl->setVariable("TXT_INFO", $lng->txt("news_get_feed_info"));
$tpl->setVariable("TXT_FEED_URL", $lng->txt("news_feed_url"));
$tpl->setVariable("VAL_FEED_URL",
ILIAS_HTTP_PATH."/feed.php?client_id=".rawurlencode(CLIENT_ID)."&user_id=".$ilUser->getId().
"&obj_id=".$this->block_id.
"&hash=".ilObjUser::_lookupFeedHash($ilUser->getId(), true));
$tpl->setVariable("VAL_FEED_URL_TXT",
ILIAS_HTTP_PATH."/feed.php?client_id=".rawurlencode(CLIENT_ID)."&<br />user_id=".$ilUser->getId().
"&obj_id=".$this->block_id.
"&hash=".ilObjUser::_lookupFeedHash($ilUser->getId(), true));
include_once("./Services/PersonalDesktop/classes/class.ilPDContentBlockGUI.php");
$content_block = new ilPDContentBlockGUI();
$content_block->setContent($tpl->get());
$content_block->setTitle($lng->txt("news_internal_news"));
$content_block->setImage(ilUtil::getImagePath("icon_news.gif"));
$content_block->addHeaderCommand($ilCtrl->getParentReturn($this),
$lng->txt("close"), true);
return $content_block->getHTML();
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::showNews ( )

show news

Reimplemented in ilPDNewsBlockGUI.

Definition at line 500 of file class.ilNewsForContextBlockGUI.php.

References $_GET, $displayname, $ilCtrl, $lng, $tpl, $user, ilObject\_exists(), ilObject\_getIcon(), ilObjForumAccess\_getThreadForPosting(), ilObjMediaObject\_getURL(), ilBlockSetting\_lookup(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), ilObject\_lookupType(), ilNewsItem\_setRead(), addCloseCommand(), ilNewsItem\determineNewsTitle(), ilDatePresentation\formatDate(), ilBlockGUI\getData(), ilUtil\getImagePath(), getNewsData(), ilBlockGUI\getProperty(), IL_CAL_DATETIME, ilUtil\makeClickable(), NEWS_AUDIO, NEWS_PUBLIC, and ilBlockGUI\setData().

{
global $lng, $ilCtrl, $ilUser;
// workaround for dynamic mode (if cache is disabled, showNews has no data)
if (empty(self::$st_data))
{
$this->setData($this->getNewsData());
}
$news_set = new ilSetting("news");
$enable_internal_rss = $news_set->get("enable_rss_for_internal");
include_once("./Services/News/classes/class.ilNewsItem.php");
$news = new ilNewsItem($_GET["news_id"]);
$tpl = new ilTemplate("tpl.show_news.html", true, true, "Services/News");
// get current item in data set
$previous = $next = "";
reset($this->data);
$c = current($this->data);
$curr_cnt = 1;
while($c["id"] > 0 &&
$c["id"] != $_GET["news_id"])
{
$previous = $c;
$c = next($this->data);
$curr_cnt++;
}
// collect news items to show
$news_list = array();
if (is_array($c["aggregation"])) // we have an aggregation
{
//$agg_obj_id = ilObject::_lookupObjId($c["agg_ref_id"]);
//$agg_obj_type = ilObject::_lookupType($agg_obj_id);
//$agg_obj_title = ilObject::_lookupObjId($agg_obj_id);
$news_list[] = array("ref_id" => $c["agg_ref_id"],
"agg_ref_id" => $c["agg_ref_id"],
"aggregation" => $c["aggregation"],
"user_id" => "",
"content_type" => "text",
"mob_id" => 0,
"visibility" => "",
"content" => "",
"content_long" => "",
"update_date" => $news->getUpdateDate(),
"creation_date" => "",
"content_is_lang_var" => false,
"loc_context" => $_GET["news_context"],
"context_obj_type" => $news->getContextObjType(),
"title" => "");
foreach($c["aggregation"] as $c_item)
{
ilNewsItem::_setRead($ilUser->getId(), $c_item["id"]);
$c_item["loc_context"] = $c_item["ref_id"];
$c_item["loc_stop"] = $_GET["news_context"];
$news_list[] = $c_item;
}
}
else // no aggregation, simple news item
{
$news_list[] = array("ref_id" => $_GET["news_context"],
"user_id" => $news->getUserId(),
"content_type" => $news->getContentType(),
"mob_id" => $news->getMobId(),
"visibility" => $news->getVisibility(),
"priority" => $news->getPriority(),
"content" => $news->getContent(),
"content_long" => $news->getContentLong(),
"update_date" => $news->getUpdateDate(),
"creation_date" => $news->getCreationDate(),
"context_sub_obj_type" => $news->getContextSubObjType(),
"context_sub_obj_id" => $news->getContextSubObjId(),
"content_is_lang_var" => $news->getContentIsLangVar(),
"loc_context" => $_GET["news_context"],
"title" => $news->getTitle());
ilNewsItem::_setRead($ilUser->getId(), $_GET["news_id"]);
}
foreach ($news_list as $item)
{
// user
if ($item["user_id"] > 0 && ilObject::_exists($item["user_id"]))
{
// get login
if (ilObjUser::_exists($item["user_id"]))
{
$user = new ilObjUser($item["user_id"]);
$displayname = $user->getLogin();
} else
{
// this should actually not happen, since news entries
// should be deleted when the user is going to be removed
$displayname = "&lt;". strtolower($lng->txt("deleted")) ."&gt;";
}
$tpl->setCurrentBlock("user_info");
$tpl->setVariable("VAL_AUTHOR", $displayname);
$tpl->setVariable("TXT_AUTHOR", $lng->txt("author"));
$tpl->parseCurrentBlock();
}
// media player
if ($item["content_type"] == NEWS_AUDIO &&
$item["mob_id"] > 0 && ilObject::_exists($item["mob_id"]))
{
include_once("./Services/MediaObjects/classes/class.ilObjMediaObject.php");
include_once("./Services/MediaObjects/classes/class.ilMediaPlayerGUI.php");
$mob = new ilObjMediaObject($item["mob_id"]);
$med = $mob->getMediaItem("Standard");
$mpl = new ilMediaPlayerGUI();
if (strcasecmp("Reference", $med->getLocationType()) == 0)
$mpl->setFile($med->getLocation());
else
$mpl->setFile(ilObjMediaObject::_getURL($mob->getId())."/".$med->getLocation());
$mpl->setDisplayHeight($med->getHeight());
$tpl->setCurrentBlock("player");
$tpl->setVariable("PLAYER",
$mpl->getMp3PlayerHtml());
$tpl->parseCurrentBlock();
}
// access
if ($enable_internal_rss && $item["visibility"] != "")
{
$obj_id = ilObject::_lookupObjId($item["ref_id"]);
$tpl->setCurrentBlock("access");
$tpl->setVariable("TXT_ACCESS", $lng->txt("news_news_item_visibility"));
if ($item["visibility"] == NEWS_PUBLIC ||
($item["priority"] == 0 &&
ilBlockSetting::_lookup("news", "public_notifications",
0, $obj_id)))
{
$tpl->setVariable("VAL_ACCESS", $lng->txt("news_visibility_public"));
}
else
{
$tpl->setVariable("VAL_ACCESS", $lng->txt("news_visibility_users"));
}
$tpl->parseCurrentBlock();
}
// content
if (trim($item["content"]) != "") // content
{
$tpl->setCurrentBlock("content");
$tpl->setVariable("VAL_CONTENT",
nl2br(ilUtil::makeClickable($item["content"])));
//$tpl->setVariable("VAL_CONTENT", nl2br($item["content"]));
$tpl->parseCurrentBlock();
}
if (trim($item["content_long"]) != "") // long content
{
$tpl->setCurrentBlock("long");
$tpl->setVariable("VAL_LONG_CONTENT", ilUtil::makeClickable($item["content_long"]));
$tpl->parseCurrentBlock();
}
if ($item["update_date"] != $item["creation_date"]) // update date
{
$tpl->setCurrentBlock("ni_update");
$tpl->setVariable("TXT_LAST_UPDATE", $lng->txt("last_update"));
$tpl->setVariable("VAL_LAST_UPDATE",
$tpl->parseCurrentBlock();
}
// creation date
if ($item["creation_date"] != "")
{
$tpl->setCurrentBlock("ni_update");
$tpl->setVariable("VAL_CREATION_DATE",
$tpl->setVariable("TXT_CREATED", $lng->txt("created"));
$tpl->parseCurrentBlock();
}
// context / title
if ($_GET["news_context"] > 0)
{
//$obj_id = ilObject::_lookupObjId($_GET["news_context"]);
$obj_id = ilObject::_lookupObjId($item["ref_id"]);
$obj_type = ilObject::_lookupType($obj_id);
$obj_title = ilObject::_lookupTitle($obj_id);
// file hack, not nice
if ($obj_type == "file")
{
$tpl->setCurrentBlock("download");
$tpl->setVariable("TXT_DOWNLOAD", $lng->txt("download"));
$tpl->setVariable("HREF_DOWNLOAD",
"./repository.php?ref_id=".$item["ref_id"]."&amp;cmd=sendfile");
$tpl->parseCurrentBlock();
}
// forum hack, not nice
$add = "";
if ($obj_type == "frm" && $item["context_sub_obj_type"] == "pos"
&& $item["context_sub_obj_id"] > 0)
{
include_once("./Modules/Forum/classes/class.ilObjForumAccess.php");
$pos = $item["context_sub_obj_id"];
if ($thread > 0)
{
$add = "_".$thread."_".$pos;
}
}
//$url_target = "./goto.php?client_id=".rawurlencode(CLIENT_ID)."&target=".
// $obj_type."_".$_GET["news_context"].$add;
$url_target = "./goto.php?client_id=".rawurlencode(CLIENT_ID)."&target=".
$obj_type."_".$item["ref_id"].$add;
$context_opened = false;
if ($item["loc_context"] != null && $item["loc_context"] != $item["loc_stop"])
{
$tpl->setCurrentBlock("context");
$context_opened = true;
$cont_loc = new ilLocatorGUI();
$cont_loc->addContextItems($item["loc_context"], true, $item["loc_stop"]);
$tpl->setVariable("CONTEXT_LOCATOR", $cont_loc->getHTML());
}
//var_dump($item);
if ($item["no_context_title"] !== true)
{
if (!$context_opened)
{
$tpl->setCurrentBlock("context");
}
$tpl->setVariable("HREF_CONTEXT_TITLE", $url_target);
$tpl->setVariable("CONTEXT_TITLE", $obj_title);
$tpl->setVariable("IMG_CONTEXT_TITLE", ilObject::_getIcon($obj_id, "big", $obj_type));
}
if ($context_opened)
{
$tpl->parseCurrentBlock();
}
$tpl->setVariable("HREF_TITLE", $url_target);
}
// title
//if ($item["content_is_lang_var"])
//{
$tpl->setVariable("VAL_TITLE",
ilNewsItem::determineNewsTitle($item["context_obj_type"],
$item["title"], $item["content_is_lang_var"], $item["agg_ref_id"],
$item["aggregation"]));
//}
//else
//{
// $tpl->setVariable("VAL_TITLE", $item["title"]); // title
//}
$row_css = ($row_css != "tblrow1")
? "tblrow1"
: "tblrow2";
$tpl->setCurrentBlock("item");
$tpl->setVariable("ITEM_ROW_CSS", $row_css);
$tpl->parseCurrentBlock();
}
include_once("./Services/PersonalDesktop/classes/class.ilPDContentBlockGUI.php");
$content_block = new ilPDContentBlockGUI();
$content_block->setContent($tpl->get());
if ($this->getProperty("title") != "")
{
$content_block->setTitle($this->getProperty("title"));
}
else
{
$content_block->setTitle($lng->txt("news_internal_news"));
}
//$content_block->setColSpan(2);
$content_block->setImage(ilUtil::getImagePath("icon_news.gif"));
$this->addCloseCommand($content_block);
// previous
if ($previous != "")
{
if ($previous["ref_id"] > 0)
{
$ilCtrl->setParameter($this, "news_context", $previous["ref_id"]);
}
$ilCtrl->setParameter($this, "news_id", $previous["id"]);
$content_block->addFooterLink($lng->txt("previous"),
$ilCtrl->getLinkTarget($this, "showNews"), "", "", true);
$ilCtrl->setParameter($this, "news_context", "");
}
// next
if ($c = next($this->data))
{
if ($c["ref_id"] > 0)
{
$ilCtrl->setParameter($this, "news_context", $c["ref_id"]);
}
$ilCtrl->setParameter($this, "news_id", $c["id"]);
$content_block->addFooterLink($lng->txt("next"),
$ilCtrl->getLinkTarget($this, "showNews"), "", "", true);
}
$ilCtrl->setParameter($this, "news_context", "");
$ilCtrl->setParameter($this, "news_id", "");
$content_block->setCurrentItemNumber($curr_cnt);
$content_block->setEnableNumInfo(true);
$content_block->setData($this->getData());
return $content_block->getHTML();
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::showNotifications ( )

Definition at line 894 of file class.ilNewsForContextBlockGUI.php.

References ilBlockGUI\$block_id, ilBlockGUI\$data, $ilCtrl, $view, ilBlockSetting\_write(), exit, getBlockType(), getHTML(), getNewsData(), handleView(), and ilBlockGUI\setData().

{
global $ilCtrl, $ilUser;
include_once("Services/Block/classes/class.ilBlockSetting.php");
$view = ilBlockSetting::_write($this->getBlockType(), "view", "",
$ilUser->getId(), $this->block_id);
// reload data
$data = $this->getNewsData();
$this->setData($data);
$this->handleView();
if ($ilCtrl->isAsynch())
{
echo $this->getHTML();
}
else
{
$ilCtrl->returnToParent($this);
}
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::showViewFooter ( )

Show additional footer for show/hide notifications.

Definition at line 859 of file class.ilNewsForContextBlockGUI.php.

References ilBlockGUI\$block_id, $ilCtrl, $lng, ilBlockGUI\addFooterLink(), ilBlockGUI\clearFooterLinks(), and ilBlockGUI\fillFooterLinks().

Referenced by fillFooter().

{
global $ilUser, $lng, $ilCtrl;
return; // notifications always shown
$this->clearFooterLinks();
$this->addFooterLink("[".$lng->txt("news_first_letter_of_word_notification")."] ".
$lng->txt("news_notifications").": ", "", "", "", false, true);
if ($this->view == "hide_notifications")
{
$this->addFooterLink($lng->txt("show"),
$ilCtrl->getLinkTarget($this,
"showNotifications"),
$ilCtrl->getLinkTarget($this,
"showNotifications", "", true),
"block_".$this->getBlockType()."_".$this->block_id
);
$this->addFooterLink($lng->txt("hide"));
}
else
{
$this->addFooterLink($lng->txt("show"));
$this->addFooterLink($lng->txt("hide"),
$ilCtrl->getLinkTarget($this,
"hideNotifications"),
$ilCtrl->getLinkTarget($this,
"hideNotifications", "", true),
"block_".$this->getBlockType()."_".$this->block_id
);
}
$this->fillFooterLinks();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilNewsForContextBlockGUI::subscribeNews ( )

Subscribe current user from news.

Definition at line 832 of file class.ilNewsForContextBlockGUI.php.

References $_GET, $ilCtrl, and ilNewsSubscription\_subscribe().

{
global $ilUser, $ilCtrl;
include_once("./Services/News/classes/class.ilNewsSubscription.php");
ilNewsSubscription::_subscribe($_GET["ref_id"], $ilUser->getId());
$ilCtrl->returnToParent($this);
}

+ Here is the call graph for this function:

ilNewsForContextBlockGUI::unsubscribeNews ( )

Unsubscribe current user from news.

Definition at line 820 of file class.ilNewsForContextBlockGUI.php.

References $_GET, $ilCtrl, and ilNewsSubscription\_unsubscribe().

{
global $ilUser, $ilCtrl;
include_once("./Services/News/classes/class.ilNewsSubscription.php");
ilNewsSubscription::_unsubscribe($_GET["ref_id"], $ilUser->getId());
$ilCtrl->returnToParent($this);
}

+ Here is the call graph for this function:

Field Documentation

ilNewsForContextBlockGUI::$block_type = "news"
static

Definition at line 39 of file class.ilNewsForContextBlockGUI.php.

Referenced by getBlockType().

ilNewsForContextBlockGUI::$st_data
static

Definition at line 40 of file class.ilNewsForContextBlockGUI.php.

Referenced by ilNewsForContextBlockGUI().


The documentation for this class was generated from the following file: