ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
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...
 
- Public Member Functions inherited from ilBlockGUI
 __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 isRepositoryObject ()
 
static getScreenMode ()
 
static getBlockType ()
 
static getBlockType ()
 
static isRepositoryObject ()
 
static getScreenMode ()
 Get Screen Mode for current command. More...
 

Static Public Attributes

static $block_type = 'chatviewer'
 

Protected Member Functions

 dispatchAsyncCommand ($cmd)
 
 getChatroomSelectionList ()
 
- Protected Member Functions inherited from ilBlockGUI
 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 151 of file class.ilChatroomBlockGUI.php.

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

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 65 of file class.ilChatroomBlockGUI.php.

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

◆ fillDataSection()

ilChatroomBlockGUI::fillDataSection ( )

Fill data section.

Reimplemented from ilBlockGUI.

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

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

static ilChatroomBlockGUI::getBlockType ( )
static
Returns
string

Reimplemented from ilBlockGUI.

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

237 {
238 return self::$block_type;
239 }

References $block_type.

Referenced by fillDataSection().

+ Here is the caller graph for this function:

◆ getChatroomSelectionList()

ilChatroomBlockGUI::getChatroomSelectionList ( )
protected

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

166 {
167 $result = new stdClass();
168 $result->ok = true;
169
170 $chatblock = new ilChatroomBlock();
171 $result->html = $chatblock->getRoomSelect();
172
173 include_once 'Services/JSON/classes/class.ilJsonUtil.php';
175 exit();
176 }
$result
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 75 of file class.ilChatroomBlockGUI.php.

76 {
78
79 $chatSetting = new ilSetting('chatroom');
80 if ($this->getCurrentDetailLevel() == 0 || !$chatSetting->get('chat_enabled', 0) || !(bool) ilChatroomServerConnector::checkServerConnection()) {
81 return '';
82 } else {
83 return parent::getHTML();
84 }
85 }
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 53 of file class.ilChatroomBlockGUI.php.

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

References $_GET, and IL_SCREEN_SIDE.

◆ isRepositoryObject()

static ilChatroomBlockGUI::isRepositoryObject ( )
static
Returns
bool

Reimplemented from ilBlockGUI.

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

45 {
46 return false;
47 }

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: