ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
ilChatroomBlockGUI Class Reference

Class ilChatroomBlockGUI. More...

+ Inheritance diagram for ilChatroomBlockGUI:
+ Collaboration diagram for ilChatroomBlockGUI:

Public Member Functions

 __construct ()
 Constructor. More...
 
 executeCommand ()
 
 getHTML ()
 
 fillDataSection ()
 Fill data section. More...
 
 getBlockType ()
 
Returns
string
More...
 
- Public Member Functions inherited from ilBlockGUI
 getBlockType ()
 
 __construct ()
 Constructor. More...
 
 addHeaderLink ($a_href, $a_text, $status=true)
 
 getHeaderLinks ()
 
 setData ($a_data)
 Set Data. More...
 
 getData ()
 Get Data. More...
 
 setBigMode ($a_bigmode)
 Set Big Mode. More...
 
 getBigMode ()
 Get Big Mode. More...
 
 setBlockId ($a_block_id=0)
 Set Block Id. More...
 
 getBlockId ()
 Get Block Id. More...
 
 setAvailableDetailLevels ($a_max, $a_min=0)
 Set Available Detail Levels. More...
 
 setCurrentDetailLevel ($a_currentdetaillevel)
 Set Current Detail Level. More...
 
 setGuiObject (&$a_gui_object)
 Set GuiObject. More...
 
 getGuiObject ()
 Get GuiObject. More...
 
 getCurrentDetailLevel ()
 Get Current Detail Level. More...
 
 setTitle ($a_title)
 Set Title. More...
 
 getTitle ()
 Get Title. More...
 
 setImage ($a_image)
 Set Image. More...
 
 getImage ()
 Get Image. More...
 
 setOffset ($a_offset)
 Set Offset. More...
 
 getOffset ()
 Get Offset. More...
 
 correctOffset ()
 
 setLimit ($a_limit)
 Set Limit. More...
 
 getLimit ()
 Get Limit. More...
 
 setEnableEdit ($a_enableedit)
 Set EnableEdit. More...
 
 getEnableEdit ()
 Get EnableEdit. More...
 
 setRepositoryMode ($a_repositorymode)
 Set RepositoryMode. More...
 
 getRepositoryMode ()
 Get RepositoryMode. More...
 
 setFooterInfo ($a_footerinfo, $a_hide_and_icon=false)
 Set Footer Info. More...
 
 getFooterInfo ($a_hide_and_icon=false)
 Get Footer Info. More...
 
 setSubtitle ($a_subtitle)
 Set Subtitle. More...
 
 getSubtitle ()
 Get Subtitle. More...
 
 setRefId ($a_refid)
 Set Ref Id (only used if isRepositoryObject() is true). More...
 
 getRefId ()
 Get Ref Id (only used if isRepositoryObject() is true). More...
 
 setAdminCommands ($a_admincommands)
 Set Administration Commmands. More...
 
 getAdminCommands ()
 Get Administration Commmands. More...
 
 setColSpan ($a_colspan)
 Set Columns Span. More...
 
 getColSpan ()
 Get Columns Span. More...
 
 setEnableDetailRow ($a_enabledetailrow)
 Set EnableDetailRow. More...
 
 getEnableDetailRow ()
 Get EnableDetailRow. More...
 
 setEnableNumInfo ($a_enablenuminfo)
 Set Enable Item Number Info. More...
 
 getEnableNumInfo ()
 Get Enable Item Number Info. More...
 
 setProperties ($a_properties)
 This function is supposed to be used for block type specific properties, that should be inherited through ilColumnGUI->setBlockProperties. More...
 
 getProperty ($a_property)
 
 setProperty ($a_property, $a_value)
 
 setRowTemplate ($a_rowtemplatename, $a_rowtemplatedir="")
 Set Row Template Name. More...
 
 getNavParameter ()
 
 getDetailParameter ()
 
 getConfigParameter ()
 
 getMoveParameter ()
 
 getRowTemplateName ()
 Get Row Template Name. More...
 
 getRowTemplateDir ()
 Get Row Template Directory. More...
 
 addBlockCommand ( $a_href, $a_text, $a_target="", $a_img="", $a_right_aligned=false, $a_checked=false, $a_html="")
 Add Block Command. More...
 
 getBlockCommands ()
 Get Block commands. More...
 
 addHeaderCommand ($a_href, $a_text, $a_as_close=false)
 Add Header Block Command. More...
 
 getHeaderCommands ()
 Get Header Block commands. More...
 
 addFooterLink ( $a_text, $a_href="", $a_onclick="", $a_block_id="", $a_top=false, $a_omit_separator=false, $a_checked=false)
 Add a footer text/link. More...
 
 getFooterLinks ()
 Get footer links. More...
 
 clearFooterLinks ()
 Clear footer links. More...
 
 handleDetailLevel ()
 Handle read/write current detail level. More...
 
 getHTML ()
 Handle config status. More...
 
 fillHeaderCommands ()
 Fill header commands block. More...
 
 fillHeaderTitleBlock ()
 Fill header title block (title and. More...
 
 setDataSection ($a_content)
 Call this from overwritten fillDataSection(), if standard row based data is not used. More...
 
 fillDataSection ()
 Standard implementation for row based data. More...
 
 fillRow ($a_set)
 
 fillFooter ()
 
 fillPreviousNext ()
 Fill previous/next row. More...
 
 setPreviousNextLinks ()
 Get previous/next linkbar. More...
 
 fillFooterLinks ($a_top=false, $a_numinfo="")
 Fill footer links. More...
 
 fillDetailRow ()
 Fill Detail Setting Row. More...
 

Static Public Member Functions

static getScreenMode ()
 
static getScreenMode ()
 Get Screen Mode for current command. More...
 

Static Public Attributes

static $block_type = 'chatviewer'
 

Protected Member Functions

 isRepositoryObject ()
 Returns whether block has a corresponding repository object.
Returns
bool
More...
 
 dispatchAsyncCommand ($cmd)
 
 getChatroomSelectionList ()
 
- Protected Member Functions inherited from ilBlockGUI
 isRepositoryObject ()
 Returns whether block has a corresponding repository object. More...
 
 fillRowColor ($a_placeholder="CSS_ROW")
 
 preloadData (array $data)
 Can be overwritten in subclasses. More...
 

Additional Inherited Members

- 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()
 
 $footerinfo = false
 
 $footerinfo_icon = false
 
 $block_commands = array()
 
 $max_count = false
 
 $close_command = false
 
 $image = false
 
 $property = false
 
 $nav_value = ""
 
 $css_row = ""
 
 $dropdown
 
 $tpl
 
 $main_tpl
 
 $user
 
 $ctrl
 
 $access
 
 $lng
 
 $obj_def
 

Detailed Description

Class ilChatroomBlockGUI.

Author
Michael Jansen mjans.nosp@m.en@d.nosp@m.ataba.nosp@m.y.de
Version
$Id$ @ilCtrl_IsCalledBy ilChatroomBlockGUI: ilColumnGUI

Definition at line 17 of file class.ilChatroomBlockGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilChatroomBlockGUI::__construct ( )

Constructor.

Reimplemented from ilBlockGUI.

Definition at line 28 of file class.ilChatroomBlockGUI.php.

29 {
30 parent::__construct();
31
32 $this->lng->loadLanguageModule('chatroom');
33
34 $this->setImage(ilUtil::getImagePath('icon_chat.svg'));
35 $this->setTitle($this->lng->txt('chat_chatviewer'));
36 $this->setAvailableDetailLevels(1, 0);
37 $this->allow_moving = true;
38 }
setImage($a_image)
Set Image.
setAvailableDetailLevels($a_max, $a_min=0)
Set Available Detail Levels.
setTitle($a_title)
Set Title.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)

