Class ilChatroomSmileyTask.
More...
Class ilChatroomSmileyTask.
Provides methods to show, add, edit and delete smilies consisting of icon and keywords
- Author
- Andreas Kordosz akord.nosp@m.osz@.nosp@m.datab.nosp@m.ay.d.nosp@m.e
- Version
- $Id$
Definition at line 16 of file class.ilChatroomSmileyTask.php.
◆ __construct()
◆ _checkSetup()
static ilChatroomSmileyTask::_checkSetup |
( |
| ) |
|
|
static |
Definition at line 611 of file class.ilChatroomSmileyTask.php.
References $lng, $path, ilUtil\makeDirParents(), ilUtil\sendFailure(), ilUtil\sendInfo(), and ilUtil\sendSuccess().
615 $path = self::_getSmileyDir();
643 "icon_thumbdown.gif",
646 foreach($smilies as $smiley)
648 copy(
"templates/default/images/emoticons/$smiley",
$path .
"/$smiley");
651 self::_insertDefaultValues();
658 if (!is_writable(
$path))
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static makeDirParents($a_dir)
Create a new directory and all parent directories.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
◆ _getSmileyDir()
static ilChatroomSmileyTask::_getSmileyDir |
( |
| ) |
|
|
static |
◆ _insertDefaultValues()
static ilChatroomSmileyTask::_insertDefaultValues |
( |
| ) |
|
|
staticprivate |
Definition at line 553 of file class.ilChatroomSmileyTask.php.
References $row.
558 array(
"icon_smile.gif",
":)\n:-)\n:smile:"),
559 array(
"icon_wink.gif",
";)\n;-)\n:wink:"),
560 array(
"icon_laugh.gif",
":D\n:-D\n:laugh:\n:grin:\n:biggrin:"),
561 array(
"icon_sad.gif",
":(\n:-(\n:sad:"),
562 array(
"icon_shocked.gif",
":o\n:-o\n:shocked:"),
563 array(
"icon_tongue.gif",
":p\n:-p\n:tongue:"),
564 array(
"icon_cool.gif",
":cool:"),
565 array(
"icon_eek.gif",
":eek:"),
566 array(
"icon_angry.gif",
":||\n:-||\n:angry:"),
567 array(
"icon_flush.gif",
":flush:"),
568 array(
"icon_idea.gif",
":idea:"),
569 array(
"icon_thumbup.gif",
":thumbup:"),
570 array(
"icon_thumbdown.gif",
":thumbdown:"),
573 $stmt = $ilDB->prepare(
" 574 INSERT INTO chatroom_smilies (smiley_id, smiley_keywords, smiley_path) 576 array(
"integer",
"text",
"text" )
579 foreach($values as $val)
582 $ilDB->nextID(
"chat_smilies"),
586 $stmt->execute(
$row);
◆ _setupFolder()
static ilChatroomSmileyTask::_setupFolder |
( |
| ) |
|
|
staticprivate |
◆ confirmedDeleteMultipleObject()
ilChatroomSmileyTask::confirmedDeleteMultipleObject |
( |
| ) |
|
Deletes multiple smilies by $_REQUEST["sel_ids"].
ilRbacSystem $rbacsystem ilCtrl2 $ilCtrl
Definition at line 405 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, and ilChatroomSmilies\_deleteMultipleSmilies().
410 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
412 $this->
ilias->raiseError(
413 $this->lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
418 $parts = explode(
",", $ids );
420 if( count( $parts ) == 0 )
422 $ilCtrl->redirect( $this->gui,
"smiley" );
425 include_once
"Modules/Chatroom/classes/class.ilChatroomSmilies.php";
429 $ilCtrl->redirect( $this->gui,
"smiley" );
redirection script todo: (a better solution should control the processing via a xml file) ...
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
static _deleteMultipleSmilies($ids=array())
Deletes multiple smilies by given id array.
◆ deleteMultipleObject()
ilChatroomSmileyTask::deleteMultipleObject |
( |
| ) |
|
Shows confirmation view for deleting multiple smilies.
Prepares confirmation view for deleting multiple smilies and displays it.
ilRbacSystem $rbacsystem ilLanguage $lng ilCtrl2 $ilCtrl ilTemplate $tpl
Definition at line 345 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, $tpl, ilChatroomSmilies\_getSmiliesById(), and ilUtil\sendInfo().
350 $this->gui->switchToVisibleMode();
352 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
354 $this->
ilias->raiseError(
355 $this->lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
361 if( count( $items ) == 0 )
364 $ilCtrl->redirect( $this->gui,
"smiley" );
367 include_once
'Modules/Chatroom/classes/class.ilChatroomSmilies.php';
372 "tpl.chatroom_smilies_delete_multiple_confirm.html",
true,
true,
"Modules/Chatroom" 375 $tpl_form->setVariable(
376 "SMILIES_DELETE_INTRO", $lng->txt(
'chatroom_confirm_delete_smiley' )
378 $tpl_form->setVariable(
"TXT_SUBMIT", $lng->txt(
'confirm' ) );
379 $tpl_form->setVariable(
"TXT_CANCEL", $lng->txt(
'cancel' ) );
380 $tpl_form->setVariable(
"SMILIES_IDS", join(
",", $items ) );
381 $tpl_form->setVariable(
382 "FORMACTION", $ilCtrl->getFormAction( $this->gui,
'update' )
387 foreach( $smilies as $s )
389 $tpl_form->setCurrentBlock(
"smilies_list" );
390 $tpl_form->setVariable(
"SMILEY_PATH", $s[
"smiley_fullpath"] );
391 $tpl_form->setVariable(
"SMILEY_KEYWORDS", $s[
"smiley_keywords"] );
392 $tpl_form->setVariable(
"ROW_CNT", ($i++ % 2) + 1 );
393 $tpl_form->parseCurrentBlock();
396 $tpl->setContent( $tpl_form->get() );
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
special template class to simplify handling of ITX/PEAR
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
static _getSmiliesById($ids=array())
Fetches smilies from database by id.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ deleteSmileyObject()
ilChatroomSmileyTask::deleteSmileyObject |
( |
| ) |
|
Deletes a smiley by $_REQUEST["chatroom_smiley_id"].
ilRbacSystem $rbacsystem ilCtrl2 $ilCtrl
Definition at line 163 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, and ilChatroomSmilies\_deleteSmiley().
167 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
169 $this->
ilias->raiseError(
170 $lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
174 include_once
'Modules/Chatroom/classes/class.ilChatroomSmilies.php';
178 $ilCtrl->redirect( $this->gui,
"smiley" );
static _deleteSmiley($a_id)
Deletes smiliey by given id from database.
redirection script todo: (a better solution should control the processing via a xml file) ...
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ editSmiliesObject()
ilChatroomSmileyTask::editSmiliesObject |
( |
| ) |
|
Shows existing smilies table.
Prepares existing smilies table and displays it.
ilRbacSystem $rbacsystem ilLanguage $lng ilTemplate $tpl
Definition at line 190 of file class.ilChatroomSmileyTask.php.
References $lng, $tpl, ilChatroomSmilies\_checkSetup(), ilChatroomSmiliesGUI\_getExistingSmiliesTable(), and initSmiliesForm().
Referenced by view().
194 if( !$rbacsystem->checkAccess(
'read', $this->gui->ref_id ) )
196 $this->
ilias->raiseError(
197 $lng->txt(
'msg_no_perm_read' ), $this->gui->ilias->error_obj->MESSAGE
201 include_once
'Modules/Chatroom/classes/class.ilChatroomSmilies.php';
205 if (!$this->form_gui) {
209 $form = $this->form_gui;
212 include_once
"Modules/Chatroom/classes/class.ilChatroomSmiliesGUI.php";
217 "tpl.chatroom_edit_smilies.html",
true,
true,
"Modules/Chatroom" 219 $tpl_smilies->setVariable(
"SMILEY_TABLE", $table );
220 $tpl_smilies->setVariable(
"SMILEY_FORM", $form->getHtml() );
222 $tpl->setContent( $tpl_smilies->get() );
static _getExistingSmiliesTable($a_ref)
Instantiates ilChatroomSmiliesTableGUI and returns its table's HTML.
special template class to simplify handling of ITX/PEAR
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
initSmiliesForm()
Initializes smilies form and returns it.
static _checkSetup()
Checks if smiley folder is available; if not it will try to create folder and performs actions for an...
◆ executeDefault()
ilChatroomSmileyTask::executeDefault |
( |
|
$method | ) |
|
Default execute command.
Calls view method.
- Parameters
-
Definition at line 39 of file class.ilChatroomSmileyTask.php.
References view().
view()
Switches GUI to visible mode and calls editSmiliesObject method which prepares and displays the table...
◆ initSmiliesEditForm()
ilChatroomSmileyTask::initSmiliesEditForm |
( |
|
$form_data | ) |
|
Initializes SmiliesEditForm and returns it.
ilCtrl2 $ilCtrl ilLanguage $lng
- Returns
- ilPropertyFormGUI
Definition at line 439 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, ilFormPropertyGUI\setRequired(), ilChatroomSmiliesCurrentSmileyFormElement\setValue(), and ilTextAreaInputGUI\setValue().
Referenced by showEditSmileyEntryFormObject().
443 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
447 $this->form_gui->setValuesByArray( $form_data );
451 $ilCtrl->saveParameter($this->gui,
'smiley_id');
453 $this->form_gui->setFormAction(
454 $ilCtrl->getFormAction( $this->gui,
'smiley-updateSmiliesObject' ) . $table_nav
459 $sec_l->setTitle( $lng->txt(
'chatroom_edit_smiley' ) );
460 $this->form_gui->addItem( $sec_l );
462 include_once
"Modules/Chatroom/classes/class.ilChatroomSmiliesCurrentSmileyFormElement.php";
465 $lng->txt(
'chatroom_current_smiley_image_path' ),
466 'chatroom_current_smiley_image_path' 469 $inp->
setValue($form_data[
'chatroom_current_smiley_image_path']);
470 $this->form_gui->addItem( $inp );
473 $lng->txt(
'chatroom_image_path' ),
'chatroom_image_path' 477 $inp->setInfo( $lng->txt(
'chatroom_smiley_image_only_if_changed' ) );
478 $this->form_gui->addItem( $inp );
481 $lng->txt(
'chatroom_smiley_keywords' ),
'chatroom_smiley_keywords' 484 $inp->
setValue($form_data[
'chatroom_smiley_keywords']);
485 $inp->setUseRte(
false );
486 $inp->setRequired(
true );
487 $inp->setInfo( $lng->txt(
'chatroom_smiley_keywords_one_per_line_note' ) );
488 $this->form_gui->addItem( $inp );
492 $this->form_gui->addItem( $inp );
493 $this->form_gui->addCommandButton(
494 'smiley-updateSmiliesObject', $lng->txt(
'submit' )
496 $this->form_gui->addCommandButton(
'smiley', $lng->txt(
'cancel' ) );
497 return $this->form_gui;
setValue($a_value)
Set Value.
This class represents a text area property in a property form.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ initSmiliesForm()
ilChatroomSmileyTask::initSmiliesForm |
( |
| ) |
|
Initializes smilies form and returns it.
ilCtrl2 $ilCtrl ilLanguage $lng
- Returns
- ilPropertyFormGUI
Definition at line 294 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, and ilFormPropertyGUI\setRequired().
Referenced by editSmiliesObject(), and uploadSmileyObject().
298 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
303 $this->form_gui->setFormAction(
304 $ilCtrl->getFormAction( $this->gui,
'smiley-uploadSmileyObject' ) . $table_nav
310 $sec_l->setTitle( $lng->txt(
'chatroom_add_smiley' ) );
311 $this->form_gui->addItem( $sec_l );
314 $lng->txt(
'chatroom_image_path' ),
'chatroom_image_path' 318 $this->form_gui->addItem( $inp );
321 $lng->txt(
'chatroom_smiley_keywords' ),
'chatroom_smiley_keywords' 325 $inp->setUseRte(
false );
326 $inp->setInfo( $lng->txt(
'chatroom_smiley_keywords_one_per_line_note' ) );
327 $this->form_gui->addItem( $inp );
328 $this->form_gui->addCommandButton(
329 'smiley-uploadSmileyObject', $lng->txt(
'chatroom_upload_smiley' )
332 return $this->form_gui;
This class represents a text area property in a property form.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ showDeleteSmileyFormObject()
ilChatroomSmileyTask::showDeleteSmileyFormObject |
( |
| ) |
|
Shows DeleteSmileyForm.
Prepares DeleteSmileyForm and displays it.
ilRbacSystem $rbacsystem ilLanguage $lng ilCtrl2 $ilCtrl ilTemplate $tpl
Definition at line 116 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, $tpl, and ilChatroomSmilies\_getSmiley().
120 $this->gui->switchToVisibleMode();
122 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
124 $this->
ilias->raiseError(
125 $lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
130 "tpl.chatroom_smiley_confirm_delete.html",
true,
true,
"Modules/Chatroom" 133 $tpl_form->setVariable(
134 "TXT_CONFIRM_DELETE_SMILEY", $lng->txt(
'chatroom_confirm_delete_smiley' )
136 $tpl_form->setVariable(
"TXT_CONFIRM_DELETE", $lng->txt(
'confirm' ) );
137 $tpl_form->setVariable(
"TXT_CANCEL_DELETE", $lng->txt(
'cancel' ) );
138 $tpl_form->setVariable(
"SMILEY_ID",
$_REQUEST[
"smiley_id"] );
140 include_once
'Modules/Chatroom/classes/class.ilChatroomSmilies.php';
144 $tpl_form->setVariable(
"SMILEY_PATH", $smiley[
"smiley_fullpath"] );
145 $tpl_form->setVariable(
"SMILEY_KEYWORDS", $smiley[
"smiley_keywords"] );
149 $tpl_form->setVariable(
150 "FORMACTION", $ilCtrl->getFormAction( $this->gui ) . $table_nav
153 $tpl_form->parseCurrentBlock();
154 $tpl->setContent( $tpl_form->get() );
special template class to simplify handling of ITX/PEAR
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
static _getSmiley($a_id)
Looks up and returns smiley with id, throws exception if id is not found.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ showEditSmileyEntryFormObject()
ilChatroomSmileyTask::showEditSmileyEntryFormObject |
( |
| ) |
|
Shows EditSmileyEntryForm.
Prepares EditSmileyEntryForm and displays it.
ilRbacSystem $rbacsystem ilTemplate $tpl
Definition at line 72 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $lng, $tpl, ilChatroomSmilies\_getSmiley(), and initSmiliesEditForm().
76 $this->gui->switchToVisibleMode();
78 if( !$rbacsystem->checkAccess(
'read', $this->gui->ref_id ) )
80 $this->
ilias->raiseError(
81 $lng->txt(
'msg_no_perm_read' ), $this->
ilias->error_obj->MESSAGE
85 include_once
"Modules/Chatroom/classes/class.ilChatroomSmilies.php";
90 "chatroom_smiley_id" => $smiley[
"smiley_id"],
91 "chatroom_smiley_keywords" => $smiley[
"smiley_keywords"],
92 "chatroom_current_smiley_image_path" => $smiley[
"smiley_fullpath"],
98 "tpl.chatroom_edit_smilies.html",
true,
true,
"Modules/Chatroom" 101 $tpl_form->setVariable(
"SMILEY_FORM", $form->getHTML() );
103 $tpl->setContent( $tpl_form->get() );
initSmiliesEditForm($form_data)
Initializes SmiliesEditForm and returns it.
special template class to simplify handling of ITX/PEAR
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
static _getSmiley($a_id)
Looks up and returns smiley with id, throws exception if id is not found.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ updateSmiliesObject()
ilChatroomSmileyTask::updateSmiliesObject |
( |
| ) |
|
Updates a smiley and/or its keywords.
Updates a smiley icon and/or its keywords by $_REQUEST["chatroom_smiley_id"] and gets keywords from $_REQUEST["chatroom_smiley_keywords"].
ilRbacSystem $rbacsystem ilCtrl2 $ilCtrl
Definition at line 234 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $data, $ilCtrl, $lng, $tpl, ilChatroomSmilies\_getSmiliesBasePath(), ilChatroomSmilies\_prepareKeywords(), ilChatroomSmilies\_updateSmiley(), ilUtil\sendFailure(), ilUtil\stripSlashes(), and view().
238 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
240 $this->
ilias->raiseError(
241 $lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
245 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
250 include_once
"Modules/Chatroom/classes/class.ilChatroomSmilies.php";
256 $keywordscheck = count( $keywords ) > 0;
258 if( !$this->form_gui->checkInput() || !$keywordscheck )
260 $tpl->setContent( $this->form_gui->getHtml() );
262 return $this->
view();
267 $data[
"smiley_keywords"] = join(
"\n", $keywords );
270 if( $_FILES[
"chatroom_image_path"] )
273 $_FILES[
"chatroom_image_path"][
"tmp_name"],
275 $_FILES[
"chatroom_image_path"][
"name"]
278 $data[
"smiley_path"] = $_FILES[
"chatroom_image_path"][
"name"];
284 $ilCtrl->redirect( $this->gui,
"smiley" );
view()
Switches GUI to visible mode and calls editSmiliesObject method which prepares and displays the table...
static _updateSmiley($data)
Updates smiley in DB by keyword and id from given array ($data["smiley_keywords"], $data["smiley_id"])
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static _getSmiliesBasePath()
Returns smilies basepath.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
while($lm_rec=$ilDB->fetchAssoc($lm_set)) $data
static _prepareKeywords($words)
Trims given keywords and returns them in one array.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ uploadSmileyObject()
ilChatroomSmileyTask::uploadSmileyObject |
( |
| ) |
|
Uploads and stores a new smiley with keywords from $_REQUEST["chatroom_smiley_keywords"].
ilRbacSystem $rbacsystem ilCtrl2 $ilCtrl
Definition at line 507 of file class.ilChatroomSmileyTask.php.
References $_REQUEST, $ilCtrl, $lng, $tpl, ilChatroomSmilies\_getSmiliesBasePath(), ilChatroomSmilies\_prepareKeywords(), ilChatroomSmilies\_storeSmiley(), initSmiliesForm(), ilUtil\stripSlashes(), and view().
511 if( !$rbacsystem->checkAccess(
'write', $this->gui->ref_id ) )
513 $this->
ilias->raiseError(
514 $lng->txt(
'msg_no_perm_write' ), $this->
ilias->error_obj->MESSAGE
520 include_once
"Modules/Chatroom/classes/class.ilChatroomSmilies.php";
521 include_once(
'./Services/Form/classes/class.ilPropertyFormGUI.php');
525 $this->form_gui->setValuesByPost();
531 $keywordscheck = count( $keywords ) > 0;
533 if( !$this->form_gui->checkInput() )
535 $tpl->setContent( $this->form_gui->getHtml() );
536 return $this->
view();
539 $pathinfo = pathinfo( $_FILES[
"chatroom_image_path"][
"name"] );
540 $target_file = md5( time() + $pathinfo[
'basename'] ) .
"." . $pathinfo[
'extension'];
543 $_FILES[
"chatroom_image_path"][
"tmp_name"],
549 $ilCtrl->redirect( $this->gui,
"smiley" );
view()
Switches GUI to visible mode and calls editSmiliesObject method which prepares and displays the table...
redirection script todo: (a better solution should control the processing via a xml file) ...
if(isset($_FILES['img_file']['size']) && $_FILES['img_file']['size'] > 0) $tpl
static _storeSmiley($keywords, $path)
Stores smiley with given keywords and path in database.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static _getSmiliesBasePath()
Returns smilies basepath.
initSmiliesForm()
Initializes smilies form and returns it.
static _prepareKeywords($words)
Trims given keywords and returns them in one array.
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
◆ view()
ilChatroomSmileyTask::view |
( |
| ) |
|
◆ $gui
ilChatroomSmileyTask::$gui |
|
private |
The documentation for this class was generated from the following file: