diff --git a/acloptions.xml b/acloptions.xml index 67043b1..279c997 100644 --- a/acloptions.xml +++ b/acloptions.xml @@ -3,42 +3,42 @@ - be.bastelstu.wcf.chat.room + be.bastelstu.chat.room - be.bastelstu.wcf.chat.room + be.bastelstu.chat.room diff --git a/acpMenu.xml b/acpMenu.xml index 972b93f..8b6a0cc 100644 --- a/acpMenu.xml +++ b/acpMenu.xml @@ -1,21 +1,21 @@ - + wcf.acp.menu.link.community - - - wcf.acp.menu.link.chat - admin.content.chat.canEditRoom,admin.content.chat.canDeleteRoom + + + chat.acp.menu.link.chat + admin.chat.canEditRoom,admin.chat.canDeleteRoom 1 - - - wcf.acp.menu.link.chat - admin.content.chat.canAddRoom + + + chat.acp.menu.link.chat + admin.chat.canAddRoom 2 diff --git a/acptemplate/chatRoomAdd.tpl b/acptemplate/chatRoomAdd.tpl index 86be9ee..52dc34e 100644 --- a/acptemplate/chatRoomAdd.tpl +++ b/acptemplate/chatRoomAdd.tpl @@ -32,12 +32,12 @@ -
+
{lang}wcf.acp.chat.room.data{/lang} diff --git a/acptemplate/chatRoomList.tpl b/acptemplate/chatRoomList.tpl index 9e2b02b..15e4f0c 100644 --- a/acptemplate/chatRoomList.tpl +++ b/acptemplate/chatRoomList.tpl @@ -1,10 +1,10 @@ -{include file='header' pageTitle='wcf.acp.chat.room.list'} +{include file='header' pageTitle='chat.acp.room.list'} @@ -16,12 +16,10 @@
- {pages print=true assign=pagesLinks controller="ChatRoomList" link="pageNo=%d"} - - {if $__wcf->session->getPermission('admin.content.chat.canAddRoom')} + {if $__wcf->session->getPermission('admin.chat.canAddRoom')} {/if} @@ -33,18 +31,18 @@ {foreach from=$objects item=chatRoom}
  • - {if $__wcf->session->getPermission('admin.content.chat.canEditRoom')} - {$chatRoom->title|language} + {if $__wcf->session->getPermission('admin.chat.canEditRoom')} + {$chatRoom->title|language} {else} {$chatRoom->title|language} {/if} {if $__wcf->session->getPermission('admin.content.chat.canEditRoom')} - + {/if} {if $__wcf->session->getPermission('admin.content.chat.canDeleteRoom')} - + {/if} @@ -58,8 +56,7 @@
  • {hascontentelse} -

    {lang}wcf.acp.chat.room.noneAvailable{/lang}

    +

    {lang}chat.acp.room.noneAvailable{/lang}

    {/hascontent} - {include file='footer'} diff --git a/build.php b/build.php index 1b4c90b..495b030 100755 --- a/build.php +++ b/build.php @@ -5,9 +5,9 @@ * Builds the Chat * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat */ $packageXML = file_get_contents('package.xml'); preg_match('/(.*?)<\/version>/', $packageXML, $matches); @@ -26,10 +26,10 @@ if (file_exists('file.tar')) unlink('file.tar'); if (file_exists('template.tar')) unlink('template.tar'); if (file_exists('acptemplate.tar')) unlink('acptemplate.tar'); - foreach (glob('file/acp/be.bastelstu.wcf.chat.nodePush/lib/*.js') as $nodeFile) unlink($nodeFile); + foreach (glob('file/acp/be.bastelstu.chat.nodePush/lib/*.js') as $nodeFile) unlink($nodeFile); foreach (glob('file/js/*.js') as $jsFile) unlink($jsFile); foreach (glob('file/style/*.css') as $cssFile) unlink($cssFile); - if (file_exists('be.bastelstu.wcf.chat.tar')) unlink('be.bastelstu.wcf.chat.tar'); + if (file_exists('be.bastelstu.chat.tar')) unlink('be.bastelstu.chat.tar'); echo <<\d{4}-\d{2}-\d{2}~', ''.date('Y-m-d').'', file_get_contents('package.xml'))); - passthru('tar cvf be.bastelstu.wcf.chat.tar * --exclude=*.old --exclude=file --exclude=template --exclude=acptemplate --exclude=build.php', $code); + passthru('tar cvf be.bastelstu.chat.tar * --exclude=*.old --exclude=file --exclude=template --exclude=acptemplate --exclude=build.php', $code); if (file_exists('package.xml.old')) { file_put_contents('package.xml', file_get_contents('package.xml.old')); unlink('package.xml.old'); @@ -125,6 +125,6 @@ if (file_exists('file.tar')) unlink('file.tar'); if (file_exists('template.tar')) unlink('template.tar'); if (file_exists('acptemplate.tar')) unlink('acptemplate.tar'); -foreach (glob('file/acp/be.bastelstu.wcf.chat.nodePush/lib/*.js') as $nodeFile) unlink($nodeFile); +foreach (glob('file/acp/be.bastelstu.chat.nodePush/lib/*.js') as $nodeFile) unlink($nodeFile); foreach (glob('file/js/*.js') as $jsFile) unlink($jsFile); foreach (glob('file/style/*.css') as $cssFile) unlink($cssFile); diff --git a/cronjob.xml b/cronjob.xml index 9384a61..e4e10a6 100644 --- a/cronjob.xml +++ b/cronjob.xml @@ -2,7 +2,7 @@ - wcf\system\cronjob\ChatCleanupCronjob + chat\system\cronjob\CleanupCronjob Cleans up Tims Chat */15 * diff --git a/eventListener.xml b/eventListener.xml index 612b7d8..af67274 100644 --- a/eventListener.xml +++ b/eventListener.xml @@ -6,7 +6,7 @@ didInit user 0 - wcf\system\event\listener\ChatRouteListener + chat\system\event\listener\RouteHandlerListener \ No newline at end of file diff --git a/file/acp/be.bastelstu.wcf.chat.install.php b/file/acp/be.bastelstu.chat.install.php similarity index 91% rename from file/acp/be.bastelstu.wcf.chat.install.php rename to file/acp/be.bastelstu.chat.install.php index 01cd57a..56f88d1 100644 --- a/file/acp/be.bastelstu.wcf.chat.install.php +++ b/file/acp/be.bastelstu.chat.install.php @@ -5,9 +5,9 @@ * Handles installation of Tims Chat. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat */ // @codingStandardsIgnoreFile final class Install { diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/.gitignore b/file/acp/be.bastelstu.chat.nodePush/.gitignore similarity index 100% rename from file/acp/be.bastelstu.wcf.chat.nodePush/.gitignore rename to file/acp/be.bastelstu.chat.nodePush/.gitignore diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/README.md b/file/acp/be.bastelstu.chat.nodePush/README.md similarity index 100% rename from file/acp/be.bastelstu.wcf.chat.nodePush/README.md rename to file/acp/be.bastelstu.chat.nodePush/README.md diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/bin/run.sh b/file/acp/be.bastelstu.chat.nodePush/bin/run.sh old mode 100755 new mode 100644 similarity index 100% rename from file/acp/be.bastelstu.wcf.chat.nodePush/bin/run.sh rename to file/acp/be.bastelstu.chat.nodePush/bin/run.sh diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/lib/server.coffee b/file/acp/be.bastelstu.chat.nodePush/lib/server.coffee similarity index 93% rename from file/acp/be.bastelstu.wcf.chat.nodePush/lib/server.coffee rename to file/acp/be.bastelstu.chat.nodePush/lib/server.coffee index d628c28..5a3cb00 100644 --- a/file/acp/be.bastelstu.wcf.chat.nodePush/lib/server.coffee +++ b/file/acp/be.bastelstu.chat.nodePush/lib/server.coffee @@ -2,9 +2,9 @@ # node.js Pushserver for Tims Chat. # # @author Tim Düsterhus -# @copyright 2010-2012 Tim Düsterhus +# @copyright 2010-2013 Tim Düsterhus # @license Creative Commons Attribution-NonCommercial-ShareAlike -# @package be.bastelstu.wcf.chat +# @package be.bastelstu.chat # @subpackage nodePush ### process.title = 'nodePush - Tims Chat' @@ -16,7 +16,7 @@ fs = require 'fs' config = require('../config.js') log = (message) -> - console.log '[be.bastelstu.wcf.chat.nodePush] '+message + console.log '[be.bastelstu.chat.nodePush] '+message class Server constructor: () -> diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/package.json b/file/acp/be.bastelstu.chat.nodePush/package.json similarity index 78% rename from file/acp/be.bastelstu.wcf.chat.nodePush/package.json rename to file/acp/be.bastelstu.chat.nodePush/package.json index 74171a6..8c8fae0 100644 --- a/file/acp/be.bastelstu.wcf.chat.nodePush/package.json +++ b/file/acp/be.bastelstu.chat.nodePush/package.json @@ -1,9 +1,9 @@ { - "name" : "be.bastelstu.wcf.chat.nodePush", + "name" : "be.bastelstu.chat.nodePush", "description" : "node.js-Pushing for Tims Chat", "homepage" : "https://github.com/wbbaddons/Tims-Chat", "keywords" : ["chat"], - "author" : "Tim Düsterhus ", + "author" : "Tim Düsterhus ", "contributors" : [ ], "dependencies" : { diff --git a/file/acp/be.bastelstu.wcf.chat.update.php b/file/acp/be.bastelstu.chat.update.php similarity index 95% rename from file/acp/be.bastelstu.wcf.chat.update.php rename to file/acp/be.bastelstu.chat.update.php index 07aa687..ced5b0e 100644 --- a/file/acp/be.bastelstu.wcf.chat.update.php +++ b/file/acp/be.bastelstu.chat.update.php @@ -5,9 +5,9 @@ * Handles updates of Tims Chat. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat */ // @codingStandardsIgnoreFile final class Update { diff --git a/file/acp/be.bastelstu.wcf.chat.nodePush/config.js b/file/acp/be.bastelstu.wcf.chat.nodePush/config.js deleted file mode 100644 index b139533..0000000 --- a/file/acp/be.bastelstu.wcf.chat.nodePush/config.js +++ /dev/null @@ -1,3 +0,0 @@ -module.exports = { - port: 9001 -} diff --git a/file/acp/global.php b/file/acp/global.php new file mode 100644 index 0000000..95f4a02 --- /dev/null +++ b/file/acp/global.php @@ -0,0 +1,15 @@ + + * @package be.bastelstu.chat + */ +// define paths +define('RELATIVE_CHAT_DIR', '../'); + +// include config +require_once(dirname(dirname(__FILE__)).'/config.inc.php'); + +// include WCF +require_once(RELATIVE_WCF_DIR.'acp/global.php'); diff --git a/file/acp/index.php b/file/acp/index.php new file mode 100644 index 0000000..1a2e81c --- /dev/null +++ b/file/acp/index.php @@ -0,0 +1,9 @@ + + * @package be.bastelstu.chat + */ +require_once(__DIR__.'/global.php'); +wcf\system\request\RequestHandler::getInstance()->handle('chat', true); diff --git a/file/global.php b/file/global.php new file mode 100644 index 0000000..1e70c69 --- /dev/null +++ b/file/global.php @@ -0,0 +1,12 @@ + + * @package be.bastelstu.chat + */ +// include config +require_once(__DIR__.'/config.inc.php'); + +// include wcf +require_once(RELATIVE_WCF_DIR.'global.php'); diff --git a/file/icon/chat.svg b/file/icon/chat.svg index d9fd61b..6c6cd6f 100644 --- a/file/icon/chat.svg +++ b/file/icon/chat.svg @@ -2,9 +2,9 @@ Chat diff --git a/file/icon/chatColored.svg b/file/icon/chatColored.svg index ceaa23b..0d2d425 100644 --- a/file/icon/chatColored.svg +++ b/file/icon/chatColored.svg @@ -2,9 +2,9 @@ Chat diff --git a/file/index.php b/file/index.php new file mode 100644 index 0000000..f15d397 --- /dev/null +++ b/file/index.php @@ -0,0 +1,9 @@ + + * @package be.bastelstu.chat + */ +require_once(__DIR__.'/global.php'); +wcf\system\request\RequestHandler::getInstance()->handle('chat'); diff --git a/file/js/be.bastelstu.WCF.Chat.Log.coffee b/file/js/be.bastelstu.WCF.Chat.Log.coffee index 1515b58..13d77e6 100644 --- a/file/js/be.bastelstu.WCF.Chat.Log.coffee +++ b/file/js/be.bastelstu.WCF.Chat.Log.coffee @@ -2,13 +2,13 @@ # be.bastelstu.WCF.Chat.Log # # @author Tim Düsterhus -# @copyright 2010-2012 Tim Düsterhus +# @copyright 2010-2013 Tim Düsterhus # @license Creative Commons Attribution-NonCommercial-ShareAlike -# @package be.bastelstu.wcf.chat +# @package be.bastelstu.chat ### (($, window) -> - be.bastelstu.WCF.Chat.Log = be.bastelstu.WCF.Chat.extend + be.bastelstu.WCF.Chat.Log = be.bastelstu.Chat.extend init: (@chat) -> handleMessages: (messages) -> # Insert the messages @@ -27,7 +27,8 @@ if !$.wcfIsset 'timsChatLogDialog' container = $ '
    ' $('#content').append container - + + # TODO: Proper path $('#timsChatLogDialog').load 'http://127.0.0.1/wbb/wbb4/index.php/Chat/Log/1-Hauptchat/', () -> WCF.showDialog 'timsChatLogDialog', title: 'Log' diff --git a/file/js/be.bastelstu.WCF.Chat.coffee b/file/js/be.bastelstu.WCF.Chat.coffee index a9796f4..b5c1023 100644 --- a/file/js/be.bastelstu.WCF.Chat.coffee +++ b/file/js/be.bastelstu.WCF.Chat.coffee @@ -2,9 +2,9 @@ # be.bastelstu.WCF.Chat # # @author Tim Düsterhus -# @copyright 2010-2012 Tim Düsterhus +# @copyright 2010-2013 Tim Düsterhus # @license Creative Commons Attribution-NonCommercial-ShareAlike -# @package be.bastelstu.wcf.chat +# @package be.bastelstu.chat ### window.console ?= @@ -15,18 +15,17 @@ window.console ?= (($, window, _console) -> window.be ?= {} be.bastelstu ?= {} - be.bastelstu.WCF ?= {} console = log: (message) -> - _console.log '[be.bastelstu.WCF.Chat] '+message + _console.log '[be.bastelstu.Chat] '+message warn: (message) -> - _console.warn '[be.bastelstu.WCF.Chat] '+message + _console.warn '[be.bastelstu.Chat] '+message error: (message) -> - _console.error '[be.bastelstu.WCF.Chat] '+message + _console.error '[be.bastelstu.Chat] '+message - be.bastelstu.WCF.Chat = Class.extend + be.bastelstu.Chat = Class.extend # Tims Chat stops loading when this reaches zero # TODO: We need an explosion animation shields: 3 @@ -413,9 +412,10 @@ window.console ?= menu = $ '
      ' #menu.addClass 'timsChatUserMenu' menu.addClass 'dropdownMenu' - menu.append $ '
    • ' + WCF.Language.get('wcf.chat.query') + '
    • ' - menu.append $ '
    • ' + WCF.Language.get('wcf.chat.kick') + '
    • ' - menu.append $ '
    • ' + WCF.Language.get('wcf.chat.ban') + '
    • ' + menu.append $ '
    • ' + WCF.Language.get('chat.query') + '
    • ' + menu.append $ '
    • ' + WCF.Language.get('chat.kick') + '
    • ' + menu.append $ '
    • ' + WCF.Language.get('chat.ban') + '
    • ' + # TODO: SID and co menu.append $ '
    • ' + WCF.Language.get('wcf.chat.profile') + '
    • ' @events.userMenu.fire user, menu li.append menu @@ -485,8 +485,8 @@ window.console ?= # Desktop Notifications if typeof window.webkitNotifications isnt 'undefined' if window.webkitNotifications.checkPermission() is 0 - title = WCF.Language.get 'wcf.chat.notify.title' - icon = WCF.Icon.get 'be.bastelstu.wcf.chat.chat' + title = WCF.Language.get 'chat.notify.title' + icon = WCF.Icon.get 'be.bastelstu.chat.chat' content = message.username + message.separator + (if message.separator is ' ' then '' else ' ') + message.message notification = window.webkitNotifications.createNotification icon, title, content notification.show() diff --git a/file/lib/acp/form/ChatRoomAddForm.class.php b/file/lib/acp/form/RoomAddForm.class.php similarity index 83% rename from file/lib/acp/form/ChatRoomAddForm.class.php rename to file/lib/acp/form/RoomAddForm.class.php index cfb3c02..9948670 100644 --- a/file/lib/acp/form/ChatRoomAddForm.class.php +++ b/file/lib/acp/form/RoomAddForm.class.php @@ -8,21 +8,21 @@ * Shows the chatroom add form. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage acp.form */ -class ChatRoomAddForm extends \wcf\form\AbstractForm { +class RoomAddForm extends \wcf\form\AbstractForm { /** * @see \wcf\acp\page\AbstractPage::$activeMenuItem */ - public $activeMenuItem = 'wcf.acp.menu.link.chat.room.add'; + public $activeMenuItem = 'chat.acp.menu.link.room.add'; /** * @see \wcf\page\AbstractPage::$neededPermissions */ - public $neededPermissions = array('admin.content.chat.canAddRoom'); + public $neededPermissions = array('admin.chat.canAddRoom'); /** * Title of the room @@ -42,7 +42,7 @@ class ChatRoomAddForm extends \wcf\form\AbstractForm { * @see \wcf\page\AbstractPage::__construct() */ public function __run() { - $this->objectTypeID = \wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.wcf.chat.room'); + $this->objectTypeID = \wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.chat.room'); parent::__run(); } @@ -98,7 +98,7 @@ public function save() { $roomID = $returnValues['returnValues']->roomID; if (!I18nHandler::getInstance()->isPlainValue('title')) { - I18nHandler::getInstance()->save('title', 'wcf.chat.room.title'.$roomID, 'wcf.chat.room', \wcf\util\ChatUtil::getPackageID()); + I18nHandler::getInstance()->save('title', 'chat.room.title'.$roomID, 'chat.room', \chat\util\ChatUtil::getPackageID()); // update title $chatRoomEditor->update(array( @@ -107,11 +107,11 @@ public function save() { } if (!I18nHandler::getInstance()->isPlainValue('topic')) { - I18nHandler::getInstance()->save('topic', 'wcf.chat.room.topic'.$roomID, 'wcf.chat.room', \wcf\util\ChatUtil::getPackageID()); + I18nHandler::getInstance()->save('topic', 'chat.room.topic'.$roomID, 'chat.room', \chat\util\ChatUtil::getPackageID()); // update topic $chatRoomEditor->update(array( - 'topic' => 'wcf.chat.room.topic'.$roomID + 'topic' => 'chat.room.topic'.$roomID )); } diff --git a/file/lib/acp/form/ChatRoomEditForm.class.php b/file/lib/acp/form/RoomEditForm.class.php similarity index 64% rename from file/lib/acp/form/ChatRoomEditForm.class.php rename to file/lib/acp/form/RoomEditForm.class.php index 3f4fdad..e38ad42 100644 --- a/file/lib/acp/form/ChatRoomEditForm.class.php +++ b/file/lib/acp/form/RoomEditForm.class.php @@ -7,26 +7,26 @@ * Shows the chatroom edit form. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage acp.form */ -class ChatRoomEditForm extends ChatRoomAddForm { +class RoomEditForm extends RoomAddForm { /** * @see \wcf\page\AbstractPage::$templateName */ - public $templateName = 'chatRoomAdd'; + public $templateName = 'roomAdd'; /** * @see \wcf\acp\form\ACPForm::$activeMenuItem */ - public $activeMenuItem = 'wcf.acp.menu.link.chat.room.list'; + public $activeMenuItem = 'wcf.acp.menu.link.room.list'; /** * @see \wcf\page\AbstractPage::$neededPermissions */ - public $neededPermissions = array('admin.content.chat.canEditRoom'); + public $neededPermissions = array('admin.chat.canEditRoom'); /** * room id @@ -38,7 +38,7 @@ class ChatRoomEditForm extends ChatRoomAddForm { /** * room object * - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Room */ public $roomObj = null; @@ -49,7 +49,7 @@ public function readParameters() { parent::readParameters(); if (isset($_REQUEST['id'])) $this->roomID = intval($_REQUEST['id']); - $this->roomObj = new \wcf\data\chat\room\ChatRoom($this->roomID); + $this->roomObj = new \chat\data\room\Room($this->roomID); if (!$this->roomObj->roomID) { throw new \wcf\system\exception\IllegalLinkException(); } @@ -59,31 +59,31 @@ public function readParameters() { * @see \wcf\form\IForm::save() */ public function save() { - ACPForm::save(); + \wcf\form\AbstractForm::save(); - $this->title = 'wcf.chat.room.title'.$this->roomObj->roomID; + $this->title = 'chat.room.title'.$this->roomObj->roomID; if (I18nHandler::getInstance()->isPlainValue('title')) { I18nHandler::getInstance()->remove($this->title); $this->title = I18nHandler::getInstance()->getValue('title'); } else { - I18nHandler::getInstance()->save('title', $this->title, 'wcf.chat.room', \wcf\util\ChatUtil::getPackageID()); + I18nHandler::getInstance()->save('title', $this->title, 'chat.room', \chat\util\ChatUtil::getPackageID()); } - $this->topic = 'wcf.chat.room.topic'.$this->roomObj->roomID; + $this->topic = 'chat.room.topic'.$this->roomObj->roomID; if (I18nHandler::getInstance()->isPlainValue('topic')) { I18nHandler::getInstance()->remove($this->topic); $this->topic = I18nHandler::getInstance()->getValue('topic'); } else { - I18nHandler::getInstance()->save('topic', $this->topic, 'wcf.chat.room', \wcf\util\ChatUtil::getPackageID()); + I18nHandler::getInstance()->save('topic', $this->topic, 'chat.room', \chat\util\ChatUtil::getPackageID()); } \wcf\system\acl\ACLHandler::getInstance()->save($this->roomID, $this->objectTypeID); - \wcf\system\chat\permission\ChatPermissionHandler::clearCache(); + \chat\system\permission\PermissionHandler::clearCache(); // update room - $this->objectAction = new \wcf\data\chat\room\ChatRoomAction(array($this->roomID), 'update', array('data' => array( + $this->objectAction = new \chat\data\room\RoomAction(array($this->roomID), 'update', array('data' => array( 'title' => $this->title, 'topic' => $this->topic ))); @@ -104,8 +104,8 @@ public function readData() { parent::readData(); if (!count($_POST)) { - I18nHandler::getInstance()->setOptions('title', \wcf\util\ChatUtil::getPackageID(), $this->roomObj->title, 'wcf.chat.room.title\d+'); - I18nHandler::getInstance()->setOptions('topic', \wcf\util\ChatUtil::getPackageID(), $this->roomObj->topic, 'wcf.chat.room.topic\d+'); + I18nHandler::getInstance()->setOptions('title', \chat\util\ChatUtil::getPackageID(), $this->roomObj->title, 'chat.room.title\d+'); + I18nHandler::getInstance()->setOptions('topic', \chat\util\ChatUtil::getPackageID(), $this->roomObj->topic, 'chat.room.topic\d+'); $this->title = $this->roomObj->title; $this->topic = $this->roomObj->topic; diff --git a/file/lib/acp/page/ChatRoomListPage.class.php b/file/lib/acp/page/RoomListPage.class.php similarity index 66% rename from file/lib/acp/page/ChatRoomListPage.class.php rename to file/lib/acp/page/RoomListPage.class.php index a5ca3bd..ba79297 100644 --- a/file/lib/acp/page/ChatRoomListPage.class.php +++ b/file/lib/acp/page/RoomListPage.class.php @@ -5,29 +5,29 @@ * Lists available chatrooms. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage acp.page */ -class ChatRoomListPage extends \wcf\page\MultipleLinkPage { +class RoomListPage extends \wcf\page\MultipleLinkPage { /** * @see \wcf\page\AbstractPage::$activeMenuItem */ - public $activeMenuItem = 'wcf.acp.menu.link.chat.room.list'; + public $activeMenuItem = 'chat.acp.menu.link.room.list'; /** * @see \wcf\page\AbstractPage::$neededPermissions */ public $neededPermissions = array( - 'admin.content.chat.canEditRoom', - 'admin.content.chat.canDeleteRoom' + 'admin.chat.canEditRoom', + 'admin.chat.canDeleteRoom' ); /** * @see \wcf\page\MultipleLinkPage::$objectListClassName */ - public $objectListClassName = '\wcf\data\chat\room\ChatRoomList'; + public $objectListClassName = '\chat\data\room\RoomList'; /** * @see \wcf\page\MultipleLinkPage::$sortField diff --git a/file/lib/action/ChatLeaveAction.class.php b/file/lib/action/LeaveAction.class.php similarity index 77% rename from file/lib/action/ChatLeaveAction.class.php rename to file/lib/action/LeaveAction.class.php index bf30688..778f1e3 100644 --- a/file/lib/action/ChatLeaveAction.class.php +++ b/file/lib/action/LeaveAction.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage action */ -class ChatLeaveAction extends AbstractAction { +class LeaveAction extends \wcf\action\AbstractAction { /** * @see wcf\action\AbstractAction::$loginRequired */ @@ -32,7 +32,7 @@ class ChatLeaveAction extends AbstractAction { /** * The current room. * - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Room */ public $room = null; @@ -66,24 +66,24 @@ public function __run() { public function execute() { parent::execute(); - $this->userData['roomID'] = \wcf\util\ChatUtil::readUserData('roomID'); + $this->userData['roomID'] = \chat\util\ChatUtil::readUserData('roomID'); - $cache = chat\room\ChatRoom::getCache(); + $cache = data\room\Room::getCache(); if (!isset($cache[$this->userData['roomID']])) throw new IllegalLinkException(); $this->room = $cache[$this->userData['roomID']]; if (!$this->room->canEnter()) throw new \wcf\system\exception\PermissionDeniedException(); if (CHAT_DISPLAY_JOIN_LEAVE) { - $this->userData['color'] = \wcf\util\ChatUtil::readUserData('color'); + $this->userData['color'] = \chat\util\ChatUtil::readUserData('color'); // leave message - $messageAction = new chat\message\ChatMessageAction(array(), 'create', array( + $messageAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $this->room->roomID, 'sender' => WCF::getUser()->userID, 'username' => WCF::getUser()->username, 'time' => TIME_NOW, - 'type' => chat\message\ChatMessage::TYPE_LEAVE, + 'type' => data\message\Message::TYPE_LEAVE, 'message' => '', 'color1' => $this->userData['color'][1], 'color2' => $this->userData['color'][2] @@ -93,7 +93,7 @@ public function execute() { } // set current room to null - \wcf\util\ChatUtil::writeUserData(array('roomID' => null)); + \chat\util\ChatUtil::writeUserData(array('roomID' => null)); $this->executed(); header("HTTP/1.0 204 No Content"); diff --git a/file/lib/data/chat/message/ChatMessage.class.php b/file/lib/data/message/Message.class.php old mode 100755 new mode 100644 similarity index 88% rename from file/lib/data/chat/message/ChatMessage.class.php rename to file/lib/data/message/Message.class.php index 728e894..63df870 --- a/file/lib/data/chat/message/ChatMessage.class.php +++ b/file/lib/data/message/Message.class.php @@ -1,5 +1,5 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.message + * @package be.bastelstu.chat + * @subpackage data.message */ -class ChatMessage extends \wcf\data\DatabaseObject { +class Message extends \wcf\data\DatabaseObject { /** * @see \wcf\data\DatabaseObject::$databaseTableName */ - protected static $databaseTableName = 'chat_message'; + protected static $databaseTableName = 'message'; /** * @see \wcf\data\DatabaseObject::$databaseTableIndexName @@ -45,7 +45,7 @@ class ChatMessage extends \wcf\data\DatabaseObject { protected static $users = array(); /** - * @see \wcf\data\chat\message\ChatMessage::getFormattedMessage() + * @see \chat\data\\message\Message::getFormattedMessage() */ public function __toString() { return $this->getFormattedMessage(); @@ -65,11 +65,11 @@ public function getFormattedMessage($outputType = 'text/html') { case self::TYPE_LEAVE: case self::TYPE_BACK: case self::TYPE_AWAY: - $message = WCF::getLanguage()->getDynamicVariable('wcf.chat.message.'.$this->type, unserialize($message) ?: array()); + $message = WCF::getLanguage()->getDynamicVariable('chat.message.'.$this->type, unserialize($message) ?: array()); break; case self::TYPE_MODERATE: $message = unserialize($message); - $message = WCF::getLanguage()->getDynamicVariable('wcf.chat.message.'.$this->type.'.'.$message['type'], $message ?: array()); + $message = WCF::getLanguage()->getDynamicVariable('chat.message.'.$this->type.'.'.$message['type'], $message ?: array()); $message = self::replaceUserLink($message, $outputType); break; case self::TYPE_WHISPER: @@ -110,11 +110,11 @@ public function getFormattedMessage($outputType = 'text/html') { */ public function getUsername($colored = false) { $username = $this->username; - if ($this->type == self::TYPE_INFORMATION) return WCF::getLanguage()->get('wcf.chat.information'); - if ($this->type == self::TYPE_ERROR) return WCF::getLanguage()->get('wcf.chat.error'); + if ($this->type == self::TYPE_INFORMATION) return WCF::getLanguage()->get('chat.general.information'); + if ($this->type == self::TYPE_ERROR) return WCF::getLanguage()->get('chat.general.error'); if ($colored) { - $username = \wcf\util\ChatUtil::gradient($username, $this->color1, $this->color2); + $username = \chat\util\ChatUtil::gradient($username, $this->color1, $this->color2); } if ($this->type == self::TYPE_WHISPER) { diff --git a/file/lib/data/chat/message/ChatMessageAction.class.php b/file/lib/data/message/MessageAction.class.php similarity index 75% rename from file/lib/data/chat/message/ChatMessageAction.class.php rename to file/lib/data/message/MessageAction.class.php index b077463..7f918ce 100644 --- a/file/lib/data/chat/message/ChatMessageAction.class.php +++ b/file/lib/data/message/MessageAction.class.php @@ -1,20 +1,20 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.message + * @package be.bastelstu.chat + * @subpackage chat.message */ -class ChatMessageAction extends \wcf\data\AbstractDatabaseObjectAction { +class MessageAction extends \wcf\data\AbstractDatabaseObjectAction { /** * @see \wcf\data\AbstractDatabaseObjectAction::$className */ - protected $className = '\wcf\data\chat\message\ChatMessageEditor'; + protected $className = '\chat\data\message\MessageEditor'; /** * Removes old messages. diff --git a/file/lib/data/chat/message/ChatMessageEditor.class.php b/file/lib/data/message/MessageEditor.class.php similarity index 52% rename from file/lib/data/chat/message/ChatMessageEditor.class.php rename to file/lib/data/message/MessageEditor.class.php index 8d84bbd..7fae0cf 100644 --- a/file/lib/data/chat/message/ChatMessageEditor.class.php +++ b/file/lib/data/message/MessageEditor.class.php @@ -1,28 +1,28 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.message + * @package be.bastelstu.chat + * @subpackage chat.message */ -class ChatMessageEditor extends \wcf\data\DatabaseObjectEditor { +class MessageEditor extends \wcf\data\DatabaseObjectEditor { /** * @see \wcf\data\DatabaseObjectDecorator::$baseClass */ - protected static $baseClass = '\wcf\data\chat\message\ChatMessage'; + protected static $baseClass = '\chat\data\message\Message'; /** * Notify the Push-Server. */ public static function create(array $parameters = array()) { try { - if (\wcf\util\ChatUtil::nodePushRunning()) { - $sock = stream_socket_client('unix://'.WCF_DIR.'acp/be.bastelstu.wcf.chat.nodePush/data.sock', $errno, $errstr, 1); + if (\chat\util\ChatUtil::nodePushRunning()) { + $sock = stream_socket_client('unix://'.CHAT_DIR.'acp/be.bastelstu.chat.nodePush/data.sock', $errno, $errstr, 1); fclose($sock); } } diff --git a/file/lib/data/chat/message/ChatMessageList.class.php b/file/lib/data/message/MessageList.class.php similarity index 67% rename from file/lib/data/chat/message/ChatMessageList.class.php rename to file/lib/data/message/MessageList.class.php index 94c718b..ec4fed8 100644 --- a/file/lib/data/chat/message/ChatMessageList.class.php +++ b/file/lib/data/message/MessageList.class.php @@ -1,29 +1,29 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.room + * @package be.bastelstu.chat + * @subpackage chat.room */ -class ChatMessageList extends \wcf\data\DatabaseObjectList { +class MessageList extends \wcf\data\DatabaseObjectList { /** * @see \wcf\data\DatabaseObjectList::$className */ - public $className = 'wcf\data\chat\message\ChatMessage'; + public $className = 'chat\data\message\Message'; /** * Reads the newest messages for the given room. * - * @param \wcf\data\chat\room\ChatRoom $room - * @param integer $number - * @return array<\wcf\data\chat\message\ChatMessage> + * @param \chat\data\room\Room $room + * @param integer $number + * @return array<\chat\data\message\Message> */ - public static function getNewestMessages(\wcf\data\chat\room\ChatRoom $room, $number = CHAT_LASTMESSAGES) { + public static function getNewestMessages(\chat\data\room\Room $room, $number = CHAT_LASTMESSAGES) { $messageList = new static(); $messageList->sqlOrderBy = "chat_message.messageID DESC"; $messageList->sqlLimit = $number; @@ -42,11 +42,11 @@ public static function getNewestMessages(\wcf\data\chat\room\ChatRoom $room, $nu /** * Reads the messages since the given message-id for the given room. * - * @param \wcf\data\chat\room\ChatRoom $room - * @param integer $since - * @return array<\wcf\data\chat\message\ChatMessage> + * @param \chat\data\room\Room $room + * @param integer $since + * @return array<\chat\data\message\Message> */ - public static function getMessagesSince(\wcf\data\chat\room\ChatRoom $room, $since) { + public static function getMessagesSince(\chat\data\room\Room $room, $since) { $messageList = new static(); $messageList->sqlOrderBy = "chat_message.messageID ASC"; $messageList->getConditionBuilder()->add('chat_message.messageID > ?', array($since)); diff --git a/file/lib/data/chat/room/ChatRoom.class.php b/file/lib/data/room/Room.class.php similarity index 71% rename from file/lib/data/chat/room/ChatRoom.class.php rename to file/lib/data/room/Room.class.php index de42c30..91ff38f 100644 --- a/file/lib/data/chat/room/ChatRoom.class.php +++ b/file/lib/data/room/Room.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.room + * @package be.bastelstu.chat + * @subpackage data.room */ -class ChatRoom extends \wcf\data\DatabaseObject implements \wcf\system\request\IRouteController { +class Room extends \wcf\data\DatabaseObject implements \wcf\system\request\IRouteController { /** * @see \wcf\data\DatabaseObject::$databaseTableName */ - protected static $databaseTableName = 'chat_room'; + protected static $databaseTableName = 'room'; /** * @see \wcf\data\DatabaseObject::$databaseTableIndexName @@ -47,20 +47,20 @@ public function __toString() { public function canEnter(\wcf\data\user\User $user = null) { if ($user === null) $user = WCF::getUser(); - $ph = new \wcf\system\chat\permission\ChatPermissionHandler($user); - $suspensions = ChatSuspension::getSuspensionsForUser($user); + $ph = new \chat\system\permission\PermissionHandler($user); + $suspensions = Suspension::getSuspensionsForUser($user); $canEnter = $ph->getPermission($this, 'user.canEnter'); // room suspension - if ($canEnter && isset($suspensions[$this->roomID][ChatSuspension::TYPE_BAN])) { - if ($suspensions[$this->roomID][ChatSuspension::TYPE_BAN]['time'] > TIME_NOW) { + if ($canEnter && isset($suspensions[$this->roomID][Suspension::TYPE_BAN])) { + if ($suspensions[$this->roomID][Suspension::TYPE_BAN]['time'] > TIME_NOW) { $canEnter = false; } } // global suspension - if ($canEnter && isset($suspensions[null][ChatSuspension::TYPE_BAN])) { - if ($suspensions[null][ChatSuspension::TYPE_BAN]['time'] > TIME_NOW) { + if ($canEnter && isset($suspensions[null][Suspension::TYPE_BAN])) { + if ($suspensions[null][Suspension::TYPE_BAN]['time'] > TIME_NOW) { $canEnter = false; } } @@ -77,20 +77,20 @@ public function canEnter(\wcf\data\user\User $user = null) { public function canWrite(\wcf\data\user\User $user = null) { if ($user === null) $user = WCF::getUser(); - $ph = new \wcf\system\chat\permission\ChatPermissionHandler($user); - $suspensions = ChatSuspension::getSuspensionsForUser($user); + $ph = new \chat\system\permission\PermissionHandler($user); + $suspensions = Suspension::getSuspensionsForUser($user); $canWrite = $ph->getPermission($this, 'user.canWrite'); // room suspension - if ($canWrite && isset($suspensions[$this->roomID][ChatSuspension::TYPE_MUTE])) { - if ($suspensions[$this->roomID][ChatSuspension::TYPE_MUTE]['time'] > TIME_NOW) { + if ($canWrite && isset($suspensions[$this->roomID][Suspension::TYPE_MUTE])) { + if ($suspensions[$this->roomID][Suspension::TYPE_MUTE]['time'] > TIME_NOW) { $canWrite = false; } } // global suspension - if ($canWrite && isset($suspensions[null][ChatSuspension::TYPE_MUTE])) { - if ($suspensions[null][ChatSuspension::TYPE_MUTE]['time'] > TIME_NOW) { + if ($canWrite && isset($suspensions[null][Suspension::TYPE_MUTE])) { + if ($suspensions[null][Suspension::TYPE_MUTE]['time'] > TIME_NOW) { $canWrite = false; } } @@ -123,11 +123,11 @@ public function countUsers() { public static function getCache() { if (self::$cache === null) { CacheHandler::getInstance()->addResource( - 'chatrooms', - WCF_DIR.'cache/cache.chatrooms.php', - '\wcf\system\cache\builder\ChatRoomCacheBuilder' + 'chatRooms', + CHAT_DIR.'cache/cache.rooms.php', + '\chat\system\cache\builder\RoomCacheBuilder' ); - self::$cache = CacheHandler::getInstance()->get('chatrooms'); + self::$cache = CacheHandler::getInstance()->get('chatRooms'); } return self::$cache; diff --git a/file/lib/data/chat/room/ChatRoomAction.class.php b/file/lib/data/room/RoomAction.class.php similarity index 82% rename from file/lib/data/chat/room/ChatRoomAction.class.php rename to file/lib/data/room/RoomAction.class.php index 6549e20..764dddf 100644 --- a/file/lib/data/chat/room/ChatRoomAction.class.php +++ b/file/lib/data/room/RoomAction.class.php @@ -1,31 +1,31 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.room + * @package be.bastelstu.chat + * @subpackage data.room */ -class ChatRoomAction extends \wcf\data\AbstractDatabaseObjectAction implements \wcf\data\ISortableAction { +class RoomAction extends \wcf\data\AbstractDatabaseObjectAction implements \wcf\data\ISortableAction { /** * @see \wcf\data\AbstractDatabaseObjectAction::$className */ - protected $className = '\wcf\data\chat\room\ChatRoomEditor'; + protected $className = '\chat\data\room\RoomEditor'; /** * @see \wcf\data\AbstractDatabaseObjectAction::$permissionsDelete */ - protected $permissionsDelete = array('admin.content.chat.canDeleteRoom'); + protected $permissionsDelete = array('admin.chat.canDeleteRoom'); /** * @see \wcf\data\AbstractDatabaseObjectAction::$permissionsUpdate */ - protected $permissionsUpdate = array('admin.content.chat.canEditRoom'); + protected $permissionsUpdate = array('admin.chat.canEditRoom'); /** * Fixes create to append new rooms. @@ -40,7 +40,7 @@ public function create() { $stmt = WCF::getDB()->prepareStatement($sql); $stmt->execute(); - $editor = new ChatRoomEditor($room); + $editor = new RoomEditor($room); $editor->update(array('position' => ($stmt->fetchColumn() + 1))); WCF::getDB()->commitTransaction(); @@ -100,7 +100,7 @@ public function validateUpdatePosition() { * @see wcf\data\ISortableAction */ public function updatePosition() { - $roomList = new \wcf\data\chat\room\ChatRoomList(); + $roomList = new RoomList(); $roomList->sqlOrderBy = "chat_room.position"; $roomList->readObjects(); @@ -109,7 +109,7 @@ public function updatePosition() { foreach ($this->parameters['data']['structure'][0] as $roomID) { $room = $roomList->search($roomID); if ($room === null) continue; - $editor = new ChatRoomEditor($room); + $editor = new RoomEditor($room); $editor->update(array('position' => $i++)); } WCF::getDB()->commitTransaction(); diff --git a/file/lib/data/chat/room/ChatRoomEditor.class.php b/file/lib/data/room/RoomEditor.class.php similarity index 64% rename from file/lib/data/chat/room/ChatRoomEditor.class.php rename to file/lib/data/room/RoomEditor.class.php index 2dc5c4c..6b1e4ab 100644 --- a/file/lib/data/chat/room/ChatRoomEditor.class.php +++ b/file/lib/data/room/RoomEditor.class.php @@ -1,21 +1,21 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.room + * @package be.bastelstu.chat + * @subpackage data.room */ -class ChatRoomEditor extends \wcf\data\DatabaseObjectEditor implements \wcf\data\IEditableCachedObject { +class RoomEditor extends \wcf\data\DatabaseObjectEditor implements \wcf\data\IEditableCachedObject { /** * @see \wcf\data\DatabaseObjectDecorator::$baseClass */ - protected static $baseClass = '\wcf\data\chat\room\ChatRoom'; + protected static $baseClass = '\chat\data\room\Room'; /** @@ -24,21 +24,21 @@ class ChatRoomEditor extends \wcf\data\DatabaseObjectEditor implements \wcf\data public static function deleteAll(array $objectIDs = array()) { WCF::getDB()->beginTransaction(); foreach ($objectIDs as $objectID) { - \wcf\system\language\I18nHandler::getInstance()->remove('wcf.chat.room.title'.$objectID); - \wcf\system\language\I18nHandler::getInstance()->remove('wcf.chat.room.topic'.$objectID); + \wcf\system\language\I18nHandler::getInstance()->remove('chat.room.title'.$objectID); + \wcf\system\language\I18nHandler::getInstance()->remove('chat.room.topic'.$objectID); } $sql = "SELECT position FROM - wcf".WCF_N."_chat_room + chat".WCF_N."_room WHERE roomID = ? FOR UPDATE"; $select = WCF::getDB()->prepareStatement($sql); $sql = "UPDATE - wcf".WCF_N."_chat_room + chat".WCF_N."_room SET position = position - 1 WHERE @@ -59,6 +59,6 @@ public static function deleteAll(array $objectIDs = array()) { * Clears the room cache. */ public static function resetCache() { - \wcf\system\cache\CacheHandler::getInstance()->clear(WCF_DIR.'cache', 'cache.chatrooms.php'); + \wcf\system\cache\CacheHandler::getInstance()->clear(CHAT_DIR.'cache', 'cache.rooms.php'); } } diff --git a/file/lib/data/chat/room/ChatRoomList.class.php b/file/lib/data/room/RoomList.class.php similarity index 58% rename from file/lib/data/chat/room/ChatRoomList.class.php rename to file/lib/data/room/RoomList.class.php index 161eed8..366b6c1 100644 --- a/file/lib/data/chat/room/ChatRoomList.class.php +++ b/file/lib/data/room/RoomList.class.php @@ -5,14 +5,14 @@ * Represents a list of chat rooms. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.room + * @package be.bastelstu.chat + * @subpackage data.room */ -class ChatRoomList extends \wcf\data\DatabaseObjectList { +class RoomList extends \wcf\data\DatabaseObjectList { /** * @see \wcf\data\DatabaseObjectList::$className */ - public $className = 'wcf\data\chat\room\ChatRoom'; + public $className = 'chat\data\room\Room'; } diff --git a/file/lib/data/chat/suspension/ChatSuspension.class.php b/file/lib/data/suspension/Suspension.class.php similarity index 66% rename from file/lib/data/chat/suspension/ChatSuspension.class.php rename to file/lib/data/suspension/Suspension.class.php index 9dc5ec5..6f959d2 100644 --- a/file/lib/data/chat/suspension/ChatSuspension.class.php +++ b/file/lib/data/suspension/Suspension.class.php @@ -1,21 +1,21 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.suspension + * @package be.bastelstu.chat + * @subpackage data.suspension */ -class ChatSuspension extends \wcf\data\DatabaseObject { +class Suspension extends \wcf\data\DatabaseObject { /** * @see \wcf\data\DatabaseObject::$databaseTableName */ - protected static $databaseTableName = 'chat_suspension'; + protected static $databaseTableName = 'suspension'; /** * @see \wcf\data\DatabaseObject::$databaseTableIndexName @@ -27,12 +27,12 @@ class ChatSuspension extends \wcf\data\DatabaseObject { public static function getSuspensionsForUser(\wcf\data\user\User $user = null) { if ($user === null) $user = WCF::getUser(); - $suspensions = \wcf\util\ChatUtil::readUserData('suspensions', $user); + $suspensions = \chat\util\ChatUtil::readUserData('suspensions', $user); if ($suspensions === null) { $sql = "SELECT * FROM - wcf".WCF_N."_chat_suspension + chat".WCF_N."_suspension WHERE userID = ? AND time > ?"; @@ -44,7 +44,7 @@ public static function getSuspensionsForUser(\wcf\data\user\User $user = null) { $suspensions[$row['roomID']][$row['type']] = $row; } - \wcf\util\ChatUtil::writeUserData(array('suspensions' => $suspensions), $user); + \chat\util\ChatUtil::writeUserData(array('suspensions' => $suspensions), $user); } return $suspensions; @@ -53,16 +53,16 @@ public static function getSuspensionsForUser(\wcf\data\user\User $user = null) { /** * Returns the appropriate suspension for user, room and type. * - * @param \wcf\data\user\User $user - * @param \wcf\data\chat\room\ChatRoom $room - * @param integer $type - * @return \wcf\data\chat\suspension\ChatSuspension + * @param \wcf\data\user\User $user + * @param \chat\data\room\Room $room + * @param integer $type + * @return \chat\data\suspension\Suspension */ - public static function getSuspensionByUserRoomAndType(\wcf\data\user\User $user, \wcf\data\chat\room\ChatRoom $room, $type) { + public static function getSuspensionByUserRoomAndType(\wcf\data\user\User $user, \chat\data\room\Room $room, $type) { $sql = "SELECT * FROM - wcf".WCF_N."_chat_suspension + chat".WCF_N."_suspension WHERE userID = ? AND roomID = ? diff --git a/file/lib/data/chat/suspension/ChatSuspensionAction.class.php b/file/lib/data/suspension/SuspensionAction.class.php similarity index 74% rename from file/lib/data/chat/suspension/ChatSuspensionAction.class.php rename to file/lib/data/suspension/SuspensionAction.class.php index 774aaa0..e68fa06 100644 --- a/file/lib/data/chat/suspension/ChatSuspensionAction.class.php +++ b/file/lib/data/suspension/SuspensionAction.class.php @@ -1,20 +1,20 @@ - * @package be.bastelstu.wcf.chat - * @subpackage data.chat.suspension + * @package be.bastelstu.chat + * @subpackage data.suspension */ -class ChatSuspensionAction extends \wcf\data\AbstractDatabaseObjectAction { +class SuspensionAction extends \wcf\data\AbstractDatabaseObjectAction { /** * @see \wcf\data\AbstractDatabaseObjectAction::$className */ - protected $className = '\wcf\data\chat\suspension\ChatSuspensionEditor'; + protected $className = '\chat\data\suspension\SuspensionEditor'; /** * Deletes expired suspensions. diff --git a/file/lib/data/chat/suspension/ChatSuspensionEditor.class.php b/file/lib/data/suspension/SuspensionEditor.class.php similarity index 64% rename from file/lib/data/chat/suspension/ChatSuspensionEditor.class.php rename to file/lib/data/suspension/SuspensionEditor.class.php index 382d8e2..e7df46a 100644 --- a/file/lib/data/chat/suspension/ChatSuspensionEditor.class.php +++ b/file/lib/data/suspension/SuspensionEditor.class.php @@ -1,21 +1,21 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage data.chat.suspension */ -class ChatSuspensionEditor extends \wcf\data\DatabaseObjectEditor implements \wcf\data\IEditableCachedObject { +class SuspensionEditor extends \wcf\data\DatabaseObjectEditor implements \wcf\data\IEditableCachedObject { /** * @see \wcf\data\DatabaseObjectDecorator::$baseClass */ - protected static $baseClass = '\wcf\data\chat\suspension\ChatSuspension'; + protected static $baseClass = '\chat\data\suspension\Suspension'; /** * Clears the suspension cache. diff --git a/file/lib/form/ChatForm.class.php b/file/lib/form/ChatForm.class.php index dc816c0..d5c8f87 100644 --- a/file/lib/form/ChatForm.class.php +++ b/file/lib/form/ChatForm.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage form */ class ChatForm extends AbstractForm { @@ -98,11 +98,11 @@ public function __run() { * @see \wcf\page\IPage::readData() */ public function readData() { - $this->userData['color'] = \wcf\util\ChatUtil::readUserData('color'); - $this->userData['roomID'] = \wcf\util\ChatUtil::readUserData('roomID'); - $this->userData['away'] = \wcf\util\ChatUtil::readUserData('away'); + $this->userData['color'] = \chat\util\ChatUtil::readUserData('color'); + $this->userData['roomID'] = \chat\util\ChatUtil::readUserData('roomID'); + $this->userData['away'] = \chat\util\ChatUtil::readUserData('away'); - $cache = chat\room\ChatRoom::getCache(); + $cache = data\room\Room::getCache(); if (!isset($cache[$this->userData['roomID']])) throw new \wcf\system\exception\IllegalLinkException(); $this->room = $cache[$this->userData['roomID']]; @@ -142,15 +142,15 @@ public function validate() { public function save() { parent::save(); - \wcf\util\ChatUtil::writeUserData(array('away' => null)); + \chat\util\ChatUtil::writeUserData(array('away' => null)); $commandHandler = new \wcf\system\chat\command\CommandHandler($this->message); if ($commandHandler->isCommand()) { try { $command = $commandHandler->loadCommand(); - if ($command->enableSmilies != \wcf\system\chat\command\ICommand::SETTING_USER) $this->enableSmilies = $command->enableSmilies; + if ($command->enableSmilies != \chat\system\command\ICommand::SETTING_USER) $this->enableSmilies = $command->enableSmilies; $this->enableHTML = $command->enableHTML; - if ($command->enableBBCodes != \wcf\system\chat\command\ICommand::SETTING_USER) $this->enableBBCodes = $command->enableBBCodes; + if ($command->enableBBCodes != \chat\system\command\ICommand::SETTING_USER) $this->enableBBCodes = $command->enableBBCodes; $type = $command->getType(); $this->message = $command->getMessage(); @@ -158,40 +158,40 @@ public function save() { } catch (\wcf\system\chat\command\NotFoundException $e) { $this->message = WCF::getLanguage()->get('wcf.chat.error.notFound'); - $type = chat\message\ChatMessage::TYPE_ERROR; + $type = data\message\Message::TYPE_ERROR; $receiver = WCF::getUser()->userID; } catch (\wcf\system\chat\command\UserNotFoundException $e) { $this->message = WCF::getLanguage()->getDynamicVariable('wcf.chat.error.userNotFound', array('username' => $e->getUsername())); - $type = chat\message\ChatMessage::TYPE_ERROR; + $type = data\message\Message::TYPE_ERROR; $receiver = WCF::getUser()->userID; $this->enableHTML = 1; } catch (\wcf\system\exception\PermissionDeniedException $e) { $this->message = WCF::getLanguage()->get('wcf.chat.error.permissionDenied'); - $type = chat\message\ChatMessage::TYPE_ERROR; + $type = data\message\Message::TYPE_ERROR; $receiver = WCF::getUser()->userID; } catch (\Exception $e) { $this->message = WCF::getLanguage()->get('wcf.chat.error.exception'); - $type = chat\message\ChatMessage::TYPE_ERROR; + $type = data\message\Message::TYPE_ERROR; $receiver = WCF::getUser()->userID; } } else { - $type = chat\message\ChatMessage::TYPE_NORMAL; + $type = data\message\Message::TYPE_NORMAL; $receiver = null; } // mark user as back if ($this->userData['away'] !== null) { - $messageAction = new chat\message\ChatMessageAction(array(), 'create', array( + $messageAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $this->room->roomID, 'sender' => WCF::getUser()->userID, 'username' => WCF::getUser()->username, 'time' => TIME_NOW, - 'type' => chat\message\ChatMessage::TYPE_BACK, + 'type' => data\message\Message::TYPE_BACK, 'message' => '', 'color1' => $this->userData['color'][1], 'color2' => $this->userData['color'][2] @@ -200,7 +200,7 @@ public function save() { $messageAction->executeAction(); } - $this->objectAction = new chat\message\ChatMessageAction(array(), 'create', array( + $this->objectAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $this->room->roomID, 'sender' => WCF::getUser()->userID, @@ -219,7 +219,7 @@ public function save() { $this->objectAction->executeAction(); // add activity points - \wcf\system\user\activity\point\UserActivityPointHandler::getInstance()->fireEvent('be.bastelstu.wcf.chat.activityPointEvent.message', TIME_NOW, WCF::getUser()->userID); + \wcf\system\user\activity\point\UserActivityPointHandler::getInstance()->fireEvent('be.bastelstu.chat.activityPointEvent.message', TIME_NOW, WCF::getUser()->userID); $this->saved(); } diff --git a/file/lib/page/ChatMessagePage.class.php b/file/lib/page/ChatMessagePage.class.php index f8d7150..f35c00c 100644 --- a/file/lib/page/ChatMessagePage.class.php +++ b/file/lib/page/ChatMessagePage.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage page */ -class ChatMessagePage extends AbstractPage { +class ChatMessagePage extends \wcf\page\AbstractPage { /** * @see wcf\page\AbstractPage::$loginRequired */ @@ -39,7 +39,7 @@ class ChatMessagePage extends AbstractPage { /** * The room the user joined. * - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Room */ public $room = null; @@ -82,15 +82,15 @@ public function readData() { $this->readMessages(); $this->users = $this->room->getUsers(); - $deadUsers = \wcf\util\ChatUtil::getDiedUsers(); + $deadUsers = \chat\util\ChatUtil::getDiedUsers(); foreach ($deadUsers as $deadUser) { if (!$deadUser) continue; $user = new \wcf\data\user\User($deadUser['userID']); if (CHAT_DISPLAY_JOIN_LEAVE) { - $userData['color'] = \wcf\util\ChatUtil::readUserData('color', $user); + $userData['color'] = \chat\util\ChatUtil::readUserData('color', $user); - $messageAction = new chat\message\ChatMessageAction(array(), 'create', array( + $messageAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $deadUser['roomID'], 'sender' => $user->userID, @@ -104,7 +104,7 @@ public function readData() { )); $messageAction->executeAction(); } - \wcf\util\ChatUtil::writeUserData(array('roomID' => null), $user); + \chat\util\ChatUtil::writeUserData(array('roomID' => null), $user); } } @@ -112,7 +112,7 @@ public function readData() { * Fetches the new messages */ public function readMessages() { - $this->messages = chat\message\ChatMessageList::getMessagesSince($this->room, \wcf\util\ChatUtil::readUserData('lastSeen')); + $this->messages = data\message\MessageList::getMessagesSince($this->room, \chat\util\ChatUtil::readUserData('lastSeen')); // update last seen message $sql = "SELECT @@ -122,7 +122,7 @@ public function readMessages() { $stmt = WCF::getDB()->prepareStatement($sql); $stmt->execute(); - \wcf\util\ChatUtil::writeUserData(array( + \chat\util\ChatUtil::writeUserData(array( 'lastSeen' => $stmt->fetchColumn(), 'lastActivity' => TIME_NOW )); @@ -132,8 +132,8 @@ public function readMessages() { * Initializes the room databaseobject. */ public function readRoom() { - $roomID = \wcf\util\ChatUtil::readUserData('roomID'); - $cache = chat\room\ChatRoom::getCache(); + $roomID = \chat\util\ChatUtil::readUserData('roomID'); + $cache = data\room\Room::getCache(); if (!isset($cache[$roomID])) throw new IllegalLinkException(); $this->room = $cache[$roomID]; diff --git a/file/lib/page/ChatPage.class.php b/file/lib/page/ChatPage.class.php index f9b57ef..3176695 100644 --- a/file/lib/page/ChatPage.class.php +++ b/file/lib/page/ChatPage.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage page */ -class ChatPage extends AbstractPage { +class ChatPage extends \wcf\page\AbstractPage { /** * The version of this installation of Tims Chat 3. * @@ -39,14 +39,14 @@ class ChatPage extends AbstractPage { /** * The last X messages for the current room. * - * @var array<\wcf\data\chat\message\ChatMessage> + * @var array<\chat\data\message\Message> */ public $newestMessages = array(); /** * The current room. * - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Room */ public $room = null; @@ -60,7 +60,7 @@ class ChatPage extends AbstractPage { /** * List of accessible rooms. * - * @var \wcf\data\chat\room\ChatRoomList + * @var \chat\data\room\RoomList */ public $rooms = array(); @@ -108,8 +108,8 @@ public function assignVariables() { 'rooms' => $this->rooms, 'defaultSmilies' => $this->defaultSmilies, 'smileyCategories' => $this->smileyCategories, - 'sidebarCollapsed' => \wcf\system\user\collapsible\content\UserCollapsibleContentHandler::getInstance()->isCollapsed('com.woltlab.wcf.collapsibleSidebar', 'be.bastelstu.wcf.chat.ChatPage'), - 'sidebarName' => 'be.bastelstu.wcf.chat.ChatPage' + 'sidebarCollapsed' => \wcf\system\user\collapsible\content\UserCollapsibleContentHandler::getInstance()->isCollapsed('com.woltlab.wcf.collapsibleSidebar', 'be.bastelstu.chat.ChatPage'), + 'sidebarName' => 'be.bastelstu.chat.ChatPage' )); } @@ -117,7 +117,7 @@ public function assignVariables() { * Reads chat-version. Used to avoid caching of JS-File when Tims Chat is updated. */ public function readChatVersion() { - return $this->chatVersion = \wcf\data\package\PackageCache::getInstance()->getPackage(\wcf\util\ChatUtil::getPackageID())->packageVersion; + return $this->chatVersion = \wcf\data\package\PackageCache::getInstance()->getPackage(\chat\util\ChatUtil::getPackageID())->packageVersion; } /** @@ -127,15 +127,15 @@ public function readData() { parent::readData(); $this->readRoom(); - $this->userData['color'] = \wcf\util\ChatUtil::readUserData('color'); - \wcf\util\ChatUtil::writeUserData(array( + $this->userData['color'] = \chat\util\ChatUtil::readUserData('color'); + \chat\util\ChatUtil::writeUserData(array( 'roomID' => $this->room->roomID, 'away' => null, 'lastActivity' => TIME_NOW )); if (CHAT_DISPLAY_JOIN_LEAVE) { - $messageAction = new chat\message\ChatMessageAction(array(), 'create', array( + $messageAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $this->room->roomID, 'sender' => WCF::getUser()->userID, @@ -151,12 +151,12 @@ public function readData() { $messageAction->getReturnValues(); } - $this->newestMessages = chat\message\ChatMessageList::getNewestMessages($this->room, CHAT_LASTMESSAGES); + $this->newestMessages = data\message\MessageList::getNewestMessages($this->room, CHAT_LASTMESSAGES); try { - \wcf\util\ChatUtil::writeUserData(array('lastSeen' => end($this->newestMessages)->messageID)); + \chat\util\ChatUtil::writeUserData(array('lastSeen' => end($this->newestMessages)->messageID)); } catch (\wcf\system\exception\SystemException $e) { - \wcf\util\ChatUtil::writeUserData(array('lastSeen' => 0)); + \chat\util\ChatUtil::writeUserData(array('lastSeen' => 0)); } $smileyCategories = \wcf\data\smiley\SmileyCache::getInstance()->getCategories(); @@ -182,23 +182,23 @@ public function readParameters() { $this->request->__run(); exit; case 'Log': - $this->request = new ChatLogPage(); + $this->request = new LogPage(); $this->request->__run(); exit; case 'RefreshRoomList': - $this->request = new ChatRefreshRoomListPage(); + $this->request = new RoomListPage(); $this->request->__run(); exit; case 'Send': - $this->request = new \wcf\form\ChatForm(); + $this->request = new \chat\form\ChatForm(); $this->request->__run(); exit; case 'Leave': - $this->request = new \wcf\action\ChatLeaveAction(); + $this->request = new \chat\action\LeaveAction(); $this->request->__run(); exit; case 'Copyright': - $this->request = new ChatCopyrightPage(); + $this->request = new CopyrightPage(); $this->request->__run(); exit; } @@ -211,7 +211,7 @@ public function readParameters() { * Reads room data. */ public function readRoom() { - $this->rooms = chat\room\ChatRoom::getCache(); + $this->rooms = data\room\Room::getCache(); if ($this->roomID === 0) { // no room given @@ -236,7 +236,7 @@ public function readRoom() { * @see \wcf\page\IPage::show() */ public function show() { - \wcf\system\menu\page\PageMenu::getInstance()->setActiveMenuItem('wcf.header.menu.chat'); + \wcf\system\menu\page\PageMenu::getInstance()->setActiveMenuItem('chat.header.menu.chat'); // remove index breadcrumb WCF::getBreadcrumbs()->remove(0); @@ -244,7 +244,7 @@ public function show() { parent::show(); // add activity points - \wcf\system\user\activity\point\UserActivityPointHandler::getInstance()->fireEvent('be.bastelstu.wcf.chat.activityPointEvent.join', TIME_NOW, WCF::getUser()->userID); + \wcf\system\user\activity\point\UserActivityPointHandler::getInstance()->fireEvent('be.bastelstu.chat.activityPointEvent.join', TIME_NOW, WCF::getUser()->userID); // break if not using ajax if ($this->useTemplate) exit; diff --git a/file/lib/page/ChatCopyrightPage.class.php b/file/lib/page/CopyrightPage.class.php similarity index 97% rename from file/lib/page/ChatCopyrightPage.class.php rename to file/lib/page/CopyrightPage.class.php index 4f5c9f4..79191f9 100644 --- a/file/lib/page/ChatCopyrightPage.class.php +++ b/file/lib/page/CopyrightPage.class.php @@ -1,5 +1,5 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage page */ -class ChatCopyrightPage extends AbstractPage { +class CopyrightPage extends \wcf\page\AbstractPage { /** * @see \wcf\page\AbstractPage::$neededModules */ diff --git a/file/lib/page/ChatLogPage.class.php b/file/lib/page/LogPage.class.php similarity index 78% rename from file/lib/page/ChatLogPage.class.php rename to file/lib/page/LogPage.class.php index 90fed7f..ec91805 100644 --- a/file/lib/page/ChatLogPage.class.php +++ b/file/lib/page/LogPage.class.php @@ -1,6 +1,6 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage page */ -class ChatLogPage extends AbstractPage { +class LogPage extends \wcf\page\AbstractPage { /** * @see wcf\page\AbstractPage::$loginRequired */ @@ -45,13 +45,13 @@ class ChatLogPage extends AbstractPage { /** * given room - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Chat */ public $room = null; /** * all rooms in the current installation - * @var array<\wcf\data\chat\room\ChatRoom> + * @var array<\chat\data\room\Room> */ public $rooms = array(); @@ -82,9 +82,7 @@ public function assignVariables() { 'messages' => $this->messages, 'room' => $this->room, 'roomID' => $this->roomID, - 'rooms' => $this->rooms, - 'sidebarCollapsed' => \wcf\system\user\collapsible\content\UserCollapsibleContentHandler::getInstance()->isCollapsed('com.woltlab.wcf.collapsibleSidebar', 'be.bastelstu.wcf.chat.ChatLogPage'), - 'sidebarName' => 'be.bastelstu.wcf.chat.ChatLogPage' + 'rooms' => $this->rooms )); } @@ -103,7 +101,7 @@ public function readParameters() { public function readData() { parent::readData(); - $cache = chat\room\ChatRoom::getCache(); + $cache = data\room\Room::getCache(); if (!isset($cache[$this->roomID])) throw new IllegalLinkException(); $this->room = $cache[$this->roomID]; @@ -112,6 +110,6 @@ public function readData() { if (!$ph->getPermission($this->room, 'mod.canReadLog')) throw new \wcf\system\exception\PermissionDeniedException(); // TODO: actually read the correct messages - $this->messages = chat\message\ChatMessageList::getNewestMessages($this->room, 150); + $this->messages = data\message\MessageList::getNewestMessages($this->room, 150); } } diff --git a/file/lib/page/ChatRefreshRoomListPage.class.php b/file/lib/page/RoomListPage.class.php similarity index 82% rename from file/lib/page/ChatRefreshRoomListPage.class.php rename to file/lib/page/RoomListPage.class.php index d53ad5a..a5c5f12 100644 --- a/file/lib/page/ChatRefreshRoomListPage.class.php +++ b/file/lib/page/RoomListPage.class.php @@ -1,20 +1,20 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage page */ -class ChatRefreshRoomListPage extends AbstractPage { +class RoomListPage extends \wcf\page\AbstractPage { /** * @see wcf\page\AbstractPage::$loginRequired */ @@ -32,13 +32,13 @@ class ChatRefreshRoomListPage extends AbstractPage { /** * the room the user current is in - * @var \wcf\data\chat\room\ChatRoom + * @var \chat\data\room\Room */ public $room = null; /** * all rooms in the current installation - * @var array<\wcf\data\chat\room\ChatRoom> + * @var array<\chat\data\room\Room> */ public $rooms = array(); @@ -70,9 +70,9 @@ public function __run() { public function readData() { parent::readData(); - $this->rooms = chat\room\ChatRoom::getCache(); + $this->rooms = data\room\Room::getCache(); - $roomID = \wcf\util\ChatUtil::readUserData('roomID'); + $roomID = \chat\util\ChatUtil::readUserData('roomID'); if (!isset($this->rooms[$roomID])) throw new IllegalLinkException(); $this->room = $this->rooms[$roomID]; } @@ -91,6 +91,7 @@ public function show() { $json[] = array( 'title' => WCF::getLanguage()->get($room->title), 'link' => \wcf\system\request\LinkHandler::getInstance()->getLink('Chat', array( + 'application' => 'chat', 'object' => $room )), 'active' => $room->roomID == $this->room->roomID diff --git a/file/lib/system/ChatCore.class.php b/file/lib/system/ChatCore.class.php new file mode 100644 index 0000000..6601759 --- /dev/null +++ b/file/lib/system/ChatCore.class.php @@ -0,0 +1,23 @@ + + * @package be.bastelstu.chat + * @subpackage system + */ +class ChatCore extends \wcf\system\application\AbstractApplication { + /** + * @see wcf\system\application\AbstractApplication::$abbreviation + */ + protected $abbreviation = 'chat'; + + /** + * @see wcf\system\application\IApplication::__run() + */ + public function __run() {} +} diff --git a/file/lib/system/cache/builder/ChatPermissionCacheBuilder.class.php b/file/lib/system/cache/builder/PermissionCacheBuilder.class.php similarity index 88% rename from file/lib/system/cache/builder/ChatPermissionCacheBuilder.class.php rename to file/lib/system/cache/builder/PermissionCacheBuilder.class.php index dce4ffb..0417dc2 100644 --- a/file/lib/system/cache/builder/ChatPermissionCacheBuilder.class.php +++ b/file/lib/system/cache/builder/PermissionCacheBuilder.class.php @@ -1,17 +1,17 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.cache.builder */ -class ChatPermissionCacheBuilder implements ICacheBuilder { +class PermissionCacheBuilder implements \wcf\system\cache\builder\ICacheBuilder { /** * @see wcf\system\cache\ICacheBuilder::getData() */ @@ -22,7 +22,7 @@ public function getData(array $cacheResource) { if (count($groupIDs)) { $conditionBuilder = new \wcf\system\database\util\PreparedStatementConditionBuilder(); - $conditionBuilder->add('acl_option.objectTypeID = ?', array(\wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.wcf.chat.room'))); + $conditionBuilder->add('acl_option.objectTypeID = ?', array(\wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.chat.room'))); $conditionBuilder->add('option_to_group.optionID = acl_option.optionID'); $conditionBuilder->add('option_to_group.groupID IN (?)', array($groupIDs)); $sql = "SELECT option_to_group.groupID, option_to_group.objectID AS roomID, option_to_group.optionValue, diff --git a/file/lib/system/cache/builder/ChatRoomCacheBuilder.class.php b/file/lib/system/cache/builder/RoomCacheBuilder.class.php similarity index 68% rename from file/lib/system/cache/builder/ChatRoomCacheBuilder.class.php rename to file/lib/system/cache/builder/RoomCacheBuilder.class.php index d8232c4..ddb4f71 100644 --- a/file/lib/system/cache/builder/ChatRoomCacheBuilder.class.php +++ b/file/lib/system/cache/builder/RoomCacheBuilder.class.php @@ -1,22 +1,22 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.cache.builder */ -class ChatRoomCacheBuilder implements ICacheBuilder { +class RoomCacheBuilder implements \wcf\system\cache\builder\ICacheBuilder { /** * @see \wcf\system\cache\ICacheBuilder::getData() */ public function getData(array $cacheResource) { // get all chat rooms - $roomList = new \wcf\data\chat\room\ChatRoomList(); + $roomList = new \chat\data\room\RoomList(); $roomList->sqlOrderBy = "chat_room.position"; $roomList->readObjects(); diff --git a/file/lib/system/chat/command/AbstractCommand.class.php b/file/lib/system/chat/command/AbstractCommand.class.php index 8c2ab35..37c9074 100644 --- a/file/lib/system/chat/command/AbstractCommand.class.php +++ b/file/lib/system/chat/command/AbstractCommand.class.php @@ -6,9 +6,9 @@ * Default implementation for commands. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ abstract class AbstractCommand implements ICommand { diff --git a/file/lib/system/chat/command/AbstractRestrictedCommand.class.php b/file/lib/system/chat/command/AbstractRestrictedCommand.class.php index c82d67a..ee85983 100644 --- a/file/lib/system/chat/command/AbstractRestrictedCommand.class.php +++ b/file/lib/system/chat/command/AbstractRestrictedCommand.class.php @@ -6,9 +6,9 @@ * Default implementation for restricted commands * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ abstract class AbstractRestrictedCommand extends AbstractCommand implements IRestrictedCommand { diff --git a/file/lib/system/chat/command/CommandHandler.class.php b/file/lib/system/chat/command/CommandHandler.class.php index 567cc4b..b7e2a78 100644 --- a/file/lib/system/chat/command/CommandHandler.class.php +++ b/file/lib/system/chat/command/CommandHandler.class.php @@ -6,9 +6,9 @@ * Handles commands * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ final class CommandHandler { diff --git a/file/lib/system/chat/command/ICommand.class.php b/file/lib/system/chat/command/ICommand.class.php index 41d5025..df3d7dd 100644 --- a/file/lib/system/chat/command/ICommand.class.php +++ b/file/lib/system/chat/command/ICommand.class.php @@ -5,9 +5,9 @@ * Interface for chat-commands. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ interface ICommand { diff --git a/file/lib/system/chat/command/IRestrictedCommand.class.php b/file/lib/system/chat/command/IRestrictedCommand.class.php index 9faab4b..07016d0 100644 --- a/file/lib/system/chat/command/IRestrictedCommand.class.php +++ b/file/lib/system/chat/command/IRestrictedCommand.class.php @@ -5,9 +5,9 @@ * Interface for Restricted commands. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ interface IRestrictedCommand { diff --git a/file/lib/system/chat/command/NotFoundException.class.php b/file/lib/system/chat/command/NotFoundException.class.php index e267ea5..82f4a82 100644 --- a/file/lib/system/chat/command/NotFoundException.class.php +++ b/file/lib/system/chat/command/NotFoundException.class.php @@ -5,9 +5,9 @@ * Thrown when a command is not found. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ class NotFoundException extends \Exception { } diff --git a/file/lib/system/chat/command/UserNotFoundException.class.php b/file/lib/system/chat/command/UserNotFoundException.class.php index e199cd9..058236d 100644 --- a/file/lib/system/chat/command/UserNotFoundException.class.php +++ b/file/lib/system/chat/command/UserNotFoundException.class.php @@ -5,9 +5,9 @@ * Thrown when a user is not found. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command */ class UserNotFoundException extends \Exception { diff --git a/file/lib/system/chat/command/commands/AwayCommand.class.php b/file/lib/system/chat/command/commands/AwayCommand.class.php index 95ac18b..156a69f 100644 --- a/file/lib/system/chat/command/commands/AwayCommand.class.php +++ b/file/lib/system/chat/command/commands/AwayCommand.class.php @@ -6,16 +6,16 @@ * Marks the user as away. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class AwayCommand extends \wcf\system\chat\command\AbstractCommand { public function __construct(\wcf\system\chat\command\CommandHandler $commandHandler) { parent::__construct($commandHandler); - \wcf\util\ChatUtil::writeUserData(array('away' => $commandHandler->getParameters())); + \chat\util\ChatUtil::writeUserData(array('away' => $commandHandler->getParameters())); $this->didInit(); } diff --git a/file/lib/system/chat/command/commands/BanCommand.class.php b/file/lib/system/chat/command/commands/BanCommand.class.php index b3fae84..37e2e12 100644 --- a/file/lib/system/chat/command/commands/BanCommand.class.php +++ b/file/lib/system/chat/command/commands/BanCommand.class.php @@ -9,9 +9,9 @@ * Bans a user. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class BanCommand extends MuteCommand { diff --git a/file/lib/system/chat/command/commands/ColorCommand.class.php b/file/lib/system/chat/command/commands/ColorCommand.class.php index 0479b3e..2bff44f 100644 --- a/file/lib/system/chat/command/commands/ColorCommand.class.php +++ b/file/lib/system/chat/command/commands/ColorCommand.class.php @@ -6,9 +6,9 @@ * Changes the color of the username * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class ColorCommand extends \wcf\system\chat\command\AbstractCommand { @@ -56,7 +56,7 @@ public function __construct(\wcf\system\chat\command\CommandHandler $commandHand $color[$key] = hexdec($val); } } - \wcf\util\ChatUtil::writeUserData(array('color' => $color)); + \chat\util\ChatUtil::writeUserData(array('color' => $color)); $this->didInit(); } diff --git a/file/lib/system/chat/command/commands/FreeCommand.class.php b/file/lib/system/chat/command/commands/FreeCommand.class.php index e462c78..884c65f 100644 --- a/file/lib/system/chat/command/commands/FreeCommand.class.php +++ b/file/lib/system/chat/command/commands/FreeCommand.class.php @@ -5,9 +5,9 @@ * Informs everyone that the fish was freed. OH A NOEZ. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class FreeCommand extends MeCommand { diff --git a/file/lib/system/chat/command/commands/InfoCommand.class.php b/file/lib/system/chat/command/commands/InfoCommand.class.php index b553369..872364a 100644 --- a/file/lib/system/chat/command/commands/InfoCommand.class.php +++ b/file/lib/system/chat/command/commands/InfoCommand.class.php @@ -9,9 +9,9 @@ * Shows information about the specified user. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class InfoCommand extends \wcf\system\chat\command\AbstractCommand { diff --git a/file/lib/system/chat/command/commands/MeCommand.class.php b/file/lib/system/chat/command/commands/MeCommand.class.php index 8c003d3..586181b 100644 --- a/file/lib/system/chat/command/commands/MeCommand.class.php +++ b/file/lib/system/chat/command/commands/MeCommand.class.php @@ -6,9 +6,9 @@ * Indicates an action. The message is shown without the colon. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class MeCommand extends \wcf\system\chat\command\AbstractCommand { diff --git a/file/lib/system/chat/command/commands/MuteCommand.class.php b/file/lib/system/chat/command/commands/MuteCommand.class.php index 04fa340..3201961 100644 --- a/file/lib/system/chat/command/commands/MuteCommand.class.php +++ b/file/lib/system/chat/command/commands/MuteCommand.class.php @@ -9,9 +9,9 @@ * Mutes a user. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class MuteCommand extends \wcf\system\chat\command\AbstractRestrictedCommand { diff --git a/file/lib/system/chat/command/commands/PlainCommand.class.php b/file/lib/system/chat/command/commands/PlainCommand.class.php index 8e94a33..03974ff 100644 --- a/file/lib/system/chat/command/commands/PlainCommand.class.php +++ b/file/lib/system/chat/command/commands/PlainCommand.class.php @@ -5,9 +5,9 @@ * Sends a message that starts with a slash. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class PlainCommand extends \wcf\system\chat\command\AbstractCommand { diff --git a/file/lib/system/chat/command/commands/RestoreCommand.class.php b/file/lib/system/chat/command/commands/RestoreCommand.class.php index 54c6415..6598b77 100644 --- a/file/lib/system/chat/command/commands/RestoreCommand.class.php +++ b/file/lib/system/chat/command/commands/RestoreCommand.class.php @@ -8,9 +8,9 @@ * Resets the color of a user * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class RestoreCommand extends \wcf\system\chat\command\AbstractRestrictedCommand { diff --git a/file/lib/system/chat/command/commands/TemproomCommand.class.php b/file/lib/system/chat/command/commands/TemproomCommand.class.php index 308d8c5..1047fa6 100644 --- a/file/lib/system/chat/command/commands/TemproomCommand.class.php +++ b/file/lib/system/chat/command/commands/TemproomCommand.class.php @@ -7,9 +7,9 @@ * Creates a temporary room * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class TemproomCommand extends \wcf\system\chat\command\AbstractRestrictedCommand { @@ -37,7 +37,7 @@ public function __construct(\wcf\system\chat\command\CommandHandler $commandHand )); // set permissions - $options = \wcf\data\acl\option\ACLOption::getOptions(\wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.wcf.chat.room'))->getObjects(); + $options = \wcf\data\acl\option\ACLOption::getOptions(\wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.chat.room'))->getObjects(); $_POST['aclValues'] = array( 'user' => array( // creators may do everything @@ -49,7 +49,7 @@ public function __construct(\wcf\system\chat\command\CommandHandler $commandHand ) ); - \wcf\system\acl\ACLHandler::getInstance()->save($roomID, \wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.wcf.chat.room')); + \wcf\system\acl\ACLHandler::getInstance()->save($roomID, \wcf\system\acl\ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.chat.room')); \wcf\system\chat\permission\ChatPermissionHandler::clearCache(); $this->didInit(); } diff --git a/file/lib/system/chat/command/commands/WhereCommand.class.php b/file/lib/system/chat/command/commands/WhereCommand.class.php index 7c643a0..439cbd7 100644 --- a/file/lib/system/chat/command/commands/WhereCommand.class.php +++ b/file/lib/system/chat/command/commands/WhereCommand.class.php @@ -5,9 +5,9 @@ * Shows the users that are online * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class WhereCommand extends \wcf\system\chat\command\AbstractCommand { diff --git a/file/lib/system/chat/command/commands/WhisperCommand.class.php b/file/lib/system/chat/command/commands/WhisperCommand.class.php index 0da5283..4d3ad8f 100644 --- a/file/lib/system/chat/command/commands/WhisperCommand.class.php +++ b/file/lib/system/chat/command/commands/WhisperCommand.class.php @@ -6,9 +6,9 @@ * Whispers a message. * * @author Tim Düsterhus - * @copyright 2010-2012 Tim Düsterhus + * @copyright 2010-2013 Tim Düsterhus * @license Creative Commons Attribution-NonCommercial-ShareAlike - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.chat.command.commands */ class WhisperCommand extends \wcf\system\chat\command\AbstractCommand { diff --git a/file/lib/system/cronjob/ChatCleanupCronjob.class.php b/file/lib/system/cronjob/CleanupCronjob.class.php similarity index 57% rename from file/lib/system/cronjob/ChatCleanupCronjob.class.php rename to file/lib/system/cronjob/CleanupCronjob.class.php index 00a436c..9ee07f2 100644 --- a/file/lib/system/cronjob/ChatCleanupCronjob.class.php +++ b/file/lib/system/cronjob/CleanupCronjob.class.php @@ -1,44 +1,44 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.cronjob */ -class ChatCleanupCronjob implements ICronjob { +class ChatCleanupCronjob implements \wcf\system\cronjob\ICronjob { /** * @see wcf\system\ICronjob::execute() */ public function execute(\wcf\data\cronjob\Cronjob $cronjob) { - $messageAction = new chat\message\ChatMessageAction(array(), 'prune'); + $messageAction = new data\message\MessageAction(array(), 'prune'); $messageAction->executeAction(); - $roomAction = new chat\room\ChatRoomAction(array(), 'prune'); + $roomAction = new data\room\RoomAction(array(), 'prune'); $roomAction->executeAction(); - $suspensionAction = new chat\suspension\ChatSuspensionAction(array(), 'prune'); + $suspensionAction = new data\suspension\SuspensionAction(array(), 'prune'); $suspensionAction->executeAction(); // kill dead users - $deadUsers = \wcf\util\ChatUtil::getDiedUsers(); + $deadUsers = \chat\util\ChatUtil::getDiedUsers(); foreach ($deadUsers as $deadUser) { if (!$deadUser) continue; $user = new \wcf\data\user\User($deadUser['userID']); if (CHAT_DISPLAY_JOIN_LEAVE) { - $userData['color'] = \wcf\util\ChatUtil::readUserData('color', $user); + $userData['color'] = \chat\util\ChatUtil::readUserData('color', $user); - $messageAction = new chat\message\ChatMessageAction(array(), 'create', array( + $messageAction = new data\message\MessageAction(array(), 'create', array( 'data' => array( 'roomID' => $deadUser['roomID'], 'sender' => $user->userID, 'username' => $user->username, 'time' => TIME_NOW, - 'type' => chat\message\ChatMessage::TYPE_LEAVE, + 'type' => data\message\Message::TYPE_LEAVE, 'message' => '', 'color1' => $userData['color'][1], 'color2' => $userData['color'][2] @@ -46,7 +46,7 @@ public function execute(\wcf\data\cronjob\Cronjob $cronjob) { )); $messageAction->executeAction(); } - \wcf\util\ChatUtil::writeUserData(array('roomID' => null), $user); + \chat\util\ChatUtil::writeUserData(array('roomID' => null), $user); } } } diff --git a/file/lib/system/event/listener/ChatRouteListener.class.php b/file/lib/system/event/listener/RouteHandlerListener.class.php similarity index 80% rename from file/lib/system/event/listener/ChatRouteListener.class.php rename to file/lib/system/event/listener/RouteHandlerListener.class.php index 0da8e8c..d0f14d2 100644 --- a/file/lib/system/event/listener/ChatRouteListener.class.php +++ b/file/lib/system/event/listener/RouteHandlerListener.class.php @@ -1,16 +1,16 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.event.listener */ -class ChatRouteListener implements \wcf\system\event\IEventListener { +class RouteHandlerListener implements \wcf\system\event\IEventListener { /** * @see \wcf\system\event\IEventListener::execute() */ diff --git a/file/lib/system/menu/page/ChatPageMenuItemProvider.class.php b/file/lib/system/menu/page/ChatPageMenuItemProvider.class.php index 776e239..a769528 100644 --- a/file/lib/system/menu/page/ChatPageMenuItemProvider.class.php +++ b/file/lib/system/menu/page/ChatPageMenuItemProvider.class.php @@ -1,17 +1,16 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.menu.page */ -class ChatPageMenuItemProvider extends DefaultPageMenuItemProvider { +class ChatPageMenuItemProvider extends \wcf\system\menu\page\DefaultPageMenuItemProvider { protected $room = null; /** @@ -23,7 +22,7 @@ public function isVisible() { // guests are not supported if (!\wcf\system\WCF::getUser()->userID) return false; - $cache = ChatRoom::getCache(); + $cache = \chat\data\room\Room::getCache(); foreach ($cache as $this->room) { if ($this->room->canEnter()) { @@ -41,6 +40,7 @@ public function isVisible() { */ public function getLink() { return \wcf\system\request\LinkHandler::getInstance()->getLink('Chat', array( + 'application' => 'chat', 'object' => $this->room )); } diff --git a/file/lib/system/option/TimeIntervalOptionType.class.php b/file/lib/system/option/TimeIntervalOptionType.class.php index 259287f..0d6afb1 100644 --- a/file/lib/system/option/TimeIntervalOptionType.class.php +++ b/file/lib/system/option/TimeIntervalOptionType.class.php @@ -1,21 +1,21 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage system.option */ -class TimeIntervalOptionType extends TextOptionType { +class TimeIntervalOptionType extends \wcf\system\option\TextOptionType { /** * @see \wcf\system\option\IOptionType::getData() */ public function getData(\wcf\data\option\Option $option, $newValue) { - return \wcf\util\ChatUtil::timeModifier($newValue); + return \chat\util\ChatUtil::timeModifier($newValue); } /** diff --git a/file/lib/system/chat/permission/ChatPermissionHandler.class.php b/file/lib/system/permission/PermissionHandler.class.php similarity index 78% rename from file/lib/system/chat/permission/ChatPermissionHandler.class.php rename to file/lib/system/permission/PermissionHandler.class.php index 62b1eea..a47b84d 100644 --- a/file/lib/system/chat/permission/ChatPermissionHandler.class.php +++ b/file/lib/system/permission/PermissionHandler.class.php @@ -1,5 +1,5 @@ - * @package be.bastelstu.wcf.chat - * @subpackage system.chat.permissions + * @package be.bastelstu.chat + * @subpackage system.permission */ -class ChatPermissionHandler { +class PermissionHandler { /** * permissions set for the active user * @var array @@ -31,14 +31,14 @@ public function __construct(\wcf\data\user\User $user = null) { if ($user === null) $user = WCF::getUser(); $this->user = new \wcf\data\user\UserProfile($user); - $packageID = \wcf\util\ChatUtil::getPackageID(); + $packageID = \chat\util\ChatUtil::getPackageID(); $ush = \wcf\system\user\storage\UserStorageHandler::getInstance(); // get groups permissions $groups = implode(',', $user->getGroupIDs()); $groupsFileName = \wcf\util\StringUtil::getHash(implode('-', $user->getGroupIDs())); - CacheHandler::getInstance()->addResource('chatPermission-'.$groups, WCF_DIR.'cache/cache.chatPermission-'.$groupsFileName.'.php', '\wcf\system\cache\builder\ChatPermissionCacheBuilder'); - $this->chatPermissions = CacheHandler::getInstance()->get('chatPermission-'.$groups); + CacheHandler::getInstance()->addResource('permission-'.$groups, WCF_DIR.'cache/cache.permission-'.$groupsFileName.'.php', '\chat\system\cache\builder\PermissionCacheBuilder'); + $this->chatPermissions = CacheHandler::getInstance()->get('permission-'.$groups); // get user permissions if ($user->userID) { @@ -53,7 +53,7 @@ public function __construct(\wcf\data\user\User $user = null) { $userPermissions = array(); $conditionBuilder = new \wcf\system\database\util\PreparedStatementConditionBuilder(); - $conditionBuilder->add('acl_option.objectTypeID = ?', array(ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.wcf.chat.room'))); + $conditionBuilder->add('acl_option.objectTypeID = ?', array(ACLHandler::getInstance()->getObjectTypeID('be.bastelstu.chat.room'))); $conditionBuilder->add('option_to_user.optionID = acl_option.optionID'); $conditionBuilder->add('option_to_user.userID = ?', array($user->userID)); $sql = "SELECT option_to_user.objectID AS roomID, option_to_user.optionValue, @@ -85,11 +85,11 @@ public function __construct(\wcf\data\user\User $user = null) { /** * Fetches the given permission for the given room * - * @param \wcf\data\chat\room\ChatRoom $room - * @param string $permission + * @param \chat\data\room\Room $room + * @param string $permission * @return boolean */ - public function getPermission(\wcf\data\chat\room\ChatRoom $room, $permission) { + public function getPermission(\chat\data\room\Room $room, $permission) { if (!isset($this->chatPermissions[$room->roomID][$permission])) { $permission = str_replace(array('user.', 'mod.'), array('user.chat.', 'mod.chat.'), $permission); @@ -102,10 +102,10 @@ public function getPermission(\wcf\data\chat\room\ChatRoom $room, $permission) { * Clears the cache. */ public static function clearCache() { - $packageID = \wcf\util\ChatUtil::getPackageID(); + $packageID = \chat\util\ChatUtil::getPackageID(); $ush = \wcf\system\user\storage\UserStorageHandler::getInstance(); $ush->resetAll('chatUserPermissions', $packageID); - \wcf\system\cache\CacheHandler::getInstance()->clear(WCF_DIR.'cache', 'cache.chatPermission-[a-f0-9]{40}.php'); + \wcf\system\cache\CacheHandler::getInstance()->clear(WCF_DIR.'cache', 'cache.permission-[a-f0-9]{40}.php'); } } diff --git a/file/lib/util/ChatUtil.class.php b/file/lib/util/ChatUtil.class.php index 59a71ea..7f3c1d2 100644 --- a/file/lib/util/ChatUtil.class.php +++ b/file/lib/util/ChatUtil.class.php @@ -1,5 +1,5 @@ - * @package be.bastelstu.wcf.chat + * @package be.bastelstu.chat * @subpackage util */ final class ChatUtil { @@ -18,7 +18,7 @@ final class ChatUtil { * Matches a time-interval with modifiers. * Each part may be optionally separated by a comma * - * @see \wcf\util\ChatUtil::timeModifier() + * @see \chat\util\ChatUtil::timeModifier() */ const TIME_MODIFIER_REGEX = '((?:[0-9]+[s|h|d|w|m|y|S|H|D|W|M|Y]?,?)+)'; @@ -27,7 +27,7 @@ final class ChatUtil { * * @var string */ - const PACKAGE_IDENTIFIER = 'be.bastelstu.wcf.chat'; + const PACKAGE_IDENTIFIER = 'be.bastelstu.chat'; /** * Which user-storage-keys need serialization. @@ -120,7 +120,7 @@ public static function gradient($string, $start, $end) { $result = ''; for ($i = 0, $max = count($string); $i < $max; $i++) { - $result .= ''.StringUtil::encodeHTML($string[$i]).''; + $result .= ''.\wcf\util\StringUtil::encodeHTML($string[$i]).''; } return $result; @@ -133,8 +133,8 @@ public static function gradient($string, $start, $end) { */ public static function nodePushRunning() { if (!CHAT_SOCKET_IO_PATH) return false; - if (!file_exists(WCF_DIR.'acp/be.bastelstu.wcf.chat.nodePush/data.sock')) return false; - if (!is_writable(WCF_DIR.'acp/be.bastelstu.wcf.chat.nodePush/data.sock')) return false; + if (!file_exists(CHAT_DIR.'acp/be.bastelstu.chat.nodePush/data.sock')) return false; + if (!is_writable(CHAT_DIR.'acp/be.bastelstu.chat.nodePush/data.sock')) return false; return true; } @@ -179,8 +179,8 @@ public static function readUserData($field, \wcf\data\user\User $user = null) { */ public static function str_split($string, $length = 1) { $result = array(); - for ($i = 0, $max = StringUtil::length($string); $i < $max; $i += $length) { - $result[] = StringUtil::substring($string, $i, $length); + for ($i = 0, $max = \wcf\util\StringUtil::length($string); $i < $max; $i += $length) { + $result[] = \wcf\util\StringUtil::substring($string, $i, $length); } return $result; } diff --git a/install.sql b/install.sql index 65edfbc..449aaa4 100644 --- a/install.sql +++ b/install.sql @@ -2,13 +2,13 @@ -- Database Structure for Tims Chat -- -- @author Tim Düsterhus --- @copyright 2010-2012 Tim Düsterhus +-- @copyright 2010-2013 Tim Düsterhus -- @license Creative Commons Attribution-NonCommercial-ShareAlike --- @package be.bastelstu.wcf.chat +-- @package be.bastelstu.chat -- -- -DROP TABLE IF EXISTS wcf1_chat_message; -CREATE TABLE wcf1_chat_message ( +DROP TABLE IF EXISTS chat1_message; +CREATE TABLE chat1_message ( messageID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY, roomID INT(10) NOT NULL, sender INT(10) DEFAULT NULL, @@ -28,8 +28,8 @@ CREATE TABLE wcf1_chat_message ( KEY receiver (receiver) ); -DROP TABLE IF EXISTS wcf1_chat_room; -CREATE TABLE wcf1_chat_room ( +DROP TABLE IF EXISTS chat1_room; +CREATE TABLE chat1_room ( roomID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255) NOT NULL, topic VARCHAR(255) NOT NULL, @@ -41,8 +41,8 @@ CREATE TABLE wcf1_chat_room ( KEY owner (owner) ); -DROP TABLE IF EXISTS wcf1_chat_suspension; -CREATE TABLE wcf1_chat_suspension ( +DROP TABLE IF EXISTS chat1_suspension; +CREATE TABLE chat1_suspension ( suspensionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY, userID INT(10) NOT NULL, roomID INT(10) DEFAULT NULL, @@ -55,16 +55,16 @@ CREATE TABLE wcf1_chat_suspension ( KEY time (time) ); -ALTER TABLE wcf1_chat_message ADD FOREIGN KEY (receiver) REFERENCES wcf1_user (userID) ON DELETE CASCADE; -ALTER TABLE wcf1_chat_message ADD FOREIGN KEY (roomID) REFERENCES wcf1_chat_room (roomID) ON DELETE CASCADE; -ALTER TABLE wcf1_chat_message ADD FOREIGN KEY (sender) REFERENCES wcf1_user (userID) ON DELETE SET NULL; +ALTER TABLE chat1_message ADD FOREIGN KEY (receiver) REFERENCES wcf1_user (userID) ON DELETE CASCADE; +ALTER TABLE chat1_message ADD FOREIGN KEY (roomID) REFERENCES chat1_room (roomID) ON DELETE CASCADE; +ALTER TABLE chat1_message ADD FOREIGN KEY (sender) REFERENCES wcf1_user (userID) ON DELETE SET NULL; -ALTER TABLE wcf1_chat_room ADD FOREIGN KEY (owner) REFERENCES wcf1_user (userID) ON DELETE SET NULL; +ALTER TABLE chat1_room ADD FOREIGN KEY (owner) REFERENCES wcf1_user (userID) ON DELETE SET NULL; -ALTER TABLE wcf1_chat_suspension ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE; -ALTER TABLE wcf1_chat_suspension ADD FOREIGN KEY (roomID) REFERENCES wcf1_chat_room (roomID) ON DELETE CASCADE; +ALTER TABLE chat1_suspension ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE; +ALTER TABLE chat1_suspension ADD FOREIGN KEY (roomID) REFERENCES chat1_room (roomID) ON DELETE CASCADE; -INSERT INTO wcf1_chat_room (title, topic, position) VALUES ('wcf.chat.room.title1', 'wcf.chat.room.topic1', 1); -INSERT INTO wcf1_chat_room (title, topic, position) VALUES ('Testroom 2', 'Topic of Testroom 2', 2); -INSERT INTO wcf1_chat_room (title, topic, position) VALUES ('Testroom with a very long', 'The topic of this room is rather loing as well!', 3); -INSERT INTO wcf1_chat_room (title, topic, position) VALUES ('Room w/o topic', '', 4); +INSERT INTO chat1_room (title, topic, position) VALUES ('wcf.chat.room.title1', 'wcf.chat.room.topic1', 1); +INSERT INTO chat1_room (title, topic, position) VALUES ('Testroom 2', 'Topic of Testroom 2', 2); +INSERT INTO chat1_room (title, topic, position) VALUES ('Testroom with a very long', 'The topic of this room is rather loing as well!', 3); +INSERT INTO chat1_room (title, topic, position) VALUES ('Room w/o topic', '', 4); diff --git a/language/de.xml b/language/de.xml index 6d30ac8..8eb27b8 100644 --- a/language/de.xml +++ b/language/de.xml @@ -1,20 +1,21 @@ - - - - - - - + + + + + + + - title|language}“ wirklich löschen?]]> + + title|language}“ wirklich löschen?]]> - - - - + + + + @@ -57,71 +58,73 @@ Hinweis: Setzen Sie diese Einstellung nur, wenn Sie wissen, was sie bewirkt. Die - - - + + + - - - + + + - Chat: Tims Chat{if CHAT_SHOW_VERSION && $chatVersion|isset} {$chatVersion}{/if}, entwickelt von TimWolla]]> - - - - - + Chat: Tims Chat{if CHAT_SHOW_VERSION && $chatVersion|isset} {$chatVersion}{/if}, entwickelt von TimWolla]]> + + + + + - - - - - - - - + + + + + + + + - - - - + + + + - - - - - - - - + + - + + + + + + + + + - + - + - + - + - - - + + + - + - - - - + + + + - - + + diff --git a/objectType.xml b/objectType.xml index 275c3d1..a02fb15 100644 --- a/objectType.xml +++ b/objectType.xml @@ -2,17 +2,17 @@ - be.bastelstu.wcf.chat.room + be.bastelstu.chat.room com.woltlab.wcf.acl - be.bastelstu.wcf.chat.activityPointEvent.join + be.bastelstu.chat.activityPointEvent.join com.woltlab.wcf.user.activityPointEvent 0 wcf\system\user\activity\point\DefaultUserActivityPointObjectProcessor - be.bastelstu.wcf.chat.activityPointEvent.message + be.bastelstu.chat.activityPointEvent.message com.woltlab.wcf.user.activityPointEvent 0 wcf\system\user\activity\point\DefaultUserActivityPointObjectProcessor diff --git a/package.xml b/package.xml index f5c62ce..1097358 100644 --- a/package.xml +++ b/package.xml @@ -1,10 +1,10 @@ - + - 0 + 1 3.0.0 Alpha 19 2011-11-26 @@ -35,7 +35,7 @@ acpMenu.xml userGroupOption.xml cronjob.xml - acp/be.bastelstu.wcf.chat.install.php + acp/be.bastelstu.chat.install.php @@ -51,6 +51,6 @@ acpMenu.xml userGroupOption.xml cronjob.xml - acp/be.bastelstu.wcf.chat.update.php + acp/be.bastelstu.chat.update.php diff --git a/pagemenu.xml b/pagemenu.xml index a9b0c76..6b60eb8 100755 --- a/pagemenu.xml +++ b/pagemenu.xml @@ -1,10 +1,10 @@ - - index.php/Chat + + header - \wcf\system\menu\page\ChatPageMenuItemProvider + \chat\system\menu\page\ChatPageMenuItemProvider \ No newline at end of file diff --git a/template/chat.tpl b/template/chat.tpl index d853775..7c3303b 100644 --- a/template/chat.tpl +++ b/template/chat.tpl @@ -6,10 +6,10 @@ {include file='headInclude' sandbox=false} -{capture assign='sidebar'}{include file='chatSidebar'}{/capture} -{capture assign='headerNavigation'}{include file='chatNavigationInclude'}{/capture} +{capture assign='sidebar'}{include application='chat' file='chatSidebar'}{/capture} +{capture assign='headerNavigation'}{include application='chat' file='chatNavigationInclude'}{/capture} {include file='header' sandbox=false sidebarOrientation='right'}
      @@ -50,7 +50,7 @@
      - + @@ -87,32 +87,32 @@ @@ -142,7 +142,7 @@ // Boot the chat WCF.TabMenu.init(); new WCF.Message.Smilies();{* - *}{capture assign='chatMessageTemplate'}{include file='chatMessage'}{/capture} + *}{capture assign='chatMessageTemplate'}{include application='chat' file='chatMessage'}{/capture} chat = new be.bastelstu.WCF.Chat({ @@ -165,7 +165,7 @@ event.preventDefault(); if ($.wcfIsset('timsChatCopyrightDialog')) return WCF.showDialog('timsChatCopyrightDialog', { title: 'Tims Chat{if CHAT_SHOW_VERSION && $chatVersion|isset} {$chatVersion}{/if}' }); var container = $('
      '); - container.load('{link controller='Chat' action='Copyright'}{/link}', function() { + container.load('{link application='chat' controller='Chat' action='Copyright'}{/link}', function() { $('body').append(container); WCF.showDialog('timsChatCopyrightDialog', { title: 'Tims Chat{if CHAT_SHOW_VERSION && $chatVersion|isset} {$chatVersion}{/if}' }); }); diff --git a/template/chatJavascriptInclude.tpl b/template/chatJavascriptInclude.tpl index 9745f56..7937bf3 100644 --- a/template/chatJavascriptInclude.tpl +++ b/template/chatJavascriptInclude.tpl @@ -1,5 +1,5 @@ - - + + {if CHAT_SOCKET_IO_PATH}{/if} - + {event name='javascript'} \ No newline at end of file diff --git a/template/chatNavigationInclude.tpl b/template/chatNavigationInclude.tpl index 32a611e..bb64514 100644 --- a/template/chatNavigationInclude.tpl +++ b/template/chatNavigationInclude.tpl @@ -1,5 +1,5 @@
    • - {lang}wcf.chat.protocol{/lang} + {lang}wcf.chat.protocol{/lang}
    • diff --git a/template/chatSidebar.tpl b/template/chatSidebar.tpl index 7635766..802bde4 100644 --- a/template/chatSidebar.tpl +++ b/template/chatSidebar.tpl @@ -2,7 +2,7 @@ @@ -15,7 +15,7 @@ {foreach from=$rooms item='roomListRoom'} {if $roomListRoom->canEnter()} roomID == $room->roomID} class="activeMenuItem"{/if}> - {$roomListRoom} + {$roomListRoom} {/if} {/foreach} diff --git a/userGroupOption.xml b/userGroupOption.xml index 14c09c2..9303986 100644 --- a/userGroupOption.xml +++ b/userGroupOption.xml @@ -8,8 +8,8 @@ mod - - admin.content + + admin @@ -80,20 +80,20 @@ 0 1 - - -