References ilUtil\getImagePath(), ilBlockGUI\setAvailableDetailLevels(), ilBlockGUI\setImage(), and ilBlockGUI\setTitle().

+ Here is the call graph for this function:

Member Function Documentation

◆ dispatchAsyncCommand()

ilChatroomBlockGUI::dispatchAsyncCommand (   $cmd)
protected
Parameters
$cmd

Definition at line 150 of file class.ilChatroomBlockGUI.php.

151 {
152 switch ($cmd) {
153 case 'getChatroomSelectionList':
154 return $this->getChatroomSelectionList();
155 break;
156
157 case 'getMessages':
158 default:
159 return $this->getMessages();
160 break;
161 }
162 }

References getChatroomSelectionList().

Referenced by fillDataSection().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeCommand()

ilChatroomBlockGUI::executeCommand ( )
Returns
string

Definition at line 64 of file class.ilChatroomBlockGUI.php.

65 {
66 $cmd = $this->ctrl->getCmd('getHTML');
67
68 return $this->$cmd();
69 }

◆ fillDataSection()

ilChatroomBlockGUI::fillDataSection ( )

Fill data section.

Reimplemented from ilBlockGUI.

Definition at line 89 of file class.ilChatroomBlockGUI.php.

90 {
91 if ($this->ctrl->isAsynch() && isset($_GET['chatBlockCmd'])) {
92 return $this->dispatchAsyncCommand($_GET['chatBlockCmd']);
93 }
94
95 $this->main_tpl->addJavascript('./Modules/Chatroom/js/chatviewer.js');
96 $this->main_tpl->addCss('./Modules/Chatroom/templates/default/style.css');
97
98 $body_tpl = new ilTemplate('tpl.chatroom_block_message_body.html', true, true, 'Modules/Chatroom');
99
100 $body_tpl->setVariable('TXT_ENABLE_AUTOSCROLL', $this->lng->txt('chat_enable_autoscroll'));
101 $body_tpl->setVariable('LOADER_PATH', ilUtil::getImagePath('loader.svg'));
102
103 $this->ctrl->setParameterByClass('ilcolumngui', 'block_id', 'block_' . $this->getBlockType() . '_' . (int) $this->getBlockId());
104 $this->ctrl->setParameterByClass('ilcolumngui', 'ref_id', '#__ref_id');
105 $body_tpl->setVariable('CHATBLOCK_BASE_URL', $this->ctrl->getLinkTargetByClass('ilcolumngui', 'updateBlock', '', true));
106 $this->ctrl->setParameterByClass('ilcolumngui', 'block_id', '');
107 $this->ctrl->setParameterByClass('ilcolumngui', 'ref_id', '');
108
109 $smilieys = array();
111 if ($settings->getSmiliesEnabled()) {
112 $smilies_array = ilChatroomSmilies::_getSmilies();
113 foreach ($smilies_array as $smiley_array) {
114 foreach ($smiley_array as $key => $value) {
115 if ($key == 'smiley_keywords') {
116 $new_keys = explode("\n", $value);
117 }
118
119 if ($key == 'smiley_fullpath') {
120 $new_val = $value;
121 }
122 }
123
124 foreach ($new_keys as $new_key) {
125 $smilieys[$new_key] = $new_val;
126 }
127 }
128 } else {
129 $smilieys = new stdClass();
130 }
131 $body_tpl->setVariable('SMILIES', json_encode($smilieys));
132
133 $js_translations = array(
134 'LBL_CONNECT' => 'chat_connection_established',
135 'LBL_DISCONNECT' => 'chat_connection_disconnected',
136 'LBL_TIMEFORMAT' => 'lang_timeformat_no_sec',
137 'LBL_DATEFORMAT' => 'lang_dateformat'
138 );
139 foreach ($js_translations as $placeholder => $lng_variable) {
140 $body_tpl->setVariable($placeholder, json_encode($this->lng->txt($lng_variable)));
141 }
142
143 $content = $body_tpl->get();
144 $this->setDataSection($content);
145 }
$_GET["client_id"]
getBlockId()
Get Block Id.
setDataSection($a_content)
Call this from overwritten fillDataSection(), if standard row based data is not used.
special template class to simplify handling of ITX/PEAR
$key
Definition: croninfo.php:18

References $_GET, $key, dispatchAsyncCommand(), ilBlockGUI\getBlockId(), getBlockType(), ilUtil\getImagePath(), ilChatroomServerSettings\loadDefault(), and ilBlockGUI\setDataSection().

+ Here is the call graph for this function:

◆ getBlockType()

ilChatroomBlockGUI::getBlockType ( )

Returns
string

Reimplemented from ilBlockGUI.

Definition at line 235 of file class.ilChatroomBlockGUI.php.

235 : string
236 {
237 return self::$block_type;
238 }

References $block_type.

Referenced by fillDataSection().

+ Here is the caller graph for this function:

◆ getChatroomSelectionList()

ilChatroomBlockGUI::getChatroomSelectionList ( )
protected

Definition at line 164 of file class.ilChatroomBlockGUI.php.

165 {
166 $result = new stdClass();
167 $result->ok = true;
168 $result->has_records = false;
169
170 $chatblock = new ilChatroomBlock();
171 $result->html = $chatblock->getRoomSelect($result);
172
173 include_once 'Services/JSON/classes/class.ilJsonUtil.php';
175 exit();
176 }
$result
exit
Definition: backend.php:16
static encode($mixed, $suppress_native=false)

References $result, ilJsonUtil\encode(), and exit.

Referenced by dispatchAsyncCommand().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getHTML()

ilChatroomBlockGUI::getHTML ( )
Returns
string

Reimplemented from ilBlockGUI.

Definition at line 74 of file class.ilChatroomBlockGUI.php.

75 {
77
78 $chatSetting = new ilSetting('chatroom');
79 if ($this->getCurrentDetailLevel() == 0 || !$chatSetting->get('chat_enabled', 0) || !(bool) ilChatroomServerConnector::checkServerConnection()) {
80 return '';
81 } else {
82 return parent::getHTML();
83 }
84 }
getCurrentDetailLevel()
Get Current Detail Level.
static checkServerConnection($use_cache=true)
ILIAS Setting Class.
static initJson()
Init YUI JSON component.

References ilChatroomServerConnector\checkServerConnection(), ilBlockGUI\getCurrentDetailLevel(), and ilYuiUtil\initJson().

+ Here is the call graph for this function:

◆ getScreenMode()

static ilChatroomBlockGUI::getScreenMode ( )
static
Returns
string

Reimplemented from ilBlockGUI.

Definition at line 52 of file class.ilChatroomBlockGUI.php.

53 {
54 switch ($_GET['cmd']) {
55 default:
56 return IL_SCREEN_SIDE;
57 break;
58 }
59 }
const IL_SCREEN_SIDE

References $_GET, and IL_SCREEN_SIDE.

◆ isRepositoryObject()

ilChatroomBlockGUI::isRepositoryObject ( )
protected

Returns whether block has a corresponding repository object.

Returns
bool

Reimplemented from ilBlockGUI.

Definition at line 43 of file class.ilChatroomBlockGUI.php.

43 : bool
44 {
45 return false;
46 }

Field Documentation

◆ $block_type

ilChatroomBlockGUI::$block_type = 'chatviewer'
static

Definition at line 23 of file class.ilChatroomBlockGUI.php.

Referenced by getBlockType().


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