diff options
Diffstat (limited to 'library/ajaxchat/chat/lib')
66 files changed, 10798 insertions, 0 deletions
diff --git a/library/ajaxchat/chat/lib/.htaccess b/library/ajaxchat/chat/lib/.htaccess new file mode 100644 index 000000000..91e386dc9 --- /dev/null +++ b/library/ajaxchat/chat/lib/.htaccess @@ -0,0 +1,4 @@ +AuthType Basic +AuthName "Forbidden" +AuthUserFile /dev/null +require user nobody
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChat.php b/library/ajaxchat/chat/lib/class/AJAXChat.php new file mode 100644 index 000000000..2cf7aa11f --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChat.php @@ -0,0 +1,3326 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+// Ajax Chat backend logic:
+class AJAXChat {
+
+ var $db;
+ var $_config;
+ var $_requestVars;
+ var $_infoMessages;
+ var $_channels;
+ var $_allChannels;
+ var $_view;
+ var $_lang;
+ var $_invitations;
+ var $_customVars;
+ var $_sessionNew;
+ var $_onlineUsersData;
+ var $_bannedUsersData;
+
+ function __construct() {
+ $this->initialize();
+ }
+
+ function initialize() {
+ // Initialize configuration settings:
+ $this->initConfig();
+
+ // Initialize the DataBase connection:
+ $this->initDataBaseConnection();
+
+ // Initialize request variables:
+ $this->initRequestVars();
+
+ // Initialize the chat session:
+ $this->initSession();
+
+ // Handle the browser request and send the response content:
+ $this->handleRequest();
+ }
+
+ function initConfig() {
+ $config = null;
+ if (!include(AJAX_CHAT_PATH.'lib/config.php')) {
+ echo('<strong>Error:</strong> Could not find a config.php file in "'.AJAX_CHAT_PATH.'"lib/". Check to make sure the file exists.');
+ die();
+ }
+ $this->_config = &$config;
+
+ // Initialize custom configuration settings:
+ $this->initCustomConfig();
+ }
+
+ function initRequestVars() {
+ $this->_requestVars = array();
+ $this->_requestVars['ajax'] = isset($_REQUEST['ajax']) ? true : false;
+ $this->_requestVars['userID'] = isset($_REQUEST['userID']) ? (int)$_REQUEST['userID'] : null;
+ $this->_requestVars['userName'] = isset($_REQUEST['userName']) ? $_REQUEST['userName'] : null;
+ $this->_requestVars['channelID'] = isset($_REQUEST['channelID']) ? (int)$_REQUEST['channelID'] : null;
+ $this->_requestVars['channelName'] = isset($_REQUEST['channelName']) ? $_REQUEST['channelName'] : null;
+ $this->_requestVars['text'] = isset($_POST['text']) ? $_POST['text'] : null;
+ $this->_requestVars['lastID'] = isset($_REQUEST['lastID']) ? (int)$_REQUEST['lastID'] : 0;
+ $this->_requestVars['login'] = isset($_REQUEST['login']) ? true : false;
+ $this->_requestVars['logout'] = isset($_REQUEST['logout']) ? true : false;
+ $this->_requestVars['password'] = isset($_REQUEST['password']) ? $_REQUEST['password'] : null;
+ $this->_requestVars['view'] = isset($_REQUEST['view']) ? $_REQUEST['view'] : null;
+ $this->_requestVars['year'] = isset($_REQUEST['year']) ? (int)$_REQUEST['year'] : null;
+ $this->_requestVars['month'] = isset($_REQUEST['month']) ? (int)$_REQUEST['month'] : null;
+ $this->_requestVars['day'] = isset($_REQUEST['day']) ? (int)$_REQUEST['day'] : null;
+ $this->_requestVars['hour'] = isset($_REQUEST['hour']) ? (int)$_REQUEST['hour'] : null;
+ $this->_requestVars['search'] = isset($_REQUEST['search']) ? $_REQUEST['search'] : null;
+ $this->_requestVars['shoutbox'] = isset($_REQUEST['shoutbox']) ? true : false;
+ $this->_requestVars['getInfos'] = isset($_REQUEST['getInfos']) ? $_REQUEST['getInfos'] : null;
+ $this->_requestVars['lang'] = isset($_REQUEST['lang']) ? $_REQUEST['lang'] : null;
+ $this->_requestVars['delete'] = isset($_REQUEST['delete']) ? (int)$_REQUEST['delete'] : null;
+
+ // Initialize custom request variables:
+ $this->initCustomRequestVars();
+
+ // Remove slashes which have been added to user input strings if magic_quotes_gpc is On:
+ if(get_magic_quotes_gpc()) {
+ // It is safe to remove the slashes as we escape user data ourself
+ array_walk(
+ $this->_requestVars,
+ create_function(
+ '&$value, $key',
+ 'if(is_string($value)) $value = stripslashes($value);'
+ )
+ );
+ }
+ }
+
+ function initDataBaseConnection() {
+ // Create a new database object:
+ $this->db = new AJAXChatDataBase(
+ $this->_config['dbConnection']
+ );
+ // Use a new database connection if no existing is given:
+ if(!$this->_config['dbConnection']['link']) {
+ // Connect to the database server:
+ $this->db->connect($this->_config['dbConnection']);
+ if($this->db->error()) {
+ echo $this->db->getError();
+ die();
+ }
+ // Select the database:
+ $this->db->select($this->_config['dbConnection']['name']);
+ if($this->db->error()) {
+ echo $this->db->getError();
+ die();
+ }
+ }
+ // Unset the dbConnection array for safety purposes:
+ unset($this->_config['dbConnection']);
+ }
+
+ function getDataBaseTable($table) {
+ return ($this->db->getName() ? '`'.$this->db->getName().'`.'.$this->getConfig('dbTableNames',$table) : $this->getConfig('dbTableNames',$table));
+ }
+
+ function initSession() {
+ // Start the PHP session (if not already started):
+ $this->startSession();
+
+ if($this->isLoggedIn()) {
+ // Logout if we receive a logout request, the chat has been closed or the userID could not be revalidated:
+ if($this->getRequestVar('logout') || !$this->isChatOpen() || !$this->revalidateUserID()) {
+ $this->logout();
+ return;
+ }
+ // Logout if the Session IP is not the same when logged in and ipCheck is enabled:
+ if($this->getConfig('ipCheck') && ($this->getSessionIP() === null || $this->getSessionIP() != $_SERVER['REMOTE_ADDR'])) {
+ $this->logout('IP');
+ return;
+ }
+ } else if(
+ // Login if auto-login enabled or a login, userName or shoutbox parameter is given:
+ $this->getConfig('forceAutoLogin') ||
+ $this->getRequestVar('login') ||
+ $this->getRequestVar('userName') ||
+ $this->getRequestVar('shoutbox')
+ ) {
+ $this->login();
+ }
+
+ // Initialize the view:
+ $this->initView();
+
+ if($this->getView() == 'chat') {
+ $this->initChatViewSession();
+ } else if($this->getView() == 'logs') {
+ $this->initLogsViewSession();
+ }
+
+ if(!$this->getRequestVar('ajax') && !headers_sent()) {
+ // Set style cookie:
+ $this->setStyle();
+ // Set langCode cookie:
+ $this->setLangCodeCookie();
+ }
+
+ $this->initCustomSession();
+ }
+
+ function initLogsViewSession() {
+ if($this->getConfig('socketServerEnabled')) {
+ if(!$this->getSessionVar('logsViewSocketAuthenticated')) {
+ $this->updateLogsViewSocketAuthentication();
+ $this->setSessionVar('logsViewSocketAuthenticated', true);
+ }
+ }
+ }
+
+ function updateLogsViewSocketAuthentication() {
+ if($this->getUserRole() != AJAX_CHAT_ADMIN) {
+ $channels = array();
+ foreach($this->getChannels() as $channel) {
+ if($this->getConfig('logsUserAccessChannelList') && !in_array($channel, $this->getConfig('logsUserAccessChannelList'))) {
+ continue;
+ }
+ array_push($channels, $channel);
+ }
+ array_push($channels, $this->getPrivateMessageID());
+ array_push($channels, $this->getPrivateChannelID());
+ } else {
+ // The channelID "ALL" authenticates for all channels:
+ $channels = array('ALL');
+ }
+ $this->updateSocketAuthentication(
+ $this->getUserID(),
+ $this->getSocketRegistrationID(),
+ $channels
+ );
+ }
+
+ function initChatViewSession() {
+ // If channel is not null we are logged in to the chat view:
+ if($this->getChannel() !== null) {
+ // Check if the current user has been logged out due to inactivity:
+ if(!$this->isUserOnline()) {
+ $this->logout();
+ return;
+ }
+ if($this->getRequestVar('ajax')) {
+ $this->initChannel();
+ $this->updateOnlineStatus();
+ $this->checkAndRemoveInactive();
+ }
+ } else {
+ if($this->getRequestVar('ajax')) {
+ // Set channel, insert login messages and add to online list on first ajax request in chat view:
+ $this->chatViewLogin();
+ }
+ }
+ }
+
+ function isChatOpen() {
+ if($this->getUserRole() == AJAX_CHAT_ADMIN)
+ return true;
+ if($this->getConfig('chatClosed'))
+ return false;
+ $time = time();
+ if($this->getConfig('timeZoneOffset') !== null) {
+ // Subtract the server timezone offset and add the config timezone offset:
+ $time -= date('Z', $time);
+ $time += $this->getConfig('timeZoneOffset');
+ }
+ // Check the opening hours:
+ if($this->getConfig('openingHour') < $this->getConfig('closingHour'))
+ {
+ if(($this->getConfig('openingHour') > date('G', $time)) || ($this->getConfig('closingHour') <= date('G', $time)))
+ return false;
+ }
+ else
+ {
+ if(($this->getConfig('openingHour') > date('G', $time)) && ($this->getConfig('closingHour') <= date('G', $time)))
+ return false;
+ }
+ // Check the opening weekdays:
+ if(!in_array(date('w', $time), $this->getConfig('openingWeekDays')))
+ return false;
+ return true;
+ }
+
+ function handleRequest() {
+ if($this->getRequestVar('ajax')) {
+ if($this->isLoggedIn()) {
+ // Parse info requests (for current userName, etc.):
+ $this->parseInfoRequests();
+
+ // Parse command requests (e.g. message deletion):
+ $this->parseCommandRequests();
+
+ // Parse message requests:
+ $this->initMessageHandling();
+ }
+ // Send chat messages and online user list in XML format:
+ $this->sendXMLMessages();
+ } else {
+ // Display XHTML content for non-ajax requests:
+ $this->sendXHTMLContent();
+ }
+ }
+
+ function parseCommandRequests() {
+ if($this->getRequestVar('delete') !== null) {
+ $this->deleteMessage($this->getRequestVar('delete'));
+ }
+ }
+
+ function parseInfoRequests() {
+ if($this->getRequestVar('getInfos')) {
+ $infoRequests = explode(',', $this->getRequestVar('getInfos'));
+ foreach($infoRequests as $infoRequest) {
+ $this->parseInfoRequest($infoRequest);
+ }
+ }
+ }
+
+ function parseInfoRequest($infoRequest) {
+ switch($infoRequest) {
+ case 'userID':
+ $this->addInfoMessage($this->getUserID(), 'userID');
+ break;
+ case 'userName':
+ $this->addInfoMessage($this->getUserName(), 'userName');
+ break;
+ case 'userRole':
+ $this->addInfoMessage($this->getUserRole(), 'userRole');
+ break;
+ case 'channelID':
+ $this->addInfoMessage($this->getChannel(), 'channelID');
+ break;
+ case 'channelName':
+ $this->addInfoMessage($this->getChannelName(), 'channelName');
+ break;
+ case 'socketRegistrationID':
+ $this->addInfoMessage($this->getSocketRegistrationID(), 'socketRegistrationID');
+ break;
+ default:
+ $this->parseCustomInfoRequest($infoRequest);
+ }
+ }
+
+ function sendXHTMLContent() {
+ $httpHeader = new AJAXChatHTTPHeader($this->getConfig('contentEncoding'), $this->getConfig('contentType'));
+
+ $template = new AJAXChatTemplate($this, $this->getTemplateFileName(), $httpHeader->getContentType());
+
+ // Send HTTP header:
+ $httpHeader->send();
+
+ // Send parsed template content:
+ echo $template->getParsedContent();
+ }
+
+ function getTemplateFileName() {
+ switch($this->getView()) {
+ case 'chat':
+ return AJAX_CHAT_PATH.'lib/template/loggedIn.html';
+ case 'logs':
+ return AJAX_CHAT_PATH.'lib/template/logs.html';
+ default:
+ return AJAX_CHAT_PATH.'lib/template/loggedOut.html';
+ }
+ }
+
+ function initView() {
+ $this->_view = null;
+ // "chat" is the default view:
+ $view = ($this->getRequestVar('view') === null) ? 'chat' : $this->getRequestVar('view');
+ if($this->hasAccessTo($view)) {
+ $this->_view = $view;
+ }
+ }
+
+ function getView() {
+ return $this->_view;
+ }
+
+ function hasAccessTo($view) {
+ switch($view) {
+ case 'chat':
+ case 'teaser':
+ if($this->isLoggedIn()) {
+ return true;
+ }
+ return false;
+ case 'logs':
+ if($this->isLoggedIn() && ($this->getUserRole() == AJAX_CHAT_ADMIN ||
+ ($this->getConfig('logsUserAccess') &&
+ ($this->getUserRole() == AJAX_CHAT_MODERATOR || $this->getUserRole() == AJAX_CHAT_USER))
+ )) {
+ return true;
+ }
+ return false;
+ default:
+ return false;
+ }
+ }
+
+ function login() {
+ // Retrieve valid login user data (from request variables or session data):
+ $userData = $this->getValidLoginUserData();
+
+ if(!$userData) {
+ $this->addInfoMessage('errorInvalidUser');
+ return false;
+ }
+
+ // If the chat is closed, only the admin may login:
+ if(!$this->isChatOpen() && $userData['userRole'] != AJAX_CHAT_ADMIN) {
+ $this->addInfoMessage('errorChatClosed');
+ return false;
+ }
+
+ if(!$this->getConfig('allowGuestLogins') && $userData['userRole'] == AJAX_CHAT_GUEST) {
+ return false;
+ }
+
+ // Check if userID or userName are already listed online:
+ if($this->isUserOnline($userData['userID']) || $this->isUserNameInUse($userData['userName'])) {
+ if($userData['userRole'] == AJAX_CHAT_USER || $userData['userRole'] == AJAX_CHAT_MODERATOR || $userData['userRole'] == AJAX_CHAT_ADMIN) {
+ // Set the registered user inactive and remove the inactive users so the user can be logged in again:
+ $this->setInactive($userData['userID'], $userData['userName']);
+ $this->removeInactive();
+ } else {
+ $this->addInfoMessage('errorUserInUse');
+ return false;
+ }
+ }
+
+ // Check if user is banned:
+ if($userData['userRole'] != AJAX_CHAT_ADMIN && $this->isUserBanned($userData['userName'], $userData['userID'], $_SERVER['REMOTE_ADDR'])) {
+ $this->addInfoMessage('errorBanned');
+ return false;
+ }
+
+ // Check if the max number of users is logged in (not affecting moderators or admins):
+ if(!($userData['userRole'] == AJAX_CHAT_MODERATOR || $userData['userRole'] == AJAX_CHAT_ADMIN) && $this->isMaxUsersLoggedIn()) {
+ $this->addInfoMessage('errorMaxUsersLoggedIn');
+ return false;
+ }
+
+ // Use a new session id (if session has been started by the chat):
+ $this->regenerateSessionID();
+
+ // Log in:
+ $this->setUserID($userData['userID']);
+ $this->setUserName($userData['userName']);
+ $this->setLoginUserName($userData['userName']);
+ $this->setUserRole($userData['userRole']);
+ $this->setLoggedIn(true);
+ $this->setLoginTimeStamp(time());
+
+ // IP Security check variable:
+ $this->setSessionIP($_SERVER['REMOTE_ADDR']);
+
+ // The client authenticates to the socket server using a socketRegistrationID:
+ if($this->getConfig('socketServerEnabled')) {
+ $this->setSocketRegistrationID(
+ md5(uniqid(rand(), true))
+ );
+ }
+
+ // Add userID, userName and userRole to info messages:
+ $this->addInfoMessage($this->getUserID(), 'userID');
+ $this->addInfoMessage($this->getUserName(), 'userName');
+ $this->addInfoMessage($this->getUserRole(), 'userRole');
+
+ // Purge logs:
+ if($this->getConfig('logsPurgeLogs')) {
+ $this->purgeLogs();
+ }
+
+ return true;
+ }
+
+ function chatViewLogin() {
+ $this->setChannel($this->getValidRequestChannelID());
+ $this->addToOnlineList();
+
+ // Add channelID and channelName to info messages:
+ $this->addInfoMessage($this->getChannel(), 'channelID');
+ $this->addInfoMessage($this->getChannelName(), 'channelName');
+
+ // Login message:
+ $text = '/login '.$this->getUserName();
+ $this->insertChatBotMessage(
+ $this->getChannel(),
+ $text,
+ null,
+ 1
+ );
+ }
+
+ function getValidRequestChannelID() {
+ $channelID = $this->getRequestVar('channelID');
+ $channelName = $this->getRequestVar('channelName');
+ // Check the given channelID, or get channelID from channelName:
+ if($channelID === null) {
+ if($channelName !== null) {
+ $channelID = $this->getChannelIDFromChannelName($channelName);
+ // channelName might need encoding conversion:
+ if($channelID === null) {
+ $channelID = $this->getChannelIDFromChannelName(
+ $this->trimChannelName($channelName, $this->getConfig('contentEncoding'))
+ );
+ }
+ }
+ }
+ // Validate the resulting channelID:
+ if(!$this->validateChannel($channelID)) {
+ if($this->getChannel() !== null) {
+ return $this->getChannel();
+ }
+ return $this->getConfig('defaultChannelID');
+ }
+ return $channelID;
+ }
+
+ function initChannel() {
+ $channelID = $this->getRequestVar('channelID');
+ $channelName = $this->getRequestVar('channelName');
+ if($channelID !== null) {
+ $this->switchChannel($this->getChannelNameFromChannelID($channelID));
+ } else if($channelName !== null) {
+ if($this->getChannelIDFromChannelName($channelName) === null) {
+ // channelName might need encoding conversion:
+ $channelName = $this->trimChannelName($channelName, $this->getConfig('contentEncoding'));
+ }
+ $this->switchChannel($channelName);
+ }
+ }
+
+ function logout($type=null) {
+ // Update the socket server authentication for the user:
+ if($this->getConfig('socketServerEnabled')) {
+ $this->updateSocketAuthentication($this->getUserID());
+ }
+ if($this->isUserOnline()) {
+ $this->chatViewLogout($type);
+ }
+ $this->setLoggedIn(false);
+ $this->destroySession();
+
+ // Re-initialize the view:
+ $this->initView();
+ }
+
+ function chatViewLogout($type) {
+ $this->removeFromOnlineList();
+ if($type !== null) {
+ $type = ' '.$type;
+ }
+ // Logout message
+ $text = '/logout '.$this->getUserName().$type;
+ $this->insertChatBotMessage(
+ $this->getChannel(),
+ $text,
+ null,
+ 1
+ );
+ }
+
+ function switchChannel($channelName) {
+ $channelID = $this->getChannelIDFromChannelName($channelName);
+
+ if($channelID !== null && $this->getChannel() == $channelID) {
+ // User is already in the given channel, return:
+ return;
+ }
+
+ // Check if we have a valid channel:
+ if(!$this->validateChannel($channelID)) {
+ // Invalid channel:
+ $text = '/error InvalidChannelName '.$channelName;
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ $text
+ );
+ return;
+ }
+
+ $oldChannel = $this->getChannel();
+
+ $this->setChannel($channelID);
+ $this->updateOnlineList();
+
+ // Channel leave message
+ $text = '/channelLeave '.$this->getUserName();
+ $this->insertChatBotMessage(
+ $oldChannel,
+ $text,
+ null,
+ 1
+ );
+
+ // Channel enter message
+ $text = '/channelEnter '.$this->getUserName();
+ $this->insertChatBotMessage(
+ $this->getChannel(),
+ $text,
+ null,
+ 1
+ );
+
+ $this->addInfoMessage($channelName, 'channelSwitch');
+ $this->addInfoMessage($channelID, 'channelID');
+ $this->_requestVars['lastID'] = 0;
+ }
+
+ function addToOnlineList() {
+ $sql = 'INSERT INTO '.$this->getDataBaseTable('online').'(
+ userID,
+ userName,
+ userRole,
+ channel,
+ dateTime,
+ ip
+ )
+ VALUES (
+ '.$this->db->makeSafe($this->getUserID()).',
+ '.$this->db->makeSafe($this->getUserName()).',
+ '.$this->db->makeSafe($this->getUserRole()).',
+ '.$this->db->makeSafe($this->getChannel()).',
+ NOW(),
+ '.$this->db->makeSafe($this->ipToStorageFormat($_SERVER['REMOTE_ADDR'])).'
+ );';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $this->resetOnlineUsersData();
+ }
+
+ function removeFromOnlineList() {
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('online').'
+ WHERE
+ userID = '.$this->db->makeSafe($this->getUserID()).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $this->removeUserFromOnlineUsersData();
+ }
+
+ function updateOnlineList() {
+ $sql = 'UPDATE
+ '.$this->getDataBaseTable('online').'
+ SET
+ userName = '.$this->db->makeSafe($this->getUserName()).',
+ channel = '.$this->db->makeSafe($this->getChannel()).',
+ dateTime = NOW(),
+ ip = '.$this->db->makeSafe($this->ipToStorageFormat($_SERVER['REMOTE_ADDR'])).'
+ WHERE
+ userID = '.$this->db->makeSafe($this->getUserID()).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $this->resetOnlineUsersData();
+ }
+
+ function initMessageHandling() {
+ // Don't handle messages if we are not in chat view:
+ if($this->getView() != 'chat') {
+ return;
+ }
+
+ // Check if we have been uninvited from a private or restricted channel:
+ if(!$this->validateChannel($this->getChannel())) {
+ // Switch to the default channel:
+ $this->switchChannel($this->getChannelNameFromChannelID($this->getConfig('defaultChannelID')));
+ return;
+ }
+
+ if($this->getRequestVar('text') !== null) {
+ $this->insertMessage($this->getRequestVar('text'));
+ }
+ }
+
+ function insertParsedMessage($text) {
+
+ // If a queryUserName is set, sent all messages as private messages to this userName:
+ if($this->getQueryUserName() !== null && strpos($text, '/') !== 0) {
+ $text = '/msg '.$this->getQueryUserName().' '.$text;
+ }
+
+ // Parse IRC-style commands:
+ if(strpos($text, '/') === 0) {
+ $textParts = explode(' ', $text);
+
+ switch($textParts[0]) {
+
+ // Channel switch:
+ case '/join':
+ $this->insertParsedMessageJoin($textParts);
+ break;
+
+ // Logout:
+ case '/quit':
+ $this->logout();
+ break;
+
+ // Private message:
+ case '/msg':
+ case '/describe':
+ $this->insertParsedMessagePrivMsg($textParts);
+ break;
+
+ // Invitation:
+ case '/invite':
+ $this->insertParsedMessageInvite($textParts);
+ break;
+
+ // Uninvitation:
+ case '/uninvite':
+ $this->insertParsedMessageUninvite($textParts);
+ break;
+
+ // Private messaging:
+ case '/query':
+ $this->insertParsedMessageQuery($textParts);
+ break;
+
+ // Kicking offending users from the chat:
+ case '/kick':
+ $this->insertParsedMessageKick($textParts);
+ break;
+
+ // Listing banned users:
+ case '/bans':
+ $this->insertParsedMessageBans($textParts);
+ break;
+
+ // Unban user (remove from ban list):
+ case '/unban':
+ $this->insertParsedMessageUnban($textParts);
+ break;
+
+ // Describing actions:
+ case '/me':
+ case '/action':
+ $this->insertParsedMessageAction($textParts);
+ break;
+
+
+ // Listing online Users:
+ case '/who':
+ $this->insertParsedMessageWho($textParts);
+ break;
+
+ // Listing available channels:
+ case '/list':
+ $this->insertParsedMessageList($textParts);
+ break;
+
+ // Retrieving the channel of a User:
+ case '/whereis':
+ $this->insertParsedMessageWhereis($textParts);
+ break;
+
+ // Listing information about a User:
+ case '/whois':
+ $this->insertParsedMessageWhois($textParts);
+ break;
+
+ // Rolling dice:
+ case '/roll':
+ $this->insertParsedMessageRoll($textParts);
+ break;
+
+ // Switching userName:
+ case '/nick':
+ $this->insertParsedMessageNick($textParts);
+ break;
+
+ // Custom or unknown command:
+ default:
+ if(!$this->parseCustomCommands($text, $textParts)) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UnknownCommand '.$textParts[0]
+ );
+ }
+ }
+
+ } else {
+ // No command found, just insert the plain message:
+ $this->insertCustomMessage(
+ $this->getUserID(),
+ $this->getUserName(),
+ $this->getUserRole(),
+ $this->getChannel(),
+ $text
+ );
+ }
+ }
+
+ function insertParsedMessageJoin($textParts) {
+ if(count($textParts) == 1) {
+ // join with no arguments is the own private channel, if allowed:
+ if($this->isAllowedToCreatePrivateChannel()) {
+ // Private channels are identified by square brackets:
+ $this->switchChannel($this->getChannelNameFromChannelID($this->getPrivateChannelID()));
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingChannelName'
+ );
+ }
+ } else {
+ $this->switchChannel($textParts[1]);
+ }
+ }
+
+ function insertParsedMessagePrivMsg($textParts) {
+ if($this->isAllowedToSendPrivateMessage()) {
+ if(count($textParts) < 3) {
+ if(count($textParts) == 2) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingText'
+ );
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ }
+ } else {
+ // Get UserID from UserName:
+ $toUserID = $this->getIDFromName($textParts[1]);
+ if($toUserID === null) {
+ if($this->getQueryUserName() !== null) {
+ // Close the current query:
+ $this->insertMessage('/query');
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ }
+ } else {
+ // Insert /privaction command if /describe is used:
+ $command = ($textParts[0] == '/describe') ? '/privaction' : '/privmsg';
+ // Copy of private message to current User:
+ $this->insertCustomMessage(
+ $this->getUserID(),
+ $this->getUserName(),
+ $this->getUserRole(),
+ $this->getPrivateMessageID(),
+ $command.'to '.$textParts[1].' '.implode(' ', array_slice($textParts, 2))
+ );
+ // Private message to requested User:
+ $this->insertCustomMessage(
+ $this->getUserID(),
+ $this->getUserName(),
+ $this->getUserRole(),
+ $this->getPrivateMessageID($toUserID),
+ $command.' '.implode(' ', array_slice($textParts, 2))
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error PrivateMessageNotAllowed'
+ );
+ }
+ }
+
+ function insertParsedMessageInvite($textParts) {
+ if($this->getChannel() == $this->getPrivateChannelID() || in_array($this->getChannel(), $this->getChannels())) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ $toUserID = $this->getIDFromName($textParts[1]);
+ if($toUserID === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // Add the invitation to the database:
+ $this->addInvitation($toUserID);
+ $invitationChannelName = $this->getChannelNameFromChannelID($this->getChannel());
+ // Copy of invitation to current User:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/inviteto '.$textParts[1].' '.$invitationChannelName
+ );
+ // Invitation to requested User:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID($toUserID),
+ '/invite '.$this->getUserName().' '.$invitationChannelName
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error InviteNotAllowed'
+ );
+ }
+ }
+
+ function insertParsedMessageUninvite($textParts) {
+ if($this->getChannel() == $this->getPrivateChannelID() || in_array($this->getChannel(), $this->getChannels())) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ $toUserID = $this->getIDFromName($textParts[1]);
+ if($toUserID === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // Remove the invitation from the database:
+ $this->removeInvitation($toUserID);
+ $invitationChannelName = $this->getChannelNameFromChannelID($this->getChannel());
+ // Copy of uninvitation to current User:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/uninviteto '.$textParts[1].' '.$invitationChannelName
+ );
+ // Uninvitation to requested User:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID($toUserID),
+ '/uninvite '.$this->getUserName().' '.$invitationChannelName
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UninviteNotAllowed'
+ );
+ }
+ }
+
+ function insertParsedMessageQuery($textParts) {
+ if($this->isAllowedToSendPrivateMessage()) {
+ if(count($textParts) == 1) {
+ if($this->getQueryUserName() !== null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/queryClose '.$this->getQueryUserName()
+ );
+ // Close the current query:
+ $this->setQueryUserName(null);
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error NoOpenQuery'
+ );
+ }
+ } else {
+ if($this->getIDFromName($textParts[1]) === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ if($this->getQueryUserName() !== null) {
+ // Close the current query:
+ $this->insertMessage('/query');
+ }
+ // Open a query to the requested user:
+ $this->setQueryUserName($textParts[1]);
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/queryOpen '.$textParts[1]
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error PrivateMessageNotAllowed'
+ );
+ }
+ }
+
+ function insertParsedMessageKick($textParts) {
+ // Only moderators/admins may kick users:
+ if($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ // Get UserID from UserName:
+ $kickUserID = $this->getIDFromName($textParts[1]);
+ if($kickUserID === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // Check the role of the user to kick:
+ $kickUserRole = $this->getRoleFromID($kickUserID);
+ if($kickUserRole == AJAX_CHAT_ADMIN || ($kickUserRole == AJAX_CHAT_MODERATOR && $this->getUserRole() != AJAX_CHAT_ADMIN)) {
+ // Admins and moderators may not be kicked:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error KickNotAllowed '.$textParts[1]
+ );
+ } else {
+ // Kick user and insert message:
+ $channel = $this->getChannelFromID($kickUserID);
+ $banMinutes = (count($textParts) > 2) ? $textParts[2] : null;
+ $this->kickUser($textParts[1], $banMinutes, $kickUserID);
+ // If no channel found, user logged out before he could be kicked
+ if($channel !== null) {
+ $this->insertChatBotMessage(
+ $channel,
+ '/kick '.$textParts[1],
+ null,
+ 1
+ );
+ // Send a copy of the message to the current user, if not in the channel:
+ if($channel != $this->getChannel()) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/kick '.$textParts[1],
+ null,
+ 1
+ );
+ }
+ }
+ }
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error CommandNotAllowed '.$textParts[0]
+ );
+ }
+ }
+
+ function insertParsedMessageBans($textParts) {
+ // Only moderators/admins may see the list of banned users:
+ if($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ $this->removeExpiredBans();
+ $bannedUsers = $this->getBannedUsers();
+ if(count($bannedUsers) > 0) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/bans '.implode(' ', $bannedUsers)
+ );
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/bansEmpty -'
+ );
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error CommandNotAllowed '.$textParts[0]
+ );
+ }
+ }
+
+ function insertParsedMessageUnban($textParts) {
+ // Only moderators/admins may unban users:
+ if($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ $this->removeExpiredBans();
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ if(!in_array($textParts[1], $this->getBannedUsers())) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // Unban user and insert message:
+ $this->unbanUser($textParts[1]);
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/unban '.$textParts[1]
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error CommandNotAllowed '.$textParts[0]
+ );
+ }
+ }
+
+ function insertParsedMessageAction($textParts) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingText'
+ );
+ } else {
+ if($this->getQueryUserName() !== null) {
+ // If we are in query mode, sent the action to the query user:
+ $this->insertMessage('/describe '.$this->getQueryUserName().' '.implode(' ', array_slice($textParts, 1)));
+ } else {
+ $this->insertCustomMessage(
+ $this->getUserID(),
+ $this->getUserName(),
+ $this->getUserRole(),
+ $this->getChannel(),
+ implode(' ', $textParts)
+ );
+ }
+ }
+ }
+
+ function insertParsedMessageWho($textParts) {
+ if(count($textParts) == 1) {
+ if($this->isAllowedToListHiddenUsers()) {
+ // List online users from any channel:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/who '.implode(' ', $this->getOnlineUsers())
+ );
+ } else {
+ // Get online users for all accessible channels:
+ $channels = $this->getChannels();
+ // Add the own private channel if allowed:
+ if($this->isAllowedToCreatePrivateChannel()) {
+ array_push($channels, $this->getPrivateChannelID());
+ }
+ // Add the invitation channels:
+ foreach($this->getInvitations() as $channelID) {
+ if(!in_array($channelID, $channels)) {
+ array_push($channels, $channelID);
+ }
+ }
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/who '.implode(' ', $this->getOnlineUsers($channels))
+ );
+ }
+ } else {
+ $channelName = $textParts[1];
+ $channelID = $this->getChannelIDFromChannelName($channelName);
+ if(!$this->validateChannel($channelID)) {
+ // Invalid channel:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error InvalidChannelName '.$channelName
+ );
+ } else {
+ // Get online users for the given channel:
+ $onlineUsers = $this->getOnlineUsers(array($channelID));
+ if(count($onlineUsers) > 0) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/whoChannel '.$channelName.' '.implode(' ', $onlineUsers)
+ );
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/whoEmpty -'
+ );
+ }
+ }
+ }
+ }
+
+ function insertParsedMessageList($textParts) {
+ // Get the names of all accessible channels:
+ $channelNames = $this->getChannelNames();
+ // Add the own private channel, if allowed:
+ if($this->isAllowedToCreatePrivateChannel()) {
+ array_push($channelNames, $this->getPrivateChannelName());
+ }
+ // Add the invitation channels:
+ foreach($this->getInvitations() as $channelID) {
+ $channelName = $this->getChannelNameFromChannelID($channelID);
+ if($channelName !== null && !in_array($channelName, $channelNames)) {
+ array_push($channelNames, $channelName);
+ }
+ }
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/list '.implode(' ', $channelNames)
+ );
+ }
+
+ function insertParsedMessageWhereis($textParts) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ // Get UserID from UserName:
+ $whereisUserID = $this->getIDFromName($textParts[1]);
+ if($whereisUserID === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ $channelID = $this->getChannelFromID($whereisUserID);
+ if($this->validateChannel($channelID)) {
+ $channelName = $this->getChannelNameFromChannelID($channelID);
+ } else {
+ $channelName = null;
+ }
+ if($channelName === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // List user information:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/whereis '.$textParts[1].' '.$channelName
+ );
+ }
+ }
+ }
+ }
+
+ function insertParsedMessageWhois($textParts) {
+ // Only moderators/admins:
+ if($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ // Get UserID from UserName:
+ $whoisUserID = $this->getIDFromName($textParts[1]);
+ if($whoisUserID === null) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameNotFound '.$textParts[1]
+ );
+ } else {
+ // List user information:
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/whois '.$textParts[1].' '.$this->getIPFromID($whoisUserID)
+ );
+ }
+ }
+ } else {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error CommandNotAllowed '.$textParts[0]
+ );
+ }
+ }
+
+ function insertParsedMessageRoll($textParts) {
+ if(count($textParts) == 1) {
+ // default is one d6:
+ $text = '/roll '.$this->getUserName().' 1d6 '.$this->rollDice(6);
+ } else {
+ $diceParts = explode('d', $textParts[1]);
+ if(count($diceParts) == 2) {
+ $number = (int)$diceParts[0];
+ $sides = (int)$diceParts[1];
+
+ // Dice number must be an integer between 1 and 100, else roll only one:
+ $number = ($number > 0 && $number <= 100) ? $number : 1;
+
+ // Sides must be an integer between 1 and 100, else take 6:
+ $sides = ($sides > 0 && $sides <= 100) ? $sides : 6;
+
+ $text = '/roll '.$this->getUserName().' '.$number.'d'.$sides.' ';
+ for($i=0; $i<$number; $i++) {
+ if($i != 0)
+ $text .= ',';
+ $text .= $this->rollDice($sides);
+ }
+ } else {
+ // if dice syntax is invalid, roll one d6:
+ $text = '/roll '.$this->getUserName().' 1d6 '.$this->rollDice(6);
+ }
+ }
+ $this->insertChatBotMessage(
+ $this->getChannel(),
+ $text
+ );
+ }
+
+ function insertParsedMessageNick($textParts) {
+ if(!$this->getConfig('allowNickChange') ||
+ (!$this->getConfig('allowGuestUserName') && $this->getUserRole() == AJAX_CHAT_GUEST)) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error CommandNotAllowed '.$textParts[0]
+ );
+ } else if(count($textParts) == 1) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MissingUserName'
+ );
+ } else {
+ $newUserName = implode(' ', array_slice($textParts, 1));
+ if($newUserName == $this->getLoginUserName()) {
+ // Allow the user to regain the original login userName:
+ $prefix = '';
+ $suffix = '';
+ } else if($this->getUserRole() == AJAX_CHAT_GUEST) {
+ $prefix = $this->getConfig('guestUserPrefix');
+ $suffix = $this->getConfig('guestUserSuffix');
+ } else {
+ $prefix = $this->getConfig('changedNickPrefix');
+ $suffix = $this->getConfig('changedNickSuffix');
+ }
+ $maxLength = $this->getConfig('userNameMaxLength')
+ - $this->stringLength($prefix)
+ - $this->stringLength($suffix);
+ $newUserName = $this->trimString($newUserName, 'UTF-8', $maxLength, true);
+ if(!$newUserName) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error InvalidUserName'
+ );
+ } else {
+ $newUserName = $prefix.$newUserName.$suffix;
+ if($this->isUserNameInUse($newUserName)) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error UserNameInUse'
+ );
+ } else {
+ $oldUserName = $this->getUserName();
+ $this->setUserName($newUserName);
+ $this->updateOnlineList();
+ // Add info message to update the client-side stored userName:
+ $this->addInfoMessage($this->getUserName(), 'userName');
+ $this->insertChatBotMessage(
+ $this->getChannel(),
+ '/nick '.$oldUserName.' '.$newUserName,
+ null,
+ 2
+ );
+ }
+ }
+ }
+ }
+
+ function insertMessage($text) {
+ if(!$this->isAllowedToWriteMessage())
+ return;
+
+ if(!$this->floodControl())
+ return;
+
+ $text = $this->trimMessageText($text);
+ if($text == '')
+ return;
+
+ if(!$this->onNewMessage($text))
+ return;
+
+ $text = $this->replaceCustomText($text);
+
+ $this->insertParsedMessage($text);
+ }
+
+ function deleteMessage($messageID) {
+ // Retrieve the channel of the given message:
+ $sql = 'SELECT
+ channel
+ FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ id='.$this->db->makeSafe($messageID).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $row = $result->fetch();
+
+ if($row['channel'] !== null) {
+ $channel = $row['channel'];
+
+ if($this->getUserRole() == AJAX_CHAT_ADMIN) {
+ $condition = '';
+ } else if($this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ $condition = ' AND
+ NOT (userRole='.$this->db->makeSafe(AJAX_CHAT_ADMIN).')
+ AND
+ NOT (userRole='.$this->db->makeSafe(AJAX_CHAT_CHATBOT).')';
+ } else if($this->getUserRole() == AJAX_CHAT_USER && $this->getConfig('allowUserMessageDelete')) {
+ $condition = 'AND
+ (
+ userID='.$this->db->makeSafe($this->getUserID()).'
+ OR
+ (
+ channel = '.$this->db->makeSafe($this->getPrivateMessageID()).'
+ OR
+ channel = '.$this->db->makeSafe($this->getPrivateChannelID()).'
+ )
+ AND
+ NOT (userRole='.$this->db->makeSafe(AJAX_CHAT_ADMIN).')
+ AND
+ NOT (userRole='.$this->db->makeSafe(AJAX_CHAT_CHATBOT).')
+ )';
+ } else {
+ return false;
+ }
+
+ // Remove given message from the database:
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ id='.$this->db->makeSafe($messageID).'
+ '.$condition.';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ if($result->affectedRows() == 1) {
+ // Insert a deletion command to remove the message from the clients chatlists:
+ $this->insertChatBotMessage($channel, '/delete '.$messageID);
+ return true;
+ }
+ }
+ return false;
+ }
+
+ function floodControl() {
+ // Moderators and Admins need no flood control:
+ if($this->getUserRole() == AJAX_CHAT_MODERATOR || $this->getUserRole() == AJAX_CHAT_ADMIN) {
+ return true;
+ }
+ $time = time();
+ // Check the time of the last inserted message:
+ if($this->getInsertedMessagesRateTimeStamp()+60 < $time) {
+ $this->setInsertedMessagesRateTimeStamp($time);
+ $this->setInsertedMessagesRate(1);
+ } else {
+ // Increase the inserted messages rate:
+ $rate = $this->getInsertedMessagesRate()+1;
+ $this->setInsertedMessagesRate($rate);
+ // Check if message rate is too high:
+ if($rate > $this->getConfig('maxMessageRate')) {
+ $this->insertChatBotMessage(
+ $this->getPrivateMessageID(),
+ '/error MaxMessageRate'
+ );
+ // Return false so the message is not inserted:
+ return false;
+ }
+ }
+ return true;
+ }
+
+ function isAllowedToWriteMessage() {
+ if($this->getUserRole() != AJAX_CHAT_GUEST)
+ return true;
+ if($this->getConfig('allowGuestWrite'))
+ return true;
+ return false;
+ }
+
+ function insertChatBotMessage($channelID, $messageText, $ip=null, $mode=0) {
+ $this->insertCustomMessage(
+ $this->getConfig('chatBotID'),
+ $this->getConfig('chatBotName'),
+ AJAX_CHAT_CHATBOT,
+ $channelID,
+ $messageText,
+ $ip,
+ $mode
+ );
+ }
+
+ function insertCustomMessage($userID, $userName, $userRole, $channelID, $text, $ip=null, $mode=0) {
+ // The $mode parameter is used for socket updates:
+ // 0 = normal messages
+ // 1 = channel messages (e.g. login/logout, channel enter/leave, kick)
+ // 2 = messages with online user updates (nick)
+
+ $ip = $ip ? $ip : $_SERVER['REMOTE_ADDR'];
+
+ $sql = 'INSERT INTO '.$this->getDataBaseTable('messages').'(
+ userID,
+ userName,
+ userRole,
+ channel,
+ dateTime,
+ ip,
+ text
+ )
+ VALUES (
+ '.$this->db->makeSafe($userID).',
+ '.$this->db->makeSafe($userName).',
+ '.$this->db->makeSafe($userRole).',
+ '.$this->db->makeSafe($channelID).',
+ NOW(),
+ '.$this->db->makeSafe($this->ipToStorageFormat($ip)).',
+ '.$this->db->makeSafe($text).'
+ );';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ if($this->getConfig('socketServerEnabled')) {
+ $this->sendSocketMessage(
+ $this->getSocketBroadcastMessage(
+ $this->db->getLastInsertedID(),
+ time(),
+ $userID,
+ $userName,
+ $userRole,
+ $channelID,
+ $text,
+ $mode
+ )
+ );
+ }
+ }
+
+ function getSocketBroadcastMessage(
+ $messageID,
+ $timeStamp,
+ $userID,
+ $userName,
+ $userRole,
+ $channelID,
+ $text,
+ $mode
+ ) {
+ // The $mode parameter:
+ // 0 = normal messages
+ // 1 = channel messages (e.g. login/logout, channel enter/leave, kick)
+ // 2 = messages with online user updates (nick)
+
+ // Get the message XML content:
+ $xml = '<root chatID="'.$this->getConfig('socketServerChatID').'" channelID="'.$channelID.'" mode="'.$mode.'">';
+ if($mode) {
+ // Add the list of online users if the user list has been updated ($mode > 0):
+ $xml .= $this->getChatViewOnlineUsersXML(array($channelID));
+ }
+ if($mode != 1 || $this->getConfig('showChannelMessages')) {
+ $xml .= '<messages>';
+ $xml .= $this->getChatViewMessageXML(
+ $messageID,
+ $timeStamp,
+ $userID,
+ $userName,
+ $userRole,
+ $channelID,
+ $text
+ );
+ $xml .= '</messages>';
+ }
+ $xml .= '</root>';
+ return $xml;
+ }
+
+ function sendSocketMessage($message) {
+ // Open a TCP socket connection to the socket server:
+ if($socket = @socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) {
+ if(@socket_connect($socket, $this->getConfig('socketServerIP'), $this->getConfig('socketServerPort'))) {
+ // Append a null-byte to the string as EOL (End Of Line) character
+ // which is required by Flash XML socket communication:
+ $message .= "\0";
+ @socket_write(
+ $socket,
+ $message,
+ strlen($message) // Using strlen to count the bytes instead of the number of UTF-8 characters
+ );
+ }
+ @socket_close($socket);
+ }
+ }
+
+ function updateSocketAuthentication($userID, $socketRegistrationID=null, $channels=null) {
+ // If no $socketRegistrationID or no $channels are given the authentication is removed for the given user:
+ $authentication = '<authenticate chatID="'.$this->getConfig('socketServerChatID').'" userID="'.$userID.'" regID="'.$socketRegistrationID.'">';
+ if($channels) {
+ foreach($channels as $channelID) {
+ $authentication .= '<channel id="'.$channelID.'"/>';
+ }
+ }
+ $authentication .= '</authenticate>';
+ $this->sendSocketMessage($authentication);
+ }
+
+ function setSocketRegistrationID($value) {
+ $this->setSessionVar('SocketRegistrationID', $value);
+ }
+
+ function getSocketRegistrationID() {
+ return $this->getSessionVar('SocketRegistrationID');
+ }
+
+ function rollDice($sides) {
+ // seed with microseconds since last "whole" second:
+ mt_srand((double)microtime()*1000000);
+
+ return mt_rand(1, $sides);
+ }
+
+ function kickUser($userName, $banMinutes=null, $userID=null) {
+ if($userID === null) {
+ $userID = $this->getIDFromName($userName);
+ }
+ if($userID === null) {
+ return;
+ }
+
+ $banMinutes = $banMinutes ? $banMinutes : $this->getConfig('defaultBanTime');
+
+ if($banMinutes) {
+ // Ban User for the given time in minutes:
+ $this->banUser($userName, $banMinutes, $userID);
+ }
+
+ // Remove given User from online list:
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('online').'
+ WHERE
+ userID = '.$this->db->makeSafe($userID).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ // Update the socket server authentication for the kicked user:
+ if($this->getConfig('socketServerEnabled')) {
+ $this->updateSocketAuthentication($userID);
+ }
+
+ $this->removeUserFromOnlineUsersData($userID);
+ }
+
+ function getBannedUsersData($key=null, $value=null) {
+ if($this->_bannedUsersData === null) {
+ $this->_bannedUsersData = array();
+
+ $sql = 'SELECT
+ userID,
+ userName,
+ ip
+ FROM
+ '.$this->getDataBaseTable('bans').'
+ WHERE
+ NOW() < dateTime;';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ while($row = $result->fetch()) {
+ $row['ip'] = $this->ipFromStorageFormat($row['ip']);
+ array_push($this->_bannedUsersData, $row);
+ }
+
+ $result->free();
+ }
+
+ if($key) {
+ $bannedUsersData = array();
+ foreach($this->_bannedUsersData as $bannedUserData) {
+ if(!isset($bannedUserData[$key])) {
+ return $bannedUsersData;
+ }
+ if($value) {
+ if($bannedUserData[$key] == $value) {
+ array_push($bannedUsersData, $bannedUserData);
+ } else {
+ continue;
+ }
+ } else {
+ array_push($bannedUsersData, $bannedUserData[$key]);
+ }
+ }
+ return $bannedUsersData;
+ }
+
+ return $this->_bannedUsersData;
+ }
+
+ function getBannedUsers() {
+ return $this->getBannedUsersData('userName');
+ }
+
+ function banUser($userName, $banMinutes=null, $userID=null) {
+ if($userID === null) {
+ $userID = $this->getIDFromName($userName);
+ }
+ $ip = $this->getIPFromID($userID);
+ if(!$ip || $userID === null) {
+ return;
+ }
+
+ // Remove expired bans:
+ $this->removeExpiredBans();
+
+ $banMinutes = (int)$banMinutes;
+ if(!$banMinutes) {
+ // If banMinutes is not a valid integer, use the defaultBanTime:
+ $banMinutes = $this->getConfig('defaultBanTime');
+ }
+
+ $sql = 'INSERT INTO '.$this->getDataBaseTable('bans').'(
+ userID,
+ userName,
+ dateTime,
+ ip
+ )
+ VALUES (
+ '.$this->db->makeSafe($userID).',
+ '.$this->db->makeSafe($userName).',
+ DATE_ADD(NOW(), interval '.$this->db->makeSafe($banMinutes).' MINUTE),
+ '.$this->db->makeSafe($this->ipToStorageFormat($ip)).'
+ );';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function unbanUser($userName) {
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('bans').'
+ WHERE
+ userName = '.$this->db->makeSafe($userName).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function removeExpiredBans() {
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('bans').'
+ WHERE
+ dateTime < NOW();';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function setInactive($userID, $userName=null) {
+ $condition = 'userID='.$this->db->makeSafe($userID);
+ if($userName !== null) {
+ $condition .= ' OR userName='.$this->db->makeSafe($userName);
+ }
+ $sql = 'UPDATE
+ '.$this->getDataBaseTable('online').'
+ SET
+ dateTime = DATE_SUB(NOW(), interval '.(intval($this->getConfig('inactiveTimeout'))+1).' MINUTE)
+ WHERE
+ '.$condition.';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $this->resetOnlineUsersData();
+ }
+
+ function removeInactive() {
+ $sql = 'SELECT
+ userID,
+ userName,
+ channel
+ FROM
+ '.$this->getDataBaseTable('online').'
+ WHERE
+ NOW() > DATE_ADD(dateTime, interval '.$this->getConfig('inactiveTimeout').' MINUTE);';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ if($result->numRows() > 0) {
+ $condition = '';
+ while($row = $result->fetch()) {
+ if(!empty($condition))
+ $condition .= ' OR ';
+ // Add userID to condition for removal:
+ $condition .= 'userID='.$this->db->makeSafe($row['userID']);
+
+ // Update the socket server authentication for the kicked user:
+ if($this->getConfig('socketServerEnabled')) {
+ $this->updateSocketAuthentication($row['userID']);
+ }
+
+ $this->removeUserFromOnlineUsersData($row['userID']);
+
+ // Insert logout timeout message:
+ $text = '/logout '.$row['userName'].' Timeout';
+ $this->insertChatBotMessage(
+ $row['channel'],
+ $text,
+ null,
+ 1
+ );
+ }
+
+ $result->free();
+
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('online').'
+ WHERE
+ '.$condition.';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+ }
+
+ function updateOnlineStatus() {
+ // Update online status every 50 seconds (this allows update requests to be in time):
+ if(!$this->getStatusUpdateTimeStamp() || ((time() - $this->getStatusUpdateTimeStamp()) > 50)) {
+ $this->updateOnlineList();
+ $this->setStatusUpdateTimeStamp(time());
+ }
+ }
+
+ function checkAndRemoveInactive() {
+ // Remove inactive users every inactiveCheckInterval:
+ if(!$this->getInactiveCheckTimeStamp() || ((time() - $this->getInactiveCheckTimeStamp()) > $this->getConfig('inactiveCheckInterval')*60)) {
+ $this->removeInactive();
+ $this->setInactiveCheckTimeStamp(time());
+ }
+ }
+
+ function sendXMLMessages() {
+ $httpHeader = new AJAXChatHTTPHeader('UTF-8', 'text/xml');
+
+ // Send HTTP header:
+ $httpHeader->send();
+
+ // Output XML messages:
+ echo $this->getXMLMessages();
+ }
+
+ function getXMLMessages() {
+ switch($this->getView()) {
+ case 'chat':
+ return $this->getChatViewXMLMessages();
+ case 'teaser':
+ return $this->getTeaserViewXMLMessages();
+ case 'logs':
+ return $this->getLogsViewXMLMessages();
+ default:
+ return $this->getLogoutXMLMessage();
+ }
+ }
+
+ function getMessageCondition() {
+ $condition = 'id > '.$this->db->makeSafe($this->getRequestVar('lastID')).'
+ AND (
+ channel = '.$this->db->makeSafe($this->getChannel()).'
+ OR
+ channel = '.$this->db->makeSafe($this->getPrivateMessageID()).'
+ )
+ AND
+ ';
+ if($this->getConfig('requestMessagesPriorChannelEnter') ||
+ ($this->getConfig('requestMessagesPriorChannelEnterList') && in_array($this->getChannel(), $this->getConfig('requestMessagesPriorChannelEnterList')))) {
+ $condition .= 'NOW() < DATE_ADD(dateTime, interval '.$this->getConfig('requestMessagesTimeDiff').' HOUR)';
+ } else {
+ $condition .= 'dateTime >= FROM_UNIXTIME(' . $this->getChannelEnterTimeStamp() . ')';
+ }
+ return $condition;
+ }
+
+ function getMessageFilter() {
+ $filterChannelMessages = '';
+ if(!$this->getConfig('showChannelMessages') || $this->getRequestVar('shoutbox')) {
+ $filterChannelMessages = ' AND NOT (
+ text LIKE (\'/login%\')
+ OR
+ text LIKE (\'/logout%\')
+ OR
+ text LIKE (\'/channelEnter%\')
+ OR
+ text LIKE (\'/channelLeave%\')
+ OR
+ text LIKE (\'/kick%\')
+ )';
+ }
+ return $filterChannelMessages;
+ }
+
+ function getInfoMessagesXML() {
+ $xml = '<infos>';
+ // Go through the info messages:
+ foreach($this->getInfoMessages() as $type=>$infoArray) {
+ foreach($infoArray as $info) {
+ $xml .= '<info type="'.$type.'">';
+ $xml .= '<![CDATA['.$this->encodeSpecialChars($info).']]>';
+ $xml .= '</info>';
+ }
+ }
+ $xml .= '</infos>';
+ return $xml;
+ }
+
+ function getChatViewOnlineUsersXML($channelIDs) {
+ // Get the online users for the given channels:
+ $onlineUsersData = $this->getOnlineUsersData($channelIDs);
+ $xml = '<users>';
+ foreach($onlineUsersData as $onlineUserData) {
+ $xml .= '<user';
+ $xml .= ' userID="'.$onlineUserData['userID'].'"';
+ $xml .= ' userRole="'.$onlineUserData['userRole'].'"';
+ $xml .= ' channelID="'.$onlineUserData['channel'].'"';
+ $xml .= '>';
+ $xml .= '<![CDATA['.$this->encodeSpecialChars($onlineUserData['userName']).']]>';
+ $xml .= '</user>';
+ }
+ $xml .= '</users>';
+ return $xml;
+ }
+
+ function getLogoutXMLMessage() {
+ $xml = '<?xml version="1.0" encoding="UTF-8"?>';
+ $xml .= '<root>';
+ $xml .= '<infos>';
+ $xml .= '<info type="logout">';
+ $xml .= '<![CDATA['.$this->encodeSpecialChars($this->getConfig('logoutData')).']]>';
+ $xml .= '</info>';
+ $xml .= '</infos>';
+ $xml .= '</root>';
+ return $xml;
+ }
+
+ function getChatViewMessageXML(
+ $messageID,
+ $timeStamp,
+ $userID,
+ $userName,
+ $userRole,
+ $channelID,
+ $text
+ ) {
+ $message = '<message';
+ $message .= ' id="'.$messageID.'"';
+ $message .= ' dateTime="'.date('r', $timeStamp).'"';
+ $message .= ' userID="'.$userID.'"';
+ $message .= ' userRole="'.$userRole.'"';
+ $message .= ' channelID="'.$channelID.'"';
+ $message .= '>';
+ $message .= '<username><![CDATA['.$this->encodeSpecialChars($userName).']]></username>';
+ $message .= '<text><![CDATA['.$this->encodeSpecialChars($text).']]></text>';
+ $message .= '</message>';
+ return $message;
+ }
+
+ function getChatViewMessagesXML() {
+ // Get the last messages in descending order (this optimises the LIMIT usage):
+ $sql = 'SELECT
+ id,
+ userID,
+ userName,
+ userRole,
+ channel AS channelID,
+ UNIX_TIMESTAMP(dateTime) AS timeStamp,
+ text
+ FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ '.$this->getMessageCondition().'
+ '.$this->getMessageFilter().'
+ ORDER BY
+ id
+ DESC
+ LIMIT '.$this->getConfig('requestMessagesLimit').';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $messages = '';
+
+ // Add the messages in reverse order so it is ascending again:
+ while($row = $result->fetch()) {
+ $message = $this->getChatViewMessageXML(
+ $row['id'],
+ $row['timeStamp'],
+ $row['userID'],
+ $row['userName'],
+ $row['userRole'],
+ $row['channelID'],
+ $row['text']
+ );
+ $messages = $message.$messages;
+ }
+ $result->free();
+
+ $messages = '<messages>'.$messages.'</messages>';
+ return $messages;
+ }
+
+ function getChatViewXMLMessages() {
+ $xml = '<?xml version="1.0" encoding="UTF-8"?>';
+ $xml .= '<root>';
+ $xml .= $this->getInfoMessagesXML();
+ $xml .= $this->getChatViewOnlineUsersXML(array($this->getChannel()));
+ $xml .= $this->getChatViewMessagesXML();
+ $xml .= '</root>';
+ return $xml;
+ }
+
+ function getTeaserMessageCondition() {
+ $channelID = $this->getValidRequestChannelID();
+ $condition = 'channel = '.$this->db->makeSafe($channelID).'
+ AND
+ ';
+ if($this->getConfig('requestMessagesPriorChannelEnter') ||
+ ($this->getConfig('requestMessagesPriorChannelEnterList') && in_array($channelID, $this->getConfig('requestMessagesPriorChannelEnterList')))) {
+ $condition .= 'NOW() < DATE_ADD(dateTime, interval '.$this->getConfig('requestMessagesTimeDiff').' HOUR)';
+ } else {
+ // Teaser content may not be shown for this channel:
+ $condition .= '0 = 1';
+ }
+ return $condition;
+ }
+
+ function getTeaserViewMessagesXML() {
+ // Get the last messages in descending order (this optimises the LIMIT usage):
+ $sql = 'SELECT
+ id,
+ userID,
+ userName,
+ userRole,
+ channel AS channelID,
+ UNIX_TIMESTAMP(dateTime) AS timeStamp,
+ text
+ FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ '.$this->getTeaserMessageCondition().'
+ '.$this->getMessageFilter().'
+ ORDER BY
+ id
+ DESC
+ LIMIT '.$this->getConfig('requestMessagesLimit').';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $messages = '';
+
+ // Add the messages in reverse order so it is ascending again:
+ while($row = $result->fetch()) {
+ $message = '';
+ $message .= '<message';
+ $message .= ' id="'.$row['id'].'"';
+ $message .= ' dateTime="'.date('r', $row['timeStamp']).'"';
+ $message .= ' userID="'.$row['userID'].'"';
+ $message .= ' userRole="'.$row['userRole'].'"';
+ $message .= ' channelID="'.$row['channelID'].'"';
+ $message .= '>';
+ $message .= '<username><![CDATA['.$this->encodeSpecialChars($row['userName']).']]></username>';
+ $message .= '<text><![CDATA['.$this->encodeSpecialChars($row['text']).']]></text>';
+ $message .= '</message>';
+ $messages = $message.$messages;
+ }
+ $result->free();
+
+ $messages = '<messages>'.$messages.'</messages>';
+ return $messages;
+ }
+
+ function getTeaserViewXMLMessages() {
+ $xml = '<?xml version="1.0" encoding="UTF-8"?>';
+ $xml .= '<root>';
+ $xml .= $this->getInfoMessagesXML();
+ $xml .= $this->getTeaserViewMessagesXML();
+ $xml .= '</root>';
+ return $xml;
+ }
+
+ function getLogsViewCondition() {
+ $condition = 'id > '.$this->db->makeSafe($this->getRequestVar('lastID'));
+
+ // Check the channel condition:
+ switch($this->getRequestVar('channelID')) {
+ case '-3':
+ // Just display messages from all accessible channels
+ if($this->getUserRole() != AJAX_CHAT_ADMIN) {
+ $condition .= ' AND (channel = '.$this->db->makeSafe($this->getPrivateMessageID());
+ $condition .= ' OR channel = '.$this->db->makeSafe($this->getPrivateChannelID());
+ foreach($this->getChannels() as $channel) {
+ if($this->getConfig('logsUserAccessChannelList') && !in_array($channel, $this->getConfig('logsUserAccessChannelList'))) {
+ continue;
+ }
+ $condition .= ' OR channel = '.$this->db->makeSafe($channel);
+ }
+ $condition .= ')';
+ }
+ break;
+ case '-2':
+ if($this->getUserRole() != AJAX_CHAT_ADMIN) {
+ $condition .= ' AND channel = '.($this->getPrivateMessageID());
+ } else {
+ $condition .= ' AND channel > '.($this->getConfig('privateMessageDiff')-1);
+ }
+ break;
+ case '-1':
+ if($this->getUserRole() != AJAX_CHAT_ADMIN) {
+ $condition .= ' AND channel = '.($this->getPrivateChannelID());
+ } else {
+ $condition .= ' AND (channel > '.($this->getConfig('privateChannelDiff')-1).' AND channel < '.($this->getConfig('privateMessageDiff')).')';
+ }
+ break;
+ default:
+ if(($this->getUserRole() == AJAX_CHAT_ADMIN || !$this->getConfig('logsUserAccessChannelList') || in_array($this->getRequestVar('channelID'), $this->getConfig('logsUserAccessChannelList')))
+ && $this->validateChannel($this->getRequestVar('channelID'))) {
+ $condition .= ' AND channel = '.$this->db->makeSafe($this->getRequestVar('channelID'));
+ } else {
+ // No valid channel:
+ $condition .= ' AND 0 = 1';
+ }
+ }
+
+ // Check the period condition:
+ $hour = ($this->getRequestVar('hour') === null || $this->getRequestVar('hour') > 23 || $this->getRequestVar('hour') < 0) ? null : $this->getRequestVar('hour');
+ $day = ($this->getRequestVar('day') === null || $this->getRequestVar('day') > 31 || $this->getRequestVar('day') < 1) ? null : $this->getRequestVar('day');
+ $month = ($this->getRequestVar('month') === null || $this->getRequestVar('month') > 12 || $this->getRequestVar('month') < 1) ? null : $this->getRequestVar('month');
+ $year = ($this->getRequestVar('year') === null || $this->getRequestVar('year') > date('Y') || $this->getRequestVar('year') < $this->getConfig('logsFirstYear')) ? null : $this->getRequestVar('year');
+
+ // If a time (hour) is given but no date (year, month, day), use the current date:
+ if($hour !== null) {
+ if($day === null)
+ $day = date('j');
+ if($month === null)
+ $month = date('n');
+ if($year === null)
+ $year = date('Y');
+ }
+
+ if($year === null) {
+ // No year given, so no period condition
+ } else if($month === null) {
+ // Define the given year as period:
+ $periodStart = mktime(0, 0, 0, 1, 1, $year);
+ // The last day in a month can be expressed by using 0 for the day of the next month:
+ $periodEnd = mktime(23, 59, 59, 13, 0, $year);
+ } else if($day === null) {
+ // Define the given month as period:
+ $periodStart = mktime(0, 0, 0, $month, 1, $year);
+ // The last day in a month can be expressed by using 0 for the day of the next month:
+ $periodEnd = mktime(23, 59, 59, $month+1, 0, $year);
+ } else if($hour === null){
+ // Define the given day as period:
+ $periodStart = mktime(0, 0, 0, $month, $day, $year);
+ $periodEnd = mktime(23, 59, 59, $month, $day, $year);
+ } else {
+ // Define the given hour as period:
+ $periodStart = mktime($hour, 0, 0, $month, $day, $year);
+ $periodEnd = mktime($hour, 59, 59, $month, $day, $year);
+ }
+
+ if(isset($periodStart))
+ $condition .= ' AND dateTime > \''.date('Y-m-d H:i:s', $periodStart).'\' AND dateTime <= \''.date('Y-m-d H:i:s', $periodEnd).'\'';
+
+ // Check the search condition:
+ if($this->getRequestVar('search')) {
+ if(($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) && strpos($this->getRequestVar('search'), 'ip=') === 0) {
+ // Search for messages with the given IP:
+ $ip = substr($this->getRequestVar('search'), 3);
+ $condition .= ' AND (ip = '.$this->db->makeSafe($this->ipToStorageFormat($ip)).')';
+ } else if(strpos($this->getRequestVar('search'), 'userID=') === 0) {
+ // Search for messages with the given userID:
+ $userID = substr($this->getRequestVar('search'), 7);
+ $condition .= ' AND (userID = '.$this->db->makeSafe($userID).')';
+ } else {
+ // Use the search value as regular expression on message text and username:
+ $condition .= ' AND (userName REGEXP '.$this->db->makeSafe($this->getRequestVar('search')).' OR text REGEXP '.$this->db->makeSafe($this->getRequestVar('search')).')';
+ }
+ }
+
+ // If no period or search condition is given, just monitor the last messages on the given channel:
+ if(!isset($periodStart) && !$this->getRequestVar('search')) {
+ $condition .= ' AND NOW() < DATE_ADD(dateTime, interval '.$this->getConfig('logsRequestMessagesTimeDiff').' HOUR)';
+ }
+
+ return $condition;
+ }
+
+ function getLogsViewMessagesXML() {
+ $sql = 'SELECT
+ id,
+ userID,
+ userName,
+ userRole,
+ channel AS channelID,
+ UNIX_TIMESTAMP(dateTime) AS timeStamp,
+ ip,
+ text
+ FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ '.$this->getLogsViewCondition().'
+ ORDER BY
+ id
+ LIMIT '.$this->getConfig('logsRequestMessagesLimit').';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ $xml = '<messages>';
+ while($row = $result->fetch()) {
+ $xml .= '<message';
+ $xml .= ' id="'.$row['id'].'"';
+ $xml .= ' dateTime="'.date('r', $row['timeStamp']).'"';
+ $xml .= ' userID="'.$row['userID'].'"';
+ $xml .= ' userRole="'.$row['userRole'].'"';
+ $xml .= ' channelID="'.$row['channelID'].'"';
+ if($this->getUserRole() == AJAX_CHAT_ADMIN || $this->getUserRole() == AJAX_CHAT_MODERATOR) {
+ $xml .= ' ip="'.$this->ipFromStorageFormat($row['ip']).'"';
+ }
+ $xml .= '>';
+ $xml .= '<username><![CDATA['.$this->encodeSpecialChars($row['userName']).']]></username>';
+ $xml .= '<text><![CDATA['.$this->encodeSpecialChars($row['text']).']]></text>';
+ $xml .= '</message>';
+ }
+ $result->free();
+
+ $xml .= '</messages>';
+
+ return $xml;
+ }
+
+ function getLogsViewXMLMessages() {
+ $xml = '<?xml version="1.0" encoding="UTF-8"?>';
+ $xml .= '<root>';
+ $xml .= $this->getInfoMessagesXML();
+ $xml .= $this->getLogsViewMessagesXML();
+ $xml .= '</root>';
+ return $xml;
+ }
+
+ function purgeLogs() {
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('messages').'
+ WHERE
+ dateTime < DATE_SUB(NOW(), interval '.$this->getConfig('logsPurgeTimeDiff').' DAY);';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function getInfoMessages($type=null) {
+ if(!isset($this->_infoMessages)) {
+ $this->_infoMessages = array();
+ }
+ if($type) {
+ if(!isset($this->_infoMessages[$type])) {
+ $this->_infoMessages[$type] = array();
+ }
+ return $this->_infoMessages[$type];
+ } else {
+ return $this->_infoMessages;
+ }
+ }
+
+ function addInfoMessage($info, $type='error') {
+ if(!isset($this->_infoMessages)) {
+ $this->_infoMessages = array();
+ }
+ if(!isset($this->_infoMessages[$type])) {
+ $this->_infoMessages[$type] = array();
+ }
+ if(!in_array($info, $this->_infoMessages[$type])) {
+ array_push($this->_infoMessages[$type], $info);
+ }
+ }
+
+ function getRequestVars() {
+ return $this->_requestVars;
+ }
+
+ function getRequestVar($key) {
+ if($this->_requestVars && isset($this->_requestVars[$key])) {
+ return $this->_requestVars[$key];
+ }
+ return null;
+ }
+
+ function setRequestVar($key, $value) {
+ if(!$this->_requestVars) {
+ $this->_requestVars = array();
+ }
+ $this->_requestVars[$key] = $value;
+ }
+
+ function getOnlineUsersData($channelIDs=null, $key=null, $value=null) {
+ if($this->_onlineUsersData === null) {
+ $this->_onlineUsersData = array();
+
+ $sql = 'SELECT
+ userID,
+ userName,
+ userRole,
+ channel,
+ UNIX_TIMESTAMP(dateTime) AS timeStamp,
+ ip
+ FROM
+ '.$this->getDataBaseTable('online').'
+ ORDER BY
+ userName;';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ while($row = $result->fetch()) {
+ $row['ip'] = $this->ipFromStorageFormat($row['ip']);
+ array_push($this->_onlineUsersData, $row);
+ }
+
+ $result->free();
+ }
+
+ if($channelIDs || $key) {
+ $onlineUsersData = array();
+ foreach($this->_onlineUsersData as $userData) {
+ if($channelIDs && !in_array($userData['channel'], $channelIDs)) {
+ continue;
+ }
+ if($key) {
+ if(!isset($userData[$key])) {
+ return $onlineUsersData;
+ }
+ if($value !== null) {
+ if($userData[$key] == $value) {
+ array_push($onlineUsersData, $userData);
+ } else {
+ continue;
+ }
+ } else {
+ array_push($onlineUsersData, $userData[$key]);
+ }
+ } else {
+ array_push($onlineUsersData, $userData);
+ }
+ }
+ return $onlineUsersData;
+ }
+
+ return $this->_onlineUsersData;
+ }
+
+ function removeUserFromOnlineUsersData($userID=null) {
+ if(!$this->_onlineUsersData) {
+ return;
+ }
+ $userID = ($userID === null) ? $this->getUserID() : $userID;
+ for($i=0; $i<count($this->_onlineUsersData); $i++) {
+ if($this->_onlineUsersData[$i]['userID'] == $userID) {
+ array_splice($this->_onlineUsersData, $i, 1);
+ break;
+ }
+ }
+ }
+
+ function resetOnlineUsersData() {
+ $this->_onlineUsersData = null;
+ }
+
+ function getOnlineUsers($channelIDs=null) {
+ return $this->getOnlineUsersData($channelIDs, 'userName');
+ }
+
+ function getOnlineUserIDs($channelIDs=null) {
+ return $this->getOnlineUsersData($channelIDs, 'userID');
+ }
+
+ function startSession() {
+ if(!session_id()) {
+ // Set the session name:
+ session_name($this->getConfig('sessionName'));
+
+ // Set session cookie parameters:
+ session_set_cookie_params(
+ 0, // The session is destroyed on logout anyway, so no use to set this
+ $this->getConfig('sessionCookiePath'),
+ $this->getConfig('sessionCookieDomain'),
+ $this->getConfig('sessionCookieSecure')
+ );
+
+ // Start the session:
+ session_start();
+
+ // We started a new session:
+ $this->_sessionNew = true;
+ }
+ }
+
+ function destroySession() {
+ if($this->_sessionNew) {
+ // Delete all session variables:
+ $_SESSION = array();
+
+ // Delete the session cookie:
+ if (isset($_COOKIE[session_name()])) {
+ setcookie(
+ session_name(),
+ '',
+ time()-42000,
+ $this->getConfig('sessionCookiePath'),
+ $this->getConfig('sessionCookieDomain'),
+ $this->getConfig('sessionCookieSecure')
+ );
+ }
+
+ // Destroy the session:
+ session_destroy();
+ } else {
+ // Unset all session variables starting with the sessionKeyPrefix:
+ foreach($_SESSION as $key=>$value) {
+ if(strpos($key, $this->getConfig('sessionKeyPrefix')) === 0) {
+ unset($_SESSION[$key]);
+ }
+ }
+ }
+ }
+
+ function regenerateSessionID() {
+ if($this->_sessionNew) {
+ // Regenerate session id:
+ @session_regenerate_id(true);
+ }
+ }
+
+ function getSessionVar($key, $prefix=null) {
+ if($prefix === null)
+ $prefix = $this->getConfig('sessionKeyPrefix');
+
+ // Return the session value if existing:
+ if(isset($_SESSION[$prefix.$key]))
+ return $_SESSION[$prefix.$key];
+ else
+ return null;
+ }
+
+ function setSessionVar($key, $value, $prefix=null) {
+ if($prefix === null)
+ $prefix = $this->getConfig('sessionKeyPrefix');
+
+ // Set the session value:
+ $_SESSION[$prefix.$key] = $value;
+ }
+
+ function getSessionIP() {
+ return $this->getSessionVar('IP');
+ }
+
+ function setSessionIP($ip) {
+ $this->setSessionVar('IP', $ip);
+ }
+
+ function getQueryUserName() {
+ return $this->getSessionVar('QueryUserName');
+ }
+
+ function setQueryUserName($userName) {
+ $this->setSessionVar('QueryUserName', $userName);
+ }
+
+ function getInvitations() {
+ if($this->_invitations === null) {
+ $this->_invitations = array();
+
+ $sql = 'SELECT
+ channel
+ FROM
+ '.$this->getDataBaseTable('invitations').'
+ WHERE
+ userID='.$this->db->makeSafe($this->getUserID()).'
+ AND
+ DATE_SUB(NOW(), interval 1 DAY) < dateTime;';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+
+ while($row = $result->fetch()) {
+ array_push($this->_invitations, $row['channel']);
+ }
+
+ $result->free();
+ }
+ return $this->_invitations;
+ }
+
+ function removeExpiredInvitations() {
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('invitations').'
+ WHERE
+ DATE_SUB(NOW(), interval 1 DAY) > dateTime;';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function addInvitation($userID, $channelID=null) {
+ $this->removeExpiredInvitations();
+
+ $channelID = ($channelID === null) ? $this->getChannel() : $channelID;
+
+ $sql = 'INSERT INTO '.$this->getDataBaseTable('invitations').'(
+ userID,
+ channel,
+ dateTime
+ )
+ VALUES (
+ '.$this->db->makeSafe($userID).',
+ '.$this->db->makeSafe($channelID).',
+ NOW()
+ );';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function removeInvitation($userID, $channelID=null) {
+ $channelID = ($channelID === null) ? $this->getChannel() : $channelID;
+
+ $sql = 'DELETE FROM
+ '.$this->getDataBaseTable('invitations').'
+ WHERE
+ userID='.$this->db->makeSafe($userID).'
+ AND
+ channel='.$this->db->makeSafe($channelID).';';
+
+ // Create a new SQL query:
+ $result = $this->db->sqlQuery($sql);
+
+ // Stop if an error occurs:
+ if($result->error()) {
+ echo $result->getError();
+ die();
+ }
+ }
+
+ function getUserID() {
+ return $this->getSessionVar('UserID');
+ }
+
+ function setUserID($id) {
+ $this->setSessionVar('UserID', $id);
+ }
+
+ function getUserName() {
+ return $this->getSessionVar('UserName');
+ }
+
+ function setUserName($name) {
+ $this->setSessionVar('UserName', $name);
+ }
+
+ function getLoginUserName() {
+ return $this->getSessionVar('LoginUserName');
+ }
+
+ function setLoginUserName($name) {
+ $this->setSessionVar('LoginUserName', $name);
+ }
+
+ function getUserRole() {
+ $userRole = $this->getSessionVar('UserRole');
+ if($userRole === null)
+ return AJAX_CHAT_GUEST;
+ return $userRole;
+ }
+
+ function setUserRole($role) {
+ $this->setSessionVar('UserRole', $role);
+ }
+
+ function getChannel() {
+ return $this->getSessionVar('Channel');
+ }
+
+ function setChannel($channel) {
+ $this->setSessionVar('Channel', $channel);
+
+ // Save the channel enter timestamp:
+ $this->setChannelEnterTimeStamp(time());
+
+ // Update the channel authentication for the socket server:
+ if($this->getConfig('socketServerEnabled')) {
+ $this->updateSocketAuthentication(
+ $this->getUserID(),
+ $this->getSocketRegistrationID(),
+ array($channel,$this->getPrivateMessageID())
+ );
+ }
+
+ // Reset the logs view socket authentication session var:
+ if($this->getSessionVar('logsViewSocketAuthenticated')) {
+ $this->setSessionVar('logsViewSocketAuthenticated', false);
+ }
+ }
+
+ function isLoggedIn() {
+ return (bool)$this->getSessionVar('LoggedIn');
+ }
+
+ function setLoggedIn($bool) {
+ $this->setSessionVar('LoggedIn', $bool);
+ }
+
+ function getLoginTimeStamp() {
+ return $this->getSessionVar('LoginTimeStamp');
+ }
+
+ function setLoginTimeStamp($time) {
+ $this->setSessionVar('LoginTimeStamp', $time);
+ }
+
+ function getChannelEnterTimeStamp() {
+ return $this->getSessionVar('ChannelEnterTimeStamp');
+ }
+
+ function setChannelEnterTimeStamp($time) {
+ $this->setSessionVar('ChannelEnterTimeStamp', $time);
+ }
+
+ function getStatusUpdateTimeStamp() {
+ return $this->getSessionVar('StatusUpdateTimeStamp');
+ }
+
+ function setStatusUpdateTimeStamp($time) {
+ $this->setSessionVar('StatusUpdateTimeStamp', $time);
+ }
+
+ function getInactiveCheckTimeStamp() {
+ return $this->getSessionVar('InactiveCheckTimeStamp');
+ }
+
+ function setInactiveCheckTimeStamp($time) {
+ $this->setSessionVar('InactiveCheckTimeStamp', $time);
+ }
+
+ function getInsertedMessagesRate() {
+ return $this->getSessionVar('InsertedMessagesRate');
+ }
+
+ function setInsertedMessagesRate($rate) {
+ $this->setSessionVar('InsertedMessagesRate', $rate);
+ }
+
+ function getInsertedMessagesRateTimeStamp() {
+ return $this->getSessionVar('InsertedMessagesRateTimeStamp');
+ }
+
+ function setInsertedMessagesRateTimeStamp($time) {
+ $this->setSessionVar('InsertedMessagesRateTimeStamp', $time);
+ }
+
+ function getLangCode() {
+ // Get the langCode from request or cookie:
+ $langCodeCookie = isset($_COOKIE[$this->getConfig('sessionName').'_lang']) ? $_COOKIE[$this->getConfig('sessionName').'_lang'] : null;
+ $langCode = $this->getRequestVar('lang') ? $this->getRequestVar('lang') : $langCodeCookie;
+ // Check if the langCode is valid:
+ if(!in_array($langCode, $this->getConfig('langAvailable'))) {
+ // Determine the user language:
+ $language = new AJAXChatLanguage($this->getConfig('langAvailable'), $this->getConfig('langDefault'));
+ $langCode = $language->getLangCode();
+ }
+ return $langCode;
+ }
+
+ function setLangCodeCookie() {
+ setcookie(
+ $this->getConfig('sessionName').'_lang',
+ $this->getLangCode(),
+ time()+60*60*24*$this->getConfig('sessionCookieLifeTime'),
+ $this->getConfig('sessionCookiePath'),
+ $this->getConfig('sessionCookieDomain'),
+ $this->getConfig('sessionCookieSecure')
+ );
+ }
+
+ function removeUnsafeCharacters($str) {
+ // Remove NO-WS-CTL, non-whitespace control characters (RFC 2822), decimal 1–8, 11–12, 14–31, and 127:
+ return AJAXChatEncoding::removeUnsafeCharacters($str);
+ }
+
+ function subString($str, $start=0, $length=null, $encoding='UTF-8') {
+ return AJAXChatString::subString($str, $start, $length, $encoding);
+ }
+
+ function stringLength($str, $encoding='UTF-8') {
+ return AJAXChatString::stringLength($str, $encoding);
+ }
+
+ function trimMessageText($text) {
+ return $this->trimString($text, 'UTF-8', $this->getConfig('messageTextMaxLength'));
+ }
+
+ function trimUserName($userName) {
+ return $this->trimString($userName, null, $this->getConfig('userNameMaxLength'), true, true);
+ }
+
+ function trimChannelName($channelName) {
+ return $this->trimString($channelName, null, null, true, true);
+ }
+
+ function trimString($str, $sourceEncoding=null, $maxLength=null, $replaceWhitespace=false, $decodeEntities=false, $htmlEntitiesMap=null) {
+ // Make sure the string contains valid unicode:
+ $str = $this->convertToUnicode($str, $sourceEncoding);
+
+ // Make sure the string contains no unsafe characters:
+ $str = $this->removeUnsafeCharacters($str);
+
+ // Strip whitespace from the beginning and end of the string:
+ $str = trim($str);
+
+ if($replaceWhitespace) {
+ // Replace any whitespace in the userName with the underscore "_":
+ $str = preg_replace('/\s/u', '_', $str);
+ }
+
+ if($decodeEntities) {
+ // Decode entities:
+ $str = $this->decodeEntities($str, 'UTF-8', $htmlEntitiesMap);
+ }
+
+ if($maxLength) {
+ // Cut the string to the allowed length:
+ $str = $this->subString($str, 0, $maxLength);
+ }
+
+ return $str;
+ }
+
+ function convertToUnicode($str, $sourceEncoding=null) {
+ if($sourceEncoding === null) {
+ $sourceEncoding = $this->getConfig('sourceEncoding');
+ }
+ return $this->convertEncoding($str, $sourceEncoding, 'UTF-8');
+ }
+
+ function convertFromUnicode($str, $contentEncoding=null) {
+ if($contentEncoding === null) {
+ $contentEncoding = $this->getConfig('contentEncoding');
+ }
+ return $this->convertEncoding($str, 'UTF-8', $contentEncoding);
+ }
+
+ function convertEncoding($str, $charsetFrom, $charsetTo) {
+ return AJAXChatEncoding::convertEncoding($str, $charsetFrom, $charsetTo);
+ }
+
+ function encodeEntities($str, $encoding='UTF-8', $convmap=null) {
+ return AJAXChatEncoding::encodeEntities($str, $encoding, $convmap);
+ }
+
+ function decodeEntities($str, $encoding='UTF-8', $htmlEntitiesMap=null) {
+ return AJAXChatEncoding::decodeEntities($str, $encoding, $htmlEntitiesMap);
+ }
+
+ function htmlEncode($str) {
+ return AJAXChatEncoding::htmlEncode($str, $this->getConfig('contentEncoding'));
+ }
+
+ function encodeSpecialChars($str) {
+ return AJAXChatEncoding::encodeSpecialChars($str);
+ }
+
+ function decodeSpecialChars($str) {
+ return AJAXChatEncoding::decodeSpecialChars($str);
+ }
+
+ function ipToStorageFormat($ip) {
+ if(function_exists('inet_pton')) {
+ // ipv4 & ipv6:
+ return @inet_pton($ip);
+ }
+ // Only ipv4:
+ return @pack('N',@ip2long($ip));
+ }
+
+ function ipFromStorageFormat($ip) {
+ if(function_exists('inet_ntop')) {
+ // ipv4 & ipv6:
+ return @inet_ntop($ip);
+ }
+ // Only ipv4:
+ $unpacked = @unpack('Nlong',$ip);
+ if(isset($unpacked['long'])) {
+ return @long2ip($unpacked['long']);
+ }
+ return null;
+ }
+
+ function getConfig($key, $subkey=null) {
+ if($subkey)
+ return $this->_config[$key][$subkey];
+ else
+ return $this->_config[$key];
+ }
+
+ function setConfig($key, $subkey, $value) {
+ if($subkey) {
+ if(!isset($this->_config[$key])) {
+ $this->_config[$key] = array();
+ }
+ $this->_config[$key][$subkey] = $value;
+ } else {
+ $this->_config[$key] = $value;
+ }
+ }
+
+ function getLang($key=null) {
+ if(!$this->_lang) {
+ // Include the language file:
+ $lang = null;
+ require(AJAX_CHAT_PATH.'lib/lang/'.$this->getLangCode().'.php');
+ $this->_lang = &$lang;
+ }
+ if($key === null)
+ return $this->_lang;
+ if(isset($this->_lang[$key]))
+ return $this->_lang[$key];
+ return null;
+ }
+
+ function getChatURL() {
+ if(defined('AJAX_CHAT_URL')) {
+ return AJAX_CHAT_URL;
+ }
+
+ return
+ (isset($_SERVER['HTTPS']) ? 'https://' : 'http://').
+ (isset($_SERVER['REMOTE_USER']) ? $_SERVER['REMOTE_USER'].'@' : '').
+ (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ($_SERVER['SERVER_NAME'].
+ (isset($_SERVER['HTTPS']) && $_SERVER['SERVER_PORT'] == 443 || $_SERVER['SERVER_PORT'] == 80 ? '' : ':'.$_SERVER['SERVER_PORT']))).
+ substr($_SERVER['SCRIPT_NAME'],0, strrpos($_SERVER['SCRIPT_NAME'], '/')+1);
+ }
+
+ function getIDFromName($userName) {
+ $userDataArray = $this->getOnlineUsersData(null,'userName',$userName);
+ if($userDataArray && isset($userDataArray[0])) {
+ return $userDataArray[0]['userID'];
+ }
+ return null;
+ }
+
+ function getNameFromID($userID) {
+ $userDataArray = $this->getOnlineUsersData(null,'userID',$userID);
+ if($userDataArray && isset($userDataArray[0])) {
+ return $userDataArray[0]['userName'];
+ }
+ return null;
+ }
+
+ function getChannelFromID($userID) {
+ $userDataArray = $this->getOnlineUsersData(null,'userID',$userID);
+ if($userDataArray && isset($userDataArray[0])) {
+ return $userDataArray[0]['channel'];
+ }
+ return null;
+ }
+
+ function getIPFromID($userID) {
+ $userDataArray = $this->getOnlineUsersData(null,'userID',$userID);
+ if($userDataArray && isset($userDataArray[0])) {
+ return $userDataArray[0]['ip'];
+ }
+ return null;
+ }
+
+ function getRoleFromID($userID) {
+ $userDataArray = $this->getOnlineUsersData(null,'userID',$userID);
+ if($userDataArray && isset($userDataArray[0])) {
+ return $userDataArray[0]['userRole'];
+ }
+ return null;
+ }
+
+ function getChannelNames() {
+ return array_flip($this->getChannels());
+ }
+
+ function getChannelIDFromChannelName($channelName) {
+ if(!$channelName)
+ return null;
+ $channels = $this->getAllChannels();
+ if(array_key_exists($channelName,$channels)) {
+ return $channels[$channelName];
+ }
+ $channelID = null;
+ // Check if the requested channel is the own private channel:
+ if($channelName == $this->getPrivateChannelName()) {
+ return $this->getPrivateChannelID();
+ }
+ // Try to retrieve a private room ID:
+ $strlenChannelName = $this->stringLength($channelName);
+ $strlenPrefix = $this->stringLength($this->getConfig('privateChannelPrefix'));
+ $strlenSuffix = $this->stringLength($this->getConfig('privateChannelSuffix'));
+ if($this->subString($channelName,0,$strlenPrefix) == $this->getConfig('privateChannelPrefix')
+ && $this->subString($channelName,$strlenChannelName-$strlenSuffix) == $this->getConfig('privateChannelSuffix')) {
+ $userName = $this->subString(
+ $channelName,
+ $strlenPrefix,
+ $strlenChannelName-($strlenPrefix+$strlenSuffix)
+ );
+ $userID = $this->getIDFromName($userName);
+ if($userID !== null) {
+ $channelID = $this->getPrivateChannelID($userID);
+ }
+ }
+ return $channelID;
+ }
+
+ function getChannelNameFromChannelID($channelID) {
+ foreach($this->getAllChannels() as $key=>$value) {
+ if($value == $channelID) {
+ return $key;
+ }
+ }
+ // Try to retrieve a private room name:
+ if($channelID == $this->getPrivateChannelID()) {
+ return $this->getPrivateChannelName();
+ }
+ $userName = $this->getNameFromID($channelID-$this->getConfig('privateChannelDiff'));
+ if($userName === null) {
+ return null;
+ }
+ return $this->getPrivateChannelName($userName);
+ }
+
+ function getChannelName() {
+ return $this->getChannelNameFromChannelID($this->getChannel());
+ }
+
+ function getPrivateChannelName($userName=null) {
+ if($userName === null) {
+ $userName = $this->getUserName();
+ }
+ return $this->getConfig('privateChannelPrefix').$userName.$this->getConfig('privateChannelSuffix');
+ }
+
+ function getPrivateChannelID($userID=null) {
+ if($userID === null) {
+ $userID = $this->getUserID();
+ }
+ return $userID + $this->getConfig('privateChannelDiff');
+ }
+
+ function getPrivateMessageID($userID=null) {
+ if($userID === null) {
+ $userID = $this->getUserID();
+ }
+ return $userID + $this->getConfig('privateMessageDiff');
+ }
+
+ function isAllowedToSendPrivateMessage() {
+ if($this->getConfig('allowPrivateMessages') || $this->getUserRole() == AJAX_CHAT_ADMIN) {
+ return true;
+ }
+ return false;
+ }
+
+ function isAllowedToCreatePrivateChannel() {
+ if($this->getConfig('allowPrivateChannels')) {
+ switch($this->getUserRole()) {
+ case AJAX_CHAT_USER:
+ return true;
+ case AJAX_CHAT_MODERATOR:
+ return true;
+ case AJAX_CHAT_ADMIN:
+ return true;
+ default:
+ return false;
+ }
+ }
+ return false;
+ }
+
+ function isAllowedToListHiddenUsers() {
+ // Hidden users are users within private or restricted channels:
+ switch($this->getUserRole()) {
+ case AJAX_CHAT_MODERATOR:
+ return true;
+ case AJAX_CHAT_ADMIN:
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ function isUserOnline($userID=null) {
+ $userID = ($userID === null) ? $this->getUserID() : $userID;
+ $userDataArray = $this->getOnlineUsersData(null,'userID',$userID);
+ if($userDataArray && count($userDataArray) > 0) {
+ return true;
+ }
+ return false;
+ }
+
+ function isUserNameInUse($userName=null) {
+ $userName = ($userName === null) ? $this->getUserName() : $userName;
+ $userDataArray = $this->getOnlineUsersData(null,'userName',$userName);
+ if($userDataArray && count($userDataArray) > 0) {
+ return true;
+ }
+ return false;
+ }
+
+ function isUserBanned($userName, $userID=null, $ip=null) {
+ if($userID !== null) {
+ $bannedUserDataArray = $this->getBannedUsersData('userID',$userID);
+ if($bannedUserDataArray && isset($bannedUserDataArray[0])) {
+ return true;
+ }
+ }
+ if($ip !== null) {
+ $bannedUserDataArray = $this->getBannedUsersData('ip',$ip);
+ if($bannedUserDataArray && isset($bannedUserDataArray[0])) {
+ return true;
+ }
+ }
+ $bannedUserDataArray = $this->getBannedUsersData('userName',$userName);
+ if($bannedUserDataArray && isset($bannedUserDataArray[0])) {
+ return true;
+ }
+ return false;
+ }
+
+ function isMaxUsersLoggedIn() {
+ if(count($this->getOnlineUsersData()) >= $this->getConfig('maxUsersLoggedIn')) {
+ return true;
+ }
+ return false;
+ }
+
+ function validateChannel($channelID) {
+ if($channelID === null) {
+ return false;
+ }
+ // Return true for normal channels the user has acces to:
+ if(in_array($channelID, $this->getChannels())) {
+ return true;
+ }
+ // Return true if the user is allowed to join his own private channel:
+ if($channelID == $this->getPrivateChannelID() && $this->isAllowedToCreatePrivateChannel()) {
+ return true;
+ }
+ // Return true if the user has been invited to a restricted or private channel:
+ if(in_array($channelID, $this->getInvitations())) {
+ return true;
+ }
+ // No valid channel, return false:
+ return false;
+ }
+
+ function createGuestUserName() {
+ $maxLength = $this->getConfig('userNameMaxLength')
+ - $this->stringLength($this->getConfig('guestUserPrefix'))
+ - $this->stringLength($this->getConfig('guestUserSuffix'));
+
+ // seed with microseconds since last "whole" second:
+ mt_srand((double)microtime()*1000000);
+
+ // Create a random userName using numbers between 100000 and 999999:
+ $userName = substr(mt_rand(100000, 999999), 0, $maxLength);
+
+ return $this->getConfig('guestUserPrefix').$userName.$this->getConfig('guestUserSuffix');
+ }
+
+ // Guest userIDs must not interfere with existing userIDs and must be lower than privateChannelDiff:
+ function createGuestUserID() {
+ // seed with microseconds since last "whole" second:
+ mt_srand((double)microtime()*1000000);
+
+ return mt_rand($this->getConfig('minGuestUserID'), $this->getConfig('privateChannelDiff')-1);
+ }
+
+ function getGuestUser() {
+ if(!$this->getConfig('allowGuestLogins'))
+ return null;
+
+ if($this->getConfig('allowGuestUserName')) {
+ $maxLength = $this->getConfig('userNameMaxLength')
+ - $this->stringLength($this->getConfig('guestUserPrefix'))
+ - $this->stringLength($this->getConfig('guestUserSuffix'));
+
+ // Trim guest userName:
+ $userName = $this->trimString($this->getRequestVar('userName'), null, $maxLength, true, true);
+
+ // If given userName is invalid, create one:
+ if(!$userName) {
+ $userName = $this->createGuestUserName();
+ } else {
+ // Add the guest users prefix and suffix to the given userName:
+ $userName = $this->getConfig('guestUserPrefix').$userName.$this->getConfig('guestUserSuffix');
+ }
+ } else {
+ $userName = $this->createGuestUserName();
+ }
+
+ $userData = array();
+ $userData['userID'] = $this->createGuestUserID();
+ $userData['userName'] = $userName;
+ $userData['userRole'] = AJAX_CHAT_GUEST;
+ return $userData;
+ }
+
+ function getCustomVar($key) {
+ if(!isset($this->_customVars))
+ $this->_customVars = array();
+ if(!isset($this->_customVars[$key]))
+ return null;
+ return $this->_customVars[$key];
+ }
+
+ function setCustomVar($key, $value) {
+ if(!isset($this->_customVars))
+ $this->_customVars = array();
+ $this->_customVars[$key] = $value;
+ }
+
+ // Override to replace custom template tags:
+ // Return the replacement for the given tag (and given tagContent)
+ function replaceCustomTemplateTags($tag, $tagContent) {
+ return null;
+ }
+
+ // Override to initialize custom configuration settings:
+ function initCustomConfig() {
+ }
+
+ // Override to add custom request variables:
+ // Add values to the request variables array: $this->_requestVars['customVariable'] = null;
+ function initCustomRequestVars() {
+ }
+
+ // Override to add custom session code right after the session has been started:
+ function initCustomSession() {
+ }
+
+ // Override, to parse custom info requests:
+ // $infoRequest contains the current info request
+ // Add info responses using the method addInfoMessage($info, $type)
+ function parseCustomInfoRequest($infoRequest) {
+ }
+
+ // Override to replace custom text:
+ // Return replaced text
+ // $text contains the whole message
+ function replaceCustomText(&$text) {
+ return $text;
+ }
+
+ // Override to add custom commands:
+ // Return true if a custom command has been successfully parsed, else false
+ // $text contains the whole message, $textParts the message split up as words array
+ function parseCustomCommands($text, $textParts) {
+ return false;
+ }
+
+ // Override to perform custom actions on new messages:
+ // Return true if message may be inserted, else false
+ // $text contains the whole message
+ function onNewMessage($text) {
+ return true;
+ }
+
+ // Override to perform custom actions on new messages:
+ // Method to set the style cookie depending on user data
+ function setStyle() {
+ }
+
+ // Override:
+ // Returns true if the userID of the logged in user is identical to the userID of the authentication system
+ // or the user is authenticated as guest in the chat and the authentication system
+ function revalidateUserID() {
+ return true;
+ }
+
+ // Override:
+ // Returns an associative array containing userName, userID and userRole
+ // Returns null if login is invalid
+ function getValidLoginUserData() {
+ // Check if we have a valid registered user:
+ if(false) {
+ // Here is the place to check user authentication
+ } else {
+ // Guest users:
+ return $this->getGuestUser();
+ }
+ }
+
+ // Override:
+ // Store the channels the current user has access to
+ // Make sure channel names don't contain any whitespace
+ function &getChannels() {
+ if($this->_channels === null) {
+ $this->_channels = $this->getAllChannels();
+ }
+ return $this->_channels;
+ }
+
+ // Override:
+ // Store all existing channels
+ // Make sure channel names don't contain any whitespace
+ function &getAllChannels() {
+ if($this->_allChannels === null) {
+ $this->_allChannels = array();
+
+ // Default channel, public to everyone:
+ $this->_allChannels[$this->trimChannelName($this->getConfig('defaultChannelName'))] = $this->getConfig('defaultChannelID');
+ }
+ return $this->_allChannels;
+ }
+
+}
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatDataBase.php b/library/ajaxchat/chat/lib/class/AJAXChatDataBase.php new file mode 100644 index 000000000..2143c5aa0 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatDataBase.php @@ -0,0 +1,81 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to initialize the DataBase connection: +class AJAXChatDataBase { + + var $_db; + + function __construct(&$dbConnectionConfig) { + switch($dbConnectionConfig['type']) { + case 'mysqli': + $this->_db = new AJAXChatDatabaseMySQLi($dbConnectionConfig); + break; + case 'mysql': + $this->_db = new AJAXChatDatabaseMySQL($dbConnectionConfig); + break; + default: + // Use MySQLi if available, else MySQL (and check the type of a given database connection object): + if(function_exists('mysqli_connect') && (!$dbConnectionConfig['link'] || is_object($dbConnectionConfig['link']))) { + $this->_db = new AJAXChatDatabaseMySQLi($dbConnectionConfig); + } else { + $this->_db = new AJAXChatDatabaseMySQL($dbConnectionConfig); + } + } + } + + // Method to connect to the DataBase server: + function connect(&$dbConnectionConfig) { + return $this->_db->connect($dbConnectionConfig); + } + + // Method to select the DataBase: + function select($dbName) { + return $this->_db->select($dbName); + } + + // Method to determine if an error has occured: + function error() { + return $this->_db->error(); + } + + // Method to return the error report: + function getError() { + return $this->_db->getError(); + } + + // Method to return the connection identifier: + function &getConnectionID() { + return $this->_db->getConnectionID(); + } + + // Method to prevent SQL injections: + function makeSafe($value) { + return $this->_db->makeSafe($value); + } + + // Method to perform SQL queries: + function sqlQuery($sql) { + return $this->_db->sqlQuery($sql); + } + + // Method to retrieve the current DataBase name: + function getName() { + return $this->_db->getName(); + //If your database has hyphens ( - ) in it, try using this instead: + //return '`'.$this->_db->getName().'`'; + } + + // Method to retrieve the last inserted ID: + function getLastInsertedID() { + return $this->_db->getLastInsertedID(); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatEncoding.php b/library/ajaxchat/chat/lib/class/AJAXChatEncoding.php new file mode 100644 index 000000000..96b2482c7 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatEncoding.php @@ -0,0 +1,138 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to provide static encoding methods +class AJAXChatEncoding { + + // Helper function to store special chars as we cannot use static class members in PHP4: + public static function getSpecialChars() { + static $specialChars; + if(!$specialChars) { + // As ' is not supported by IE, we use ' as replacement for "'": + $specialChars = array('&'=>'&', '<'=>'<', '>'=>'>', "'"=>''', '"'=>'"'); + } + return $specialChars; + } + + // Helper function to store Regular expression for NO-WS-CTL as we cannot use static class members in PHP4: + public static function getRegExp_NO_WS_CTL() { + static $regExp_NO_WS_CTL; + if(!$regExp_NO_WS_CTL) { + // Regular expression for NO-WS-CTL, non-whitespace control characters (RFC 2822), decimal 1–8, 11–12, 14–31, and 127: + $regExp_NO_WS_CTL = '/[\x0\x1\x2\x3\x4\x5\x6\x7\x8\xB\xC\xE\xF\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F\x7F]/'; + } + return $regExp_NO_WS_CTL; + } + + public static function convertEncoding($str, $charsetFrom, $charsetTo) { + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($str, $charsetTo, $charsetFrom); + } + if(function_exists('iconv')) { + return iconv($charsetFrom, $charsetTo, $str); + } + if(($charsetFrom == 'UTF-8') && ($charsetTo == 'ISO-8859-1')) { + return utf8_decode($str); + } + if(($charsetFrom == 'ISO-8859-1') && ($charsetTo == 'UTF-8')) { + return utf8_encode($str); + } + return $str; + } + + public static function htmlEncode($str, $contentCharset='UTF-8') { + switch($contentCharset) { + case 'UTF-8': + // Encode only special chars (&, <, >, ', ") as entities: + return AJAXChatEncoding::encodeSpecialChars($str); + break; + case 'ISO-8859-1': + case 'ISO-8859-15': + // Encode special chars and all extended characters above ISO-8859-1 charset as entities, then convert to content charset: + return AJAXChatEncoding::convertEncoding(AJAXChatEncoding::encodeEntities($str, 'UTF-8', array( + 0x26, 0x26, 0, 0xFFFF, // & + 0x3C, 0x3C, 0, 0xFFFF, // < + 0x3E, 0x3E, 0, 0xFFFF, // > + 0x27, 0x27, 0, 0xFFFF, // ' + 0x22, 0x22, 0, 0xFFFF, // " + 0x100, 0x2FFFF, 0, 0xFFFF // above ISO-8859-1 + )), 'UTF-8', $contentCharset); + break; + default: + // Encode special chars and all characters above ASCII charset as entities, then convert to content charset: + return AJAXChatEncoding::convertEncoding(AJAXChatEncoding::encodeEntities($str, 'UTF-8', array( + 0x26, 0x26, 0, 0xFFFF, // & + 0x3C, 0x3C, 0, 0xFFFF, // < + 0x3E, 0x3E, 0, 0xFFFF, // > + 0x27, 0x27, 0, 0xFFFF, // ' + 0x22, 0x22, 0, 0xFFFF, // " + 0x80, 0x2FFFF, 0, 0xFFFF // above ASCII + )), 'UTF-8', $contentCharset); + } + } + + public static function encodeSpecialChars($str) { + return strtr($str, AJAXChatEncoding::getSpecialChars()); + } + + public static function decodeSpecialChars($str) { + return strtr($str, array_flip(AJAXChatEncoding::getSpecialChars())); + } + + public static function encodeEntities($str, $encoding='UTF-8', $convmap=null) { + if($convmap && function_exists('mb_encode_numericentity')) { + return mb_encode_numericentity($str, $convmap, $encoding); + } + return htmlentities($str, ENT_QUOTES, $encoding); + } + + public static function decodeEntities($str, $encoding='UTF-8', $htmlEntitiesMap=null) { + // Due to PHP bug #25670, html_entity_decode does not work with UTF-8 for PHP versions < 5: + if(function_exists('html_entity_decode') && version_compare(phpversion(), 5, '>=')) { + // Replace numeric and literal entities: + $str = html_entity_decode($str, ENT_QUOTES, $encoding); + // Replace additional literal HTML entities if an HTML entities map is given: + if($htmlEntitiesMap) { + $str = strtr($str, $htmlEntitiesMap); + } + } else { + // Replace numeric entities: + $str = preg_replace('~&#([0-9]+);~e', 'AJAXChatEncoding::unicodeChar("\\1")', $str); + $str = preg_replace('~&#x([0-9a-f]+);~ei', 'AJAXChatEncoding::unicodeChar(hexdec("\\1"))', $str); + // Replace literal entities: + $htmlEntitiesMap = $htmlEntitiesMap ? $htmlEntitiesMap : array_flip(get_html_translation_table(HTML_ENTITIES, ENT_QUOTES)); + $str = strtr($str, $htmlEntitiesMap); + } + return $str; + } + + public static function unicodeChar($c) { + if($c <= 0x7F) { + return chr($c); + } else if($c <= 0x7FF) { + return chr(0xC0 | $c >> 6) . chr(0x80 | $c & 0x3F); + } else if($c <= 0xFFFF) { + return chr(0xE0 | $c >> 12) . chr(0x80 | $c >> 6 & 0x3F) + . chr(0x80 | $c & 0x3F); + } else if($c <= 0x10FFFF) { + return chr(0xF0 | $c >> 18) . chr(0x80 | $c >> 12 & 0x3F) + . chr(0x80 | $c >> 6 & 0x3F) + . chr(0x80 | $c & 0x3F); + } else { + return null; + } + } + + public static function removeUnsafeCharacters($str) { + // Remove NO-WS-CTL, non-whitespace control characters (RFC 2822), decimal 1–8, 11–12, 14–31, and 127: + return preg_replace(AJAXChatEncoding::getRegExp_NO_WS_CTL(), '', $str); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatFileSystem.php b/library/ajaxchat/chat/lib/class/AJAXChatFileSystem.php new file mode 100644 index 000000000..c9626c36a --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatFileSystem.php @@ -0,0 +1,22 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to provide methods for file system access: +class AJAXChatFileSystem { + + public static function getFileContents($file) { + if(function_exists('file_get_contents')) { + return file_get_contents($file); + } else { + return(implode('', file($file))); + } + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatHTTPHeader.php b/library/ajaxchat/chat/lib/class/AJAXChatHTTPHeader.php new file mode 100644 index 000000000..7340bfcf0 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatHTTPHeader.php @@ -0,0 +1,56 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to manage HTTP header +class AJAXChatHTTPHeader { + + var $_contentType; + var $_constant; + var $_noCache; + + function __construct($encoding='UTF-8', $contentType=null, $noCache=true) { + if($contentType) { + $this->_contentType = $contentType.'; charset='.$encoding; + $this->_constant = true; + } else { + if(isset($_SERVER['HTTP_ACCEPT']) && (strpos($_SERVER['HTTP_ACCEPT'],'application/xhtml+xml') !== false)) { + $this->_contentType = 'application/xhtml+xml; charset='.$encoding; + } else { + $this->_contentType = 'text/html; charset='.$encoding; + } + $this->_constant = false; + } + $this->_noCache = $noCache; + } + + // Method to send the HTTP header: + function send() { + // Prevent caching: + if($this->_noCache) { + header('Cache-Control: no-cache, must-revalidate'); + header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); + } + + // Send the content-type-header: + header('Content-Type: '.$this->_contentType); + + // Send vary header if content-type varies (important for proxy-caches): + if(!$this->_constant) { + header('Vary: Accept'); + } + } + + // Method to return the content-type string: + function getContentType() { + // Return the content-type string: + return $this->_contentType; + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatLanguage.php b/library/ajaxchat/chat/lib/class/AJAXChatLanguage.php new file mode 100644 index 000000000..b19724710 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatLanguage.php @@ -0,0 +1,102 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +class AJAXChatLanguage { + + var $_regExpAcceptLangCode; + var $_availableLangCodes; + var $_defaultLangCode; + var $_strictMode; + var $_langCode; + + function __construct($availableLangCodes, $defaultLangCode, $langCode=null, $strictMode=false) { + $this->_regExpAcceptLangCode = '/^([a-z]{1,8}(?:-[a-z]{1,8})*)(?:;\s*q=(0(?:\.[0-9]{1,3})?|1(?:\.0{1,3})?))?$/i'; + $this->_availableLangCodes = $availableLangCodes; + $this->_defaultLangCode = $defaultLangCode; + if($langCode && in_array($langCode, $availableLangCodes)) { + $this->_langCode = $langCode; + } + $this->_strictMode = $strictMode; + } + + // Method to detect the language code from the HTTP_ACCEPT_LANGUAGE header: + function detectLangCode() { + // If HTTP_ACCEPT_LANGUAGE is empty use defaultLangCode: + if(empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { + $this->_langCode = $this->_defaultLangCode; + return; + } + + // Split up the HTTP_ACCEPT_LANGUAGE header: + $acceptedLanguages = preg_split('/,\s*/', $_SERVER['HTTP_ACCEPT_LANGUAGE']); + + $currentLangCode = $this->_defaultLangCode; + $currentLangQuality = 0.0; + + foreach($acceptedLanguages as $acceptedLanguage) { + // Parse the language string: + $match = preg_match($this->_regExpAcceptLangCode, $acceptedLanguage, $matches); + // Check if the syntax is valid: + if(!$match) { + continue; + } + + // Get and split the language code: + $langCodeParts = explode ('-', $matches[1]); + + // Get the language quality given as float value: + if(isset($matches[2])) { + $langQuality = (float)$matches[2]; + } else { + // Missing language quality value is maximum quality: + $langQuality = 1.0; + } + + // Go through it until the language code is empty: + while(count($langCodeParts)) { + // Join the current langCodeParts: + $langCode = strtolower(join('-', $langCodeParts)); + // Check if the langCode is in the available list: + if(in_array($langCode, $this->_availableLangCodes)) { + // Check the quality setting: + if ($langQuality > $currentLangQuality) { + $currentLangCode = $langCode; + $currentLangQuality = $langQuality; + break; + } + } + // If strict mode is set, don't minimalize the language code: + if($this->_strictMode) { + break; + } + // else chop off the right part: + array_pop($langCodeParts); + } + } + + $this->_langCode = $currentLangCode; + } + + function getLangCode() { + if(!$this->_langCode) { + $this->detectLangCode(); + } + return $this->_langCode; + } + + function setLangCode($langCode) { + $this->_langCode = $langCode; + } + + function getLangCodes() { + return $this->_availableLangCodes; + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatMySQLDataBase.php b/library/ajaxchat/chat/lib/class/AJAXChatMySQLDataBase.php new file mode 100644 index 000000000..6dca348d1 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatMySQLDataBase.php @@ -0,0 +1,92 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to initialize the MySQL DataBase connection: +class AJAXChatDataBaseMySQL { + + var $_connectionID; + var $_errno = 0; + var $_error = ''; + var $_dbName; + + function __construct(&$dbConnectionConfig) { + $this->_connectionID = $dbConnectionConfig['link']; + $this->_dbName = $dbConnectionConfig['name']; + } + + // Method to connect to the DataBase server: + function connect(&$dbConnectionConfig) { + $this->_connectionID = @mysql_connect( + $dbConnectionConfig['host'], + $dbConnectionConfig['user'], + $dbConnectionConfig['pass'], + true + ); + if(!$this->_connectionID) { + $this->_errno = null; + $this->_error = 'Database connection failed.'; + return false; + } + return true; + } + + // Method to select the DataBase: + function select($dbName) { + if(!@mysql_select_db($dbName, $this->_connectionID)) { + $this->_errno = mysql_errno($this->_connectionID); + $this->_error = mysql_error($this->_connectionID); + return false; + } + $this->_dbName = $dbName; + return true; + } + + // Method to determine if an error has occured: + function error() { + return (bool)$this->_error; + } + + // Method to return the error report: + function getError() { + if($this->error()) { + $str = 'Error-Report: ' .$this->_error."\n"; + $str .= 'Error-Code: '.$this->_errno."\n"; + } else { + $str = 'No errors.'."\n"; + } + return $str; + } + + // Method to return the connection identifier: + function &getConnectionID() { + return $this->_connectionID; + } + + // Method to prevent SQL injections: + function makeSafe($value) { + return "'".mysql_real_escape_string($value, $this->_connectionID)."'"; + } + + // Method to perform SQL queries: + function sqlQuery($sql) { + return new AJAXChatMySQLQuery($sql, $this->_connectionID); + } + + // Method to retrieve the current DataBase name: + function getName() { + return $this->_dbName; + } + + // Method to retrieve the last inserted ID: + function getLastInsertedID() { + return mysql_insert_id($this->_connectionID); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatMySQLQuery.php b/library/ajaxchat/chat/lib/class/AJAXChatMySQLQuery.php new file mode 100644 index 000000000..f2f3fd466 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatMySQLQuery.php @@ -0,0 +1,89 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to perform SQL (MySQL) queries: +class AJAXChatMySQLQuery { + + var $_connectionID; + var $_sql = ''; + var $_result = 0; + var $_errno = 0; + var $_error = ''; + + // Constructor: + function __construct($sql, $connectionID = null) { + $this->_sql = trim($sql); + $this->_connectionID = $connectionID; + if($this->_connectionID) { + $this->_result = mysql_query($this->_sql, $this->_connectionID); + if(!$this->_result) { + $this->_errno = mysql_errno($this->_connectionID); + $this->_error = mysql_error($this->_connectionID); + } + } else { + $this->_result = mysql_query($this->_sql); + if(!$this->_result) { + $this->_errno = mysql_errno(); + $this->_error = mysql_error(); + } + } + } + + // Returns true if an error occured: + function error() { + // Returns true if the Result-ID is valid: + return !(bool)($this->_result); + } + + // Returns an Error-String: + function getError() { + if($this->error()) { + $str = 'Query: ' .$this->_sql ."\n"; + $str .= 'Error-Report: ' .$this->_error."\n"; + $str .= 'Error-Code: '.$this->_errno; + } else { + $str = "No errors."; + } + return $str; + } + + // Returns the content: + function fetch() { + if($this->error()) { + return null; + } else { + return mysql_fetch_assoc($this->_result); + } + } + + // Returns the number of rows (SELECT or SHOW): + function numRows() { + if($this->error()) { + return null; + } else { + return mysql_num_rows($this->_result); + } + } + + // Returns the number of affected rows (INSERT, UPDATE, REPLACE or DELETE): + function affectedRows() { + if($this->error()) { + return null; + } else { + return mysql_affected_rows($this->_connectionID); + } + } + + // Frees the memory: + function free() { + @mysql_free_result($this->_result); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatMySQLiDataBase.php b/library/ajaxchat/chat/lib/class/AJAXChatMySQLiDataBase.php new file mode 100644 index 000000000..9bc611e2d --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatMySQLiDataBase.php @@ -0,0 +1,91 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to initialize the MySQL DataBase connection: +class AJAXChatDataBaseMySQLi { + + var $_connectionID; + var $_errno = 0; + var $_error = ''; + var $_dbName; + + function __construct(&$dbConnectionConfig) { + $this->_connectionID = $dbConnectionConfig['link']; + $this->_dbName = $dbConnectionConfig['name']; + } + + // Method to connect to the DataBase server: + function connect(&$dbConnectionConfig) { + @$this->_connectionID = new mysqli( + $dbConnectionConfig['host'], + $dbConnectionConfig['user'], + $dbConnectionConfig['pass'] + ); + if($this->_connectionID->connect_errno) { + $this->_errno = mysqli_connect_errno(); + $this->_error = mysqli_connect_error(); + return false; + } + return true; + } + + // Method to select the DataBase: + function select($dbName) { + if(!$this->_connectionID->select_db($dbName)) { + $this->_errno = $this->_connectionID->errno; + $this->_error = $this->_connectionID->error; + return false; + } + $this->_dbName = $dbName; + return true; + } + + // Method to determine if an error has occured: + function error() { + return (bool)$this->_error; + } + + // Method to return the error report: + function getError() { + if($this->error()) { + $str = 'Error-Report: ' .$this->_error."\n"; + $str .= 'Error-Code: '.$this->_errno."\n"; + } else { + $str = 'No errors.'."\n"; + } + return $str; + } + + // Method to return the connection identifier: + function &getConnectionID() { + return $this->_connectionID; + } + + // Method to prevent SQL injections: + function makeSafe($value) { + return "'".$this->_connectionID->escape_string($value)."'"; + } + + // Method to perform SQL queries: + function sqlQuery($sql) { + return new AJAXChatMySQLiQuery($sql, $this->_connectionID); + } + + // Method to retrieve the current DataBase name: + function getName() { + return $this->_dbName; + } + + // Method to retrieve the last inserted ID: + function getLastInsertedID() { + return $this->_connectionID->insert_id; + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatMySQLiQuery.php b/library/ajaxchat/chat/lib/class/AJAXChatMySQLiQuery.php new file mode 100644 index 000000000..f81afd886 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatMySQLiQuery.php @@ -0,0 +1,81 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to perform SQL (MySQLi) queries: +class AJAXChatMySQLiQuery { + + var $_connectionID; + var $_sql = ''; + var $_result = 0; + var $_errno = 0; + var $_error = ''; + + // Constructor: + function __construct($sql, $connectionID) { + $this->_sql = trim($sql); + $this->_connectionID = $connectionID; + $this->_result = $this->_connectionID->query($this->_sql); + if(!$this->_result) { + $this->_errno = $this->_connectionID->errno; + $this->_error = $this->_connectionID->error; + } + } + + // Returns true if an error occured: + function error() { + // Returns true if the Result-ID is valid: + return !(bool)($this->_result); + } + + // Returns an Error-String: + function getError() { + if($this->error()) { + $str = 'Query: ' .$this->_sql ."\n"; + $str .= 'Error-Report: ' .$this->_error."\n"; + $str .= 'Error-Code: '.$this->_errno; + } else { + $str = "No errors."; + } + return $str; + } + + // Returns the content: + function fetch() { + if($this->error()) { + return null; + } else { + return $this->_result->fetch_assoc(); + } + } + + // Returns the number of rows (SELECT or SHOW): + function numRows() { + if($this->error()) { + return null; + } else { + return $this->_result->num_rows; + } + } + + // Returns the number of affected rows (INSERT, UPDATE, REPLACE or DELETE): + function affectedRows() { + if($this->error()) { + return null; + } else { + return $this->_connectionID->affected_rows; + } + } + + // Frees the memory: + function free() { + $this->_result->free(); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatString.php b/library/ajaxchat/chat/lib/class/AJAXChatString.php new file mode 100644 index 000000000..8997da5ea --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatString.php @@ -0,0 +1,37 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to provide multibyte enabled string methods +class AJAXChatString { + + public static function subString($str, $start=0, $length=null, $encoding='UTF-8') { + if($length === null) { + $length = AJAXChatString::stringLength($str); + } + if(function_exists('mb_substr')) { + return mb_substr($str, $start, $length, $encoding); + } else if(function_exists('iconv_substr')) { + return iconv_substr($str, $start, $length, $encoding); + } else { + return substr($str, $start, $length); + } + } + + public static function stringLength($str, $encoding='UTF-8') { + if(function_exists('mb_strlen')) { + return mb_strlen($str, $encoding); + } else if(function_exists('iconv_strlen')) { + return iconv_strlen($str, $encoding); + } else { + return strlen($str); + } + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/AJAXChatTemplate.php b/library/ajaxchat/chat/lib/class/AJAXChatTemplate.php new file mode 100644 index 000000000..16e53a7e6 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/AJAXChatTemplate.php @@ -0,0 +1,329 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Class to handle HTML templates +class AJAXChatTemplate { + + var $ajaxChat; + var $_regExpTemplateTags; + var $_templateFile; + var $_contentType; + var $_content; + var $_parsedContent; + + // Constructor: + function __construct(&$ajaxChat, $templateFile, $contentType=null) { + $this->ajaxChat = $ajaxChat; + $this->_regExpTemplateTags = '/\[(\w+?)(?:(?:\/)|(?:\](.+?)\[\/\1))\]/s'; + $this->_templateFile = $templateFile; + $this->_contentType = $contentType; + } + + function getParsedContent() { + if(!$this->_parsedContent) { + $this->parseContent(); + } + return $this->_parsedContent; + } + + function getContent() { + if(!$this->_content) { + $this->_content = AJAXChatFileSystem::getFileContents($this->_templateFile); + } + return $this->_content; + } + + function parseContent() { + $this->_parsedContent = $this->getContent(); + + // Remove the XML declaration if the content-type is not xml: + if($this->_contentType && (strpos($this->_contentType,'xml') === false)) { + $doctypeStart = strpos($this->_parsedContent, '<!DOCTYPE '); + if($doctypeStart !== false) { + // Removing the XML declaration (in front of the document type) prevents IE<7 to go into "Quirks mode": + $this->_parsedContent = substr($this->_parsedContent, $doctypeStart); + } + } + + // Replace template tags ([TAG/] and [TAG]content[/TAG]) and return parsed template content: + $this->_parsedContent = preg_replace_callback($this->_regExpTemplateTags, array($this, 'replaceTemplateTags'), $this->_parsedContent); + } + + function replaceTemplateTags($tagData) { + switch($tagData[1]) { + case 'AJAX_CHAT_URL': + return $this->ajaxChat->htmlEncode($this->ajaxChat->getChatURL()); + + case 'LANG': + return $this->ajaxChat->htmlEncode($this->ajaxChat->getLang((isset($tagData[2]) ? $tagData[2] : null))); + case 'LANG_CODE': + return $this->ajaxChat->getLangCode(); + + case 'BASE_DIRECTION': + return $this->getBaseDirectionAttribute(); + + case 'CONTENT_ENCODING': + return $this->ajaxChat->getConfig('contentEncoding'); + + case 'CONTENT_TYPE': + return $this->_contentType; + + case 'LOGIN_URL': + return ($this->ajaxChat->getRequestVar('view') == 'logs') ? './?view=logs' : './'; + + case 'USER_NAME_MAX_LENGTH': + return $this->ajaxChat->getConfig('userNameMaxLength'); + case 'MESSAGE_TEXT_MAX_LENGTH': + return $this->ajaxChat->getConfig('messageTextMaxLength'); + + case 'LOGIN_CHANNEL_ID': + return $this->ajaxChat->getValidRequestChannelID(); + + case 'SESSION_NAME': + return $this->ajaxChat->getConfig('sessionName'); + + case 'COOKIE_EXPIRATION': + return $this->ajaxChat->getConfig('sessionCookieLifeTime'); + case 'COOKIE_PATH': + return $this->ajaxChat->getConfig('sessionCookiePath'); + case 'COOKIE_DOMAIN': + return $this->ajaxChat->getConfig('sessionCookieDomain'); + case 'COOKIE_SECURE': + return $this->ajaxChat->getConfig('sessionCookieSecure'); + + case 'CHAT_BOT_NAME': + return rawurlencode($this->ajaxChat->getConfig('chatBotName')); + case 'CHAT_BOT_ID': + return $this->ajaxChat->getConfig('chatBotID'); + + case 'ALLOW_USER_MESSAGE_DELETE': + if($this->ajaxChat->getConfig('allowUserMessageDelete')) + return 1; + else + return 0; + + case 'INACTIVE_TIMEOUT': + return $this->ajaxChat->getConfig('inactiveTimeout'); + + case 'PRIVATE_CHANNEL_DIFF': + return $this->ajaxChat->getConfig('privateChannelDiff'); + case 'PRIVATE_MESSAGE_DIFF': + return $this->ajaxChat->getConfig('privateMessageDiff'); + + case 'SHOW_CHANNEL_MESSAGES': + if($this->ajaxChat->getConfig('showChannelMessages')) + return 1; + else + return 0; + + case 'SOCKET_SERVER_ENABLED': + if($this->ajaxChat->getConfig('socketServerEnabled')) + return 1; + else + return 0; + + case 'SOCKET_SERVER_HOST': + if($this->ajaxChat->getConfig('socketServerHost')) { + $socketServerHost = $this->ajaxChat->getConfig('socketServerHost'); + } else { + $socketServerHost = (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : $_SERVER['SERVER_NAME']); + } + return rawurlencode($socketServerHost); + + case 'SOCKET_SERVER_PORT': + return $this->ajaxChat->getConfig('socketServerPort'); + + case 'SOCKET_SERVER_CHAT_ID': + return $this->ajaxChat->getConfig('socketServerChatID'); + + case 'STYLE_SHEETS': + return $this->getStyleSheetLinkTags(); + + case 'CHANNEL_OPTIONS': + return $this->getChannelOptionTags(); + case 'STYLE_OPTIONS': + return $this->getStyleOptionTags(); + case 'LANGUAGE_OPTIONS': + return $this->getLanguageOptionTags(); + + case 'ERROR_MESSAGES': + return $this->getErrorMessageTags(); + + case 'LOGS_CHANNEL_OPTIONS': + return $this->getLogsChannelOptionTags(); + case 'LOGS_YEAR_OPTIONS': + return $this->getLogsYearOptionTags(); + case 'LOGS_MONTH_OPTIONS': + return $this->getLogsMonthOptionTags(); + case 'LOGS_DAY_OPTIONS': + return $this->getLogsDayOptionTags(); + case 'LOGS_HOUR_OPTIONS': + return $this->getLogsHourOptionTags(); + case 'CLASS_WRITEABLE': + $userdata = $this->ajaxChat->getValidLoginUserData(); + $guestwrite = $this->ajaxChat->getConfig('allowGuestWrite'); + if ($userdata['userRole'] === AJAX_CHAT_GUEST && $guestwrite === false) + return 'write_forbidden'; + else + return 'write_allowed'; + + default: + return $this->ajaxChat->replaceCustomTemplateTags($tagData[1], (isset($tagData[2]) ? $tagData[2] : null)); + } + } + + // Function to display alternating table row colors: + function alternateRow($rowOdd='rowOdd', $rowEven='rowEven') { + static $i; + $i += 1; + if($i % 2 == 0) { + return $rowEven; + } else { + return $rowOdd; + } + } + + function getBaseDirectionAttribute() { + $langCodeParts = explode('-', $this->ajaxChat->getLangCode()); + switch($langCodeParts[0]) { + case 'ar': + case 'fa': + case 'he': + return 'rtl'; + default: + return 'ltr'; + } + } + + function getStyleSheetLinkTags() { + $styleSheets = ''; + foreach($this->ajaxChat->getConfig('styleAvailable') as $style) { + $alternate = ($style == $this->ajaxChat->getConfig('styleDefault')) ? '' : 'alternate '; + $styleSheets .= '<link rel="'.$alternate.'stylesheet" type="text/css" href="css/'.rawurlencode($style).'.css" title="'.$this->ajaxChat->htmlEncode($style).'"/>'; + } + return $styleSheets; + } + + function getChannelOptionTags() { + $channelOptions = ''; + $channelSelected = false; + foreach($this->ajaxChat->getChannels() as $name=>$id) { + if($this->ajaxChat->isLoggedIn() && $this->ajaxChat->getChannel()) { + $selected = ($id == $this->ajaxChat->getChannel()) ? ' selected="selected"' : ''; + } else { + $selected = ($id == $this->ajaxChat->getConfig('defaultChannelID')) ? ' selected="selected"' : ''; + } + if($selected) { + $channelSelected = true; + } + $channelOptions .= '<option value="'.$this->ajaxChat->htmlEncode($name).'"'.$selected.'>'.$this->ajaxChat->htmlEncode($name).'</option>'; + } + if($this->ajaxChat->isLoggedIn() && $this->ajaxChat->isAllowedToCreatePrivateChannel()) { + // Add the private channel of the user to the options list: + if(!$channelSelected && $this->ajaxChat->getPrivateChannelID() == $this->ajaxChat->getChannel()) { + $selected = ' selected="selected"'; + $channelSelected = true; + } else { + $selected = ''; + } + $privateChannelName = $this->ajaxChat->getPrivateChannelName(); + $channelOptions .= '<option value="'.$this->ajaxChat->htmlEncode($privateChannelName).'"'.$selected.'>'.$this->ajaxChat->htmlEncode($privateChannelName).'</option>'; + } + // If current channel is not in the list, try to retrieve the channelName: + if(!$channelSelected) { + $channelName = $this->ajaxChat->getChannelName(); + if($channelName !== null) { + $channelOptions .= '<option value="'.$this->ajaxChat->htmlEncode($channelName).'" selected="selected">'.$this->ajaxChat->htmlEncode($channelName).'</option>'; + } else { + // Show an empty selection: + $channelOptions .= '<option value="" selected="selected">---</option>'; + } + } + return $channelOptions; + } + + function getStyleOptionTags() { + $styleOptions = ''; + foreach($this->ajaxChat->getConfig('styleAvailable') as $style) { + $selected = ($style == $this->ajaxChat->getConfig('styleDefault')) ? ' selected="selected"' : ''; + $styleOptions .= '<option value="'.$this->ajaxChat->htmlEncode($style).'"'.$selected.'>'.$this->ajaxChat->htmlEncode($style).'</option>'; + } + return $styleOptions; + } + + function getLanguageOptionTags() { + $languageOptions = ''; + $languageNames = $this->ajaxChat->getConfig('langNames'); + foreach($this->ajaxChat->getConfig('langAvailable') as $langCode) { + $selected = ($langCode == $this->ajaxChat->getLangCode()) ? ' selected="selected"' : ''; + $languageOptions .= '<option value="'.$this->ajaxChat->htmlEncode($langCode).'"'.$selected.'>'.$languageNames[$langCode].'</option>'; + } + return $languageOptions; + } + + function getErrorMessageTags() { + $errorMessages = ''; + foreach($this->ajaxChat->getInfoMessages('error') as $error) { + $errorMessages .= '<div>'.$this->ajaxChat->htmlEncode($this->ajaxChat->getLang($error)).'</div>'; + } + return $errorMessages; + } + + function getLogsChannelOptionTags() { + $channelOptions = ''; + $channelOptions .= '<option value="-3">------</option>'; + foreach($this->ajaxChat->getChannels() as $key=>$value) { + if($this->ajaxChat->getUserRole() != AJAX_CHAT_ADMIN && $this->ajaxChat->getConfig('logsUserAccessChannelList') && !in_array($value, $this->ajaxChat->getConfig('logsUserAccessChannelList'))) { + continue; + } + $channelOptions .= '<option value="'.$value.'">'.$this->ajaxChat->htmlEncode($key).'</option>'; + } + $channelOptions .= '<option value="-1">'.$this->ajaxChat->htmlEncode($this->ajaxChat->getLang('logsPrivateChannels')).'</option>'; + $channelOptions .= '<option value="-2">'.$this->ajaxChat->htmlEncode($this->ajaxChat->getLang('logsPrivateMessages')).'</option>'; + return $channelOptions; + } + + function getLogsYearOptionTags() { + $yearOptions = ''; + $yearOptions .= '<option value="-1">----</option>'; + for($year=date('Y'); $year>=$this->ajaxChat->getConfig('logsFirstYear'); $year--) { + $yearOptions .= '<option value="'.$year.'">'.$year.'</option>'; + } + return $yearOptions; + } + + function getLogsMonthOptionTags() { + $monthOptions = ''; + $monthOptions .= '<option value="-1">--</option>'; + for($month=1; $month<=12; $month++) { + $monthOptions .= '<option value="'.$month.'">'.sprintf("%02d", $month).'</option>'; + } + return $monthOptions; + } + + function getLogsDayOptionTags() { + $dayOptions = ''; + $dayOptions .= '<option value="-1">--</option>'; + for($day=1; $day<=31; $day++) { + $dayOptions .= '<option value="'.$day.'">'.sprintf("%02d", $day).'</option>'; + } + return $dayOptions; + } + + function getLogsHourOptionTags() { + $hourOptions = ''; + $hourOptions .= '<option value="-1">-----</option>'; + for($hour=0; $hour<=23; $hour++) { + $hourOptions .= '<option value="'.$hour.'">'.sprintf("%02d", $hour).':00</option>'; + } + return $hourOptions; + } + +} +?> diff --git a/library/ajaxchat/chat/lib/class/CustomAJAXChat.php b/library/ajaxchat/chat/lib/class/CustomAJAXChat.php new file mode 100644 index 000000000..a18e64069 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/CustomAJAXChat.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +class CustomAJAXChat extends AJAXChat { + + // Returns an associative array containing userName, userID and userRole + // Returns null if login is invalid + function getValidLoginUserData() { + + $customUsers = $this->getCustomUsers(); + + if($this->getRequestVar('password')) { + // Check if we have a valid registered user: + + $userName = $this->getRequestVar('userName'); + $userName = $this->convertEncoding($userName, $this->getConfig('contentEncoding'), $this->getConfig('sourceEncoding')); + + $password = $this->getRequestVar('password'); + $password = $this->convertEncoding($password, $this->getConfig('contentEncoding'), $this->getConfig('sourceEncoding')); + + foreach($customUsers as $key=>$value) { + if(($value['userName'] == $userName) && ($value['password'] == $password)) { + $userData = array(); + $userData['userID'] = $key; + $userData['userName'] = $this->trimUserName($value['userName']); + $userData['userRole'] = $value['userRole']; + return $userData; + } + } + + return null; + } else { + // Guest users: + return $this->getGuestUser(); + } + } + + // Store the channels the current user has access to + // Make sure channel names don't contain any whitespace + function &getChannels() { + if($this->_channels === null) { + $this->_channels = array(); + + $customUsers = $this->getCustomUsers(); + + // Get the channels, the user has access to: + if($this->getUserRole() == AJAX_CHAT_GUEST) { + $validChannels = $customUsers[0]['channels']; + } else { + $validChannels = $customUsers[$this->getUserID()]['channels']; + } + + // Add the valid channels to the channel list (the defaultChannelID is always valid): + foreach($this->getAllChannels() as $key=>$value) { + if ($value == $this->getConfig('defaultChannelID')) { + $this->_channels[$key] = $value; + continue; + } + // Check if we have to limit the available channels: + if($this->getConfig('limitChannelList') && !in_array($value, $this->getConfig('limitChannelList'))) { + continue; + } + if(in_array($value, $validChannels)) { + $this->_channels[$key] = $value; + } + } + } + return $this->_channels; + } + + // Store all existing channels + // Make sure channel names don't contain any whitespace + function &getAllChannels() { + if($this->_allChannels === null) { + // Get all existing channels: + $customChannels = $this->getCustomChannels(); + + $defaultChannelFound = false; + + foreach($customChannels as $name=>$id) { + $this->_allChannels[$this->trimChannelName($name)] = $id; + if($id == $this->getConfig('defaultChannelID')) { + $defaultChannelFound = true; + } + } + + if(!$defaultChannelFound) { + // Add the default channel as first array element to the channel list + // First remove it in case it appeard under a different ID + unset($this->_allChannels[$this->getConfig('defaultChannelName')]); + $this->_allChannels = array_merge( + array( + $this->trimChannelName($this->getConfig('defaultChannelName'))=>$this->getConfig('defaultChannelID') + ), + $this->_allChannels + ); + } + } + return $this->_allChannels; + } + + function &getCustomUsers() { + // List containing the registered chat users: + $users = null; + require(AJAX_CHAT_PATH.'lib/data/users.php'); + return $users; + } + + function getCustomChannels() { + // List containing the custom channels: + $channels = null; + require(AJAX_CHAT_PATH.'lib/data/channels.php'); + // Channel array structure should be: + // ChannelName => ChannelID + return array_flip($channels); + } + +}
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/CustomAJAXChatInterface.php b/library/ajaxchat/chat/lib/class/CustomAJAXChatInterface.php new file mode 100644 index 000000000..a950739c5 --- /dev/null +++ b/library/ajaxchat/chat/lib/class/CustomAJAXChatInterface.php @@ -0,0 +1,21 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +class CustomAJAXChatInterface extends CustomAJAXChat { + + function initialize() { + // Initialize configuration settings: + $this->initConfig(); + + // Initialize the DataBase connection: + $this->initDataBaseConnection(); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/class/CustomAJAXChatShoutBox.php b/library/ajaxchat/chat/lib/class/CustomAJAXChatShoutBox.php new file mode 100644 index 000000000..c014d639e --- /dev/null +++ b/library/ajaxchat/chat/lib/class/CustomAJAXChatShoutBox.php @@ -0,0 +1,25 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +class CustomAJAXChatShoutBox extends CustomAJAXChat { + + function initialize() { + // Initialize configuration settings: + $this->initConfig(); + } + + function getShoutBoxContent() { + $template = new AJAXChatTemplate($this, AJAX_CHAT_PATH.'lib/template/shoutbox.html'); + + // Return parsed template content: + return $template->getParsedContent(); + } + +} +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/classes.php b/library/ajaxchat/chat/lib/classes.php new file mode 100644 index 000000000..ff1dee265 --- /dev/null +++ b/library/ajaxchat/chat/lib/classes.php @@ -0,0 +1,26 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Include Class libraries: +require(AJAX_CHAT_PATH.'lib/class/AJAXChat.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatDataBase.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatMySQLDataBase.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatMySQLQuery.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatMySQLiDataBase.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatMySQLiQuery.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatEncoding.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatString.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatFileSystem.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatHTTPHeader.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatLanguage.php'); +require(AJAX_CHAT_PATH.'lib/class/AJAXChatTemplate.php'); +require(AJAX_CHAT_PATH.'lib/class/CustomAJAXChat.php'); +require(AJAX_CHAT_PATH.'lib/class/CustomAJAXChatShoutBox.php'); +require(AJAX_CHAT_PATH.'lib/class/CustomAJAXChatInterface.php'); +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/config.php.example b/library/ajaxchat/chat/lib/config.php.example new file mode 100644 index 000000000..023adcdbb --- /dev/null +++ b/library/ajaxchat/chat/lib/config.php.example @@ -0,0 +1,209 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Define AJAX Chat user roles: +define('AJAX_CHAT_CHATBOT', 4); +define('AJAX_CHAT_ADMIN', 3); +define('AJAX_CHAT_MODERATOR', 2); +define('AJAX_CHAT_USER', 1); +define('AJAX_CHAT_GUEST', 0); + +// AJAX Chat config parameters: +$config = array(); + +// Database connection values: +$config['dbConnection'] = array(); +// Database hostname: +$config['dbConnection']['host'] = 'localhost'; +// Database username: +$config['dbConnection']['user'] = 'root'; +// Database password: +$config['dbConnection']['pass'] = ''; +// Database name: +$config['dbConnection']['name'] = 'chat'; +// Database type: +$config['dbConnection']['type'] = null; +// Database link: +$config['dbConnection']['link'] = null; + +// Database table names: +$config['dbTableNames'] = array(); +$config['dbTableNames']['online'] = 'ajax_chat_online'; +$config['dbTableNames']['messages'] = 'ajax_chat_messages'; +$config['dbTableNames']['bans'] = 'ajax_chat_bans'; +$config['dbTableNames']['invitations'] = 'ajax_chat_invitations'; + +// Available languages: +$config['langAvailable'] = array( + 'ar','bg','ca','cy','cz','da','de','el','en','es','et','fa','fi','fr','gl','he','hr','hu','in','it','ja','ka','kr','mk','nl','nl-be','no','pl','pt-br','pt-pt','ro','ru','sk','sl','sr','sv','th','tr','uk','zh','zh-tw' +); +// Default language: +$config['langDefault'] = 'en'; +// Language names (each languge code in available languages must have a display name assigned here): +$config['langNames'] = array( + 'ar'=>'عربي', 'bg'=>'Български', 'ca'=>'Català', 'cy'=>'Cymraeg', 'cz'=>'Česky', 'da'=>'Dansk', 'de'=>'Deutsch', 'el'=>'Ελληνικα', 'en'=>'English', + 'es'=>'Español', 'et'=>'Eesti', 'fa'=>'فارسی', 'fi'=>'Suomi', 'fr'=>'Français', 'gl'=>'Galego', 'he'=>'עברית', 'hr' => 'Hrvatski', 'hu' => 'Magyar', 'in'=>'Bahasa Indonesia', 'it'=>'Italiano', + 'ja'=>'日本語','ka'=>'ქართული','kr'=>'한 글','mk'=>'Македонски', 'nl'=>'Nederlands', 'nl-be'=>'Nederlands (België)', 'no'=>'Norsk', 'pl'=> 'Polski', 'pt-br'=>'Português (Brasil)', 'pt-pt'=>'Português (Portugal)', + 'ro'=>'România', 'ru'=>'Русский', 'sk'=> 'Slovenčina', 'sl'=>'Slovensko', 'sr'=>'Srpski', 'sv'=> 'Svenska', 'th'=>'ภาษาไทย', + 'tr'=>'Türkçe', 'uk'=>'Українська', 'zh'=>'中文 (简体)', 'zh-tw'=>'中文 (繁體)' +); + +// Available styles: +$config['styleAvailable'] = array('beige','black','grey','Oxygen','Lithium','Sulfur','Cobalt','Mercury','Uranium','Plum','prosilver','subblack2','subSilver','Core','MyBB','vBulletin'); +// Default style: +$config['styleDefault'] = 'prosilver'; + +// The encoding used for the XHTML content: +$config['contentEncoding'] = 'UTF-8'; +// The encoding of the data source, like userNames and channelNames: +$config['sourceEncoding'] = 'UTF-8'; +// The content-type of the XHTML page (e.g. "text/html", will be set dependent on browser capabilities if set to null): +$config['contentType'] = null; + +// Session name used to identify the session cookie: +$config['sessionName'] = 'ajax_chat'; +// Prefix added to every session key: +$config['sessionKeyPrefix'] = 'ajaxChat'; +// The lifetime of the language, style and setting cookies in days: +$config['sessionCookieLifeTime'] = 365; +// The path of the cookies, '/' allows to read the cookies from all directories: +$config['sessionCookiePath'] = '/'; +// The domain of the cookies, defaults to the hostname of the server if set to null: +$config['sessionCookieDomain'] = null; +// If enabled, cookies must be sent over secure (SSL/TLS encrypted) connections: +$config['sessionCookieSecure'] = null; + +// Default channelName used together with the defaultChannelID if no channel with this ID exists: +$config['defaultChannelName'] = 'Public'; +// ChannelID used when no channel is given: +$config['defaultChannelID'] = 0; +// Defines an array of channelIDs (e.g. array(0, 1)) to limit the number of available channels, will be ignored if set to null: +$config['limitChannelList'] = null; + +// UserID plus this value are private channels (this is also the max userID and max channelID): +$config['privateChannelDiff'] = 500000000; +// UserID plus this value are used for private messages: +$config['privateMessageDiff'] = 1000000000; + +// Enable/Disable private Channels: +$config['allowPrivateChannels'] = true; +// Enable/Disable private Messages: +$config['allowPrivateMessages'] = true; + +// Private channels should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['privateChannelPrefix'] = '['; +// Private channels should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['privateChannelSuffix'] = ']'; + +// If enabled, users will be logged in automatically as guest users (if allowed), if not authenticated: +$config['forceAutoLogin'] = false; + +// Defines if login/logout and channel enter/leave are displayed: +$config['showChannelMessages'] = true; + +// If enabled, the chat will only be accessible for the admin: +$config['chatClosed'] = false; +// Defines the timezone offset in seconds (-12*60*60 to 12*60*60) - if null, the server timezone is used: +$config['timeZoneOffset'] = null; +// Defines the hour of the day the chat is opened (0 - closingHour): +$config['openingHour'] = 0; +// Defines the hour of the day the chat is closed (openingHour - 24): +$config['closingHour'] = 24; +// Defines the weekdays the chat is opened (0=Sunday to 6=Saturday): +$config['openingWeekDays'] = array(0,1,2,3,4,5,6); + +// Enable/Disable guest logins: +$config['allowGuestLogins'] = true; +// Enable/Disable write access for guest users - if disabled, guest users may not write messages: +$config['allowGuestWrite'] = true; +// Allow/Disallow guest users to choose their own userName: +$config['allowGuestUserName'] = true; +// Guest users should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['guestUserPrefix'] = '('; +// Guest users should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['guestUserSuffix'] = ')'; +// Guest userIDs may not be lower than this value (and not higher than privateChannelDiff): +$config['minGuestUserID'] = 400000000; + +// Allow/Disallow users to change their userName (Nickname): +$config['allowNickChange'] = true; +// Changed userNames should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['changedNickPrefix'] = '('; +// Changed userNames should be distinguished by either a prefix or a suffix or both (no whitespace): +$config['changedNickSuffix'] = ')'; + +// Allow/Disallow registered users to delete their own messages: +$config['allowUserMessageDelete'] = true; + +// The userID used for ChatBot messages: +$config['chatBotID'] = 2147483647; +// The userName used for ChatBot messages +$config['chatBotName'] = 'ChatBot'; + +// Minutes until a user is declared inactive (last status update) - the minimum is 2 minutes: +$config['inactiveTimeout'] = 2; +// Interval in minutes to check for inactive users: +$config['inactiveCheckInterval'] = 5; + +// Defines if messages are shown which have been sent before the user entered the channel: +$config['requestMessagesPriorChannelEnter'] = true; +// Defines an array of channelIDs (e.g. array(0, 1)) for which the previous setting is always true (will be ignored if set to null): +$config['requestMessagesPriorChannelEnterList'] = null; +// Max time difference in hours for messages to display on each request: +$config['requestMessagesTimeDiff'] = 24; +// Max number of messages to display on each request: +$config['requestMessagesLimit'] = 10; + +// Max users in chat (does not affect moderators or admins): +$config['maxUsersLoggedIn'] = 100; +// Max userName length: +$config['userNameMaxLength'] = 16; +// Max messageText length: +$config['messageTextMaxLength'] = 1040; +// Defines the max number of messages a user may send per minute: +$config['maxMessageRate'] = 20; + +// Defines the default time in minutes a user gets banned if kicked from a moderator without ban minutes parameter: +$config['defaultBanTime'] = 5; + +// Argument that is given to the handleLogout JavaScript method: +$config['logoutData'] = './?logout=true'; + +// If true, checks if the user IP is the same when logged in: +$config['ipCheck'] = true; + +// Defines the max time difference in hours for logs when no period or search condition is given: +$config['logsRequestMessagesTimeDiff'] = 1; +// Defines how many logs are returned on each logs request: +$config['logsRequestMessagesLimit'] = 10; + +// Defines the earliest year used for the logs selection: +$config['logsFirstYear'] = 2007; + +// Defines if old messages are purged from the database: +$config['logsPurgeLogs'] = false; +// Max time difference in days for old messages before they are purged from the database: +$config['logsPurgeTimeDiff'] = 365; + +// Defines if registered users (including moderators) have access to the logs (admins are always granted access): +$config['logsUserAccess'] = false; +// Defines a list of channels (e.g. array(0, 1)) to limit the logs access for registered users, includes all channels the user has access to if set to null: +$config['logsUserAccessChannelList'] = null; + +// Defines if the socket server is enabled: +$config['socketServerEnabled'] = false; +// Defines the hostname of the socket server used to connect from client side (the server hostname is used if set to null): +$config['socketServerHost'] = null; +// Defines the IP of the socket server used to connect from server side to broadcast update messages: +$config['socketServerIP'] = '127.0.0.1'; +// Defines the port of the socket server: +$config['socketServerPort'] = 1935; +// This ID can be used to distinguish between different chat installations using the same socket server: +$config['socketServerChatID'] = 0; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/custom.php b/library/ajaxchat/chat/lib/custom.php new file mode 100644 index 000000000..a9d08841b --- /dev/null +++ b/library/ajaxchat/chat/lib/custom.php @@ -0,0 +1,11 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// Include custom libraries and initialization code here +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/data/channels.php b/library/ajaxchat/chat/lib/data/channels.php new file mode 100644 index 000000000..8688e5e7b --- /dev/null +++ b/library/ajaxchat/chat/lib/data/channels.php @@ -0,0 +1,16 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// List containing the custom channels: +$channels = array(); + +// Sample channel list: +$channels[0] = 'Public'; +$channels[1] = 'Private'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/data/users.php b/library/ajaxchat/chat/lib/data/users.php new file mode 100644 index 000000000..52ca77e50 --- /dev/null +++ b/library/ajaxchat/chat/lib/data/users.php @@ -0,0 +1,40 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +// List containing the registered chat users: +$users = array(); + +// Default guest user (don't delete this one): +$users[0] = array(); +$users[0]['userRole'] = AJAX_CHAT_GUEST; +$users[0]['userName'] = null; +$users[0]['password'] = null; +$users[0]['channels'] = array(0); + +// Sample admin user: +$users[1] = array(); +$users[1]['userRole'] = AJAX_CHAT_ADMIN; +$users[1]['userName'] = 'admin'; +$users[1]['password'] = 'admin'; +$users[1]['channels'] = array(0,1); + +// Sample moderator user: +$users[2] = array(); +$users[2]['userRole'] = AJAX_CHAT_MODERATOR; +$users[2]['userName'] = 'moderator'; +$users[2]['password'] = 'moderator'; +$users[2]['channels'] = array(0,1); + +// Sample registered user: +$users[3] = array(); +$users[3]['userRole'] = AJAX_CHAT_USER; +$users[3]['userName'] = 'user'; +$users[3]['password'] = 'user'; +$users[3]['channels'] = array(0,1); +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ar.php b/library/ajaxchat/chat/lib/lang/ar.php new file mode 100644 index 000000000..af9c8305e --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ar.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author pepotiger (www.dd4bb.com)
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */ +
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'اسم المستخدم';
+$lang['password'] = 'كلمة المرور';
+$lang['login'] = 'دخول';
+$lang['logout'] = 'خروج';
+$lang['channel'] = 'الغرفة';
+$lang['style'] = 'الشكل';
+$lang['language'] = 'اللغة';
+$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break';
+$lang['messageSubmit'] = 'ارسل';
+$lang['registeredUsers'] = 'الأعضاء المسجلين';
+$lang['onlineUsers'] = 'الأعضاء المتواجدين';
+$lang['toggleAutoScroll'] = 'Autoscroll on/off';
+$lang['toggleAudio'] = 'Sound on/off';
+$lang['toggleHelp'] = 'Show/hide help';
+$lang['toggleSettings'] = 'Show/hide settings';
+$lang['toggleOnlineList'] = 'Show/hide online list';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'اقتباس';
+$lang['bbCodeLabelCode'] = 'كود';
+$lang['bbCodeLabelURL'] = 'رابط';
+$lang['bbCodeLabelImg'] = 'Image';
+$lang['bbCodeLabelColor'] = 'لون الخط';
+$lang['bbCodeTitleBold'] = 'نص عريض: [b]نص[/b]';
+$lang['bbCodeTitleItalic'] = 'نص مائل: [i]نص[/i]';
+$lang['bbCodeTitleUnderline'] = 'نص تحته خط: [u]نص[/u]';
+$lang['bbCodeTitleQuote'] = 'نص مقتبس: [quote]نص[/quote] او [quote=الكاتب]نص[/quote]';
+$lang['bbCodeTitleCode'] = 'عرض الكود: [code]كود[/code]';
+$lang['bbCodeTitleURL'] = 'ادحال رابط: [url]http://example.org[/url] او [url=http://example.org]نص[/url]';
+$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'لون النص: [color=red]نص[/color]';
+$lang['help'] = 'مساعدة';
+$lang['helpItemDescJoin'] = 'دخول الغرفة:';
+$lang['helpItemCodeJoin'] = '/join اسم الغرفة';
+$lang['helpItemDescJoinCreate'] = 'انشاء غرفة خاصة (للمسجلين فقط):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'دعوة احد (لغرفة خاصة مثلا):';
+$lang['helpItemCodeInvite'] = '/invite username';
+$lang['helpItemDescUninvite'] = 'الغاء الدعوة:';
+$lang['helpItemCodeUninvite'] = '/uninvite Username';
+$lang['helpItemDescLogout'] = 'خروج:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'رسالة خاصة:';
+$lang['helpItemCodePrivateMessage'] = '/msg Username نص';
+$lang['helpItemDescQueryOpen'] = 'فتح نافذة خاصة:';
+$lang['helpItemCodeQueryOpen'] = '/query Username';
+$lang['helpItemDescQueryClose'] = 'غلق النافذة الخاصة:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'وصف الحدث:';
+$lang['helpItemCodeAction'] = '/action نص';
+$lang['helpItemDescDescribe'] = 'وصف حدث برسالة خاصة:';
+$lang['helpItemCodeDescribe'] = '/describe Username نص';
+$lang['helpItemDescIgnore'] = 'تجاهل/قبول رسائل خاصة من:';
+$lang['helpItemCodeIgnore'] = '/ignore Username';
+$lang['helpItemDescIgnoreList'] = 'الأعضاء المتجاهلين:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Display user channel:';
+$lang['helpItemCodeWhereis'] = '/whereis Username';
+$lang['helpItemDescKick'] = 'حظر مستخدمين (للمديرين فقط):';
+$lang['helpItemCodeKick'] = '/kick Username [دقائق الحظر]';
+$lang['helpItemDescUnban'] = 'الغاء حظر عضو (للمديرين فقط):';
+$lang['helpItemCodeUnban'] = '/unban Username';
+$lang['helpItemDescBans'] = 'الأعضاء المحظورين (للمديرين فقط):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'عرض الأى بى للمستخدم (المديرين فقط):';
+$lang['helpItemCodeWhois'] = '/whois Username';
+$lang['helpItemDescWho'] = 'الأعضاء المتواجدين:';
+$lang['helpItemCodeWho'] = '/who [Channelname]';
+$lang['helpItemDescList'] = 'القنوات المتوافرة:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Roll dice:';
+$lang['helpItemCodeRoll'] = '/roll [number]d[sides]';
+$lang['helpItemDescNick'] = 'Change username:';
+$lang['helpItemCodeNick'] = '/nick Username';
+$lang['settings'] = 'Settings';
+$lang['settingsBBCode'] = 'Enable BBCode:';
+$lang['settingsBBCodeImages'] = 'Enable image BBCode:';
+$lang['settingsBBCodeColors'] = 'Enable font color BBCode:';
+$lang['settingsHyperLinks'] = 'Enable hyperlinks:';
+$lang['settingsLineBreaks'] = 'Enable line breaks:';
+$lang['settingsEmoticons'] = 'Enable emoticons:';
+$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:';
+$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:';
+$lang['settingsWordWrap'] = 'Enable wrapping of long words:';
+$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:';
+$lang['settingsDateFormat'] = 'Format of date and time display:';
+$lang['settingsPersistFontColor'] = 'Persist font color:';
+$lang['settingsAudioVolume'] = 'Sound Volume:';
+$lang['settingsSoundReceive'] = 'Sound for incoming messages:';
+$lang['settingsSoundSend'] = 'Sound for outgoing messages:';
+$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:';
+$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:';
+$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:';
+$lang['settingsSoundError'] = 'Sound for error messages:';
+$lang['settingsBlink'] = 'Blink window title on new messages:';
+$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:';
+$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:';
+$lang['playSelectedSound'] = 'Play selected sound';
+$lang['requiresJavaScript'] = 'يجب دعم الجافة سكريبت لهذا الشات.';
+$lang['errorInvalidUser'] = 'اسم مستخدم خطأ.';
+$lang['errorUserInUse'] = 'اسم المستخدم مستخدم.';
+$lang['errorBanned'] = 'المستخدم او عنوان الأى بى محظور.';
+$lang['errorMaxUsersLoggedIn'] = 'الشات به الحد الأقصى من الأعضاء المسجلين.';
+$lang['errorChatClosed'] = 'الشات مغلق حاليا.';
+$lang['logsTitle'] = 'سحل الشات';
+$lang['logsDate'] = 'التاريخ';
+$lang['logsTime'] = 'الوقت';
+$lang['logsSearch'] = 'بحث';
+$lang['logsPrivateChannels'] = 'القنوات الخاصة';
+$lang['logsPrivateMessages'] = 'الرسائل الخاصة';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/bg.php b/library/ajaxchat/chat/lib/lang/bg.php new file mode 100644 index 000000000..46d6af163 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/bg.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Borislav Manolov + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Потребителско име'; +$lang['password'] = 'Парола'; +$lang['login'] = 'Вход'; +$lang['logout'] = 'Изход'; +$lang['channel'] = 'Канал'; +$lang['style'] = 'Облик'; +$lang['language'] = 'Език'; +$lang['inputLineBreak'] = 'Натиснете SHIFT+ENTER, за да вмъкнете нов ред'; +$lang['messageSubmit'] = 'Пращане'; +$lang['registeredUsers'] = 'Регистрирани потребители'; +$lang['onlineUsers'] = 'Потребители на линия'; +$lang['toggleAutoScroll'] = 'Автопрелистване вкл/изкл'; +$lang['toggleAudio'] = 'Звук вкл/изкл'; +$lang['toggleHelp'] = 'Показване/скриване на помощта'; +$lang['toggleSettings'] = 'Показване/скриване на настройките'; +$lang['toggleOnlineList'] = 'Показване/скриване на списъка с потребителите'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Цитат'; +$lang['bbCodeLabelCode'] = 'Код'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Картинка'; +$lang['bbCodeLabelColor'] = 'Цвят на шрифта'; +$lang['bbCodeTitleBold'] = 'Получер текст: [b]текст[/b]'; +$lang['bbCodeTitleItalic'] = 'Курсивен текст: [i]текст[/i]'; +$lang['bbCodeTitleUnderline'] = 'Подчертан текст: [u]текст[/u]'; +$lang['bbCodeTitleQuote'] = 'Цитиран текст: [quote]текст[/quote] или [quote=Автор]текст[/quote]'; +$lang['bbCodeTitleCode'] = 'Показване на код: [code]код[/code]'; +$lang['bbCodeTitleURL'] = 'URL: [url]http://example.org[/url] или [url=http://example.org]текст[/url]'; +$lang['bbCodeTitleImg'] = 'Вмъкване на картинка: [img]http://primer.org/kartinka.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Цвят на шрифта: [color=red]текст[/color]'; +$lang['help'] = 'Помощ'; +$lang['helpItemDescJoin'] = 'Присъединяване към канал:'; +$lang['helpItemCodeJoin'] = '/join име_на_канал'; +$lang['helpItemDescJoinCreate'] = 'Създаване на лична стая (само за регистрирани потребители):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Покана на потребител (напр. в лична стая):'; +$lang['helpItemCodeInvite'] = '/invite Потребителско_име'; +$lang['helpItemDescUninvite'] = 'Отказване на покана:'; +$lang['helpItemCodeUninvite'] = '/uninvite Потребителско_име'; +$lang['helpItemDescLogout'] = 'Изход от чата:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Лично съобщение:'; +$lang['helpItemCodePrivateMessage'] = '/msg Потребителско_име Текст'; +$lang['helpItemDescQueryOpen'] = 'Отваряне на личен канал:'; +$lang['helpItemCodeQueryOpen'] = '/query Потребителско_име'; +$lang['helpItemDescQueryClose'] = 'Затваряне на личен канал:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Описание на действие:'; +$lang['helpItemCodeAction'] = '/action Текст'; +$lang['helpItemDescDescribe'] = 'Описание на действието в лично съобщение:'; +$lang['helpItemCodeDescribe'] = '/describe Потребителско_име Текст'; +$lang['helpItemDescIgnore'] = 'Пренебрегване/приемане на съобщения от потребител:'; +$lang['helpItemCodeIgnore'] = '/ignore Потребителско_име'; +$lang['helpItemDescIgnoreList'] = 'Преглед на пренебрегнатите потребители:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Показване на потребителския канал:'; +$lang['helpItemCodeWhereis'] = '/whereis Потребителско_име'; +$lang['helpItemDescKick'] = 'Изритване на потребител (само за модератори):'; +$lang['helpItemCodeKick'] = '/kick Потребителско_име [брой минути]'; +$lang['helpItemDescUnban'] = 'Изгонване на потребител (само за модератори):'; +$lang['helpItemCodeUnban'] = '/unban Потребителско_име'; +$lang['helpItemDescBans'] = 'Преглед на изгонените потребители (само за модератори):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Преглед на айпи адреса на потребител (само за модератори):'; +$lang['helpItemCodeWhois'] = '/whois Потребителско_име'; +$lang['helpItemDescWho'] = 'Преглед на потребителите на линия:'; +$lang['helpItemCodeWho'] = '/who [Име_на_канал]'; +$lang['helpItemDescList'] = 'Преглед на наличните канали:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Хвърляне на зар:'; +$lang['helpItemCodeRoll'] = '/roll [пъти]d[страни]'; +$lang['helpItemDescNick'] = 'Смяна на потребителско име:'; +$lang['helpItemCodeNick'] = '/nick Потребителско_име'; +$lang['settings'] = 'Настройки'; +$lang['settingsBBCode'] = 'Позволяване на BBCode:'; +$lang['settingsBBCodeImages'] = 'Позволяване на BBCode за картинки:'; +$lang['settingsBBCodeColors'] = 'Позволяване на BBCode за шрифтов цвят:'; +$lang['settingsHyperLinks'] = 'Позволяване на хипервръзки:'; +$lang['settingsLineBreaks'] = 'Позволяване на край на ред:'; +$lang['settingsEmoticons'] = 'Позволяване на усмивки:'; +$lang['settingsAutoFocus'] = 'Автоматично фокусиране на полето за въвеждане:'; +$lang['settingsMaxMessages'] = 'Максимален брой съобщения в прозореца на чата:'; +$lang['settingsWordWrap'] = 'Пренасяне на дълги думи:'; +$lang['settingsMaxWordLength'] = 'Максимална дължина на дума преди да бъде пренесена:'; +$lang['settingsDateFormat'] = 'Формат на датата и часа:'; +$lang['settingsPersistFontColor'] = 'Устойчив цвят на шрифта:'; +$lang['settingsAudioVolume'] = 'Височина на звука:'; +$lang['settingsSoundReceive'] = 'Звук за входящи съобщения:'; +$lang['settingsSoundSend'] = 'Звук за изходящи съобщения:'; +$lang['settingsSoundEnter'] = 'Звук за съобщенията за влизане в чата или в канала:'; +$lang['settingsSoundLeave'] = 'Звук за съобщенията за излизане от чата или от канала:'; +$lang['settingsSoundChatBot'] = 'Звук за съобщенията на чатбота:'; +$lang['settingsSoundError'] = 'Звук за съобщенията за грешки:'; +$lang['settingsBlink'] = 'Примигване на прозоречното заглавие при нови съобщения:'; +$lang['settingsBlinkInterval'] = 'Интервал на примигване в милисекунди:'; +$lang['settingsBlinkIntervalNumber'] = 'Брой пъти на примигване:'; +$lang['playSelectedSound'] = 'Прослушване на избрания звук'; +$lang['requiresJavaScript'] = 'За чата се изисква поддръжката на Джаваскрипт.'; +$lang['errorInvalidUser'] = 'Грешно потребителско име.'; +$lang['errorUserInUse'] = 'Потребителското име се използва.'; +$lang['errorBanned'] = 'Потребителят или айпи адресът е изгонен.'; +$lang['errorMaxUsersLoggedIn'] = 'Чатът достигна максималния брой на влезли потребители.'; +$lang['errorChatClosed'] = 'В момента чатът е затворен.'; +$lang['logsTitle'] = 'AJAX Chat — Логове'; +$lang['logsDate'] = 'Дата'; +$lang['logsTime'] = 'Време'; +$lang['logsSearch'] = 'Търсене'; +$lang['logsPrivateChannels'] = 'Лични канали'; +$lang['logsPrivateMessages'] = 'Лични съобщения'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ca.php b/library/ajaxchat/chat/lib/lang/ca.php new file mode 100644 index 000000000..e45c376da --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ca.php @@ -0,0 +1,125 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Manu Quintans
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Usuari';
+$lang['password'] = 'Contrasenya';
+$lang['login'] = 'Accedir';
+$lang['logout'] = 'Tancar sessió';
+$lang['channel'] = 'Canal';
+$lang['style'] = 'Estil';
+$lang['language'] = 'Idioma';
+$lang['inputLineBreak'] = 'Prem SHIFT+ENTER per introduir un salt de línia';
+$lang['messageSubmit'] = 'Enviar';
+$lang['registeredUsers'] = 'Usuaris registrats';
+$lang['onlineUsers'] = 'Usuaris Conectats';
+$lang['toggleAutoScroll'] = 'Desplaçament automàtic activat/desactivat';
+$lang['toggleAudio'] = 'So activat/desactivat';
+$lang['toggleHelp'] = 'mostra/amaga ajuda';
+$lang['toggleSettings'] = 'mostra/amaga propietats';
+$lang['toggleOnlineList'] = 'mostra/amaga usuaris conectats';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Citar';
+$lang['bbCodeLabelCode'] = 'Codi';
+$lang['bbCodeLabelURL'] = 'Enllaç';
+$lang['bbCodeLabelImg'] = 'Imatge';
+$lang['bbCodeLabelColor'] = 'Color de la Font';
+$lang['bbCodeTitleBold'] = 'text en negreta: [b]text[/b]';
+$lang['bbCodeTitleItalic'] = 'text en cursiva: [i]text[/i]';
+$lang['bbCodeTitleUnderline'] = 'text subratllat: [u]text[/u]';
+$lang['bbCodeTitleQuote'] = 'text citat: [quote]text[/quote] o [quote=author]text[/quote]';
+$lang['bbCodeTitleCode'] = 'Mostrar codi: [code]code[/code]';
+$lang['bbCodeTitleURL'] = 'Insertar enllaç: [url]http://example.org[/url] o [url=http://example.org]text[/url]';
+$lang['bbCodeTitleImg'] = 'Insertar imatge: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Color de la font: [color=red]text[/color]';
+$lang['help'] = 'Ajuda';
+$lang['helpItemDescJoin'] = 'Entrar en canal:';
+$lang['helpItemCodeJoin'] = '/join nom del canal';
+$lang['helpItemDescJoinCreate'] = 'Crear una sala privada (només usuaris registrats):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Convidar algú (p.ex. a una sala privada):';
+$lang['helpItemCodeInvite'] = '/invite nom de l\'usuari';
+$lang['helpItemDescUninvite'] = 'Cancel·lar invitació:';
+$lang['helpItemCodeUninvite'] = '/uninvite nom d l\'usuari';
+$lang['helpItemDescLogout'] = 'Tancar sessió:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Missatge privat:';
+$lang['helpItemCodePrivateMessage'] = '/msg Usuari Text';
+$lang['helpItemDescQueryOpen'] = 'Obrir un canal privat:';
+$lang['helpItemCodeQueryOpen'] = '/query Usuari';
+$lang['helpItemDescQueryClose'] = 'Tancar canal privat:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Descriu acció:';
+$lang['helpItemCodeAction'] = '/action acció';
+$lang['helpItemDescDescribe'] = 'Descriu acció en un missatge privat:';
+$lang['helpItemCodeDescribe'] = '/describe NomUsuari acció';
+$lang['helpItemDescIgnore'] = 'Ignorar/Acceptar missatges d\'usuaris:';
+$lang['helpItemCodeIgnore'] = '/ignore nom de l\'usuari ';
+$lang['helpItemDescIgnoreList'] = 'Llista d\'usuaris ignorats:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Mostra canal de l\'usuari:';
+$lang['helpItemCodeWhereis'] = '/whereis nom de l\'usuari';
+$lang['helpItemDescKick'] = 'Patear usuari (només moderadors):';
+$lang['helpItemCodeKick'] = '/kick Usuari [Minuts banejat]';
+$lang['helpItemDescUnban'] = 'treure banejat usuari (només moderadors):';
+$lang['helpItemCodeUnban'] = '/unban nom de l\'usuari';
+$lang['helpItemDescBans'] = 'Llista d\'usuaris banejats (només moderadors):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Mostrar les IPs d\'usuaris (només moderadors):';
+$lang['helpItemCodeWhois'] = '/whois nom de l\'usuari';
+$lang['helpItemDescWho'] = 'Mostrar usuaris conectats:';
+$lang['helpItemCodeWho'] = '/who [nom del canal]';
+$lang['helpItemDescList'] = 'Llista de canals disponibles:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Tirar els daus:';
+$lang['helpItemCodeRoll'] = '/roll [nombre]d[cares]';
+$lang['helpItemDescNick'] = 'canviar nom d\'usuari:';
+$lang['helpItemCodeNick'] = '/nick nom d\'usuari';
+$lang['settings'] = 'Configuració';
+$lang['settingsBBCode'] = 'Habilitar BBCode:';
+$lang['settingsBBCodeImages'] = 'Habilitar imatge BBCode:';
+$lang['settingsBBCodeColors'] = 'habilitar color de font BBCode:';
+$lang['settingsHyperLinks'] = 'habilitar hipervincles:';
+$lang['settingsLineBreaks'] = 'Habilitar salts de línia:';
+$lang['settingsEmoticons'] = 'Habilitar emoticons:';
+$lang['settingsAutoFocus'] = 'Configurar automàticament el focus en el camp d\'entrada:';
+$lang['settingsMaxMessages'] = 'Màxim nombre de missatges en les llistes de Xat:';
+$lang['settingsWordWrap'] = 'Habilitar partir paraules llargues';
+$lang['settingsMaxWordLength'] = 'Màxima llargada d\'una paraula abns de ser tallada:';
+$lang['settingsDateFormat'] = 'Format de dia i hora:';
+$lang['settingsPersistFontColor'] = 'Color de font persistent:';
+$lang['settingsAudioVolume'] = 'So volum:';
+$lang['settingsSoundReceive'] = 'So per missatdes d\'entrada:';
+$lang['settingsSoundSend'] = 'So per missatges de sortida:';
+$lang['settingsSoundEnter'] = 'So per connectar i missatges d\'entrada del canal:';
+$lang['settingsSoundLeave'] = 'So per desconnectar i missatges de sortida del canal:';
+$lang['settingsSoundChatBot'] = 'So pels missatges del xat:';
+$lang['settingsSoundError'] = 'So per missatges d\'error:';
+$lang['settingsBlink'] = 'Notificació de finestra per als nous missatges:';
+$lang['settingsBlinkInterval'] = 'Interval de notificacions intermitents (milisegons):';
+$lang['settingsBlinkIntervalNumber'] = 'Nombre de notificacions intermitents:';
+$lang['playSelectedSound'] = 'Reproduir el so seleccionat';
+$lang['requiresJavaScript'] = 'Necesites tenir instal·lat Javascript al teu navegador';
+$lang['errorInvalidUser'] = 'Usuari no vàlid';
+$lang['errorUserInUse'] = 'Aquest nom d\'usuari està sent utilitzat en aquests moments';
+$lang['errorBanned'] = 'L\'usuari o IP està bannejat';
+$lang['errorMaxUsersLoggedIn'] = 'El xat ha arribat al màxim nombre d\'usuaris.';
+$lang['errorChatClosed'] = 'El xat està tancat en aquests moments.';
+$lang['logsTitle'] = 'AJAX Xat - Registre';
+$lang['logsDate'] = 'Data';
+$lang['logsTime'] = 'Hora';
+$lang['logsSearch'] = 'Buscar';
+$lang['logsPrivateChannels'] = 'Canals privats';
+$lang['logsPrivateMessages'] = 'Missatges privats';
+
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/cy.php b/library/ajaxchat/chat/lib/lang/cy.php new file mode 100644 index 000000000..dea446df5 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/cy.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Alan Davies
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Enw';
+$lang['password'] = 'Cyfrinair';
+$lang['login'] = 'Mewngofnodi';
+$lang['logout'] = 'Allgofnodi';
+$lang['channel'] = 'Sianel';
+$lang['style'] = 'Steil';
+$lang['language'] = 'Iaith';
+$lang['inputLineBreak'] = 'Gwasgwch SHIFT+ENTER i orfodi llinell newydd';
+$lang['messageSubmit'] = 'Anfon';
+$lang['registeredUsers'] = 'Defnyddwyr Cofrestredig';
+$lang['onlineUsers'] = 'Defnyddwyr ar-lein';
+$lang['toggleAutoScroll'] = 'Awtorhôl ymlaen/bant';
+$lang['toggleAudio'] = 'Sain ymlaen/bant';
+$lang['toggleHelp'] = 'Dangos/cuddio cymorth';
+$lang['toggleSettings'] = 'Dangos/cuddio gosodiadau';
+$lang['toggleOnlineList'] = 'Dangos/cuddio rhestr ar-lein';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Dyfyniad';
+$lang['bbCodeLabelCode'] = 'Cod';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Delwedd';
+$lang['bbCodeLabelColor'] = 'Lliw Ffont';
+$lang['bbCodeTitleBold'] = 'Testun bras: [b]testun[/b]';
+$lang['bbCodeTitleItalic'] = 'Testun italig: [i]testun[/i]';
+$lang['bbCodeTitleUnderline'] = 'Tanlinellu testun: [u]testun[/u]';
+$lang['bbCodeTitleQuote'] = 'Dyfynnu testun: [quote]testun[/quote] neu [quote=awdur]testun[/quote]';
+$lang['bbCodeTitleCode'] = 'Dangos cod: [code]cod[/code]';
+$lang['bbCodeTitleURL'] = 'Mewnosod URL: [url]http://example.org[/url] neu [url=http://example.org]testun[/url]';
+$lang['bbCodeTitleImg'] = 'Mewnosod delwedd: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Lliw Ffont: [color=red]testun[/color]';
+$lang['help'] = 'Cymorth';
+$lang['helpItemDescJoin'] = 'Ymunwch â sianel:';
+$lang['helpItemCodeJoin'] = '/join EnwSianel';
+$lang['helpItemDescJoinCreate'] = 'Crëwch ystafell breifat (Defnyddwyr cofrestredig yn unig):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Gwahodd rhywun (e.e. i ystafell breifat):';
+$lang['helpItemCodeInvite'] = '/invite Enw';
+$lang['helpItemDescUninvite'] = 'Tynnu gwahaoddiad yn ôl:';
+$lang['helpItemCodeUninvite'] = '/uninvite Enw';
+$lang['helpItemDescLogout'] = 'Allgofnodwch o Sgwrs:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Neges breifat:';
+$lang['helpItemCodePrivateMessage'] = '/msg Testun Enw';
+$lang['helpItemDescQueryOpen'] = 'Agorwch sianel breifat:';
+$lang['helpItemCodeQueryOpen'] = '/query Enw';
+$lang['helpItemDescQueryClose'] = 'Ceuwch sianel breifat:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Disgrifiwch weithred:';
+$lang['helpItemCodeAction'] = '/action Testun';
+$lang['helpItemDescDescribe'] = 'Disgrifiwch weithred mewn neges breifat:';
+$lang['helpItemCodeDescribe'] = '/describe Testun Enw';
+$lang['helpItemDescIgnore'] = 'Anwybyddu/derbyn negeseuon o ddefnyddiwr:';
+$lang['helpItemCodeIgnore'] = '/ignore Enw';
+$lang['helpItemDescIgnoreList'] = 'Rhestr anwybyddion:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Dangos sianel defnyddiwr:';
+$lang['helpItemCodeWhereis'] = '/whereis Enw';
+$lang['helpItemDescKick'] = 'Ciciwch ddefnyddiwr (Cymedrolwyr yn unig):';
+$lang['helpItemCodeKick'] = '/kick Enw [Gwahardd munudau]';
+$lang['helpItemDescUnban'] = 'Dadwahardd defnyddiwr (Cymedrolwyr yn unig):';
+$lang['helpItemCodeUnban'] = '/unban Enw';
+$lang['helpItemDescBans'] = 'Rhestr waharddogion (Cymedrolwyr yn unig):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Dangos IP defnyddiwr (Cymedrolwyr yn unig):';
+$lang['helpItemCodeWhois'] = '/whois Enw';
+$lang['helpItemDescWho'] = 'Rhestr ddefnyddwyr ar-lein:';
+$lang['helpItemCodeWho'] = '/who [EnwSianel]';
+$lang['helpItemDescList'] = 'Rhestr sianeli ar gael:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Rholio dis:';
+$lang['helpItemCodeRoll'] = '/roll [nifer]d[ochrau]'; //posib angen newid hwn
+$lang['helpItemDescNick'] = 'Newid enw:';
+$lang['helpItemCodeNick'] = '/nick Enw';
+$lang['settings'] = 'Gosodiadau';
+$lang['settingsBBCode'] = 'Galluogi BBCode:';
+$lang['settingsBBCodeImages'] = 'Galluogi delweddau BBCode:';
+$lang['settingsBBCodeColors'] = 'Galluogi lliwiau ffont BBCode:';
+$lang['settingsHyperLinks'] = 'Galluogi dolenni:';
+$lang['settingsLineBreaks'] = 'Galluogi toriadau llinell:';
+$lang['settingsEmoticons'] = 'Galluogi gwenogluniau:';
+$lang['settingsAutoFocus'] = 'Gosod y ffocws ar y maes mewnbwn yn awtomatig:';
+$lang['settingsMaxMessages'] = 'Uchafswm y negeseuon yn y rhestr sgwrs:';
+$lang['settingsWordWrap'] = 'Galluogi lapio geiriau hir:';
+$lang['settingsMaxWordLength'] = 'Hyd mwyaf y gair cyn iddo gael ei lapio:';
+$lang['settingsDateFormat'] = 'Fformat y dyddiad a\'r amser:';
+$lang['settingsPersistFontColor'] = 'Lliw ffont parhaus:';
+$lang['settingsAudioVolume'] = 'Uchder Sain:';
+$lang['settingsSoundReceive'] = 'Sain am negeseuon yn dyfod i mewn:';
+$lang['settingsSoundSend'] = 'Sain am negeseuon yn mynd allan:';
+$lang['settingsSoundEnter'] = 'Sain am fewngofnodi a negeseuon myned i sianeli:';
+$lang['settingsSoundLeave'] = 'Sain am allgofnodi a negeseuon gadael sianeli:';
+$lang['settingsSoundChatBot'] = 'Sain am negeseuon sgwrsbot:';
+$lang['settingsSoundError'] = 'Sain am wallnegeseuon:';
+$lang['settingsBlink'] = 'Fflachio teitl y ffenestr ar negeseuon newydd:';
+$lang['settingsBlinkInterval'] = 'Cyfwng fflachio mewn milieiliadau:';
+$lang['settingsBlinkIntervalNumber'] = 'Nifer y cyfyngau fflachio:';
+$lang['playSelectedSound'] = 'Chwarae\'r sain hon';
+$lang['requiresJavaScript'] = 'Mae angen JavaScript ar gyfer y Sgwrs hon.';
+$lang['errorInvalidUser'] = 'Enw annilys.';
+$lang['errorUserInUse'] = 'Enw\'n bodoli eisoes.';
+$lang['errorBanned'] = 'Gwaharddwyd y Defnyddiwr neu\'r IP.';
+$lang['errorMaxUsersLoggedIn'] = 'Mae\'r sgwrs wedi cyrraedd yr uchafswm o ddefnyddwyr.';
+$lang['errorChatClosed'] = 'Mae\'r sgwrs ar gau yn bresennol.';
+$lang['logsTitle'] = 'Sgwrs AJAX - Logiau';
+$lang['logsDate'] = 'Dyddiad';
+$lang['logsTime'] = 'Amser';
+$lang['logsSearch'] = 'Chwilio';
+$lang['logsPrivateChannels'] = 'Sianeli Preifat';
+$lang['logsPrivateMessages'] = 'Negeseuon Preifat';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/cz.php b/library/ajaxchat/chat/lib/lang/cz.php new file mode 100644 index 000000000..cc6868c1e --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/cz.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Jméno uživatele'; +$lang['password'] = 'Heslo'; +$lang['login'] = 'Přihlásit'; +$lang['logout'] = 'Odhlásit'; +$lang['channel'] = 'Místnost'; +$lang['style'] = 'Styl'; +$lang['language'] = 'Jazyk'; +$lang['inputLineBreak'] = 'Pro zalomení řádku stiskni SHIFT+ENTER'; +$lang['messageSubmit'] = 'Odeslat'; +$lang['registeredUsers'] = 'Registrovaní uživatelé'; +$lang['onlineUsers'] = 'Přihlášení uživatelé'; +$lang['toggleAutoScroll'] = 'Posouvání textu zapnuto/vypnuto'; +$lang['toggleAudio'] = 'Zvuk zapnutý/vypnutý'; +$lang['toggleHelp'] = 'Zobrazit/skrýt nápovědu'; +$lang['toggleSettings'] = 'Zobrazit/skrýt nastavení'; +$lang['toggleOnlineList'] = 'Zobrazit/skrýt seznam přihlášených'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citace'; +$lang['bbCodeLabelCode'] = 'Kód'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Obrázek'; +$lang['bbCodeLabelColor'] = 'Barva písma'; +$lang['bbCodeTitleBold'] = 'Tučně: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Kurzívou: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Podtržené: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Citace: [quote]text[/quote] nebo [quote=autor]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Zobrazit kód: [code]kód[/code]'; +$lang['bbCodeTitleURL'] = 'Vložit URL: [url]http://example.org[/url] nebo [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Vložit obrázek: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Barva písma: [color=red]text[/color]'; +$lang['help'] = 'Nápověda'; +$lang['helpItemDescJoin'] = 'Vstup do místnosti:'; +$lang['helpItemCodeJoin'] = '/join Místnost'; +$lang['helpItemDescJoinCreate'] = 'Vytvořit vlastní místnost (Pouze registrovaní uživatelé):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Pozvání k soukromému rozhovoru (např. do vlastní místnosti):'; +$lang['helpItemCodeInvite'] = '/invite Uživatel'; +$lang['helpItemDescUninvite'] = 'Odvolat pozvání:'; +$lang['helpItemCodeUninvite'] = '/uninvite Uživatel'; +$lang['helpItemDescLogout'] = 'Odhlášení z chatu:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Soukromá zpráva:'; +$lang['helpItemCodePrivateMessage'] = '/msg Uživatel zpráva'; +$lang['helpItemDescQueryOpen'] = 'Soukromý rozhovor:'; +$lang['helpItemCodeQueryOpen'] = '/query Uživatel'; +$lang['helpItemDescQueryClose'] = 'Ukončit soukromý rozhovor:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Co zrovna dělám:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'To samé soukromě:'; +$lang['helpItemCodeDescribe'] = '/describe Uživatel Text'; +$lang['helpItemDescIgnore'] = 'Odmítnout/přijmout zprávu od uživatele:'; +$lang['helpItemCodeIgnore'] = '/ignore (accept) Uživatel'; +$lang['helpItemDescIgnoreList'] = 'Výpis odmítnutých uživatelů:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Najít uživatele:'; +$lang['helpItemCodeWhereis'] = '/whereis Uživatel'; +$lang['helpItemDescKick'] = 'Vyhodit uživatele (Pouze moderátoři):'; +$lang['helpItemCodeKick'] = '/kick Uživatel [Čas v minutách]'; +$lang['helpItemDescUnban'] = 'Omilostnit vyhozeného (Pouze moderátoři):'; +$lang['helpItemCodeUnban'] = '/unban Uživatel'; +$lang['helpItemDescBans'] = 'Výpis vyhozených uživatelů (Pouze moderátoři):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Zobrazit IP uživatele (Pouze moderátoři):'; +$lang['helpItemCodeWhois'] = '/whois Username'; +$lang['helpItemDescWho'] = 'Seznam přihlášených uživatelů:'; +$lang['helpItemCodeWho'] = '/who [Místnost]'; +$lang['helpItemDescList'] = 'Výpis místností:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Hodit kostkou:'; +$lang['helpItemCodeRoll'] = '/roll [číslo]d[počet stran]'; +$lang['helpItemDescNick'] = 'Změnit jméno uživatele:'; +$lang['helpItemCodeNick'] = '/nick Uživatel'; +$lang['settings'] = 'Nastavení'; +$lang['settingsBBCode'] = 'Povolit kódy BBCode:'; +$lang['settingsBBCodeImages'] = 'Povolit image BBCode:'; +$lang['settingsBBCodeColors'] = 'Povolit font color BBCode:'; +$lang['settingsHyperLinks'] = 'Povolit odkazy:'; +$lang['settingsLineBreaks'] = 'Povolit více řádků:'; +$lang['settingsEmoticons'] = 'Povolit smajlíky:'; +$lang['settingsAutoFocus'] = 'Automaticky nastavit kurzor na vstupní pole:'; +$lang['settingsMaxMessages'] = 'Maximální počet zpráv v hlavním okně:'; +$lang['settingsWordWrap'] = 'Povolit zalomení řádku u dlouhého slova:'; +$lang['settingsMaxWordLength'] = 'Maximální délka slova, než bude zalomeno:'; +$lang['settingsDateFormat'] = 'Formát zobrazení data a času:'; +$lang['settingsPersistFontColor'] = 'Neměnná barva textu:'; +$lang['settingsAudioVolume'] = 'Hlasitost:'; +$lang['settingsSoundReceive'] = 'Zvuk pro příchozí zprávy:'; +$lang['settingsSoundSend'] = 'Zvuk pro odchozí zprávy:'; +$lang['settingsSoundEnter'] = 'Zvuk při přihlášení nebo vstupu do místnosti:'; +$lang['settingsSoundLeave'] = 'Zvuk při odhlášení nebo odchodu z místnosti:'; +$lang['settingsSoundChatBot'] = 'Zvuk při zprávě chatbota:'; +$lang['settingsSoundError'] = 'Zvuk při chybové zprávě:'; +$lang['settingsBlink'] = 'Blikání titulku okna při příchozí zprávě:'; +$lang['settingsBlinkInterval'] = 'Interval blikání v milisekundách:'; +$lang['settingsBlinkIntervalNumber'] = 'Počet bliknutí:'; +$lang['playSelectedSound'] = 'Přehrát vybraný zvuk:'; +$lang['requiresJavaScript'] = 'Pro tento chat musíš mít zapnutý JavaScript.'; +$lang['errorInvalidUser'] = 'Uživatel neexistuje.'; +$lang['errorUserInUse'] = 'To jméno už je používáno.'; +$lang['errorBanned'] = 'Uživatel nebo IP adresa jsou na seznamu vyhozených.'; +$lang['errorMaxUsersLoggedIn'] = 'Chat je plný.'; +$lang['errorChatClosed'] = 'Chat je v tuto chvíli mimo provoz.'; +$lang['logsTitle'] = 'AJAX Chat - Logy'; +$lang['logsDate'] = 'Datum'; +$lang['logsTime'] = 'Čas'; +$lang['logsSearch'] = 'Hledej'; +$lang['logsPrivateChannels'] = 'Soukromé místnosti'; +$lang['logsPrivateMessages'] = 'Soukromé zprávy'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/da.php b/library/ajaxchat/chat/lib/lang/da.php new file mode 100644 index 000000000..55e7eff1b --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/da.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Brugernavn'; +$lang['password'] = 'Adgangskode'; +$lang['login'] = 'Log ind'; +$lang['logout'] = 'Log ud'; +$lang['channel'] = 'Kanal'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Sprog'; +$lang['inputLineBreak'] = 'Tryk SHIFT+ENTER For at lave et linjeskift'; +$lang['messageSubmit'] = 'Send'; +$lang['registeredUsers'] = 'Registrerede brugere'; +$lang['onlineUsers'] = 'Online brugere'; +$lang['toggleAutoScroll'] = 'Autoscroll til/fra'; +$lang['toggleAudio'] = 'Lyd til/fra'; +$lang['toggleHelp'] = 'Vis/skjul Hjælp'; +$lang['toggleSettings'] = 'Vis/skjul indstillinger'; +$lang['toggleOnlineList'] = 'Vis/Skjul online liste'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citat'; +$lang['bbCodeLabelCode'] = 'Kode'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Billede'; +$lang['bbCodeLabelColor'] = 'Font Farve'; +$lang['bbCodeTitleBold'] = 'Fed tekst: [b]tekstt[/b]'; +$lang['bbCodeTitleItalic'] = 'Kursiv tekst: [i]tekst[/i]'; +$lang['bbCodeTitleUnderline'] = 'Understreget tekst: [u]tekst[/u]'; +$lang['bbCodeTitleQuote'] = 'Citer tekst: [quote]citat[/quote] eller [quote=author]tekst[/quote]'; +$lang['bbCodeTitleCode'] = 'Vis kode: [code]kode[/code]'; +$lang['bbCodeTitleURL'] = 'Indsæt URL: [url]http://example.org[/url] eller [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Indsæt image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Font Farve: [color=red]tekst[/color]'; +$lang['help'] = 'Hjælp'; +$lang['helpItemDescJoin'] = 'Deltag i en kanal:'; +$lang['helpItemCodeJoin'] = '/join Kanalnavn'; +$lang['helpItemDescJoinCreate'] = 'Opret et rum (kun for registrerede brugere):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Inviter person (fx til et privat rum):'; +$lang['helpItemCodeInvite'] = '/invite brugernavn'; +$lang['helpItemDescUninvite'] = 'Anuller invitation:'; +$lang['helpItemCodeUninvite'] = '/uninvite brugernavn'; +$lang['helpItemDescLogout'] = 'Log ud af chatten:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privat besked:'; +$lang['helpItemCodePrivateMessage'] = '/msg brugernavn Tekst'; +$lang['helpItemDescQueryOpen'] = 'Åben en privat kanal:'; +$lang['helpItemCodeQueryOpen'] = '/query brugernavn'; +$lang['helpItemDescQueryClose'] = 'Luk en privat kanal:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'beskrivende handling:'; +$lang['helpItemCodeAction'] = '/action Tekst'; +$lang['helpItemDescDescribe'] = 'Beskrivende handling i privat besked:'; +$lang['helpItemCodeDescribe'] = '/describe brugernavn Tekst'; +$lang['helpItemDescIgnore'] = 'Ignorer/accepter beskeder fra bruger:'; +$lang['helpItemCodeIgnore'] = '/ignore brugernavn'; +$lang['helpItemDescIgnoreList'] = 'Vis ignorerede brugere:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Vis bruger kanal:'; +$lang['helpItemCodeWhereis'] = '/whereis brugernavn'; +$lang['helpItemDescKick'] = 'Spark en bruger ud af chatten (Moderators):'; +$lang['helpItemCodeKick'] = '/kick brugernavn [Minuter banlyst]'; +$lang['helpItemDescUnban'] = 'fjern banlysning af bruger (Moderators):'; +$lang['helpItemCodeUnban'] = '/unban brugernavn'; +$lang['helpItemDescBans'] = 'Vis banlyste brugere (Moderators):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Vis en brugers IP (Moderators):'; +$lang['helpItemCodeWhois'] = '/whois brugernavn'; +$lang['helpItemDescWho'] = 'Vis online brugere:'; +$lang['helpItemCodeWho'] = '/who [kanalnavn]'; +$lang['helpItemDescList'] = 'Vis tilgængelige kanaler:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'kast terninger:'; +$lang['helpItemCodeRoll'] = '/roll [antal]d[sider]'; +$lang['helpItemDescNick'] = 'Skift brugernavn:'; +$lang['helpItemCodeNick'] = '/nick brugernavn'; +$lang['settings'] = 'Indstillinger'; +$lang['settingsBBCode'] = 'Aktiver BBCode:'; +$lang['settingsBBCodeImages'] = 'Aktiver billede BBCode:'; +$lang['settingsBBCodeColors'] = 'Aktiver font farve BBCode:'; +$lang['settingsHyperLinks'] = 'Aktiver hyperlinks:'; +$lang['settingsLineBreaks'] = 'Aktiver linjeskift:'; +$lang['settingsEmoticons'] = 'Aktiver smileys:'; +$lang['settingsAutoFocus'] = 'Automatisk indstild fokus på indtastningsfeltet:'; +$lang['settingsMaxMessages'] = 'Maximum antal beskeder i chat list:'; +$lang['settingsWordWrap'] = 'Aktiver ombrydning af lange ord:'; +$lang['settingsMaxWordLength'] = 'Maximum længde af et ord før det bliver ombrudt:'; +$lang['settingsDateFormat'] = 'Metoden hvorpå data og klokkeslet vises:'; +$lang['settingsPersistFontColor'] = 'Vedhold en tekst farve:'; +$lang['settingsAudioVolume'] = 'Lydstyrke:'; +$lang['settingsSoundReceive'] = 'Lyd for indgående beskeder:'; +$lang['settingsSoundSend'] = 'Lyd for udgående:'; +$lang['settingsSoundEnter'] = 'Lyd ved login og kanal beskeder:'; +$lang['settingsSoundLeave'] = 'Lyd ved login og forlad kanal beskeder:'; +$lang['settingsSoundChatBot'] = 'Lyd ved ChatBot beskeder:'; +$lang['settingsSoundError'] = 'Lyd ved fejlmeddelse:'; +$lang['settingsBlink'] = 'Blink vindue titel ved nye beskeder:'; +$lang['settingsBlinkInterval'] = 'Blink interval i millisekonder:'; +$lang['settingsBlinkIntervalNumber'] = 'Antal blink intervaler:'; +$lang['playSelectedSound'] = 'Afspil valgte lyd'; +$lang['requiresJavaScript'] = 'JavaScript er nødvændigt for at kunne bruge denne chat.'; +$lang['errorInvalidUser'] = 'Ugyldigt brugernavn.'; +$lang['errorUserInUse'] = 'Brugernavn allerede i brug.'; +$lang['errorBanned'] = 'Bruger eller IP er blevet banned.'; +$lang['errorMaxUsersLoggedIn'] = 'Chatten har opnået det maksimale antal online brugere.'; +$lang['errorChatClosed'] = 'Chatten er pt lukket.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Dato'; +$lang['logsTime'] = 'Tid'; +$lang['logsSearch'] = 'Søg'; +$lang['logsPrivateChannels'] = 'Private Kanaler'; +$lang['logsPrivateMessages'] = 'Private Beskeder'; +?> diff --git a/library/ajaxchat/chat/lib/lang/de.php b/library/ajaxchat/chat/lib/lang/de.php new file mode 100644 index 000000000..f345d100a --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/de.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Benutzername'; +$lang['password'] = 'Passwort'; +$lang['login'] = 'Login'; +$lang['logout'] = 'Logout'; +$lang['channel'] = 'Raum'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Sprache'; +$lang['inputLineBreak'] = 'UMSCHALT+EINGABE drücken um einen Zeilenumbruch zu erzeugen'; +$lang['messageSubmit'] = 'Abschicken'; +$lang['registeredUsers'] = 'Registrierte Benutzer'; +$lang['onlineUsers'] = 'Online Benutzer'; +$lang['toggleAutoScroll'] = 'Autoscroll an/aus'; +$lang['toggleAudio'] = 'Sound an/aus'; +$lang['toggleHelp'] = 'Hilfe anzeigen/verstecken'; +$lang['toggleSettings'] = 'Einstellungen anzeigen/verstecken'; +$lang['toggleOnlineList'] = 'Online Benutzer anzeigen/verstecken'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Zitat'; +$lang['bbCodeLabelCode'] = 'Code'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Bild'; +$lang['bbCodeLabelColor'] = 'Schriftfarbe'; +$lang['bbCodeTitleBold'] = 'Fett: [b]Text[/b]'; +$lang['bbCodeTitleItalic'] = 'Kursiv: [i]Text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Unterstrichen: [u]Text[/u]'; +$lang['bbCodeTitleQuote'] = 'Zitat: [quote]Text[/quote] oder [quote=Autor]Text[/quote]'; +$lang['bbCodeTitleCode'] = 'Code anzeigen: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Link einfügen: [url]http://example.org[/url] oder [url=http://example.org]Text[/url]'; +$lang['bbCodeTitleImg'] = 'Bild einfügen: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Schriftfarbe: [color=red]Text[/color]'; +$lang['help'] = 'Hilfe'; +$lang['helpItemDescJoin'] = 'Raum betreten:'; +$lang['helpItemCodeJoin'] = '/join Raumname'; +$lang['helpItemDescJoinCreate'] = 'Einen privaten Raum erstellen (nur registrierte Benutzer):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Jemanden einladen (z.B. in einen privaten Raum):'; +$lang['helpItemCodeInvite'] = '/invite Benutzername'; +$lang['helpItemDescUninvite'] = 'Einladung zurücknehmen:'; +$lang['helpItemCodeUninvite'] = '/uninvite Benutzername'; +$lang['helpItemDescLogout'] = 'Logout aus dem Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Private Nachricht:'; +$lang['helpItemCodePrivateMessage'] = '/msg Benutzername Text'; +$lang['helpItemDescQueryOpen'] = 'Privaten Kanal öffnen:'; +$lang['helpItemCodeQueryOpen'] = '/query Benutzername'; +$lang['helpItemDescQueryClose'] = 'Privaten Kanal schließen:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Aktion beschreiben:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'Aktion in privater Nachricht beschreiben:'; +$lang['helpItemCodeDescribe'] = '/describe Benutzername Text'; +$lang['helpItemDescIgnore'] = 'Nachrichten von Benutzer ignorieren/akzeptieren:'; +$lang['helpItemCodeIgnore'] = '/ignore Benutzername'; +$lang['helpItemDescIgnoreList'] = 'Ignorierte Benutzer auflisten:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Raum eines Benutzers anzeigen:'; +$lang['helpItemCodeWhereis'] = '/whereis Benutzername'; +$lang['helpItemDescKick'] = 'Benutzer ausschließen (nur Moderatoren):'; +$lang['helpItemCodeKick'] = '/kick Benutzername [Ausschluss in Minuten]'; +$lang['helpItemDescUnban'] = 'Ausschluss eines Benutzers aufheben (nur Moderatoren):'; +$lang['helpItemCodeUnban'] = '/unban Benutzername'; +$lang['helpItemDescBans'] = 'Ausgeschlossene Benutzer auflisten (nur Moderatoren):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Benutzer IP anzeigen (nur Moderatoren):'; +$lang['helpItemCodeWhois'] = '/whois Benutzername'; +$lang['helpItemDescWho'] = 'Online Benutzer auflisten:'; +$lang['helpItemCodeWho'] = '/who [Kanalname]'; +$lang['helpItemDescList'] = 'Verfügbare Räume auflisten:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Würfeln:'; +$lang['helpItemCodeRoll'] = '/roll [Anzahl]d[Seiten]'; +$lang['helpItemDescNick'] = 'Benutzernamen ändern:'; +$lang['helpItemCodeNick'] = '/nick Benutzername'; +$lang['settings'] = 'Einstellungen'; +$lang['settingsBBCode'] = 'BBCode aktivieren:'; +$lang['settingsBBCodeImages'] = ' Bilder BBCode aktivieren:'; +$lang['settingsBBCodeColors'] = 'Schriftfarben BBCode aktivieren:'; +$lang['settingsHyperLinks'] = 'Hyperlinks aktivieren:'; +$lang['settingsLineBreaks'] = 'Zeilenumbrüche aktivieren:'; +$lang['settingsEmoticons'] = 'Smileys aktivieren:'; +$lang['settingsAutoFocus'] = 'Automatisch den Fokus auf das Eingabefeld setzen:'; +$lang['settingsMaxMessages'] = 'Maximale Anzahl der Nachrichten in der Chatliste:'; +$lang['settingsWordWrap'] = 'Lange Wörter umbrechen:'; +$lang['settingsMaxWordLength'] = 'Maximallänge eines Wortes bevor es umgebrochen wird:'; +$lang['settingsDateFormat'] = 'Datums- und Zeitanzeige:'; +$lang['settingsPersistFontColor'] = 'Schriftfarbe dauerhaft setzen:'; +$lang['settingsAudioVolume'] = 'Lautstärke:'; +$lang['settingsSoundReceive'] = 'Klang für empfangene Nachrichten:'; +$lang['settingsSoundSend'] = 'Klang für gesendete Nachrichten:'; +$lang['settingsSoundEnter'] = 'Klang für Logins und das Betreten von Räumen:'; +$lang['settingsSoundLeave'] = 'Klang für Logouts und das Verlassen von Räumen:'; +$lang['settingsSoundChatBot'] = 'Klang für Chatbot Nachrichten:'; +$lang['settingsSoundError'] = 'Klang für Fehlermeldungen:'; +$lang['settingsBlink'] = 'Blinkender Fenstertitel bei neuen Nachrichten:'; +$lang['settingsBlinkInterval'] = 'Blink-Intervall in Millisekunden:'; +$lang['settingsBlinkIntervalNumber'] = 'Anzahl der Blink-Intervalle:'; +$lang['playSelectedSound'] = 'Ausgewählten Klang abspielen'; +$lang['requiresJavaScript'] = 'JavaScript wird für diesen Chat benötigt.'; +$lang['errorInvalidUser'] = 'Ungültiger Benutzername.'; +$lang['errorUserInUse'] = 'Benutzername in Verwendung.'; +$lang['errorBanned'] = 'Benutzer oder IP ist ausgeschlossen.'; +$lang['errorMaxUsersLoggedIn'] = 'Der Chat hat die maximale Anzahl eingeloggter Benutzer erreicht.'; +$lang['errorChatClosed'] = 'Der Chat ist zur Zeit geschlossen.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Datum'; +$lang['logsTime'] = 'Uhrzeit'; +$lang['logsSearch'] = 'Suche'; +$lang['logsPrivateChannels'] = 'Private Räume'; +$lang['logsPrivateMessages'] = 'Private Nachrichten'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/el.php b/library/ajaxchat/chat/lib/lang/el.php new file mode 100644 index 000000000..526c31bf9 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/el.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author panas + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Όνομα χρήστη'; +$lang['password'] = 'Κωδικός'; +$lang['login'] = 'Σύνδεση'; +$lang['logout'] = 'Αποσύνδεση'; +$lang['channel'] = 'Κανάλι'; +$lang['style'] = 'Στυλ'; +$lang['language'] = 'Γλώσσα'; +$lang['inputLineBreak'] = 'Πατήστε SHIFT+ENTER για να εισάγετε μια νέα γραμμή'; +$lang['messageSubmit'] = 'Υποβολή'; +$lang['registeredUsers'] = 'Εγγεγραμμένοι χρήστες'; +$lang['onlineUsers'] = 'Συνδεδεμένοι χρήστες'; +$lang['toggleAutoScroll'] = 'Αυτόματη κύλιση ναι/όχι'; +$lang['toggleAudio'] = 'Ήχος ναι/όχι'; +$lang['toggleHelp'] = 'Εμφάνιση/απόκρυψη βοήθειας'; +$lang['toggleSettings'] = 'Εμφάνιση/απόκρυψη ρυθμίσεων'; +$lang['toggleOnlineList'] = 'Εμφάνιση/απόκρυψη λίστας συνδεδεμένων'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Παράθεση'; +$lang['bbCodeLabelCode'] = 'Κώδικας'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Χρώμα γραμματοσειράς'; +$lang['bbCodeTitleBold'] = 'Έντονο κείμενο: [b]κείμενο[/b]'; +$lang['bbCodeTitleItalic'] = 'Πλάγια γραφή: [i]κείμενο[/i]'; +$lang['bbCodeTitleUnderline'] = 'Υπογραμμισμένο κείμενο: [u]κείμενο[/u]'; +$lang['bbCodeTitleQuote'] = 'Κείμενο σε παράθεση: [quote]κείμενο[/quote] ή [quote=author]κείμενο[/quote]'; +$lang['bbCodeTitleCode'] = 'Εμφάνιση κώδικα: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Εισαγωγή URL: [url]http://example.org[/url] ή [url=http://example.org]κείμενο[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Χρώμα γραμματοσειράς: [color=red]κείμενο[/color]'; +$lang['help'] = 'Βοήθεια'; +$lang['helpItemDescJoin'] = 'Είσοδος σε ένα κανάλι:'; +$lang['helpItemCodeJoin'] = '/join όνομα_καναλιού'; +$lang['helpItemDescJoinCreate'] = 'Δημιουργία πριβέ καναλιού(μόνο για εγγεγραμμένους):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Για να προκαλέσετε (π.χ. σε ένα πριβέ κανάλι):'; +$lang['helpItemCodeInvite'] = '/invite όνομα'; +$lang['helpItemDescUninvite'] = 'Ακύρωση πρόσκλησης:'; +$lang['helpItemCodeUninvite'] = '/uninvite όνομα'; +$lang['helpItemDescLogout'] = 'Αποσύνδεση από το Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Προσωπικό μήνυμα:'; +$lang['helpItemCodePrivateMessage'] = '/msg όνομα_χρήστη κείμενο'; +$lang['helpItemDescQueryOpen'] = 'Άνοιγμα πριβέ καναλιού:'; +$lang['helpItemCodeQueryOpen'] = '/query όνομα χρήστη'; +$lang['helpItemDescQueryClose'] = 'Κλεισιμό ενώς πριβέ καναλιού:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Περιγραφή ενέργειας:'; +$lang['helpItemCodeAction'] = '/action κείμενο'; +$lang['helpItemDescDescribe'] = 'Περιγραφή ενέργειας με προσωπικό μήνυμα:'; +$lang['helpItemCodeDescribe'] = '/describe όνομα_χρήστη κείμενο'; +$lang['helpItemDescIgnore'] = 'Αγνόηση/αποδοχή μηνυμάτων από χρήστη:'; +$lang['helpItemCodeIgnore'] = '/ignore όνομα_χρήστη'; +$lang['helpItemDescIgnoreList'] = 'Εμφάνιση λίστας αγνοημένων:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Εμφάνιση καναλιού χρήστη:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Kick έναν χρήστη (Μόνον για συντονιστές):'; +$lang['helpItemCodeKick'] = '/kick όνομα χρήστη [λεπτά αποκλεισμού]'; +$lang['helpItemDescUnban'] = 'Αφαίρεση αποκλεισμού από χρήστη (Μόνον για συντονιστές):'; +$lang['helpItemCodeUnban'] = '/unban όνομα_χρήστη'; +$lang['helpItemDescBans'] = 'Λίστα αποκλεισμένων χρηστών (Μόνον για συντονιστές):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Εμφανίζει την IP του χρήστη (Μόνον για συντονιστές):'; +$lang['helpItemCodeWhois'] = '/whois όνομα χρήστη'; +$lang['helpItemDescWho'] = 'Λίστα συνδεδεμένων χρηστών:'; +$lang['helpItemCodeWho'] = '/who [όνομακαναλιού]'; +$lang['helpItemDescList'] = 'Εμφάνιση διαθέσιμων καναλιών:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Κύλιση ζαριών:'; +$lang['helpItemCodeRoll'] = '/roll [αριθμός]d[πλευρές]'; +$lang['helpItemDescNick'] = 'Αλλαγή ονόματος:'; +$lang['helpItemCodeNick'] = '/nick όνομα_χρήστη'; +$lang['settings'] = 'Ρυθμίσεις'; +$lang['settingsBBCode'] = 'Ενεργοποίηση BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Ενεργοποίηση συνδέσμων:'; +$lang['settingsLineBreaks'] = 'Ενεργοποίηση αλλαγής γραμμής:'; +$lang['settingsEmoticons'] = 'Ενεργοποίηση εικονιδίων:'; +$lang['settingsAutoFocus'] = 'Θέστε αυτόματα την εστίαση στο πεδίο εισαγωγής:'; +$lang['settingsMaxMessages'] = 'Μέγιστος αριθμός μηνυμάτων στην λίστα του chat:'; +$lang['settingsWordWrap'] = 'Ενεργοποίηση καλύμματος μεγάλων λέξεων:'; +$lang['settingsMaxWordLength'] = 'Μέγιστο μήκος μιας λέξης χωρίς κάλυμμα:'; +$lang['settingsDateFormat'] = 'Μορφή ημερομηνίας και ώρας που θα εμφανίζετε:'; +$lang['settingsPersistFontColor'] = 'Έντονο χρώμα γραμματοσειράς:'; +$lang['settingsAudioVolume'] = 'Ένταση ήχου:'; +$lang['settingsSoundReceive'] = 'Ήχος για εισερχόμενα μηνύματα:'; +$lang['settingsSoundSend'] = 'Ήχος για εξερχόμενα μηνύματα:'; +$lang['settingsSoundEnter'] = 'Ήχος για μηνύματα σύνδεσης και εισόδου:'; +$lang['settingsSoundLeave'] = 'Ήχος για μηνύματα αποχώρισης και αποσύνδεσης:'; +$lang['settingsSoundChatBot'] = 'Ήχος για μηνύματα του chatbot:'; +$lang['settingsSoundError'] = 'Ήχος για μηνύματα λάθους:'; +$lang['settingsBlink'] = 'Αναβόσβημα τίτλου σε νέα μηνύματα:'; +$lang['settingsBlinkInterval'] = 'Ρυθμός αναβοσβήματος σε χιλιοστά του δευτερόλεπτου:'; +$lang['settingsBlinkIntervalNumber'] = 'Αριθμός αναβοσβήματος οθόνης:'; +$lang['playSelectedSound'] = 'Αναπαραγωγή επιλεγμένου ήχου'; +$lang['requiresJavaScript'] = 'Χρειάζεται JavaScript για το Chat.'; +$lang['errorInvalidUser'] = 'Ακατάλληλο όνομα χρήστη.'; +$lang['errorUserInUse'] = 'Το όνομα υπάρχει ήδη.'; +$lang['errorBanned'] = 'Το όνομα χρήστη ή IP είναι αποκλεισμένα.'; +$lang['errorMaxUsersLoggedIn'] = 'Το chat έχει φτάσει το μέγιστο αριθμό χρηστών.'; +$lang['errorChatClosed'] = 'Το chat είναι κλειστό προς το παρόν.'; +$lang['logsTitle'] = 'AJAX Chat - Καταγραφές'; +$lang['logsDate'] = 'Ημερομηνία'; +$lang['logsTime'] = 'Ώρα'; +$lang['logsSearch'] = 'Αναζήτηση'; +$lang['logsPrivateChannels'] = 'Πριβέ κανάλια'; +$lang['logsPrivateMessages'] = 'προσωπικά μηνύματα'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/en.php b/library/ajaxchat/chat/lib/lang/en.php new file mode 100644 index 000000000..cb9492bde --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/en.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Username'; +$lang['password'] = 'Password'; +$lang['login'] = 'Login'; +$lang['logout'] = 'Logout'; +$lang['channel'] = 'Channel'; +$lang['style'] = 'Style'; +$lang['language'] = 'Language'; +$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break'; +$lang['messageSubmit'] = 'Submit'; +$lang['registeredUsers'] = 'Registered Users'; +$lang['onlineUsers'] = 'Online users'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Sound on/off'; +$lang['toggleHelp'] = 'Show/hide help'; +$lang['toggleSettings'] = 'Show/hide settings'; +$lang['toggleOnlineList'] = 'Show/hide online list'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Quote'; +$lang['bbCodeLabelCode'] = 'Code'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Font Color'; +$lang['bbCodeTitleBold'] = 'Bold text: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Italic text: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Underline text: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Quote text: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Code display: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Insert URL: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Font Color: [color=red]text[/color]'; +$lang['help'] = 'Help'; +$lang['helpItemDescJoin'] = 'Join a channel:'; +$lang['helpItemCodeJoin'] = '/join Channelname'; +$lang['helpItemDescJoinCreate'] = 'Create a private room (Registered users only):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Invite someone (e.g. to a private room):'; +$lang['helpItemCodeInvite'] = '/invite Username'; +$lang['helpItemDescUninvite'] = 'Revoke invitation:'; +$lang['helpItemCodeUninvite'] = '/uninvite Username'; +$lang['helpItemDescLogout'] = 'Logout from Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Private message:'; +$lang['helpItemCodePrivateMessage'] = '/msg Username Text'; +$lang['helpItemDescQueryOpen'] = 'Open a private channel:'; +$lang['helpItemCodeQueryOpen'] = '/query Username'; +$lang['helpItemDescQueryClose'] = 'Close a private channel:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Describe action:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'Describe action in private message:'; +$lang['helpItemCodeDescribe'] = '/describe Username Text'; +$lang['helpItemDescIgnore'] = 'Ignore/accept messages from user:'; +$lang['helpItemCodeIgnore'] = '/ignore Username'; +$lang['helpItemDescIgnoreList'] = 'List ignored users:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Kick a user (Moderators only):'; +$lang['helpItemCodeKick'] = '/kick Username [Minutes banned]'; +$lang['helpItemDescUnban'] = 'Unban a user (Moderators only):'; +$lang['helpItemCodeUnban'] = '/unban Username'; +$lang['helpItemDescBans'] = 'List banned users (Moderators only):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Display user IP (Moderators only):'; +$lang['helpItemCodeWhois'] = '/whois Username'; +$lang['helpItemDescWho'] = 'List online users:'; +$lang['helpItemCodeWho'] = '/who [Channelname]'; +$lang['helpItemDescList'] = 'List available channels:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Roll dice:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'Change username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Settings'; +$lang['settingsBBCode'] = 'Enable BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Enable hyperlinks:'; +$lang['settingsLineBreaks'] = 'Enable line breaks:'; +$lang['settingsEmoticons'] = 'Enable emoticons:'; +$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:'; +$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:'; +$lang['settingsWordWrap'] = 'Enable wrapping of long words:'; +$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:'; +$lang['settingsDateFormat'] = 'Format of date and time display:'; +$lang['settingsPersistFontColor'] = 'Persist font color:'; +$lang['settingsAudioVolume'] = 'Sound Volume:'; +$lang['settingsSoundReceive'] = 'Sound for incoming messages:'; +$lang['settingsSoundSend'] = 'Sound for outgoing messages:'; +$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:'; +$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:'; +$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:'; +$lang['settingsSoundError'] = 'Sound for error messages:'; +$lang['settingsBlink'] = 'Blink window title on new messages:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'Play selected sound'; +$lang['requiresJavaScript'] = 'JavaScript is required for this Chat.'; +$lang['errorInvalidUser'] = 'Invalid username.'; +$lang['errorUserInUse'] = 'Username in use.'; +$lang['errorBanned'] = 'User or IP is banned.'; +$lang['errorMaxUsersLoggedIn'] = 'The chat has reached the maximum number of logged-in users.'; +$lang['errorChatClosed'] = 'The chat is closed at the moment.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Date'; +$lang['logsTime'] = 'Time'; +$lang['logsSearch'] = 'Search'; +$lang['logsPrivateChannels'] = 'Private Channels'; +$lang['logsPrivateMessages'] = 'Private Messages'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/es.php b/library/ajaxchat/chat/lib/lang/es.php new file mode 100644 index 000000000..27b9b7273 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/es.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author - Spanis Translation: Manu Quintans / KeScI [www.e-nologia.com]
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */ +
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Usuario';
+$lang['password'] = 'Contraseña';
+$lang['login'] = 'Conectar';
+$lang['logout'] = 'Desconectar';
+$lang['channel'] = 'Canal';
+$lang['style'] = 'Estilo';
+$lang['language'] = 'Idioma';
+$lang['inputLineBreak'] = 'Pulse SHIFT+ENTER para insertar un salto de línea';
+$lang['messageSubmit'] = 'Enviar';
+$lang['registeredUsers'] = 'Usuarios Registrados';
+$lang['onlineUsers'] = 'Usuarios Conectados';
+$lang['toggleAutoScroll'] = 'Autoscroll on/off';
+$lang['toggleAudio'] = 'Sonido on/off';
+$lang['toggleHelp'] = 'Mostrar/ocultar ayuda';
+$lang['toggleSettings'] = 'Mostrar/ocultar configuración';
+$lang['toggleOnlineList'] = 'Mostrar/ocultar lista conectados';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Citar';
+$lang['bbCodeLabelCode'] = 'Código';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Imagen';
+$lang['bbCodeLabelColor'] = 'Color de Fuente';
+$lang['bbCodeTitleBold'] = 'Texto Negrita: [b]texto[/b]';
+$lang['bbCodeTitleItalic'] = 'Texto Cursiva: [i]texto[/i]';
+$lang['bbCodeTitleUnderline'] = 'Texto Subrayado: [u]texto[/u]';
+$lang['bbCodeTitleQuote'] = 'Texto Citado: [quote]texto[/quote] o [quote=author]text[/quote]';
+$lang['bbCodeTitleCode'] = 'Mostrar código: [code]código[/code]';
+$lang['bbCodeTitleURL'] = 'Insertar URL: [url]http://example.org[/url] or [url=http://example.org]texto[/url]';
+$lang['bbCodeTitleImg'] = 'Insertar imagen: [img]http://example.org/imagen.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Color de Fuente: [color=red]texto[/color]';
+$lang['help'] = 'Ayuda';
+$lang['helpItemDescJoin'] = 'Entrar en canal:';
+$lang['helpItemCodeJoin'] = '/join nombre del canal';
+$lang['helpItemDescJoinCreate'] = 'Crear un canal privado (Solo usuarios registrados):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Invitar a alguien (por ejemplo a un canal privado):';
+$lang['helpItemCodeInvite'] = '/invite Usuario';
+$lang['helpItemDescUninvite'] = 'Anular invitación:';
+$lang['helpItemCodeUninvite'] = '/uninvite Usuario';
+$lang['helpItemDescLogout'] = 'Cerrar sesión:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Mensaje Privado:';
+$lang['helpItemCodePrivateMessage'] = '/msg Usuario Texto';
+$lang['helpItemDescQueryOpen'] = 'Abrir un privado:';
+$lang['helpItemCodeQueryOpen'] = '/query Usuario';
+$lang['helpItemDescQueryClose'] = 'Cerrar privado:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Describir acción:';
+$lang['helpItemCodeAction'] = '/action Texto';
+$lang['helpItemDescDescribe'] = 'Describir acción en mensaje privado:';
+$lang['helpItemCodeDescribe'] = '/describe Usuario Texto';
+$lang['helpItemDescIgnore'] = 'Ignorar/Aceptar mensajes de usuarios:';
+$lang['helpItemCodeIgnore'] = '/ignore Usuario';
+$lang['helpItemDescIgnoreList'] = 'Mostrar usuarios ignorados:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Mostrar canal del usuario:';
+$lang['helpItemCodeWhereis'] = '/whereis Usuario';
+$lang['helpItemDescKick'] = 'Patear usuario (Solo moderadores):';
+$lang['helpItemCodeKick'] = '/kick Usuario [Minutos baneado]';
+$lang['helpItemDescUnban'] = 'Quitar ban usuario (Solo moderadores):';
+$lang['helpItemCodeUnban'] = '/unban Usuario';
+$lang['helpItemDescBans'] = 'Listar usuarios baneados (Solo moderadores):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Mostrar ips de usuarios (Solo moderadores):';
+$lang['helpItemCodeWhois'] = '/whois Usuario';
+$lang['helpItemDescWho'] = 'Mostrar usuarios conectados:';
+$lang['helpItemCodeWho'] = '/who [Channelname]';
+$lang['helpItemDescList'] = 'Lista de canales disponibles:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Tirar dado:';
+$lang['helpItemCodeRoll'] = '/roll [numero]de[lados]';
+$lang['helpItemDescNick'] = 'Cambiar nombre de usuario:';
+$lang['helpItemCodeNick'] = '/nick Usuario';
+$lang['settings'] = 'Configuración';
+$lang['settingsBBCode'] = 'Permitir BBCode:';
+$lang['settingsBBCodeImages'] = 'Permitir BBCode de imagen:';
+$lang['settingsBBCodeColors'] = 'Permitir BBCode de color de fuente:';
+$lang['settingsHyperLinks'] = 'Permitir enlaces:';
+$lang['settingsLineBreaks'] = 'Permitir saltos de línea:';
+$lang['settingsEmoticons'] = 'Permitir emoticonos:';
+$lang['settingsAutoFocus'] = 'Seleccionar el cuadro de ingreso automáticamente:';
+$lang['settingsMaxMessages'] = 'Máximo número de mensajes en la lista del chat:';
+$lang['settingsWordWrap'] = 'Permitir la separación del las palabras largas:';
+$lang['settingsMaxWordLength'] = 'Máximo tamaño de una palabara antes de que se separe:';
+$lang['settingsDateFormat'] = 'Formato de la fecha y hora a mostrar:';
+$lang['settingsPersistFontColor'] = 'Mantener el color de la fuente:';
+$lang['settingsAudioVolume'] = 'Volumen Sonido:';
+$lang['settingsSoundReceive'] = 'Sonido para mensajes entrantes:';
+$lang['settingsSoundSend'] = 'Sonido para mensajes salientes:';
+$lang['settingsSoundEnter'] = 'Sonido para mensajes de conexión y entradas al canal:';
+$lang['settingsSoundLeave'] = 'Sonido para mensajes de desconexión y salidas del canal:';
+$lang['settingsSoundChatBot'] = 'Sonido para mensajes del Chatbot:';
+$lang['settingsSoundError'] = 'Sonido para mensajes de error:';
+$lang['settingsBlink'] = 'Parpadeo del título de la ventana con nuevos mensajes:';
+$lang['settingsBlinkInterval'] = 'Intervalo de parpadeo en milisegundos:';
+$lang['settingsBlinkIntervalNumber'] = 'Número de intervalos de parpadeo:';
+$lang['playSelectedSound'] = 'Reproducir sonido seleccionado';
+$lang['requiresJavaScript'] = 'Necesita tener activado el Javascript en su navegador..';
+$lang['errorInvalidUser'] = 'Usuario Invalido.';
+$lang['errorUserInUse'] = 'Este nombre de usuario esta siendo utilizado en este momento.';
+$lang['errorBanned'] = 'El Usuario o la IP esta baneada..';
+$lang['errorMaxUsersLoggedIn'] = 'El Chat ha alcanzado el número máximo de usuarios conectados.';
+$lang['errorChatClosed'] = 'El Chat está cerrado en estos momentos.';
+$lang['logsTitle'] = 'AJAX Chat - Logs';
+$lang['logsDate'] = 'Fecha';
+$lang['logsTime'] = 'Hora';
+$lang['logsSearch'] = 'Buscar';
+$lang['logsPrivateChannels'] = 'Canales Privados';
+$lang['logsPrivateMessages'] = 'Mensajes Privados';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/et.php b/library/ajaxchat/chat/lib/lang/et.php new file mode 100644 index 000000000..f1169fe19 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/et.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Kasutajanimi'; +$lang['password'] = 'Parool'; +$lang['login'] = 'Sisene'; +$lang['logout'] = 'Välju'; +$lang['channel'] = 'Kanal'; +$lang['style'] = 'Stiil'; +$lang['language'] = 'Keel'; +$lang['inputLineBreak'] = 'Vajuta SHIFT+ENTER, et sisestada reavahe'; +$lang['messageSubmit'] = 'Sisesta'; +$lang['registeredUsers'] = 'Registreeritud kasutajad'; +$lang['onlineUsers'] = 'Sisse loginud kasutajad'; +$lang['toggleAutoScroll'] = 'Automaatne kerimine sees/väljas'; +$lang['toggleAudio'] = 'Helid sees/väljas'; +$lang['toggleHelp'] = 'Näita/Peida Abi'; +$lang['toggleSettings'] = 'Näita/Peida seaded'; +$lang['toggleOnlineList'] = 'Näita/Peida sisse loginuid'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Tsitaat'; +$lang['bbCodeLabelCode'] = 'Kood'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Pilt'; +$lang['bbCodeLabelColor'] = 'Fondi värv'; +$lang['bbCodeTitleBold'] = 'Rasvases kirjas tekst: [b]tekst[/b]'; +$lang['bbCodeTitleItalic'] = 'Kaldkirjas tekst: [i]tekst[/i]'; +$lang['bbCodeTitleUnderline'] = 'Underline text: [u]tekst[/u]'; +$lang['bbCodeTitleQuote'] = 'Tsiteeritud tekst: [quote]tekst[/quote] või [quote=autor]tekst[/quote]'; +$lang['bbCodeTitleCode'] = 'Koodi esitamine: [code]kood[/code]'; +$lang['bbCodeTitleURL'] = 'Lisa URL: [url]http://näide.org[/url] või [url=http://näide.org]tekst[/url]'; +$lang['bbCodeTitleImg'] = 'Lisa pilt: [img]http://näide.org/pilt.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Fondi värv: [color=red]tekst[/color]'; +$lang['help'] = 'Abi'; +$lang['helpItemDescJoin'] = 'Liitu kanaliga:'; +$lang['helpItemCodeJoin'] = '/join Kanalinimi'; +$lang['helpItemDescJoinCreate'] = 'Loo privaat-ruum (Vaid registreeritud kasutajad):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Kutsu kedagi (näiteks privaat-ruumi):'; +$lang['helpItemCodeInvite'] = '/invite Kasutajanimi'; +$lang['helpItemDescUninvite'] = 'Tühista kutse:'; +$lang['helpItemCodeUninvite'] = '/uninvite Kasutajanimi'; +$lang['helpItemDescLogout'] = 'Lahku jutukast:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privaat-sõnum:'; +$lang['helpItemCodePrivateMessage'] = '/msg Kasutajanimi Tekst'; +$lang['helpItemDescQueryOpen'] = 'Ava privaat-kanal:'; +$lang['helpItemCodeQueryOpen'] = '/query Kasutajanimi'; +$lang['helpItemDescQueryClose'] = 'Sulge privaat-kanal:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Kirjelda tegevust:'; +$lang['helpItemCodeAction'] = '/action Tekst'; +$lang['helpItemDescDescribe'] = 'Kirjelda tegevust privaat-sõnumis:'; +$lang['helpItemCodeDescribe'] = '/describe Kasutajanimi Tekst'; +$lang['helpItemDescIgnore'] = 'Ignoreeri/Tunnusta sõnumeid kindlalt kasutajalt:'; +$lang['helpItemCodeIgnore'] = '/ignore Kasutajanimi'; +$lang['helpItemDescIgnoreList'] = 'Ignoreeritud kasutajate nimekiri:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Mis kanalis asub kasutaja?:'; +$lang['helpItemCodeWhereis'] = '/whereis Kasutajanimi'; +$lang['helpItemDescKick'] = 'Viska kasutaja välja (Ainult moderaatorid):'; +$lang['helpItemCodeKick'] = '/kick Kasutajanimi [minutite hulk mustas nimekirjas]'; +$lang['helpItemDescUnban'] = 'Eemalda kasutaja mustast nimekirjast (Ainult moderaatorid):'; +$lang['helpItemCodeUnban'] = '/unban Kasutajanimi'; +$lang['helpItemDescBans'] = 'Must nimekiri (Ainult moderaatorid):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Näita kasutaja IP aadressit (Ainult moderaatorid):'; +$lang['helpItemCodeWhois'] = '/whois Kasutajanimi'; +$lang['helpItemDescWho'] = 'Jutukasse sisenenud kasutajad:'; +$lang['helpItemCodeWho'] = '/who [Kanalinimi]'; +$lang['helpItemDescList'] = 'Vabade kanalite nimekiri:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Veereta täringut:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[küljed]'; +$lang['helpItemDescNick'] = 'Muuda kasutajanimi:'; +$lang['helpItemCodeNick'] = '/nick Kasutajanimi'; +$lang['settings'] = 'Seaded'; +$lang['settingsBBCode'] = 'Luba BBCode:'; +$lang['settingsBBCodeImages'] = 'Luba pildi BBCode:'; +$lang['settingsBBCodeColors'] = 'Luba fondi värvi BBCode:'; +$lang['settingsHyperLinks'] = 'Luba hüpperlingid:'; +$lang['settingsLineBreaks'] = 'Luba reavahed:'; +$lang['settingsEmoticons'] = 'Luba emotikonid:'; +$lang['settingsAutoFocus'] = 'Sea fookus automaatselt sisestusväljale:'; +$lang['settingsMaxMessages'] = 'Maksimum sõnumite hulk ühes nimekirjas:'; +$lang['settingsWordWrap'] = 'Luba pikkade sõnade murdmine:'; +$lang['settingsMaxWordLength'] = 'Maksimum sõna pikkus enne kui seda murtakse:'; +$lang['settingsDateFormat'] = 'Kuupäeva ja kellaaja formaat:'; +$lang['settingsPersistFontColor'] = 'Püsiv fondi värv'; +$lang['settingsAudioVolume'] = 'Heli tugevus:'; +$lang['settingsSoundReceive'] = 'Heli sisenemisel:'; +$lang['settingsSoundSend'] = 'Heli väljumisel:'; +$lang['settingsSoundEnter'] = 'Heli sisenemisel ja kanalisse sisenemise sõnumitel:'; +$lang['settingsSoundLeave'] = 'Heli väljumise ja kanalitest lahkumise sõnumitel:'; +$lang['settingsSoundChatBot'] = 'Chatboti sõnumite heli:'; +$lang['settingsSoundError'] = 'Veateate heli:'; +$lang['settingsBlink'] = 'Vilguta akna tiitlit uute sõnumite saabumisel:'; +$lang['settingsBlinkInterval'] = 'Vilgutamise intervall millisekundites:'; +$lang['settingsBlinkIntervalNumber'] = 'Vilksatuste arv intervallis:'; +$lang['playSelectedSound'] = 'Mängi valitud heli'; +$lang['requiresJavaScript'] = 'Vajalik on JavaScripti olemas olu jutuka kasutamiseks.'; +$lang['errorInvalidUser'] = 'Vigane kasutajanimi.'; +$lang['errorUserInUse'] = 'Kasutajanimi on juba võetud.'; +$lang['errorBanned'] = 'Kasutaja või IP on lisatud musta nimekirja.'; +$lang['errorMaxUsersLoggedIn'] = 'Jutukas on jõudnud maksimum kasutajate hulgani.'; +$lang['errorChatClosed'] = 'Jutukas on hetkel suletud.'; +$lang['logsTitle'] = 'ComicLand - jutukas - Logiraamat'; +$lang['logsDate'] = 'Kuupäev'; +$lang['logsTime'] = 'Kellaaeg'; +$lang['logsSearch'] = 'Otsi'; +$lang['logsPrivateChannels'] = 'Privaat-kanalid'; +$lang['logsPrivateMessages'] = 'Privaat-sõnumid'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/fa.php b/library/ajaxchat/chat/lib/lang/fa.php new file mode 100644 index 000000000..0dc3cb132 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/fa.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author pepotiger (www.dd4bb.com) + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'نام عبور'; +$lang['password'] = 'کلمه عبور'; +$lang['login'] = 'ورود'; +$lang['logout'] = 'خروج'; +$lang['channel'] = 'اطاق'; +$lang['style'] = 'ظاهر'; +$lang['language'] = 'زبان'; +$lang['inputLineBreak'] = 'کلید SHIFT+ENTER را برای ایجاد خط جدید فشار دهید'; +$lang['messageSubmit'] = 'ارسل'; +$lang['registeredUsers'] = 'کاربران ثبت نام شده'; +$lang['onlineUsers'] = 'کاربران حاضر'; +$lang['toggleAutoScroll'] = 'اسکرول اتوماتیک فعال/غیر فعال'; +$lang['toggleAudio'] = 'صدا روشن/خاموش'; +$lang['toggleHelp'] = 'نمایش/پنهان سازی کمک رسان'; +$lang['toggleSettings'] = 'نمایش/پنهان سازی تنظیمات'; +$lang['toggleOnlineList'] = 'نمایش/پنهان سازی لیست کاربران حاضر'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'اقتباس'; +$lang['bbCodeLabelCode'] = 'کد'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'تصویر'; +$lang['bbCodeLabelColor'] = 'رنگ خط'; +$lang['bbCodeTitleBold'] = 'متن درشت: [b]متن[/b]'; +$lang['bbCodeTitleItalic'] = 'متن کج: [i]متن[/i]'; +$lang['bbCodeTitleUnderline'] = 'زیر خط دار: [u]متن[/u]'; +$lang['bbCodeTitleQuote'] = 'نقل قول: [quote]متن[/quote] او [quote=الكاتب]نص[/quote]'; +$lang['bbCodeTitleCode'] = 'نمایش کد: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'وارد کردن آدرس: [url]http://example.org[/url] یا [url=http://example.org]متن[/url]'; +$lang['bbCodeTitleImg'] = 'وارد کردن تصویر: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'رنگ متن: [color=red]متن[/color]'; +$lang['help'] = 'کمک'; +$lang['helpItemDescJoin'] = 'ورود به اطاق:'; +$lang['helpItemCodeJoin'] = '/join نام اطاق'; +$lang['helpItemDescJoinCreate'] = 'ساخت اطاق خصوصی (تنها برای اعضا):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'دعوت کاربر (به عنوان مثال برای اطاق خصوصی):'; +$lang['helpItemCodeInvite'] = '/invite نام کاربری'; +$lang['helpItemDescUninvite'] = 'لغو دعوت:'; +$lang['helpItemCodeUninvite'] = '/uninvite نام کاربری'; +$lang['helpItemDescLogout'] = 'خروج:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'پیام خصوصی:'; +$lang['helpItemCodePrivateMessage'] = '/msg نامکاربری متن'; +$lang['helpItemDescQueryOpen'] = 'ساخت اطاق خصوصی:'; +$lang['helpItemCodeQueryOpen'] = '/query نام کاربری'; +$lang['helpItemDescQueryClose'] = 'خروج از اطاق خصوصی:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'شرح واقعه:'; +$lang['helpItemCodeAction'] = '/action متن'; +$lang['helpItemDescDescribe'] = 'شرح واقعه با پیام خصوصی:'; +$lang['helpItemCodeDescribe'] = '/describe نام کاربری متن'; +$lang['helpItemDescIgnore'] = 'قبول/صرف نظر پیغام از کاربر:'; +$lang['helpItemCodeIgnore'] = '/ignore نام کاربری'; +$lang['helpItemDescIgnoreList'] = 'افراد صرف نظر شده:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'نمایش اطاق کاربر:'; +$lang['helpItemCodeWhereis'] = '/whereis نام کاربر'; +$lang['helpItemDescKick'] = 'اجراج کاربر (تنها برای مدیران):'; +$lang['helpItemCodeKick'] = '/kick نام کاربری [زمان اخراج]'; +$lang['helpItemDescUnban'] = 'لغو اخراج (تنها برای مدیران):'; +$lang['helpItemCodeUnban'] = '/unban نام کاربری'; +$lang['helpItemDescBans'] = 'لیست کاربران اخراج شده (تنها برای مدیران):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'مشاهده آیپی کاربر (تنها برای مدیران):'; +$lang['helpItemCodeWhois'] = '/whois نام کاربری'; +$lang['helpItemDescWho'] = 'لیست کاربران حاضر:'; +$lang['helpItemCodeWho'] = '/who [نام اطاق]'; +$lang['helpItemDescList'] = 'نام اطاق های موجود:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Roll dice:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'تغییر نام کاربری:'; +$lang['helpItemCodeNick'] = '/nick نام کاربری'; +$lang['settings'] = 'تنظیمات'; +$lang['settingsBBCode'] = 'فعال سازی BBCode:'; +$lang['settingsBBCodeImages'] = 'فعال سازی تصاویر BBCode:'; +$lang['settingsBBCodeColors'] = 'فعال سازی رنگ متن BBCode:'; +$lang['settingsHyperLinks'] = 'فعال سازی لینک های اینترنتی:'; +$lang['settingsLineBreaks'] = 'فعال سازی پیام چند خطی:'; +$lang['settingsEmoticons'] = 'فعال سازی شکلک ها:'; +$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:'; +$lang['settingsMaxMessages'] = 'حد اکثر تعداد پیام در هر اطاق:'; +$lang['settingsWordWrap'] = 'Enable wrapping of long words:'; +$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:'; +$lang['settingsDateFormat'] = 'Format of date and time display:'; +$lang['settingsPersistFontColor'] = 'Persist font color:'; +$lang['settingsAudioVolume'] = 'Sound Volume:'; +$lang['settingsSoundReceive'] = 'Sound for incoming messages:'; +$lang['settingsSoundSend'] = 'Sound for outgoing messages:'; +$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:'; +$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:'; +$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:'; +$lang['settingsSoundError'] = 'Sound for error messages:'; +$lang['settingsBlink'] = 'Blink window title on new messages:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'اجرای صدای انتخاب شده'; +$lang['requiresJavaScript'] = 'جاوا اسکریپت برای این تالار نیاز است.'; +$lang['errorInvalidUser'] = 'نا کاربری نامعتبر.'; +$lang['errorUserInUse'] = 'نام کاربری در حال استفاده است.'; +$lang['errorBanned'] = 'نام کاربری یا آیپی اخراج شده اند.'; +$lang['errorMaxUsersLoggedIn'] = 'متاسفانه تالار گفتگو به حداکثر ظرفیت خود برای کاربران حاضر رسیده است.'; +$lang['errorChatClosed'] = 'تالار گفتوگو هم اکنون بسته می باشد.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'تاریخ'; +$lang['logsTime'] = 'زمان'; +$lang['logsSearch'] = 'جست و جو'; +$lang['logsPrivateChannels'] = 'اطاق های خصوصی'; +$lang['logsPrivateMessages'] = 'پیغام های خصوصی'; +?> diff --git a/library/ajaxchat/chat/lib/lang/fi.php b/library/ajaxchat/chat/lib/lang/fi.php new file mode 100644 index 000000000..73466b412 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/fi.php @@ -0,0 +1,125 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Asmo Soinio + * @author Saku Laukkanen + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Käyttäjätunnus'; +$lang['password'] = 'Salasana'; +$lang['login'] = 'Kirjaudu sisään'; +$lang['logout'] = 'Kirjaudu ulos'; +$lang['channel'] = 'Kanava'; +$lang['style'] = 'Tyyli'; +$lang['language'] = 'Kieli'; +$lang['inputLineBreak'] = 'Paina SHIFT+ENTER saadaksesi rivinvaihdon'; +$lang['messageSubmit'] = 'Lähetä'; +$lang['registeredUsers'] = 'Rekisteröityneet käyttäjät'; +$lang['onlineUsers'] = 'Paikalla olevat käyttäjät'; +$lang['toggleAutoScroll'] = 'Automaattinen vieritys päällä/pois'; +$lang['toggleAudio'] = 'Äänet päällä/pois'; +$lang['toggleHelp'] = 'Näytä/piilota ohje'; +$lang['toggleSettings'] = 'Näytä/piilota asetukset'; +$lang['toggleOnlineList'] = 'Näytä/piilota paikalla olevat käyttäjät'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Lainaus'; +$lang['bbCodeLabelCode'] = 'Koodi'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Kuva'; +$lang['bbCodeLabelColor'] = 'Fontin väri'; +$lang['bbCodeTitleBold'] = 'Lihavoitu teksti: [b]teksti[/b]'; +$lang['bbCodeTitleItalic'] = 'Kursivoitu teksti: [i]teksti[/i]'; +$lang['bbCodeTitleUnderline'] = 'Alleviivattu teksti: [u]teksti[/u]'; +$lang['bbCodeTitleQuote'] = 'Lainattu teksti: [quote]teksti[/quote] tai [quote=kirjoittaja]teksti[/quote]'; +$lang['bbCodeTitleCode'] = 'Koodi: [code]koodi[/code]'; +$lang['bbCodeTitleURL'] = 'Lisää linkki: [url]http://example.org[/url] tai [url=http://example.org]teksti[/url]'; +$lang['bbCodeTitleImg'] = 'Lisää kuva: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Kirjaisimen väri: [color=red]teksti[/color]'; +$lang['help'] = 'Ohje'; +$lang['helpItemDescJoin'] = 'Liity kanavalle:'; +$lang['helpItemCodeJoin'] = '/join KanavanNimi'; +$lang['helpItemDescJoinCreate'] = 'Tee uusi yksityinen kanava (Ainoastaan rekisteröityneille käyttäjille):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Kutsu joku (esim. Yksityiseen kanavaan):'; +$lang['helpItemCodeInvite'] = '/invite Käyttäjätunnus'; +$lang['helpItemDescUninvite'] = 'Peruuta kutsu:'; +$lang['helpItemCodeUninvite'] = '/uninvite Käyttäjätunnus'; +$lang['helpItemDescLogout'] = 'Kirjaudu ulos chatista:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Yksityisviesti:'; +$lang['helpItemCodePrivateMessage'] = '/msg Käyttäjätunnus Teksti'; +$lang['helpItemDescQueryOpen'] = 'Avaa yksityinen kanava:'; +$lang['helpItemCodeQueryOpen'] = '/query Käyttäjänimi'; +$lang['helpItemDescQueryClose'] = 'Sulje yksityinen kanava:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Kerro, mitä teet:'; +$lang['helpItemCodeAction'] = '/action Teksti'; +$lang['helpItemDescDescribe'] = 'Kerro yksityisviestissä mitä teet:'; +$lang['helpItemCodeDescribe'] = '/describe Käyttäjätunnus Teksti'; +$lang['helpItemDescIgnore'] = 'Estä tai salli viestejä käyttäjältä:'; +$lang['helpItemCodeIgnore'] = '/ignore Käyttäjänimi'; +$lang['helpItemDescIgnoreList'] = 'Listaa estetyt käyttäjät:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Näytä käyttäjän kanavat:'; +$lang['helpItemCodeWhereis'] = '/whereis Käyttäjänimi'; +$lang['helpItemDescKick'] = 'Potki käyttäjä (Ainoastaan Moderaattoreille):'; +$lang['helpItemCodeKick'] = '/kick Käyttäjänimi [Minuutteja potkittuna]'; +$lang['helpItemDescUnban'] = 'Poista käyttäjän potkut (Ainoastaan moderaattoreille):'; +$lang['helpItemCodeUnban'] = '/unban Käyttäjänimi'; +$lang['helpItemDescBans'] = 'Listaa potkitut käyttäjät (Ainoastaan moderaattoreille):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Näytä käyttäjän IP (Ainoastaan moderaattoreille):'; +$lang['helpItemCodeWhois'] = '/whois Käyttäjänimi'; +$lang['helpItemDescWho'] = 'Listaa käyttäjät jotka ovat paikalla:'; +$lang['helpItemCodeWho'] = '/who [Kanavatunnus]'; +$lang['helpItemDescList'] = 'Listaa käytettävissä olevat kanavat:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Heitä noppaa:'; +$lang['helpItemCodeRoll'] = '/roll [kertaa]d[sivuja]'; +$lang['helpItemDescNick'] = 'Vaihda käyttäjätunnusta:'; +$lang['helpItemCodeNick'] = '/nick Käyttäjänimi'; +$lang['settings'] = 'Asetukset'; +$lang['settingsBBCode'] = 'BBCode päälle:'; +$lang['settingsBBCodeImages'] = 'Salli kuvat:'; +$lang['settingsBBCodeColors'] = 'Salli värit:'; +$lang['settingsHyperLinks'] = 'Salli hyperlinkit:'; +$lang['settingsLineBreaks'] = 'Salli rivinvaihdot:'; +$lang['settingsEmoticons'] = 'Salli hymiöt:'; +$lang['settingsAutoFocus'] = 'Valitse tekstinsyöttökenttä automaattisesti:'; +$lang['settingsMaxMessages'] = 'Suurin määrä viestejä sivulla:'; +$lang['settingsWordWrap'] = 'Salli pitkien sanojen rivinvaihto:'; +$lang['settingsMaxWordLength'] = 'Sanan enimmäispituus ennen kuin riviä vaihdetaan:'; +$lang['settingsDateFormat'] = 'Ajan ja päivämäärän muoto:'; +$lang['settingsPersistFontColor'] = 'Pysyvä fontin väri:'; +$lang['settingsAudioVolume'] = 'Äänenvoimakkuus:'; +$lang['settingsSoundReceive'] = 'Ääni tuleville viesteille:'; +$lang['settingsSoundSend'] = 'Ääni lähteville viesteille:'; +$lang['settingsSoundEnter'] = 'Ääni sisäänkirjoittautumiseen ja kanavalle tuloon:'; +$lang['settingsSoundLeave'] = 'Ääni poistumiseen keskustelusta ja kanavalta:'; +$lang['settingsSoundChatBot'] = 'Ääni chatbotin viesteille:'; +$lang['settingsSoundError'] = 'Ääni virheilmoituksille:'; +$lang['settingsBlink'] = 'Vilkuta ikkunan nimeä uusista viesteistä:'; +$lang['settingsBlinkInterval'] = 'Vilkuttamisen aika millisekunneissa:'; +$lang['settingsBlinkIntervalNumber'] = 'Vilkutuksen viive:'; +$lang['playSelectedSound'] = 'Soita valittu ääni'; +$lang['requiresJavaScript'] = 'JavaScript on pakollinen tässä chatissa'; +$lang['errorInvalidUser'] = 'Virheellinen käyttäjänimi'; +$lang['errorUserInUse'] = 'Käyttäjänimi on käytössä, ole hyvä ja valitse toinen'; +$lang['errorBanned'] = 'Tällä IP:llä on porttikielto'; +$lang['errorMaxUsersLoggedIn'] = 'Chatissa on jo maksimimäärä käyttäjiä.'; +$lang['errorChatClosed'] = 'Chat on poistettu käytöstä toistaiseksi.'; +$lang['logsTitle'] = 'AJAX Chat-Lokitiedot'; +$lang['logsDate'] = 'Päivä'; +$lang['logsTime'] = 'Aika'; +$lang['logsSearch'] = 'Etsi'; +$lang['logsPrivateChannels'] = 'Näytä yksityiset kanavat'; +$lang['logsPrivateMessages'] = 'Yksityiset viestit'; +?> diff --git a/library/ajaxchat/chat/lib/lang/fr.php b/library/ajaxchat/chat/lib/lang/fr.php new file mode 100644 index 000000000..52ffaf1a2 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/fr.php @@ -0,0 +1,125 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Ettelcar
+ * @author Massimiliano Tiraboschi
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Nom d’utilisateur';
+$lang['password'] = 'Mot de passe';
+$lang['login'] = 'Connexion';
+$lang['logout'] = 'Déconnexion';
+$lang['channel'] = 'Salon';
+$lang['style'] = 'Style';
+$lang['language'] = 'Langue';
+$lang['inputLineBreak'] = 'Taper Maj + Entrer pour avoir une ligne blanche';
+$lang['messageSubmit'] = 'Envoyer';
+$lang['registeredUsers'] = 'Utilisateurs enregistrés';
+$lang['onlineUsers'] = 'Utilisateurs en ligne';
+$lang['toggleAutoScroll'] = 'Activer / Désactiver l’autoscroll';
+$lang['toggleAudio'] = 'Activer / Désactiver le son';
+$lang['toggleHelp'] = 'Afficher / Masquer l’aide';
+$lang['toggleSettings'] = 'Afficher / Masquer les préférences';
+$lang['toggleOnlineList'] = 'Afficher / Masquer les utilisateurs en ligne';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Citation';
+$lang['bbCodeLabelCode'] = 'Code';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Image';
+$lang['bbCodeLabelColor'] = 'Couleur de police';
+$lang['bbCodeTitleBold'] = 'Texte en gras : [b]texte[/b]';
+$lang['bbCodeTitleItalic'] = 'Texte en italique : [i]texte[/i]';
+$lang['bbCodeTitleUnderline'] = 'Texte souligné : [u]texte[/u]';
+$lang['bbCodeTitleQuote'] = 'Citation : [quote]texte[/quote] ou [quote=auteur]texte[/quote]';
+$lang['bbCodeTitleCode'] = 'Affichage de code : [code]code[/code]';
+$lang['bbCodeTitleURL'] = 'Insérer une URL : [url]http://example.org[/url] ou [url=http://example.org]text[/url]';
+$lang['bbCodeTitleImg'] = 'Insérer une image : [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Couleur de la police: [color=red]texte[/color]';
+$lang['help'] = 'Aide';
+$lang['helpItemDescJoin'] = 'Rejoindre un salon :';
+$lang['helpItemCodeJoin'] = '/join Nom_du_salon';
+$lang['helpItemDescJoinCreate'] = 'Créer un salon privé (Utilisateurs enregistrés seulement) :';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Inviter quelqu’un (exemple : rejoindre un salon privé) :';
+$lang['helpItemCodeInvite'] = '/invite Nom_d_utilisateur';
+$lang['helpItemDescUninvite'] = 'Annuler l’invitation :';
+$lang['helpItemCodeUninvite'] = '/uninvite Nom_d_utilisateur';
+$lang['helpItemDescLogout'] = 'Se déconnecter du chat :';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Message privé :';
+$lang['helpItemCodePrivateMessage'] = '/msg Nom_d_utilisateur Texte';
+$lang['helpItemDescQueryOpen'] = 'Ouvrir un canal privé :';
+$lang['helpItemCodeQueryOpen'] = '/query Nom_d_utilisateur';
+$lang['helpItemDescQueryClose'] = 'Fermer un canal privé:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Décrire une action :';
+$lang['helpItemCodeAction'] = '/action Texte';
+$lang['helpItemDescDescribe'] = 'Décrire une action dans un message privé :';
+$lang['helpItemCodeDescribe'] = '/describe Nom_d_utilisateur Texte';
+$lang['helpItemDescIgnore'] = 'Ignorer / Accepter les messages de l’utilisateur :';
+$lang['helpItemCodeIgnore'] = '/ignore Nom_d_utilisateur';
+$lang['helpItemDescIgnoreList'] = 'Liste des utilisateurs ignorés :';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Display user channel :';
+$lang['helpItemCodeWhereis'] = '/whereis Username';
+$lang['helpItemDescKick'] = 'Éjecter un utilisateur (Modérateurs seulement) :';
+$lang['helpItemCodeKick'] = '/kick Nom_d_utilisateur [Temps en minutes de ban]';
+$lang['helpItemDescUnban'] = 'Débannir un utilisateur (Modérateurs seulement) :';
+$lang['helpItemCodeUnban'] = '/unban Nom_d_utilisateur';
+$lang['helpItemDescBans'] = 'Liste des utilisateurs bannis (Modérateurs seulement) :';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Afficher l’adresse IP de l’utilisateur (Modérateurs seulement) :';
+$lang['helpItemCodeWhois'] = '/whois Nom_d_utilisateur';
+$lang['helpItemDescWho'] = 'Liste des utilisateurs en ligne :';
+$lang['helpItemCodeWho'] = '/who [Nom du salon]';
+$lang['helpItemDescList'] = 'Liste des salons disponibles :';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Jeter un dé :';
+$lang['helpItemCodeRoll'] = '/roll [nombre de dés]d[nombre de faces]';
+$lang['helpItemDescNick'] = 'Changer le nom d’utilisateur';
+$lang['helpItemCodeNick'] = '/nick Nom_d_utilisateur';
+$lang['settings'] = 'Préférences';
+$lang['settingsBBCode'] = 'Activer le BBCode :';
+$lang['settingsBBCodeImages'] = 'Activer le BBCode des images :';
+$lang['settingsBBCodeColors'] = 'Activer le BBCode pour la couleur de la police :';
+$lang['settingsHyperLinks'] = 'Activer les liens :';
+$lang['settingsLineBreaks'] = 'Activer les lignes blanches :';
+$lang['settingsEmoticons'] = 'Activer les émoticons :';
+$lang['settingsAutoFocus'] = 'Champ de saisie automatique :';
+$lang['settingsMaxMessages'] = 'Maximum de messages dans le chat :';
+$lang['settingsWordWrap'] = 'Activer la coupure des mots :';
+$lang['settingsMaxWordLength'] = 'Longueur maximum des mots :';
+$lang['settingsDateFormat'] = 'Format de la date :';
+$lang['settingsPersistFontColor'] = 'Garder la couleur du font :';
+$lang['settingsAudioVolume'] = 'Volume du son :';
+$lang['settingsSoundReceive'] = 'Son message entrant :';
+$lang['settingsSoundSend'] = 'Son message sortant :';
+$lang['settingsSoundEnter'] = 'Son pour connexion :';
+$lang['settingsSoundLeave'] = 'Son pour déconnexion :';
+$lang['settingsSoundChatBot'] = 'Son pour message robot :';
+$lang['settingsSoundError'] = 'Son pour les erreurs :';
+$lang['settingsBlink'] = 'Clignoter à chaque nouveau message :';
+$lang['settingsBlinkInterval'] = 'Intervalle de clignotage :';
+$lang['settingsBlinkIntervalNumber'] = 'Numéro de clignotage :';
+$lang['playSelectedSound'] = 'Jouer le son sélectionné';
+$lang['requiresJavaScript'] = 'Ce chat requiert JavasSript.';
+$lang['errorInvalidUser'] = 'Nom d’utilisateur incorrect.';
+$lang['errorUserInUse'] = 'Nom d’utilisateur déjà utilisé.';
+$lang['errorBanned'] = 'L’utilisateur ou l’adresse IP a été banni(e).';
+$lang['errorMaxUsersLoggedIn'] = 'Le chat a atteint le nombre maximal d’utilisateurs en ligne.';
+$lang['errorChatClosed'] = 'Le chat est fermé pour le moment.';
+$lang['logsTitle'] = 'Chat AJAX - Historique';
+$lang['logsDate'] = 'Date';
+$lang['logsTime'] = 'Heure';
+$lang['logsSearch'] = 'Chercher';
+$lang['logsPrivateChannels'] = 'Salons privés';
+$lang['logsPrivateMessages'] = 'Messages privés';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/gl.php b/library/ajaxchat/chat/lib/lang/gl.php new file mode 100644 index 000000000..54b8a8ee6 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/gl.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Manu Quintans + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Usuario'; +$lang['password'] = 'Password'; +$lang['login'] = 'Entrar'; +$lang['logout'] = 'Pechar Sesión'; +$lang['channel'] = 'Canle'; +$lang['style'] = 'Estilo'; +$lang['language'] = 'Idioma'; +$lang['inputLineBreak'] = 'Prema SHIFT+ENTER para un salto de liña'; +$lang['messageSubmit'] = 'Enviar'; +$lang['registeredUsers'] = 'Usuarios rexistrados'; +$lang['onlineUsers'] = 'Usuarios Conectados'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Sons on/off'; +$lang['toggleHelp'] = 'Amosar/Esconder ayuda'; +$lang['toggleSettings'] = 'Amosar/Esconder configuración'; +$lang['toggleOnlineList'] = 'Amosar/Esconder usuarios en liña'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Quote'; +$lang['bbCodeLabelCode'] = 'Code'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Imagen'; +$lang['bbCodeLabelColor'] = 'Color fonte'; +$lang['bbCodeTitleBold'] = 'Texto negriña: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Texto cursiva: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Texto subraiado: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Texto entrecomillado: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Mosrar código: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Insertar URL: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Insertar imaxe: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Cor fonte: [color=red]text[/color]'; +$lang['help'] = 'Axuda'; +$lang['helpItemDescJoin'] = 'Entrar na canle:'; +$lang['helpItemCodeJoin'] = '/join nome da canle'; +$lang['helpItemDescJoinCreate'] = 'Crear un privado(So usuarios registrados):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Invitar a alguén(por ex. a un privado):'; +$lang['helpItemCodeInvite'] = '/invite Nome usuario'; +$lang['helpItemDescUninvite'] = 'Rechazar invitación:'; +$lang['helpItemCodeUninvite'] = '/uninvite Nome usuario'; +$lang['helpItemDescLogout'] = 'Pechar sesión:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Mensaxe Privada:'; +$lang['helpItemCodePrivateMessage'] = '/msg Usuario Texto'; +$lang['helpItemDescQueryOpen'] = 'Abrir unha canle privada:'; +$lang['helpItemCodeQueryOpen'] = '/query Usuario'; +$lang['helpItemDescQueryClose'] = 'Pechar canle privada:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Describe acción:'; +$lang['helpItemCodeAction'] = '/action Texto'; +$lang['helpItemDescDescribe'] = 'Describe acción nunha mensaxe privada:'; +$lang['helpItemCodeDescribe'] = '/describe Nome Usuario Texto'; +$lang['helpItemDescIgnore'] = 'Ignorar/Aceptar mensaxes de usuarios:'; +$lang['helpItemCodeIgnore'] = '/ignore Usuario'; +$lang['helpItemDescIgnoreList'] = 'Listar usuarios Ignorados:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Mostrar canle usuario:'; +$lang['helpItemCodeWhereis'] = '/whereis Usuario'; +$lang['helpItemDescKick'] = 'Banear usuario (Só moderadores):'; +$lang['helpItemCodeKick'] = '/kick Usuario [Minutos baneado]'; +$lang['helpItemDescUnban'] = 'Quitar ban usuario (Só moderadores):'; +$lang['helpItemCodeUnban'] = '/unban Nome usuario'; +$lang['helpItemDescBans'] = 'Listar usuarios baneados (Só moderadores):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Amosar ips de usuarios (So moderadores):'; +$lang['helpItemCodeWhois'] = '/whois Nome usuario'; +$lang['helpItemDescWho'] = 'Amosar usuarios conectados:'; +$lang['helpItemCodeWho'] = '/who [Nome canle]'; +$lang['helpItemDescList'] = 'Lista de canles disponibles:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Roll dice:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'Cambiar Nome usuario:'; +$lang['helpItemCodeNick'] = '/nick Usuario'; +$lang['settings'] = 'Configuración'; +$lang['settingsBBCode'] = 'Activar BBCode:'; +$lang['settingsBBCodeImages'] = 'Activar imaxes BBCode:'; +$lang['settingsBBCodeColors'] = 'Activar cor fonte BBCode:'; +$lang['settingsHyperLinks'] = 'Activar enlaces:'; +$lang['settingsLineBreaks'] = 'Activar saltos de liña:'; +$lang['settingsEmoticons'] = 'Activar emoticonos:'; +$lang['settingsAutoFocus'] = 'Foco en campo de entrada automáticamente:'; +$lang['settingsMaxMessages'] = 'Máximo número de mensaxes:'; +$lang['settingsWordWrap'] = 'Activar wrapping en palabras largas:'; +$lang['settingsMaxWordLength'] = 'Máxima lonxutide de palabra antes de wrap:'; +$lang['settingsDateFormat'] = 'Formato de data e hora:'; +$lang['settingsPersistFontColor'] = 'Fixar cor de fonte:'; +$lang['settingsAudioVolume'] = 'Volume sons:'; +$lang['settingsSoundReceive'] = 'Son para mensaxes entrantes:'; +$lang['settingsSoundSend'] = 'Son para mensaxes salientes:'; +$lang['settingsSoundEnter'] = 'Son para login :'; +$lang['settingsSoundLeave'] = 'Son para logout :'; +$lang['settingsSoundChatBot'] = 'Son para mensaxes chat:'; +$lang['settingsSoundError'] = 'Son para errores:'; +$lang['settingsBlink'] = 'Parpadeo en ventá con novas mensaxes:'; +$lang['settingsBlinkInterval'] = 'Intervalo parpadeos (milisegundos):'; +$lang['settingsBlinkIntervalNumber'] = 'Número de parpadeos:'; +$lang['playSelectedSound'] = 'Executa son'; +$lang['requiresJavaScript'] = 'Necesitas ter activado o Javascript no teu navegador..'; +$lang['errorInvalidUser'] = 'Usuario Incorrecto.'; +$lang['errorUserInUse'] = 'Este Nome de usuario xa está sendo utilizado neste momento.'; +$lang['errorBanned'] = 'Usuario ou IP baneada..'; +$lang['errorMaxUsersLoggedIn'] = 'O chat alcanzou o número máximo de conexións.'; +$lang['errorChatClosed'] = 'Chat pechado neste momento.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Data'; +$lang['logsTime'] = 'Hora'; +$lang['logsSearch'] = 'Buscar'; +$lang['logsPrivateChannels'] = 'Canles privadas'; +$lang['logsPrivateMessages'] = 'mensaxes privadas'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/he.php b/library/ajaxchat/chat/lib/lang/he.php new file mode 100644 index 000000000..39fa799d2 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/he.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Smiley Barry + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'שם משתמש'; +$lang['password'] = 'סיסמה'; +$lang['login'] = 'היכנס'; +$lang['logout'] = 'צא'; +$lang['channel'] = 'ערוץ'; +$lang['style'] = 'סגנון'; +$lang['language'] = 'לשון'; +$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break'; +$lang['messageSubmit'] = 'שלח'; +$lang['registeredUsers'] = 'משתמשים רשומים'; +$lang['onlineUsers'] = 'משתמשים מחוברים'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Sound on/off'; +$lang['toggleHelp'] = 'Show/hide help'; +$lang['toggleSettings'] = 'Show/hide settings'; +$lang['toggleOnlineList'] = 'Show/hide online list'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'צטט'; +$lang['bbCodeLabelCode'] = 'קוד'; +$lang['bbCodeLabelURL'] = 'כתובת אינטרנט'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'צבע גופן'; +$lang['bbCodeTitleBold'] = 'טקסט מודגש: [b]טקסט[/b]'; +$lang['bbCodeTitleItalic'] = 'טקסט נטוי: [i]טקסט[/i]'; +$lang['bbCodeTitleUnderline'] = 'טקסט מודגש קו: [u]טקסט[/u]'; +$lang['bbCodeTitleQuote'] = 'צטט טקסט: [quote]טקסט[/quote] או [quote=כותב מקורי]טקסט[/quote]'; +$lang['bbCodeTitleCode'] = 'הראה קוד: [code]קוד[/code]'; +$lang['bbCodeTitleURL'] = 'הכנס כתובת: [url]http://www.example.org[/url] או[url=http://www.example.org]טקסט[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'צבע גופן: [color=צבע]טקסט[/color]'; +$lang['help'] = 'עזרה'; +$lang['helpItemDescJoin'] = 'הצטרף לערוץ:'; +$lang['helpItemCodeJoin'] = '/join שם ערוץ'; +$lang['helpItemDescJoinCreate'] = 'צור חדר פרטי (משתמשים רשומים בלבד):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'הזמן מישהו (דוגמא: חדר פרטי):'; +$lang['helpItemCodeInvite'] = '/invite שם_משתמש'; +$lang['helpItemDescUninvite'] = 'בטל הזמנה:'; +$lang['helpItemCodeUninvite'] = '/uninvite שם_משתמש'; +$lang['helpItemDescLogout'] = 'צא מהצאט:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'הודעה פרטית:'; +$lang['helpItemCodePrivateMessage'] = '/msg שם_משתמש טקסט'; +$lang['helpItemDescQueryOpen'] = 'פתח ערוץ אישי:'; +$lang['helpItemCodeQueryOpen'] = '/query שם_משתמש'; +$lang['helpItemDescQueryClose'] = 'סגור ערוץ אישי:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'תאר פעולה:'; +$lang['helpItemCodeAction'] = '/action טקסט'; +$lang['helpItemDescDescribe'] = 'תאר פעולה בהודעה פרטית:'; +$lang['helpItemCodeDescribe'] = '/describe שם_משתמש טקסט'; +$lang['helpItemDescIgnore'] = 'התעלם או קבל הודעות ממשתמש:'; +$lang['helpItemCodeIgnore'] = '/ignore שם_משתמש'; +$lang['helpItemDescIgnoreList'] = 'הראה רשימה של אנשים שאתה מתעלם מהם:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'העף משתמש (חברי צוות בלבד):'; +$lang['helpItemCodeKick'] = '/kick שם_משתמש [מספר דקות]'; +$lang['helpItemDescUnban'] = 'בטל חסימת משתמש (חברי צוות בלבד):'; +$lang['helpItemCodeUnban'] = '/unban שם_משתמש'; +$lang['helpItemDescBans'] = 'הראה רשימת משתמשים חסומים (חברי צוות בלבד):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'הראה כתובת מחשב של משתמש (חברי צוות בלבד):'; +$lang['helpItemCodeWhois'] = '/whois שם_משתמש'; +$lang['helpItemDescWho'] = 'הראה רשימת משתמשים מחוברים:'; +$lang['helpItemCodeWho'] = '/who שם_ערוץ'; +$lang['helpItemDescList'] = 'הראה רשימת ערוצים פתוחים:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'גלגל קוביה:'; +$lang['helpItemCodeRoll'] = '/roll [מספר]d[צדדים]'; +$lang['helpItemDescNick'] = 'Change username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Settings'; +$lang['settingsBBCode'] = 'Enable BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Enable hyperlinks:'; +$lang['settingsLineBreaks'] = 'Enable line breaks:'; +$lang['settingsEmoticons'] = 'Enable emoticons:'; +$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:'; +$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:'; +$lang['settingsWordWrap'] = 'Enable wrapping of long words:'; +$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:'; +$lang['settingsDateFormat'] = 'Format of date and time display:'; +$lang['settingsPersistFontColor'] = 'Persist font color:'; +$lang['settingsAudioVolume'] = 'Sound Volume:'; +$lang['settingsSoundReceive'] = 'Sound for incoming messages:'; +$lang['settingsSoundSend'] = 'Sound for outgoing messages:'; +$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:'; +$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:'; +$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:'; +$lang['settingsSoundError'] = 'Sound for error messages:'; +$lang['settingsBlink'] = 'Blink window title on new messages:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'Play selected sound'; +$lang['requiresJavaScript'] = 'JavaScript נצרך בשביל הצאט הזה.'; +$lang['errorInvalidUser'] = 'שם משתמש לא חוקי.'; +$lang['errorUserInUse'] = 'שם משתמש בשימוש.'; +$lang['errorBanned'] = 'משתמש או כתובת מחשב חסומים.'; +$lang['errorMaxUsersLoggedIn'] = 'הצאט כרגע מלא.'; +$lang['errorChatClosed'] = 'הצאט כרגע סגור.'; +$lang['logsTitle'] = 'תיעוד'; +$lang['logsDate'] = 'תאריך'; +$lang['logsTime'] = 'זמן'; +$lang['logsSearch'] = 'חיפוש'; +$lang['logsPrivateChannels'] = 'ערוצים פרטיים'; +$lang['logsPrivateMessages'] = 'הודעות פרטיות'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/hr.php b/library/ajaxchat/chat/lib/lang/hr.php new file mode 100644 index 000000000..ed0451033 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/hr.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Brbljanje'; +$lang['userName'] = 'Korisničko ime'; +$lang['password'] = 'Lozinka'; +$lang['login'] = 'Prijava'; +$lang['logout'] = 'Odjava'; +$lang['channel'] = 'Kanal'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Jezik'; +$lang['inputLineBreak'] = 'Za unos novog retka pritisnite SHIFT+ENTER'; +$lang['messageSubmit'] = 'Pošalji'; +$lang['registeredUsers'] = 'Registrirani korisnici'; +$lang['onlineUsers'] = 'Prisutni korisnici'; +$lang['toggleAutoScroll'] = 'Automatsko klizanje - uklj/isklj '; +$lang['toggleAudio'] = 'Zvuk - uklj/isklj'; +$lang['toggleHelp'] = 'Pomoć - prikaži/sakrij'; +$lang['toggleSettings'] = 'Postavke - prikaži/sakrij'; +$lang['toggleOnlineList'] = 'Popisa prisutnih - prikaži/sakrij'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citat'; +$lang['bbCodeLabelCode'] = 'Kôd'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Slika'; +$lang['bbCodeLabelColor'] = 'Boja'; +$lang['bbCodeTitleBold'] = 'Snažan tekst: [b]tekst[/b]'; +$lang['bbCodeTitleItalic'] = 'Kurziv: [i]tekst[/i]'; +$lang['bbCodeTitleUnderline'] = 'Podvučeni tekst: [u]tekst[/u]'; +$lang['bbCodeTitleQuote'] = 'Citirani tekst: [quote]tekst[/quote] ili [quote=autor]tekst[/quote]'; +$lang['bbCodeTitleCode'] = 'Prikaz kôda: [code]kôd[/code]'; +$lang['bbCodeTitleURL'] = 'Umetanje URL: [url]http://primjer.org[/url] ili [url=http://primjer.org]tekst[/url]'; +$lang['bbCodeTitleImg'] = 'Umetanje slike: [img]http://primjer.org/slika.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Boja fonta: [color=red]tekst[/color]'; +$lang['help'] = 'Pomoć'; +$lang['helpItemDescJoin'] = 'Pridruživanje kanalu:'; +$lang['helpItemCodeJoin'] = '/join kanal'; +$lang['helpItemDescJoinCreate'] = 'Izrada privatne sobe (samo za registrirane korisnike):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Pozivanje korisnika (npr. u privatnu sobu):'; +$lang['helpItemCodeInvite'] = '/invite korisnik'; +$lang['helpItemDescUninvite'] = 'Opoziv:'; +$lang['helpItemCodeUninvite'] = '/uninvite korisnik'; +$lang['helpItemDescLogout'] = 'Odjava iz brbljanja:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privatna poruka:'; +$lang['helpItemCodePrivateMessage'] = '/msg korisnik tekst'; +$lang['helpItemDescQueryOpen'] = 'Otvaranje privatnog kanala:'; +$lang['helpItemCodeQueryOpen'] = '/query korisnik'; +$lang['helpItemDescQueryClose'] = 'Zatvaranje privatnog kanala:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Aktivnost:'; +$lang['helpItemCodeAction'] = '/action tekst'; +$lang['helpItemDescDescribe'] = 'Aktivnost u privatnoj poruci:'; +$lang['helpItemCodeDescribe'] = '/describe korisnik tekst'; +$lang['helpItemDescIgnore'] = 'Ignoriranje/prihvaćanje poruka od korisnika:'; +$lang['helpItemCodeIgnore'] = '/ignore korisnik'; +$lang['helpItemDescIgnoreList'] = 'Ispisivanje ignoriranih korisnika:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Prikazivanje korisničkog kanala:'; +$lang['helpItemCodeWhereis'] = '/whereis korisnik'; +$lang['helpItemDescKick'] = 'Progon korisnika (samo za moderatore):'; +$lang['helpItemCodeKick'] = '/kick korisnik [minute]'; +$lang['helpItemDescUnban'] = 'Uklanjanje zabrane korisnika (samo za moderatore):'; +$lang['helpItemCodeUnban'] = '/unban korisnik'; +$lang['helpItemDescBans'] = 'Ispisivanje zabranjenih korisnika (samo za moderatore):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Prikazivanje IP korisnika (samo za moderatore):'; +$lang['helpItemCodeWhois'] = '/whois korisnik'; +$lang['helpItemDescWho'] = 'Ispisivanje prisutnih korisnika:'; +$lang['helpItemCodeWho'] = '/who [kanal]'; +$lang['helpItemDescList'] = 'Ispisivanje dostupnih kanala:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Bacanje kocke:'; +$lang['helpItemCodeRoll'] = '/roll [broj]d[strane]'; +$lang['helpItemDescNick'] = 'Promjena korisničkog imena:'; +$lang['helpItemCodeNick'] = '/nick korisnik'; +$lang['settings'] = 'Postavke'; +$lang['settingsBBCode'] = 'Omogući BB kôd:'; +$lang['settingsBBCodeImages'] = 'Omogući BB kôd za slike:'; +$lang['settingsBBCodeColors'] = 'Omogući BB kôd za boju fonta:'; +$lang['settingsHyperLinks'] = 'Omogući hiperveze:'; +$lang['settingsLineBreaks'] = 'Omogući nove retke:'; +$lang['settingsEmoticons'] = 'Omogući emotikone:'; +$lang['settingsAutoFocus'] = 'Automatski postavi fokus u polje unosa:'; +$lang['settingsMaxMessages'] = 'Najveći broj poruka na popisu:'; +$lang['settingsWordWrap'] = 'Omogući obmatanje dugih riječi:'; +$lang['settingsMaxWordLength'] = 'Najveća duljina riječi prije njezinog obmatanja:'; +$lang['settingsDateFormat'] = 'Oblikovanje datuma i vremena:'; +$lang['settingsPersistFontColor'] = 'Dosljedna boja fonta:'; +$lang['settingsAudioVolume'] = 'Glasnoća zvuka:'; +$lang['settingsSoundReceive'] = 'Zvuk za dolazne poruke:'; +$lang['settingsSoundSend'] = 'Zvuk za odlazne poruke:'; +$lang['settingsSoundEnter'] = 'Zvuk za prijavljivanje i poruke pristupanja kanalu:'; +$lang['settingsSoundLeave'] = 'Zvuk za odjavljivanje i poruke napuštanja kanala:'; +$lang['settingsSoundChatBot'] = 'Zvuk za poruke brbljobota:'; +$lang['settingsSoundError'] = 'Zvuk za poruke pogreške:'; +$lang['settingsBlink'] = 'Treptanje naslova prozora kod novih poruka:'; +$lang['settingsBlinkInterval'] = 'Trajanje treptanja (u milisekundama):'; +$lang['settingsBlinkIntervalNumber'] = 'Broj treptanja:'; +$lang['playSelectedSound'] = 'Pokreni odabrani zvuk'; +$lang['requiresJavaScript'] = 'Ovo brbljanje zahtjeva JavaScript.'; +$lang['errorInvalidUser'] = 'Nepravilno korisničko ime.'; +$lang['errorUserInUse'] = 'Korisničko ime već je u upotrebi.'; +$lang['errorBanned'] = 'Korisnik ili IP je zabranjen.'; +$lang['errorMaxUsersLoggedIn'] = 'Brbljaonica je dostigla najveći dopušteni broj prijavljenih korisnika.'; +$lang['errorChatClosed'] = 'Brbljaonica je trenutno zatvorena.'; +$lang['logsTitle'] = 'AJAX Brbljanje - Zapisnici'; +$lang['logsDate'] = 'Datum'; +$lang['logsTime'] = 'Vrijeme'; +$lang['logsSearch'] = 'Traži'; +$lang['logsPrivateChannels'] = 'Privatni kanali'; +$lang['logsPrivateMessages'] = 'Privatne poruke'; +?> diff --git a/library/ajaxchat/chat/lib/lang/hu.php b/library/ajaxchat/chat/lib/lang/hu.php new file mode 100644 index 000000000..5f2174134 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/hu.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Felhasználónév'; +$lang['password'] = 'Jelszó'; +$lang['login'] = 'Belépés'; +$lang['logout'] = 'Kilépés'; +$lang['channel'] = 'Szoba'; +$lang['style'] = 'Stílus'; +$lang['language'] = 'Nyelv'; +$lang['inputLineBreak'] = 'Üsse le a SHIFT+ENTER billentyűket sortöréshez'; +$lang['messageSubmit'] = 'Küldés'; +$lang['registeredUsers'] = 'Regisztrált felhasználók'; +$lang['onlineUsers'] = 'Jelenlévők'; +$lang['toggleAutoScroll'] = 'Automatikus görgetés be/ki'; +$lang['toggleAudio'] = 'Hang be/ki'; +$lang['toggleHelp'] = 'Segítség mutatása/elrejtése'; +$lang['toggleSettings'] = 'Beállítások mutatása/elrejtése'; +$lang['toggleOnlineList'] = 'Jelenlévők mutatása/elrejtése'; +$lang['bbCodeLabelBold'] = 'B'; +$lang['bbCodeLabelItalic'] = 'I'; +$lang['bbCodeLabelUnderline'] = 'U'; +$lang['bbCodeLabelQuote'] = 'Idézet'; +$lang['bbCodeLabelCode'] = 'Kód'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Kép'; +$lang['bbCodeLabelColor'] = 'Szöveg szín'; +$lang['bbCodeTitleBold'] = 'Félkövér szöveg: [b]szöveg[/b]'; +$lang['bbCodeTitleItalic'] = 'Dőlt szöveg: [i]szöveg[/i]'; +$lang['bbCodeTitleUnderline'] = 'Aláhúzott szöveg: [u]szöveg[/u]'; +$lang['bbCodeTitleQuote'] = 'Idézett szöveg: [quote]szöveg[/quote] vagy [quote=szerző]szöveg[/quote]'; +$lang['bbCodeTitleCode'] = 'Kód: [code]kód[/code]'; +$lang['bbCodeTitleURL'] = 'URL beszúrása: [url]http://example.org[/url] vagy [url=http://example.org]szöveg[/url]'; +$lang['bbCodeTitleImg'] = 'Kép beszúrása: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Szöveg szín: [color=red]szöveg[/color]'; +$lang['help'] = 'Segítség'; +$lang['helpItemDescJoin'] = 'Belépés a szobába:'; +$lang['helpItemCodeJoin'] = '/join Szobanév'; +$lang['helpItemDescJoinCreate'] = 'Privát szoba létrehozása (Csak regisztráltaknak):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Meghívás (pl. privát szobába):'; +$lang['helpItemCodeInvite'] = '/invite Nick'; +$lang['helpItemDescUninvite'] = 'Meghívás megszüntetése:'; +$lang['helpItemCodeUninvite'] = '/uninvite Nick'; +$lang['helpItemDescLogout'] = 'Kilépés a chatből:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privát üzenet:'; +$lang['helpItemCodePrivateMessage'] = '/msg Nick szöveg'; +$lang['helpItemDescQueryOpen'] = 'Privát szoba létrehozása:'; +$lang['helpItemCodeQueryOpen'] = '/query Nick'; +$lang['helpItemDescQueryClose'] = 'Privát szoba beázárása:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Akció írása (E/3 személyű beszéd):'; +$lang['helpItemCodeAction'] = '/action szöveg'; +$lang['helpItemDescDescribe'] = 'Akció privát beszélgetésben:'; +$lang['helpItemCodeDescribe'] = '/describe Nick szöveg'; +$lang['helpItemDescIgnore'] = 'Felhasználó figyelembe vétele/figyelmen kívül hagyása:'; +$lang['helpItemCodeIgnore'] = '/ignore Nick'; +$lang['helpItemDescIgnoreList'] = 'Figyelmen kívül hagyottak listája:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'A felhasználó mely szobákban tartózkodik:'; +$lang['helpItemCodeWhereis'] = '/whereis Nick'; +$lang['helpItemDescKick'] = 'Felhasználó kirúgása (Csak moderátorok):'; +$lang['helpItemCodeKick'] = '/kick Nick [kitiltás percekben]'; +$lang['helpItemDescUnban'] = 'Tiltás feloldása (Csak moderátorok):'; +$lang['helpItemCodeUnban'] = '/unban Nick'; +$lang['helpItemDescBans'] = 'Kitiltottak listája (Csak moderátorok):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Felhasználó IP címének mutatása (Csak moderátorok):'; +$lang['helpItemCodeWhois'] = '/whois Nick'; +$lang['helpItemDescWho'] = 'Jelenlévők listázása:'; +$lang['helpItemCodeWho'] = '/who [Szobanév]'; +$lang['helpItemDescList'] = 'Szobák listázása:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Dobókocka dobás:'; +$lang['helpItemCodeRoll'] = '/roll [szám]d[oldalak]'; +$lang['helpItemDescNick'] = 'Nick cseréje:'; +$lang['helpItemCodeNick'] = '/nick Nick'; +$lang['settings'] = 'Beállítások'; +$lang['settingsBBCode'] = 'BBCode engedélyezése:'; +$lang['settingsBBCodeImages'] = 'Kép BBCode engedélyezése:'; +$lang['settingsBBCodeColors'] = 'Szöveg szín BBCode engedélyezése:'; +$lang['settingsHyperLinks'] = 'Linkek engedélyezése:'; +$lang['settingsLineBreaks'] = 'Sortörések engedélyezése:'; +$lang['settingsEmoticons'] = 'Emotikonok engedélyezése:'; +$lang['settingsAutoFocus'] = 'Automatikusan a beviteli mezőn legyen a fókusz:'; +$lang['settingsMaxMessages'] = 'Maximálisan látható üzenetek száma:'; +$lang['settingsWordWrap'] = 'Hosszú szavak tördelése:'; +$lang['settingsMaxWordLength'] = 'Maximális karakterszám egy szó tördelése előtt:'; +$lang['settingsDateFormat'] = 'Dátum és idő kijelzésének formátuma:'; +$lang['settingsPersistFontColor'] = 'Folyamatos betűszín használata:'; +$lang['settingsAudioVolume'] = 'Hangerő:'; +$lang['settingsSoundReceive'] = 'Bejövő üzenetek hangja:'; +$lang['settingsSoundSend'] = 'Kimenő üzenetek hangja:'; +$lang['settingsSoundEnter'] = 'Belépés szobaüzenetek hangja:'; +$lang['settingsSoundLeave'] = 'Kilépés szobaüzenetek hangja:'; +$lang['settingsSoundChatBot'] = 'ChatBot üzenetek hangja:'; +$lang['settingsSoundError'] = 'Hibaüzenetek hangja:'; +$lang['settingsBlink'] = 'Ablak fejléce villogjon új üzenet esetén:'; +$lang['settingsBlinkInterval'] = 'A villogás intervallumának hossza századmásodpercekben:'; +$lang['settingsBlinkIntervalNumber'] = 'Villogási intervallumok száma:'; +$lang['playSelectedSound'] = 'Kiválasztott hang lejátszása'; +$lang['requiresJavaScript'] = 'A JavaScript bekapcsolása szükséges a chat használatához.'; +$lang['errorInvalidUser'] = 'Hamis Nick.'; +$lang['errorUserInUse'] = 'A nick már használatban van.'; +$lang['errorBanned'] = 'Ez a felhasználó vagy IP ki van tiltva.'; +$lang['errorMaxUsersLoggedIn'] = 'A chatelők száma elérte a megengedett maximumot.'; +$lang['errorChatClosed'] = 'A chat jelenleg nem üzemel.'; +$lang['logsTitle'] = 'AJAX Chat - Logok'; +$lang['logsDate'] = 'Dátum'; +$lang['logsTime'] = 'Idő'; +$lang['logsSearch'] = 'Keresés'; +$lang['logsPrivateChannels'] = 'Privát szobák'; +$lang['logsPrivateMessages'] = 'Privát üzenetek'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/in.php b/library/ajaxchat/chat/lib/lang/in.php new file mode 100644 index 000000000..175cc904b --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/in.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Nama'; +$lang['password'] = 'Password'; +$lang['login'] = 'Masuk'; +$lang['logout'] = 'Keluar'; +$lang['channel'] = 'Channel'; +$lang['style'] = 'Model'; +$lang['language'] = 'Bahasa'; +$lang['inputLineBreak'] = 'Tekan SHIFT+ENTER untuk berpindah baris'; +$lang['messageSubmit'] = 'Tampilkan'; +$lang['registeredUsers'] = 'Pemakai Terdaftar'; +$lang['onlineUsers'] = 'Pemakai Online'; +$lang['toggleAutoScroll'] = 'Scroll Otomatis on/off'; +$lang['toggleAudio'] = 'Suara on/off'; +$lang['toggleHelp'] = 'Tampilkan/Sembunyikan help'; +$lang['toggleSettings'] = 'Tampilkan/Sembunyikan settings'; +$lang['toggleOnlineList'] = 'Tampilkan/Sembunyikan daftar online'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Salin'; +$lang['bbCodeLabelCode'] = 'Kode'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Gambar'; +$lang['bbCodeLabelColor'] = 'Warna Huruf'; +$lang['bbCodeTitleBold'] = 'Huruf Tebal: [b]kata[/b]'; +$lang['bbCodeTitleItalic'] = 'Huruf Miring: [i]kata[/i]'; +$lang['bbCodeTitleUnderline'] = 'Garis Bawah: [u]kata[/u]'; +$lang['bbCodeTitleQuote'] = 'Kata Saduran: [quote]kata[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Code display: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Sisip URL: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Sisip gambar: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Warna Huruf: [color=red]text[/color]'; +$lang['help'] = 'Help'; +$lang['helpItemDescJoin'] = 'Gabung Channel:'; +$lang['helpItemCodeJoin'] = '/join NamaChannel'; +$lang['helpItemDescJoinCreate'] = 'Buat ruang privasi (Hanya untuk pengguna terdaftar):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Mengundang Seseorang (mis: ke ruang privasi):'; +$lang['helpItemCodeInvite'] = '/invite NamaPengguna'; +$lang['helpItemDescUninvite'] = 'Batalkan Undangan:'; +$lang['helpItemCodeUninvite'] = '/uninvite NamaPengguna'; +$lang['helpItemDescLogout'] = 'Keluar dari Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Pesan Pribadi:'; +$lang['helpItemCodePrivateMessage'] = '/msg NamaPengguna Teks'; +$lang['helpItemDescQueryOpen'] = 'Membuka Channel Privasi:'; +$lang['helpItemCodeQueryOpen'] = '/query NamaPengguna'; +$lang['helpItemDescQueryClose'] = 'Menutup Channel Privasi:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Menjelaskan Tindakan:'; +$lang['helpItemCodeAction'] = '/action Teks'; +$lang['helpItemDescDescribe'] = 'Menjelaskan Tindakan pada pesan pribadi:'; +$lang['helpItemCodeDescribe'] = '/describe NamaPengguna Teks'; +$lang['helpItemDescIgnore'] = 'Mengacuhkan/Menerima Pesan Dari Pengguna Lain:'; +$lang['helpItemCodeIgnore'] = '/ignore NamaPengguna'; +$lang['helpItemDescIgnoreList'] = 'Tampilkan Daftar Pengguna yang Diacuhkan:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Tampilkan Pengguna di Channel:'; +$lang['helpItemCodeWhereis'] = '/whereis NamaPengguna'; +$lang['helpItemDescKick'] = 'Menendang Pengguna (Hanya Untuk Moderator):'; +$lang['helpItemCodeKick'] = '/kick NamaPengguna [Jumlah Menit Hukuman]'; +$lang['helpItemDescUnban'] = 'Membatalkan Blok Pengguna (Hanya Untuk Moderator):'; +$lang['helpItemCodeUnban'] = '/unban NamaPengguna'; +$lang['helpItemDescBans'] = 'Tampilkan Daftar Pengguna yang diblok (Hanya Untuk Moderator):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Tampilkan IP Pengguna (Hanya Untuk Moderator):'; +$lang['helpItemCodeWhois'] = '/whois NamaPengguna'; +$lang['helpItemDescWho'] = 'Tampilkan Daftar Pengguna di Channel:'; +$lang['helpItemCodeWho'] = '/who [NamaChannel]'; +$lang['helpItemDescList'] = 'Tampilkan Daftar Channel Yang Tersedia:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Lempar Dadu:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'Mengganti Nama:'; +$lang['helpItemCodeNick'] = '/nick Nama'; +$lang['settings'] = 'Pengaturan'; +$lang['settingsBBCode'] = 'Membolehkan BBCode:'; +$lang['settingsBBCodeImages'] = 'Membolehkan gambar BBCode:'; +$lang['settingsBBCodeColors'] = 'Membolehkan warna huruf BBCode:'; +$lang['settingsHyperLinks'] = 'Membolehkan hyperlinks:'; +$lang['settingsLineBreaks'] = 'Membolehkan line breaks:'; +$lang['settingsEmoticons'] = 'Membolehkan emoticons:'; +$lang['settingsAutoFocus'] = 'Mengatur fokus secara otomatis ke kotak input:'; +$lang['settingsMaxMessages'] = 'Jumlah Pesan Maksimum pada daftar Chat:'; +$lang['settingsWordWrap'] = 'Membolehkan memecah suku kata yang panjang:'; +$lang['settingsMaxWordLength'] = 'Panjang maksimum sebuah kata sebelum dipecah:'; +$lang['settingsDateFormat'] = 'Format dari tampilan tanggal dan waktu:'; +$lang['settingsPersistFontColor'] = 'Mempertahankan Warna Huruf:'; +$lang['settingsAudioVolume'] = 'Volume Suara:'; +$lang['settingsSoundReceive'] = 'Suara pada saat pesan masuk:'; +$lang['settingsSoundSend'] = 'Suara pada saat pesan keluar:'; +$lang['settingsSoundEnter'] = 'Suara pada saat masuk channel:'; +$lang['settingsSoundLeave'] = 'Suara pada saat keluar Channel:'; +$lang['settingsSoundChatBot'] = 'Suara pada saat ChatBot:'; +$lang['settingsSoundError'] = 'Suara pada saat terdapat kesalahan:'; +$lang['settingsBlink'] = 'Kedipkan Judul Jendela pada saat ada pesan baru:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Jumlah interval kedipan:'; +$lang['playSelectedSound'] = 'Mainkan suara yang dipilih'; +$lang['requiresJavaScript'] = 'JavaScript diperlukan untuk Chat ini.'; +$lang['errorInvalidUser'] = 'Nama Salah.'; +$lang['errorUserInUse'] = 'Nama sudah ada yang pakai.'; +$lang['errorBanned'] = 'Pengguna atau IP diblok.'; +$lang['errorMaxUsersLoggedIn'] = 'Saluran Chat telah mencapai jumlah maksimum pengguna.'; +$lang['errorChatClosed'] = 'Saluran Chat ditutup sementara.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Tanggal'; +$lang['logsTime'] = 'Waktu'; +$lang['logsSearch'] = 'Cari'; +$lang['logsPrivateChannels'] = 'Saluran-saluran privasi'; +$lang['logsPrivateMessages'] = 'Pesan Pribadi'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/it.php b/library/ajaxchat/chat/lib/lang/it.php new file mode 100644 index 000000000..abcd4f9db --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/it.php @@ -0,0 +1,125 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author s8s8 + * @author Massimiliano Tiraboschi + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Nome'; +$lang['password'] = 'Password'; +$lang['login'] = 'Login'; +$lang['logout'] = 'Uscita'; +$lang['channel'] = 'Canale'; +$lang['style'] = 'Stile'; +$lang['language'] = 'Lingua'; +$lang['inputLineBreak'] = 'Premi SHIFT+ENTER per inserire una linea vuota'; +$lang['messageSubmit'] = 'Invia'; +$lang['registeredUsers'] = 'Utente registrato'; +$lang['onlineUsers'] = 'Utenti Online'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Suono on/off'; +$lang['toggleHelp'] = 'Mostra/Nascondi aiuto'; +$lang['toggleSettings'] = 'Mostra/Nascondi preferenze'; +$lang['toggleOnlineList'] = 'Mostra/Nascondi lista utenti online'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Cita'; +$lang['bbCodeLabelCode'] = 'Codice'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Colore Testo'; +$lang['bbCodeTitleBold'] = 'Grassetto: [b]testo[/b]'; +$lang['bbCodeTitleItalic'] = 'Corsivo: [i]testo[/i]'; +$lang['bbCodeTitleUnderline'] = 'Sottolineato: [u]testo[/u]'; +$lang['bbCodeTitleQuote'] = 'Cita: [quote]testo[/quote] oppure [quote=autore]testo[/quote]'; +$lang['bbCodeTitleCode'] = 'Mostra Codice: [code]codice[/code]'; +$lang['bbCodeTitleURL'] = 'Inserire URL: [url]http://example.org/[/url] oppure [url=http://example.org/]testo[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Colore Testo: [color=red]testo[/color]'; +$lang['help'] = 'Aiuto'; +$lang['helpItemDescJoin'] = 'Entra nel canale:'; +$lang['helpItemCodeJoin'] = '/join NomeCanale'; +$lang['helpItemDescJoinCreate'] = 'Crea un canale privato (Solo utenti registrati):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Invita qualcuno (e.g. in un canale privato):'; +$lang['helpItemCodeInvite'] = '/invite Username'; +$lang['helpItemDescUninvite'] = 'Rimuovi invito:'; +$lang['helpItemCodeUninvite'] = '/uninvite Username'; +$lang['helpItemDescLogout'] = 'Esce dalla Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Messaggio privato:'; +$lang['helpItemCodePrivateMessage'] = '/msg NomeUtente Testo'; +$lang['helpItemDescQueryOpen'] = 'Apre un canale privato:'; +$lang['helpItemCodeQueryOpen'] = '/query NomeUtente'; +$lang['helpItemDescQueryClose'] = 'Chiude un canale privato:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Descrive azione:'; +$lang['helpItemCodeAction'] = '/action Testo'; +$lang['helpItemDescDescribe'] = 'Descrive azioni in messaggi privati:'; +$lang['helpItemCodeDescribe'] = '/describe NomeUtente Testo'; +$lang['helpItemDescIgnore'] = 'Ignora/accetta messaggi di un Utente:'; +$lang['helpItemCodeIgnore'] = '/ignore NomeUtente'; +$lang['helpItemDescIgnoreList'] = 'Elenca la lista degli ignorati:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Fa uscire un Utente (Solo Moderatore):'; +$lang['helpItemCodeKick'] = '/kick NomeUtente [Minuti bannato]'; +$lang['helpItemDescUnban'] = 'Toglie il Ban a un Utente (Solo Moderatore):'; +$lang['helpItemCodeUnban'] = '/unban NomeUtente'; +$lang['helpItemDescBans'] = 'Lista Utenti Bannati (Solo Moderatore):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Mostra IP Utente (Solo Moderatore):'; +$lang['helpItemCodeWhois'] = '/whois NomeUtente'; +$lang['helpItemDescWho'] = 'Lista Utenti in linea:'; +$lang['helpItemCodeWho'] = '/who [NomeCanale]'; +$lang['helpItemDescList'] = 'Lista canali disponibili:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Lancia i dadi:'; +$lang['helpItemCodeRoll'] = '/roll [quantita]d[faccie]'; +$lang['helpItemDescNick'] = 'Cambia username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Preferenze'; +$lang['settingsBBCode'] = 'Attiva BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Attiva hyperlinks:'; +$lang['settingsLineBreaks'] = 'Attiva linee bianche:'; +$lang['settingsEmoticons'] = 'Attiva emoticons:'; +$lang['settingsAutoFocus'] = 'Focus messaggio automatico:'; +$lang['settingsMaxMessages'] = 'Max messaggi in chat:'; +$lang['settingsWordWrap'] = 'Attiva taglio parole lunghe:'; +$lang['settingsMaxWordLength'] = 'Lunghezza massima parole:'; +$lang['settingsDateFormat'] = 'Formato data ed ora:'; +$lang['settingsPersistFontColor'] = 'Colore font persistente:'; +$lang['settingsAudioVolume'] = 'Volume suono:'; +$lang['settingsSoundReceive'] = 'Suono messaggi entranti:'; +$lang['settingsSoundSend'] = 'Suono messaggi uscenti:'; +$lang['settingsSoundEnter'] = 'Suono per login:'; +$lang['settingsSoundLeave'] = 'Suono per uscita:'; +$lang['settingsSoundChatBot'] = 'Suono per messaggi robot:'; +$lang['settingsSoundError'] = 'Suono per messaggi errore:'; +$lang['settingsBlink'] = 'Lampeggio nuovi messaggi:'; +$lang['settingsBlinkInterval'] = 'Intervallo lampeggio:'; +$lang['settingsBlinkIntervalNumber'] = 'Numero massimo lampeggi:'; +$lang['playSelectedSound'] = 'Esegui suono selezionato'; +$lang['requiresJavaScript'] = 'Serve il JavaScript per questa Chat.'; +$lang['errorInvalidUser'] = 'Nome utente non valido.'; +$lang['errorUserInUse'] = 'Nome utente in uso.'; +$lang['errorBanned'] = 'Utente o IP bannato.'; +$lang['errorMaxUsersLoggedIn'] = 'La chat ha raggiunto il massimo numero di utenti connessi.'; +$lang['errorChatClosed'] = 'La chat è chiusa in questo momento.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Data'; +$lang['logsTime'] = 'Ora'; +$lang['logsSearch'] = 'Cerca'; +$lang['logsPrivateChannels'] = 'Canali Privati'; +$lang['logsPrivateMessages'] = 'Messaggi privati'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ja.php b/library/ajaxchat/chat/lib/lang/ja.php new file mode 100644 index 000000000..075fc4fcb --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ja.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'ユーザー名'; +$lang['password'] = 'パスワード'; +$lang['login'] = 'ログイン'; +$lang['logout'] = 'ログアウト'; +$lang['channel'] = 'チャンネル'; +$lang['style'] = 'スタイル'; +$lang['language'] = '言語'; +$lang['inputLineBreak'] = 'SHIFT+ENTER で改行できます'; +$lang['messageSubmit'] = '送信'; +$lang['registeredUsers'] = '登録ユーザー'; +$lang['onlineUsers'] = 'オンラインユーザー'; +$lang['toggleAutoScroll'] = '自動スクロール on/off'; +$lang['toggleAudio'] = 'サウンド on/off'; +$lang['toggleHelp'] = 'ヘルプ 表示/非表示'; +$lang['toggleSettings'] = '環境設定 表示/非表示'; +$lang['toggleOnlineList'] = 'オンラインリスト 表示/非表示'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Quote'; +$lang['bbCodeLabelCode'] = 'Code'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'フォントカラー'; +$lang['bbCodeTitleBold'] = 'ボールド(太字): [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'イタリック(斜体): [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'アンダーライン: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = '引用: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'コード表示: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'URLリンク: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = '画像: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'フォントカラー: [color=red]text[/color]'; +$lang['help'] = 'ヘルプ'; +$lang['helpItemDescJoin'] = 'チャンネルの変更 :'; +$lang['helpItemCodeJoin'] = '/join チャンネル名'; +$lang['helpItemDescJoinCreate'] = 'プライベートルームへ移動 (登録ユーザーのみ可) :'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'チャンネルへ招待 :'; +$lang['helpItemCodeInvite'] = '/invite ユーザー名'; +$lang['helpItemDescUninvite'] = '招待の取り消し :'; +$lang['helpItemCodeUninvite'] = '/uninvite ユーザー名'; +$lang['helpItemDescLogout'] = 'ログアウト :'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'プライベートメッセージ :'; +$lang['helpItemCodePrivateMessage'] = '/msg ユーザー名'; +$lang['helpItemDescQueryOpen'] = '二人きりモードの開始 :'; +$lang['helpItemCodeQueryOpen'] = '/query ユーザー名'; +$lang['helpItemDescQueryClose'] = '二人きりモードの終了 :'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = '感情を表現する :'; +$lang['helpItemCodeAction'] = '/action スマイリーなど'; +$lang['helpItemDescDescribe'] = '感情を表現する (プライベートメッセージ) :'; +$lang['helpItemCodeDescribe'] = '/describe ユーザー名 スマイリーなど'; +$lang['helpItemDescIgnore'] = 'ユーザーを 無視する/無視しない :'; +$lang['helpItemCodeIgnore'] = '/ignore ユーザー名'; +$lang['helpItemDescIgnoreList'] = '無視ユーザーリスト :'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'ユーザーの居場所 :'; +$lang['helpItemCodeWhereis'] = '/whereis ユーザー名'; +$lang['helpItemDescKick'] = 'ユーザーをキックする (モデレータのみ可) :'; +$lang['helpItemCodeKick'] = '/kick ユーザー名 [アクセス禁止時間(分)]'; +$lang['helpItemDescUnban'] = 'アクセス禁止の解除 (モデレータのみ可) :'; +$lang['helpItemCodeUnban'] = '/unban ユーザー名'; +$lang['helpItemDescBans'] = 'アクセス禁止ユーザーリスト (モデレータのみ可) :'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'ユーザーのIPアドレス (モデレータのみ可) :'; +$lang['helpItemCodeWhois'] = '/whois ユーザー名'; +$lang['helpItemDescWho'] = 'オンラインユーザーリスト :'; +$lang['helpItemCodeWho'] = '/who [チャンネル名]'; +$lang['helpItemDescList'] = '入室可能なチャンネルのリスト :'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'サイコロを振る :'; +$lang['helpItemCodeRoll'] = '/roll [サイコロを振る回数]d[サイコロの面の数]'; +$lang['helpItemDescNick'] = 'ユーザー名の変更 :'; +$lang['helpItemCodeNick'] = '/nick ユーザー名'; +$lang['settings'] = '環境設定'; +$lang['settingsBBCode'] = 'BBCode を有効にする:'; +$lang['settingsBBCodeImages'] = 'BBCode [image] を有効にする :'; +$lang['settingsBBCodeColors'] = 'BBCode [color] を有効にする :'; +$lang['settingsHyperLinks'] = 'ハイパーリンクを有効にする :'; +$lang['settingsLineBreaks'] = '改行を有効にする :'; +$lang['settingsEmoticons'] = 'スマイリーを有効にする :'; +$lang['settingsAutoFocus'] = '自動的にフォーカスをインプットフィールドにセットする :'; +$lang['settingsMaxMessages'] = 'チャットメッセージの最大数 :'; +$lang['settingsWordWrap'] = '長い英数字の折り返しを有効にする :'; +$lang['settingsMaxWordLength'] = '折り返しされない英数字の最大字数 :'; +$lang['settingsDateFormat'] = '日付と表示時間のフォーマット :'; +$lang['settingsPersistFontColor'] = 'フォントカラーを保持する :'; +$lang['settingsAudioVolume'] = 'サウンドのボリューム :'; +$lang['settingsSoundReceive'] = 'サウンド - メッセージの到着 :'; +$lang['settingsSoundSend'] = 'サウンド - メッセージの送信 :'; +$lang['settingsSoundEnter'] = 'サウンド - ログイン、チャンネル入室 :'; +$lang['settingsSoundLeave'] = 'サウンド - ログアウト、チャンネル退室 :'; +$lang['settingsSoundChatBot'] = 'サウンド - チャットボットメッセージ :'; +$lang['settingsSoundError'] = 'サウンド - エラーメッセージ :'; +$lang['settingsBlink'] = '新着メッセージの到着時にウィンドウタイトルを点滅させる :'; +$lang['settingsBlinkInterval'] = '点滅の間隔(ミリ秒) :'; +$lang['settingsBlinkIntervalNumber'] = '点滅の回数 :'; +$lang['playSelectedSound'] = 'サウンドの再生'; +$lang['requiresJavaScript'] = 'このチャットシステムを利用するには JavaScript を有効にする必要があります'; +$lang['errorInvalidUser'] = 'ユーザー名が正しくありません'; +$lang['errorUserInUse'] = 'そのユーザー名は既に使われています'; +$lang['errorBanned'] = 'ユーザー名またはIPアドレスがアクセス禁止されています'; +$lang['errorMaxUsersLoggedIn'] = 'ログインユーザーの最大数に達しているため、これ以上チャットに参加することはできません'; +$lang['errorChatClosed'] = '現在、チャットは停止中です'; +$lang['logsTitle'] = 'AJAX Chat - ログ'; +$lang['logsDate'] = '日時'; +$lang['logsTime'] = '時間'; +$lang['logsSearch'] = '検索'; +$lang['logsPrivateChannels'] = '二人きりモード'; +$lang['logsPrivateMessages'] = 'プライベートメッセージ'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ka.php b/library/ajaxchat/chat/lib/lang/ka.php new file mode 100644 index 000000000..d92d50886 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ka.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'მეტსახელი'; +$lang['password'] = 'პაროლი'; +$lang['login'] = 'შესვლა'; +$lang['logout'] = 'გასვლა'; +$lang['channel'] = 'არხი'; +$lang['style'] = 'სტილი'; +$lang['language'] = 'ენა'; +$lang['inputLineBreak'] = 'ახალი სტრიქონისთვის დააჭირეთ SHIFT+ENTER'; +$lang['messageSubmit'] = 'დამატება'; +$lang['registeredUsers'] = 'მხოლოდ დარეგისტრირებული წევრები'; +$lang['onlineUsers'] = 'ხაზზე მყოფთა სია'; +$lang['toggleAutoScroll'] = 'ავტოჩამოწევა კი/არა'; +$lang['toggleAudio'] = 'ხმები კი/არა'; +$lang['toggleHelp'] = 'დახმარების ჩვენება/დამალვა'; +$lang['toggleSettings'] = 'პარამეტრების ჩვენება/დამალვა'; +$lang['toggleOnlineList'] = 'ხაზზე მყოფტა სიის ჩვენება/დამალვა'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'ციტატა'; +$lang['bbCodeLabelCode'] = 'კოდი'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'სურათი'; +$lang['bbCodeLabelColor'] = 'შრიფტის ფერი'; +$lang['bbCodeTitleBold'] = 'მსხვილი ტექსტი: [b]ტექსტი[/b]'; +$lang['bbCodeTitleItalic'] = 'დახრილი ტექსტი: [i]ტექსტი[/i]'; +$lang['bbCodeTitleUnderline'] = 'ხაზგასმული ტექსტი: [u]ტექსტი[/u]'; +$lang['bbCodeTitleQuote'] = 'ციტატის ტექსტი: [quote]ტექსტი[/quote] ან [quote=ავტორი]ტექსტი[/quote]'; +$lang['bbCodeTitleCode'] = 'კოდის ჩვენება: [code]კოდი[/code]'; +$lang['bbCodeTitleURL'] = 'URL ბმულის ჩასმა: [url]http://example.org[/url] ან [url=http://example.org]ტექსტი[/url]'; +$lang['bbCodeTitleImg'] = 'ნახატის ჩასმა: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'შრიფტის ფერი: [color=red]ტექსტი[/color]'; +$lang['help'] = 'დახმარება'; +$lang['helpItemDescJoin'] = 'შეუერთდი არხს:'; +$lang['helpItemCodeJoin'] = '/join არხის_სახელი'; +$lang['helpItemDescJoinCreate'] = 'პირადი ოთახის შექმნა (მხოლოდ დარეგისტრირებული წევრები):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'მეგობრის დაპატიჟება (მაგ. პირად ოთახში):'; +$lang['helpItemCodeInvite'] = '/invite მეტსახელი'; +$lang['helpItemDescUninvite'] = 'დაპატიჟების გაუქმება:'; +$lang['helpItemCodeUninvite'] = '/uninvite მეტსახელი'; +$lang['helpItemDescLogout'] = 'ჩატიდან გასვლა:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'პირადი გზავნილი:'; +$lang['helpItemCodePrivateMessage'] = '/msg მეტსახელი ტექსტი'; +$lang['helpItemDescQueryOpen'] = 'გახსენი პირადი არხი:'; +$lang['helpItemCodeQueryOpen'] = '/query მეტსახელი'; +$lang['helpItemDescQueryClose'] = 'დახურე პირადი არხი:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'აღწერე ქმედება:'; +$lang['helpItemCodeAction'] = '/action ტექსტი'; +$lang['helpItemDescDescribe'] = 'აღწერე ქმედება პირად გზავნილში:'; +$lang['helpItemCodeDescribe'] = '/describe მეტსახელი ტექსტი'; +$lang['helpItemDescIgnore'] = 'მიიღე/გააიგნორირე გზავნილები წევრისგან:'; +$lang['helpItemCodeIgnore'] = '/ignore მეტსახელი'; +$lang['helpItemDescIgnoreList'] = 'ჩამოწერე გაიგნორირებული წევრების სია:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'მაჩვენე წევრის არხი:'; +$lang['helpItemCodeWhereis'] = '/whereis მეტსახელი'; +$lang['helpItemDescKick'] = 'ამოარტყი წევრს (მხოლოდ მოდერები):'; +$lang['helpItemCodeKick'] = '/kick მეტსახელი [დაბლოკვის დრო]'; +$lang['helpItemDescUnban'] = 'წევრის ბლოკის მოხსნა (მხოლოდ მოდერები):'; +$lang['helpItemCodeUnban'] = '/unban მეტსახელი'; +$lang['helpItemDescBans'] = 'ჩამოწერე დაბლოკილი წევრების სია (მხოლოდ მოდერები):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'მაჩვენე წევრის IP (მხოლოდ მოდერები):'; +$lang['helpItemCodeWhois'] = '/whois მეტსახელი'; +$lang['helpItemDescWho'] = 'ჩამოწერე ხაზზე მყოფთა სია:'; +$lang['helpItemCodeWho'] = '/who [არხის_სახელი]'; +$lang['helpItemDescList'] = 'ჩამოწერე ხელმისაწვდომი არხები:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'კამათლების გაგორება:'; +$lang['helpItemCodeRoll'] = '/roll [რიცხვი]d[გვერდი]'; +$lang['helpItemDescNick'] = 'მეტსახელის შეცვლა:'; +$lang['helpItemCodeNick'] = '/nick მეტსახელი'; +$lang['settings'] = 'პარამეტრები'; +$lang['settingsBBCode'] = 'ჩართე BBCode:'; +$lang['settingsBBCodeImages'] = 'ჩართე ნახატის BBCode:'; +$lang['settingsBBCodeColors'] = 'ჩართე შრიფტის ფერის BBCode:'; +$lang['settingsHyperLinks'] = 'ჩართე URL ბმულები:'; +$lang['settingsLineBreaks'] = 'ჩართე ახალი სტრიქონის გამოყენება:'; +$lang['settingsEmoticons'] = 'ჩართე სიცილაკები:'; +$lang['settingsAutoFocus'] = 'ტექსტის შეყვანის ველის ავტომატიური ფოკუსირება:'; +$lang['settingsMaxMessages'] = 'ჩატში მყოფი გზავნილების მაქსიმალური რიცხვი:'; +$lang['settingsWordWrap'] = 'გრძელი სიტყვების გადატანა:'; +$lang['settingsMaxWordLength'] = 'სიტყვის მაქსიმალური სიგრძე, სანამ ახალ სტრიქონზე გადავა:'; +$lang['settingsDateFormat'] = 'თარიღისა და დროის ჩვენების ფორმატი:'; +$lang['settingsPersistFontColor'] = 'შრიფტის ფერის შენახვა:'; +$lang['settingsAudioVolume'] = 'ხმის სიმაღლე:'; +$lang['settingsSoundReceive'] = 'შემავალი გზავნილის ხმა:'; +$lang['settingsSoundSend'] = 'გამავალი გზავნილის ხმა:'; +$lang['settingsSoundEnter'] = 'ავტორიზაციისა და არხში შესვლის ხმა:'; +$lang['settingsSoundLeave'] = 'გასვლის და არხის მიტოვების ხმა:'; +$lang['settingsSoundChatBot'] = 'ჩატბოტის გზავნილების ხმა:'; +$lang['settingsSoundError'] = 'შედომის გზავნილების ხმა:'; +$lang['settingsBlink'] = 'ახალ გზავნილზე ფანჯრის დასახელების ციმციმი:'; +$lang['settingsBlinkInterval'] = 'ციმციმის ინტერვალი მილიწამებში:'; +$lang['settingsBlinkIntervalNumber'] = 'ციმციმის ინტერვალების რაოდენობა:'; +$lang['playSelectedSound'] = 'ითამაშე არჩეული ხმა'; +$lang['requiresJavaScript'] = 'ამ ჩატისთვის საჭიროა JavaScript.'; +$lang['errorInvalidUser'] = 'არასწორი მეტსახელი.'; +$lang['errorUserInUse'] = 'მეტსახელი დაკავებულია.'; +$lang['errorBanned'] = 'წევრი ან IP დაბლოკილია.'; +$lang['errorMaxUsersLoggedIn'] = 'ჩატში იმყოფება წევრთა მაქსიმალური შესაძლებელი რიცხვი.'; +$lang['errorChatClosed'] = 'ჩატი ამ წუთისთვის დახურულია.'; +$lang['logsTitle'] = 'AJAX Chat - ჟურნალი'; +$lang['logsDate'] = 'თარიღი'; +$lang['logsTime'] = 'დრო'; +$lang['logsSearch'] = 'ძიება'; +$lang['logsPrivateChannels'] = 'პირადი არხები'; +$lang['logsPrivateMessages'] = 'პირადი გზავნილები'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/kr.php b/library/ajaxchat/chat/lib/lang/kr.php new file mode 100644 index 000000000..687dd6e30 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/kr.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = '대화명'; +$lang['password'] = '비밀번호'; +$lang['login'] = '로그인'; +$lang['logout'] = '로그아웃'; +$lang['channel'] = '채널'; +$lang['style'] = '스타일'; +$lang['language'] = '언어'; +$lang['inputLineBreak'] = '새 줄을 입력하려면 SHIFT+ENTER를 누르세요'; +$lang['messageSubmit'] = '보내기'; +$lang['registeredUsers'] = '등록된 사용자'; +$lang['onlineUsers'] = '접속중인 사용자'; +$lang['toggleAutoScroll'] = '자동스크롤 on/off'; +$lang['toggleAudio'] = '소리 on/off'; +$lang['toggleHelp'] = '도움말'; +$lang['toggleSettings'] = '설정'; +$lang['toggleOnlineList'] = '접속중인 사용자'; +$lang['bbCodeLabelBold'] = '굵게'; +$lang['bbCodeLabelItalic'] = '이탤릭'; +$lang['bbCodeLabelUnderline'] = '밑줄'; +$lang['bbCodeLabelQuote'] = '따옴표'; +$lang['bbCodeLabelCode'] = '코드'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = '이미지'; +$lang['bbCodeLabelColor'] = '글자색'; +$lang['bbCodeTitleBold'] = '굵게: [b]내용[/b]'; +$lang['bbCodeTitleItalic'] = '이탤릭: [i]내용[/i]'; +$lang['bbCodeTitleUnderline'] = '밑줄: [u]내용[/u]'; +$lang['bbCodeTitleQuote'] = '따옴표: [quote]내용[/quote] 또는 [quote=문자]내용[/quote]'; +$lang['bbCodeTitleCode'] = '코드: [code]코드[/code]'; +$lang['bbCodeTitleURL'] = '주소: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = '이미지: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = '글자색: [color=red]내용[/color]'; +$lang['help'] = '도움말'; +$lang['helpItemDescJoin'] = '채널 접속:'; +$lang['helpItemCodeJoin'] = '/join 채널명'; +$lang['helpItemDescJoinCreate'] = '개인방 생성:'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = '사용자 초대 (예: 개인방으로 초대):'; +$lang['helpItemCodeInvite'] = '/invite 대화명'; +$lang['helpItemDescUninvite'] = '초대 취소:'; +$lang['helpItemCodeUninvite'] = '/uninvite 대화명'; +$lang['helpItemDescLogout'] = '로그아웃'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = '귓속말:'; +$lang['helpItemCodePrivateMessage'] = '/msg 대화명 메시지'; +$lang['helpItemDescQueryOpen'] = '개인방 열기:'; +$lang['helpItemCodeQueryOpen'] = '/query 대화명'; +$lang['helpItemDescQueryClose'] = '개인방 닫기:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = '명령 설명:'; +$lang['helpItemCodeAction'] = '/action 설명내용'; +$lang['helpItemDescDescribe'] = '귓속말로 명령 설명:'; +$lang['helpItemCodeDescribe'] = '/describe 대화명 설명내용'; +$lang['helpItemDescIgnore'] = '대화 차단/허용:'; +$lang['helpItemCodeIgnore'] = '/ignore 대화명'; +$lang['helpItemDescIgnoreList'] = '대화차단 사용자 목록:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = '접속중인 채널 확인:'; +$lang['helpItemCodeWhereis'] = '/whereis 대화명'; +$lang['helpItemDescKick'] = '사용자 추방 (방장 만):'; +$lang['helpItemCodeKick'] = '/kick 대화명 [추방 시간(분)]'; +$lang['helpItemDescUnban'] = '추방 취소 (방장 만):'; +$lang['helpItemCodeUnban'] = '/unban 대화명'; +$lang['helpItemDescBans'] = '추방된 사용자 목록 (방장 만):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = '사용자 접속 IP주소 (방장 만):'; +$lang['helpItemCodeWhois'] = '/whois 대화명'; +$lang['helpItemDescWho'] = '접속중인 사용자 목록:'; +$lang['helpItemCodeWho'] = '/who [채널명]'; +$lang['helpItemDescList'] = '채널목록:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = '주사위 굴리기:'; +$lang['helpItemCodeRoll'] = '/roll [굴린횟수]d[면수]'; +$lang['helpItemDescNick'] = '대화명 변경:'; +$lang['helpItemCodeNick'] = '/nick 대화명'; +$lang['settings'] = '설정'; +$lang['settingsBBCode'] = 'BBCode 사용:'; +$lang['settingsBBCodeImages'] = '이미지 BBCode 사용:'; +$lang['settingsBBCodeColors'] = '글자색 BBCode 사용:'; +$lang['settingsHyperLinks'] = '하이퍼링크 사용:'; +$lang['settingsLineBreaks'] = '엔터키 사용:'; +$lang['settingsEmoticons'] = '이모티콘 사용:'; +$lang['settingsAutoFocus'] = '입력창으로 포커스 자동이동:'; +$lang['settingsMaxMessages'] = '대화창의 최대 메시지 수:'; +$lang['settingsWordWrap'] = '긴 문장 다음줄로 표시:'; +$lang['settingsMaxWordLength'] = '최대 글자수:'; +$lang['settingsDateFormat'] = '날짜, 시간 표시 형식:'; +$lang['settingsPersistFontColor'] = '글자색 고정:'; +$lang['settingsAudioVolume'] = '소리크기:'; +$lang['settingsSoundReceive'] = '메시지 수신 소리:'; +$lang['settingsSoundSend'] = '메시지 송신 소리:'; +$lang['settingsSoundEnter'] = '로그인, 채널 접속 소리:'; +$lang['settingsSoundLeave'] = '로그아웃, 채널 접속해제 소리:'; +$lang['settingsSoundChatBot'] = '시스템 메시지 소리:'; +$lang['settingsSoundError'] = '오류 소리:'; +$lang['settingsBlink'] = '새로운 메시지 도착 시 타이틀 깜빡임:'; +$lang['settingsBlinkInterval'] = '밀리세컨드 단위 깜빡임 속도:'; +$lang['settingsBlinkIntervalNumber'] = '깜빡임 횟수:'; +$lang['playSelectedSound'] = '소리 듣기'; +$lang['requiresJavaScript'] = '이 채팅에는 자바스크립트가 필요합니다.'; +$lang['errorInvalidUser'] = '사용할 수 없는 대화명입니다.'; +$lang['errorUserInUse'] = '사용중인 대화명입니다.'; +$lang['errorBanned'] = '사용자/아이피가 차단되었습니다.'; +$lang['errorMaxUsersLoggedIn'] = '동시에 접속할 수 있는 최대 사용자를 초과했습니다.'; +$lang['errorChatClosed'] = '잠시동안 서비스가 닫혔습니다.'; +$lang['logsTitle'] = 'AJAX Chat - 로그'; +$lang['logsDate'] = '날짜'; +$lang['logsTime'] = '시간'; +$lang['logsSearch'] = '검색'; +$lang['logsPrivateChannels'] = '개인채널'; +$lang['logsPrivateMessages'] = '개인 메시지'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/mk.php b/library/ajaxchat/chat/lib/lang/mk.php new file mode 100644 index 000000000..f43bcfb7d --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/mk.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Nebojsa Ilijoski + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Име'; +$lang['password'] = 'Лозинка'; +$lang['login'] = 'Влези'; +$lang['logout'] = 'Излези'; +$lang['channel'] = 'Канал'; +$lang['style'] = 'Изглед'; +$lang['language'] = 'Јазик'; +$lang['inputLineBreak'] = 'Притиснете SHIFT+ENTER, за да вметнете нов ред'; +$lang['messageSubmit'] = 'Прашање'; +$lang['registeredUsers'] = 'Регистрирани корисници'; +$lang['onlineUsers'] = 'Online корисници'; +$lang['toggleAutoScroll'] = 'Автопрелистување вкл/иcкл'; +$lang['toggleAudio'] = 'Звук вкл/изкл'; +$lang['toggleHelp'] = 'Покашување/скривање на помошта'; +$lang['toggleSettings'] = 'Покажување/скривање на поставките'; +$lang['toggleOnlineList'] = 'Покажување/скривање на листата со корисници'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Цитат'; +$lang['bbCodeLabelCode'] = 'Код'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Боја на фонт'; +$lang['bbCodeTitleBold'] = 'Задебелен текст: [b]текст[/b]'; +$lang['bbCodeTitleItalic'] = 'Закосен текст: [i]текст[/i]'; +$lang['bbCodeTitleUnderline'] = 'Подцртан текст: [u]текст[/u]'; +$lang['bbCodeTitleQuote'] = 'Цитиран текст: [quote]текст[/quote] или [quote=Автор]текст[/quote]'; +$lang['bbCodeTitleCode'] = 'Покажување на код: [code]код[/code]'; +$lang['bbCodeTitleURL'] = 'URL: [url]http://example.org[/url] или [url=http://example.org]текст[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Боја на заглавие: [color=red]текст[/color]'; +$lang['help'] = 'Помош'; +$lang['helpItemDescJoin'] = 'Присоединување кон канал:'; +$lang['helpItemCodeJoin'] = '/join име_на_канал'; +$lang['helpItemDescJoinCreate'] = 'Креирање сопствена соба (само за регистрирани корисници):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Покана на корисници (напр. во сопствена соба):'; +$lang['helpItemCodeInvite'] = '/invite Корисничко_име'; +$lang['helpItemDescUninvite'] = 'Откажување на покана:'; +$lang['helpItemCodeUninvite'] = '/uninvite Корисничко_име'; +$lang['helpItemDescLogout'] = 'Одјавување од четот:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Лична порака:'; +$lang['helpItemCodePrivateMessage'] = '/msg Корисничко_име Текст'; +$lang['helpItemDescQueryOpen'] = 'Отварање на личен канал:'; +$lang['helpItemCodeQueryOpen'] = '/query Корисничко_име'; +$lang['helpItemDescQueryClose'] = 'Затварање на личен канал:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Опиц на дејство:'; +$lang['helpItemCodeAction'] = '/action Текст'; +$lang['helpItemDescDescribe'] = 'Опис на дејство во приватна порака:'; +$lang['helpItemCodeDescribe'] = '/describe Корисничко_име Текст'; +$lang['helpItemDescIgnore'] = 'Игнорирање/примање на пораки од корисник:'; +$lang['helpItemCodeIgnore'] = '/ignore Корисничко_име'; +$lang['helpItemDescIgnoreList'] = 'Преглед на игнорирани корисници:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Покажување на корисничкиот канал:'; +$lang['helpItemCodeWhereis'] = '/whereis Корисничко_име'; +$lang['helpItemDescKick'] = 'Исфрлање на корисници (само за модератори):'; +$lang['helpItemCodeKick'] = '/kick Корисничко_име [број минути]'; +$lang['helpItemDescUnban'] = 'Одблокирање на корисници (само за модератори):'; +$lang['helpItemCodeUnban'] = '/unban Корисничко_име'; +$lang['helpItemDescBans'] = 'Преглед на блокирани корисници (само за модератори):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Преглед на IP адреса на корисник (само за модератори):'; +$lang['helpItemCodeWhois'] = '/whois Корисничко_име'; +$lang['helpItemDescWho'] = 'Преглед на online корисници:'; +$lang['helpItemCodeWho'] = '/who [Име_на_канал]'; +$lang['helpItemDescList'] = 'Преглед на приватните канали:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Фрлање коцка:'; +$lang['helpItemCodeRoll'] = '/roll [пати]d[страни]'; +$lang['helpItemDescNick'] = 'Промена на корисничкото име:'; +$lang['helpItemCodeNick'] = '/nick Корисничко_име'; +$lang['settings'] = 'Поставки'; +$lang['settingsBBCode'] = 'Користење на BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Користење на на хиперлинк:'; +$lang['settingsLineBreaks'] = 'Користење на крај на ред:'; +$lang['settingsEmoticons'] = 'Користење на емоции:'; +$lang['settingsAutoFocus'] = 'Автоматско фокусирање на полето за внес:'; +$lang['settingsMaxMessages'] = 'Максимален број пораки во прозорецот на четот:'; +$lang['settingsWordWrap'] = 'Префрлање на текст:'; +$lang['settingsMaxWordLength'] = 'Максимална должина на порака пред да биде пренесена:'; +$lang['settingsDateFormat'] = 'Формат на датата и часот:'; +$lang['settingsPersistFontColor'] = 'Постојана боја на фонтот:'; +$lang['settingsAudioVolume'] = 'Гласност на звука:'; +$lang['settingsSoundReceive'] = 'Звук за приемни пораки:'; +$lang['settingsSoundSend'] = 'Звук за испратени пораки:'; +$lang['settingsSoundEnter'] = 'Звук за пораки за влез на четот или на каналот:'; +$lang['settingsSoundLeave'] = 'Звук за пораки за излез од четот или од каналот:'; +$lang['settingsSoundChatBot'] = 'Звук за пораки на чатботот:'; +$lang['settingsSoundError'] = 'Звук за пораки за грешки:'; +$lang['settingsBlink'] = 'Жмигање на заглавието на прозорецот при нови пораки:'; +$lang['settingsBlinkInterval'] = 'Интервал на жмигање во милисекунди:'; +$lang['settingsBlinkIntervalNumber'] = 'Број пати на жмигање:'; +$lang['playSelectedSound'] = 'Преслушување на избраниот звук'; +$lang['requiresJavaScript'] = 'За четот е потребна поддршка на Јаваскрипт.'; +$lang['errorInvalidUser'] = 'Грешно корисничко име.'; +$lang['errorUserInUse'] = 'Корисничкото име е во употреба.'; +$lang['errorBanned'] = 'Корисникот или IP адресата е блокирана.'; +$lang['errorMaxUsersLoggedIn'] = 'Четот го достигна максималниот број на корисници.'; +$lang['errorChatClosed'] = 'Во моментов четот е затворен.'; +$lang['logsTitle'] = 'AJAX Chat — Лого'; +$lang['logsDate'] = 'Дата'; +$lang['logsTime'] = 'Време'; +$lang['logsSearch'] = 'Пребарување'; +$lang['logsPrivateChannels'] = 'Приватни канали'; +$lang['logsPrivateMessages'] = 'Приватни пораки'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/nl-be.php b/library/ajaxchat/chat/lib/lang/nl-be.php new file mode 100644 index 000000000..db01b9871 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/nl-be.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Nic Mertens
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Gebruikersnaam';
+$lang['password'] = 'Wachtwoord';
+$lang['login'] = 'Inloggen';
+$lang['logout'] = 'Uitloggen';
+$lang['channel'] = 'Kanaal';
+$lang['style'] = 'Stijl';
+$lang['language'] = 'Taal';
+$lang['inputLineBreak'] = 'Typ SHIFT+ENTER om een line break in te geven';
+$lang['messageSubmit'] = 'Verzend';
+$lang['registeredUsers'] = 'Geregistreerde gebruikers';
+$lang['onlineUsers'] = 'Online gebruikers';
+$lang['toggleAutoScroll'] = 'Autoscroll aan/uit';
+$lang['toggleAudio'] = 'Geluid aan/uit';
+$lang['toggleHelp'] = 'Toon/verberg help';
+$lang['toggleSettings'] = 'Toon/verberg instellingen';
+$lang['toggleOnlineList'] = 'Toon/verberg online lijst';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Quote';
+$lang['bbCodeLabelCode'] = 'Code';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Figuur';
+$lang['bbCodeLabelColor'] = 'Kleur lettertype';
+$lang['bbCodeTitleBold'] = 'Tekst in vet: [b]text[/b]';
+$lang['bbCodeTitleItalic'] = 'Tekst in cursief: [i]text[/i]';
+$lang['bbCodeTitleUnderline'] = 'Tekst onderlijnd: [u]text[/u]';
+$lang['bbCodeTitleQuote'] = 'Quote tekst: [quote]text[/quote] or [quote=author]text[/quote]';
+$lang['bbCodeTitleCode'] = 'Code ingeven: [code]code[/code]';
+$lang['bbCodeTitleURL'] = 'Voeg URL in: [url]http://example.org[/url] or [url=http://example.org]text[/url]';
+$lang['bbCodeTitleImg'] = 'Voeg figuur toe: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Kleur lettertype: [color=red]text[/color]';
+$lang['help'] = 'Help';
+$lang['helpItemDescJoin'] = 'Betreed een kamer:';
+$lang['helpItemCodeJoin'] = '/join Kanaalnaam';
+$lang['helpItemDescJoinCreate'] = 'Maak een privékamer (Enkel geregistreerde gebruikers):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Nodig iemand uit (bv. naar een privékamer):';
+$lang['helpItemCodeInvite'] = '/invite Gebruikersnaam';
+$lang['helpItemDescUninvite'] = 'Annuleer de uitnodiging:';
+$lang['helpItemCodeUninvite'] = '/uninvite Gebruikersnaam';
+$lang['helpItemDescLogout'] = 'Uitloggen:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Privé bericht:';
+$lang['helpItemCodePrivateMessage'] = '/msg Gebruikersnaam Tekst';
+$lang['helpItemDescQueryOpen'] = 'Open een privékamer:';
+$lang['helpItemCodeQueryOpen'] = '/query Gebruikersnaam';
+$lang['helpItemDescQueryClose'] = 'Sluit een privékamer:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Beschrijf actie:';
+$lang['helpItemCodeAction'] = '/action Tekst';
+$lang['helpItemDescDescribe'] = 'Beschrijf actie in privébericht:';
+$lang['helpItemCodeDescribe'] = '/describe Gebruikersnaam Tekst';
+$lang['helpItemDescIgnore'] = 'Negeer/aanvaard berichten van gebruiker:';
+$lang['helpItemCodeIgnore'] = '/ignore Gebruikersnaam';
+$lang['helpItemDescIgnoreList'] = 'Toon de genegeerde gebruikers:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Display user channel:';
+$lang['helpItemCodeWhereis'] = '/whereis Gebruikersnaam';
+$lang['helpItemDescKick'] = 'Kick een gebruiker (Enkel Moderators of Administrators):';
+$lang['helpItemCodeKick'] = '/kick Gebruikersnaam [aantal minuten]';
+$lang['helpItemDescUnban'] = 'Unban een gebruiker (Enkel Moderators of Administrators):';
+$lang['helpItemCodeUnban'] = '/unban Gebruikersnaam';
+$lang['helpItemDescBans'] = 'Lijst van gebande Gebruikers (Enkel Moderators of Administrators):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Toon gebruikers-IP (Enkel Moderators of Administrators):';
+$lang['helpItemCodeWhois'] = '/whois Gebruikersnaam';
+$lang['helpItemDescWho'] = 'Lijst van gebruikers online:';
+$lang['helpItemCodeWho'] = '/who [Kanaalnaam]';
+$lang['helpItemDescList'] = 'Lijst van beschikbare kanalen:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Werp dobbelsteen:';
+$lang['helpItemCodeRoll'] = '/roll [number]d[sides]';
+$lang['helpItemDescNick'] = 'Wijzig gebruikersnaam:';
+$lang['helpItemCodeNick'] = '/nick Gebruikersnaam';
+$lang['settings'] = 'Instellingen';
+$lang['settingsBBCode'] = 'Inschakelen BBCode:';
+$lang['settingsBBCodeImages'] = 'Inschakelen figuur BBCode:';
+$lang['settingsBBCodeColors'] = 'Inschakelen lettertype kleur BBCode:';
+$lang['settingsHyperLinks'] = 'Inschakelen hyperlinks:';
+$lang['settingsLineBreaks'] = 'Inschakelen line breaks:';
+$lang['settingsEmoticons'] = 'Inschakelen emoticons:';
+$lang['settingsAutoFocus'] = 'Zet automatisch de focus in het invoerveld:';
+$lang['settingsMaxMessages'] = 'Maximaal aantal berichten in de chatkamer:';
+$lang['settingsWordWrap'] = 'Inschakelen wrapping van lange woorden:';
+$lang['settingsMaxWordLength'] = 'Maximale lengte van een woord voor dat het gewrapped wordt:';
+$lang['settingsDateFormat'] = 'Formaat van datum en tijd:';
+$lang['settingsPersistFontColor'] = 'Persiste lettertype kleur:';
+$lang['settingsAudioVolume'] = 'Volume geluid:';
+$lang['settingsSoundReceive'] = 'Geluid voor inkomende berichten:';
+$lang['settingsSoundSend'] = 'Geluid voor buitengaande berichten:';
+$lang['settingsSoundEnter'] = 'Geluid voor login en chatkemer voor binnenkomende berichten:';
+$lang['settingsSoundLeave'] = 'Geluid voor logout en verlaat berichten:';
+$lang['settingsSoundChatBot'] = 'Geluid voor berichten van de bot:';
+$lang['settingsSoundError'] = 'Geluid voor errorberichten:';
+$lang['settingsBlink'] = 'Blink window title on new messages:';
+$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:';
+$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:';
+$lang['playSelectedSound'] = 'Speel geselecteerd geluid';
+$lang['requiresJavaScript'] = 'JavaScript is nodig voor deze chat.';
+$lang['errorInvalidUser'] = 'Ongeldige gebruikersnaam.';
+$lang['errorUserInUse'] = 'Gebruikersnaam is in gebruik, kies een andere.';
+$lang['errorBanned'] = 'Gebruiker of gebruikers-IP is gebanned.';
+$lang['errorMaxUsersLoggedIn'] = 'Dit chatkamer heeft het maximum toegelaten aantal ingelogde gebruikers bereikt.';
+$lang['errorChatClosed'] = 'Dit chatkamer is momenteel gesloten.';
+$lang['logsTitle'] = 'AJAX Chat - Logs';
+$lang['logsDate'] = 'Datum';
+$lang['logsTime'] = 'Tijd';
+$lang['logsSearch'] = 'Zoek';
+$lang['logsPrivateChannels'] = 'Privékanalen';
+$lang['logsPrivateMessages'] = 'Privéberichten';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/nl.php b/library/ajaxchat/chat/lib/lang/nl.php new file mode 100644 index 000000000..c7dcc4b38 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/nl.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Dutch localisation: Patrick Donker
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Gebruikersnaam';
+$lang['password'] = 'Wachtwoord';
+$lang['login'] = 'Inloggen';
+$lang['logout'] = 'Uitloggen';
+$lang['channel'] = 'Kanaal';
+$lang['style'] = 'Stijl';
+$lang['language'] = 'Taal';
+$lang['inputLineBreak'] = 'Typ SHIFT+ENTER om een line break in te geven';
+$lang['messageSubmit'] = 'Verzend';
+$lang['registeredUsers'] = 'Geregistreerde gebruikers';
+$lang['onlineUsers'] = 'Online gebruikers';
+$lang['toggleAutoScroll'] = 'Autoscroll aan/uit';
+$lang['toggleAudio'] = 'Geluid aan/uit';
+$lang['toggleHelp'] = 'Toon/verberg help';
+$lang['toggleSettings'] = 'Toon/verberg instellingen';
+$lang['toggleOnlineList'] = 'Toon/verberg online lijst';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Citeer';
+$lang['bbCodeLabelCode'] = 'Code';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Figuur';
+$lang['bbCodeLabelColor'] = 'Kleur lettertype';
+$lang['bbCodeTitleBold'] = 'Vetgedrukte tekst: [b]text[/b]';
+$lang['bbCodeTitleItalic'] = 'Cursieve tekst: [i]text[/i]';
+$lang['bbCodeTitleUnderline'] = 'Onderlijnde tekst: [u]text[/u]';
+$lang['bbCodeTitleQuote'] = 'Citeer tekst: [quote]text[/quote] of [quote=author]text[/quote]';
+$lang['bbCodeTitleCode'] = 'Code ingeven: [code]code[/code]';
+$lang['bbCodeTitleURL'] = 'Voeg URL in: [url]http://example.org[/url] of [url=http://example.org]text[/url]';
+$lang['bbCodeTitleImg'] = 'Voeg figuur toe: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Kleur lettertype: [color=red]text[/color]';
+$lang['help'] = 'Help';
+$lang['helpItemDescJoin'] = 'Betreed een kanaal:';
+$lang['helpItemCodeJoin'] = '/join Kanaalnaam';
+$lang['helpItemDescJoinCreate'] = 'Maak een privékamer (Enkel geregistreerde gebruikers):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Nodig iemand uit (voor bijv. een privékamer):';
+$lang['helpItemCodeInvite'] = '/invite Gebruikersnaam';
+$lang['helpItemDescUninvite'] = 'Annuleer uitnodiging:';
+$lang['helpItemCodeUninvite'] = '/uninvite Gebruikersnaam';
+$lang['helpItemDescLogout'] = 'Uitloggen:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Privé bericht:';
+$lang['helpItemCodePrivateMessage'] = '/msg Gebruikersnaam Tekst';
+$lang['helpItemDescQueryOpen'] = 'Open een privékamer:';
+$lang['helpItemCodeQueryOpen'] = '/query Gebruikersnaam';
+$lang['helpItemDescQueryClose'] = 'Sluit een privékamer:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Beschrijf actie:';
+$lang['helpItemCodeAction'] = '/action Tekst';
+$lang['helpItemDescDescribe'] = 'Beschrijf actie in privébericht:';
+$lang['helpItemCodeDescribe'] = '/describe Gebruikersnaam Tekst';
+$lang['helpItemDescIgnore'] = 'Negeer/aanvaard berichten van gebruiker:';
+$lang['helpItemCodeIgnore'] = '/ignore Gebruikersnaam';
+$lang['helpItemDescIgnoreList'] = 'Toon genegeerde gebruikers:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Waar bevindt zich een gebruiker:';
+$lang['helpItemCodeWhereis'] = '/whereis Gebruikersnaam';
+$lang['helpItemDescKick'] = 'Verwijder een gebruiker (Enkel Moderators of Administrators):';
+$lang['helpItemCodeKick'] = '/kick Gebruikersnaam [aantal minuten]';
+$lang['helpItemDescUnban'] = 'Hertoelaten van een gebruiker (Enkel Moderators of Administrators):';
+$lang['helpItemCodeUnban'] = '/unban Gebruikersnaam';
+$lang['helpItemDescBans'] = 'Lijst van verbannen Gebruikers (Enkel Moderators of Administrators):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Toon IP adres gebruikers (Enkel Moderators of Administrators):';
+$lang['helpItemCodeWhois'] = '/whois Gebruikersnaam';
+$lang['helpItemDescWho'] = 'Lijst van online gebruikers:';
+$lang['helpItemCodeWho'] = '/who [Kanaalnaam]';
+$lang['helpItemDescList'] = 'Lijst van beschikbare kanalen:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Gooi dobbelsteen:';
+$lang['helpItemCodeRoll'] = '/roll [number]d[sides]';
+$lang['helpItemDescNick'] = 'Wijzig gebruikersnaam:';
+$lang['helpItemCodeNick'] = '/nick Gebruikersnaam';
+$lang['settings'] = 'Instellingen';
+$lang['settingsBBCode'] = 'Inschakelen BBCode:';
+$lang['settingsBBCodeImages'] = 'Inschakelen figuur BBCode:';
+$lang['settingsBBCodeColors'] = 'Inschakelen lettertype kleur BBCode:';
+$lang['settingsHyperLinks'] = 'Inschakelen hyperlinks:';
+$lang['settingsLineBreaks'] = 'Inschakelen line breaks:';
+$lang['settingsEmoticons'] = 'Inschakelen emoticons:';
+$lang['settingsAutoFocus'] = 'Zet automatisch de focus op het invoerveld:';
+$lang['settingsMaxMessages'] = 'Maximaal aantal berichten in de chatkamer:';
+$lang['settingsWordWrap'] = 'Inschakelen afbreken van lange woorden:';
+$lang['settingsMaxWordLength'] = 'Maximale lengte van een woord alvorens het afgebroken wordt:';
+$lang['settingsDateFormat'] = 'Formaat van datum en tijd:';
+$lang['settingsPersistFontColor'] = 'Vaste kleur lettertype:';
+$lang['settingsAudioVolume'] = 'Volume geluid:';
+$lang['settingsSoundReceive'] = 'Geluid bij binnenkomende berichten:';
+$lang['settingsSoundSend'] = 'Geluid bij buitengaande berichten:';
+$lang['settingsSoundEnter'] = 'Geluid bij login en betreden van chat';
+$lang['settingsSoundLeave'] = 'Geluid bij logout en verlaten chat:';
+$lang['settingsSoundChatBot'] = 'Geluid bij systeenberichten:';
+$lang['settingsSoundError'] = 'Geluid bij foutmeldingen:';
+$lang['settingsBlink'] = 'Knipper tekst windowtitel bij nieuw bericht:';
+$lang['settingsBlinkInterval'] = 'Knipperinterval in milliseconden:';
+$lang['settingsBlinkIntervalNumber'] = 'Aantal keren knippering van tekst:';
+$lang['playSelectedSound'] = 'Speel geselecteerd geluid af';
+$lang['requiresJavaScript'] = 'JavaScript is vereist voor deze chat.';
+$lang['errorInvalidUser'] = 'Ongeldige gebruikersnaam.';
+$lang['errorUserInUse'] = 'Gebruikersnaam is in gebruik, kies een andere.';
+$lang['errorBanned'] = 'Gebruiker of gebruikers-IP is verbannen.';
+$lang['errorMaxUsersLoggedIn'] = 'Deze chatkamer heeft het maximum aantal toegelaten gebruikers bereikt.';
+$lang['errorChatClosed'] = 'Deze chatkamer is momenteel gesloten.';
+$lang['logsTitle'] = 'AJAX Chat - Logs';
+$lang['logsDate'] = 'Datum';
+$lang['logsTime'] = 'Tijd';
+$lang['logsSearch'] = 'Zoek';
+$lang['logsPrivateChannels'] = 'Privékanalen';
+$lang['logsPrivateMessages'] = 'Privéberichten';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/no.php b/library/ajaxchat/chat/lib/lang/no.php new file mode 100644 index 000000000..52fe4afbe --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/no.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author DagArneKirkerod
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Brukernavn';
+$lang['password'] = 'Passord';
+$lang['login'] = 'Logg inn';
+$lang['logout'] = 'Logg ut';
+$lang['channel'] = 'Kanal';
+$lang['style'] = 'Stil';
+$lang['language'] = 'Språk';
+$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break';
+$lang['messageSubmit'] = 'Send';
+$lang['registeredUsers'] = 'Registrerte Brukere';
+$lang['onlineUsers'] = 'Påloggede brukere';
+$lang['toggleAutoScroll'] = 'Autoscroll on/off';
+$lang['toggleAudio'] = 'Sound on/off';
+$lang['toggleHelp'] = 'Show/hide help';
+$lang['toggleSettings'] = 'Show/hide settings';
+$lang['toggleOnlineList'] = 'Show/hide online list';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Siter';
+$lang['bbCodeLabelCode'] = 'Kode';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Image';
+$lang['bbCodeLabelColor'] = 'Tekst Farge';
+$lang['bbCodeTitleBold'] = 'Fet tekst: [b]tekst[/b]';
+$lang['bbCodeTitleItalic'] = 'Kursiv tekst: [i]tekst[/i]';
+$lang['bbCodeTitleUnderline'] = 'Understrek tekst: [u]tekst[/u]';
+$lang['bbCodeTitleQuote'] = 'Siter tekst: [quote]tekst[/quote] or [quote=author]tekst[/quote]';
+$lang['bbCodeTitleCode'] = 'Vis kode: [code]code[/code]';
+$lang['bbCodeTitleURL'] = 'Legg til url: [url]http://example.org[/url] or [url=http://example.org]text[/url]';
+$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Tekst farge: [color=red]text[/color]';
+$lang['help'] = 'Hjelp';
+$lang['helpItemDescJoin'] = 'Delta i en kanal:';
+$lang['helpItemCodeJoin'] = '/Join kanalnavn';
+$lang['helpItemDescJoinCreate'] = 'Lag et privat rom (Bare Registrerte Brukere):';
+$lang['helpItemCodeJoinCreate'] = '/Join';
+$lang['helpItemDescInvite'] = 'Inviter noen (for eksempel til et privat rom):';
+$lang['helpItemCodeInvite'] = '/invite brukernavn';
+$lang['helpItemDescUninvite'] = 'Opphev invitasjon:';
+$lang['helpItemCodeUninvite'] = '/uninvite brukernavn';
+$lang['helpItemDescLogout'] = 'Logg ut fra Chat:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Privat melding:';
+$lang['helpItemCodePrivateMessage'] = '/msg brukernavn tekst';
+$lang['helpItemDescQueryOpen'] = 'Åpne en privat kanal:';
+$lang['helpItemCodeQueryOpen'] = '/query brukernavn';
+$lang['helpItemDescQueryClose'] = 'Lukk en privat kanal:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Beskriv handling:';
+$lang['helpItemCodeAction'] = '/action tekst';
+$lang['helpItemDescDescribe'] = 'Beskriv handling i privat melding:';
+$lang['helpItemCodeDescribe'] = '/describe brukernavn tekst';
+$lang['helpItemDescIgnore'] = 'Ignorer/aksepter meldinger fra bruker:';
+$lang['helpItemCodeIgnore'] = '/ignore brukernavn';
+$lang['helpItemDescIgnoreList'] = 'Liste med ignorerte brukere:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Display user channel:';
+$lang['helpItemCodeWhereis'] = '/whereis Username';
+$lang['helpItemDescKick'] = 'Spark ut en bruker (bare Moderatorer):';
+$lang['helpItemCodeKick'] = '/kick brukernavn [minutter]';
+$lang['helpItemDescUnban'] = 'Ta inn en utsparket bruker (bare Moderatorer):';
+$lang['helpItemCodeUnban'] = '/unban brukernavn';
+$lang['helpItemDescBans'] = 'Liste med utsparkede brukere (bare Moderatorer):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Vis bruker IP (bare Moderatorer):';
+$lang['helpItemCodeWhois'] = '/whois brukernavn';
+$lang['helpItemDescWho'] = 'Vis påloggede brukere:';
+$lang['helpItemCodeWho'] = '/who [kanalnavn]';
+$lang['helpItemDescList'] = 'Vis tilgjenglige kanaler:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Rull terning:';
+$lang['helpItemCodeRoll'] = '/roll [nummer]d[sider]';
+$lang['helpItemDescNick'] = 'Change username:';
+$lang['helpItemCodeNick'] = '/nick Username';
+$lang['settings'] = 'Settings';
+$lang['settingsBBCode'] = 'Enable BBCode:';
+$lang['settingsBBCodeImages'] = 'Enable image BBCode:';
+$lang['settingsBBCodeColors'] = 'Enable font color BBCode:';
+$lang['settingsHyperLinks'] = 'Enable hyperlinks:';
+$lang['settingsLineBreaks'] = 'Enable line breaks:';
+$lang['settingsEmoticons'] = 'Enable emoticons:';
+$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:';
+$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:';
+$lang['settingsWordWrap'] = 'Enable wrapping of long words:';
+$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:';
+$lang['settingsDateFormat'] = 'Format of date and time display:';
+$lang['settingsPersistFontColor'] = 'Persist font color:';
+$lang['settingsAudioVolume'] = 'Sound Volume:';
+$lang['settingsSoundReceive'] = 'Sound for incoming messages:';
+$lang['settingsSoundSend'] = 'Sound for outgoing messages:';
+$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:';
+$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:';
+$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:';
+$lang['settingsSoundError'] = 'Sound for error messages:';
+$lang['settingsBlink'] = 'Blink window title on new messages:';
+$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:';
+$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:';
+$lang['playSelectedSound'] = 'Play selected sound';
+$lang['requiresJavaScript'] = 'JavaScript trengs for denne chat.';
+$lang['errorInvalidUser'] = 'Ugyldig brukernavn.';
+$lang['errorUserInUse'] = 'Brukernavn er i bruk.';
+$lang['errorBanned'] = 'Bruker eller IP er utsparket.';
+$lang['errorMaxUsersLoggedIn'] = 'Chatten har nådd maksimalt antall innloggede brukere.';
+$lang['errorChatClosed'] = 'Chatten er for øyeblikket stengt .';
+$lang['logsTitle'] = 'AJAX Chat - Logger';
+$lang['logsDate'] = 'Dato';
+$lang['logsTime'] = 'Tid';
+$lang['logsSearch'] = 'Søk';
+$lang['logsPrivateChannels'] = 'Private Kanaler';
+$lang['logsPrivateMessages'] = 'Private Meldinger';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/pl.php b/library/ajaxchat/chat/lib/lang/pl.php new file mode 100644 index 000000000..92a1716a6 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/pl.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Tomasz Topa, http://tomasz.topa.pl/
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'AJAX Chat';
+$lang['userName'] = 'Nick';
+$lang['password'] = 'Hasło';
+$lang['login'] = 'Zaloguj';
+$lang['logout'] = 'Wyloguj';
+$lang['channel'] = 'Pokój';
+$lang['style'] = 'Styl';
+$lang['language'] = 'Język';
+$lang['inputLineBreak'] = 'Wciśnij SHIFT+ENTER aby przejść do nowej linijki';
+$lang['messageSubmit'] = 'Wyślij';
+$lang['registeredUsers'] = 'Zarejestrowani użytkownicy';
+$lang['onlineUsers'] = 'Użytkownicy online';
+$lang['toggleAutoScroll'] = 'Automatyczne przewijanie wł/wył';
+$lang['toggleAudio'] = 'Dźwięk wł/wył';
+$lang['toggleHelp'] = 'Pokaż/ukryj pomoc';
+$lang['toggleSettings'] = 'Pokaż/ukryj ustawienia';
+$lang['toggleOnlineList'] = 'Pokaż/ukryj listę osób online';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Cytat';
+$lang['bbCodeLabelCode'] = 'Kod';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Image';
+$lang['bbCodeLabelColor'] = 'Kolor tekstu';
+$lang['bbCodeTitleBold'] = 'Pogrubiony: [b]tekst[/b]';
+$lang['bbCodeTitleItalic'] = 'Kursywa: [i]tekst[/i]';
+$lang['bbCodeTitleUnderline'] = 'Podkreślony: [u]tekst[/u]';
+$lang['bbCodeTitleQuote'] = 'Cytat: [quote]tekst[/quote] lub [quote=autor]tekst[/quote]';
+$lang['bbCodeTitleCode'] = 'Kod: [code]kod[/code]';
+$lang['bbCodeTitleURL'] = 'Wstaw adres: [url]http://example.org[/url] lub [url=http://example.org]opis[/url]';
+$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Kolor tekstu: [color=red]tekst[/color]';
+$lang['help'] = 'Pomoc';
+$lang['helpItemDescJoin'] = 'Wejdź do pokoju:';
+$lang['helpItemCodeJoin'] = '/join NazwaPokoju';
+$lang['helpItemDescJoinCreate'] = 'Utwórz nowy pokój (Tylko dla zarejestrowanych):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Zaproś kogoś (np. do prywatnego pokoju):';
+$lang['helpItemCodeInvite'] = '/invite Nick';
+$lang['helpItemDescUninvite'] = 'Odwołaj zaproszenie:';
+$lang['helpItemCodeUninvite'] = '/uninvite Nick';
+$lang['helpItemDescLogout'] = 'Wyloguj z czata:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Prywatna wiadomość:';
+$lang['helpItemCodePrivateMessage'] = '/msg Nick tekst';
+$lang['helpItemDescQueryOpen'] = 'Prywatna rozmowa:';
+$lang['helpItemCodeQueryOpen'] = '/query Nick';
+$lang['helpItemDescQueryClose'] = 'Zakończ prywatną rozmowę:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Napisz co teraz robisz:';
+$lang['helpItemCodeAction'] = '/action Tekst';
+$lang['helpItemDescDescribe'] = 'Napisz komuś co teraz robisz:';
+$lang['helpItemCodeDescribe'] = '/describe Nick Tekst';
+$lang['helpItemDescIgnore'] = 'Ignoruj/akceptuj wiadomości od użytkownika:';
+$lang['helpItemCodeIgnore'] = '/ignore Nick';
+$lang['helpItemDescIgnoreList'] = 'Lista ignorowanych:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Gdzie jest użytkownik:';
+$lang['helpItemCodeWhereis'] = '/whereis Nick';
+$lang['helpItemDescKick'] = 'Wyrzuć użytkownika (Tylko dla moderatorów):';
+$lang['helpItemCodeKick'] = '/kick Nick [Czas zablokowania w minutach]';
+$lang['helpItemDescUnban'] = 'Odblokuj użytkowników (Tylko dla moderatorów):';
+$lang['helpItemCodeUnban'] = '/unban Nick';
+$lang['helpItemDescBans'] = 'Lista zablokowanych użytkowników (Tylko dla moderatorów):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Pokaż IP użytkownika (Tylko dla moderatorów):';
+$lang['helpItemCodeWhois'] = '/whois Nick';
+$lang['helpItemDescWho'] = 'Lista użytkowników online:';
+$lang['helpItemCodeWho'] = '/who [NazwaPokoju]';
+$lang['helpItemDescList'] = 'Lista pokoi:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Rzuć kostką:';
+$lang['helpItemCodeRoll'] = '/roll [ile_razy]d[ilu_ścienną]';
+$lang['helpItemDescNick'] = 'Zmień nick:';
+$lang['helpItemCodeNick'] = '/nick Nick';
+$lang['settings'] = 'Ustawienia';
+$lang['settingsBBCode'] = 'Pozwól na BBCode:';
+$lang['settingsBBCodeImages'] = 'Enable image BBCode:';
+$lang['settingsBBCodeColors'] = 'Enable font color BBCode:';
+$lang['settingsHyperLinks'] = 'Pozwól na linki:';
+$lang['settingsLineBreaks'] = 'Pozwól na używanie wielu linijek:';
+$lang['settingsEmoticons'] = 'Pozwól na emotikonki:';
+$lang['settingsAutoFocus'] = 'Automatycznie ustawiaj kursor w polu tekstowym:';
+$lang['settingsMaxMessages'] = 'Maksymalna liczba wiadomości w głównym oknie:';
+$lang['settingsWordWrap'] = 'Pozwól dzielić długie wyrazy:';
+$lang['settingsMaxWordLength'] = 'Maksymalna długość wyrazu, którego nie wolno dzielić:';
+$lang['settingsDateFormat'] = 'Format wyświetlanej daty i czasu:';
+$lang['settingsPersistFontColor'] = 'Nie pozwól na zmianę koloru tekstu:';
+$lang['settingsAudioVolume'] = 'Głośność:';
+$lang['settingsSoundReceive'] = 'Dźwięk dla przychodzących wiadomości:';
+$lang['settingsSoundSend'] = 'Dźwięk dla wysyłanych wiadomości:';
+$lang['settingsSoundEnter'] = 'Dźwięk dla wejść do pokoju:';
+$lang['settingsSoundLeave'] = 'Dźwięk dla wyjść z pokoju:';
+$lang['settingsSoundChatBot'] = 'Dźwięk dla informacji od bota:';
+$lang['settingsSoundError'] = 'Dźwięk dla informacji o błędach:';
+$lang['settingsBlink'] = 'Miganie okienka przy nadejściu nowej wiadomości:';
+$lang['settingsBlinkInterval'] = 'Odstęp pomiędzy mignięciami (w milisekundach):';
+$lang['settingsBlinkIntervalNumber'] = 'Liczba mignięć:';
+$lang['playSelectedSound'] = 'Odtwórz wybrany dźwięk';
+$lang['requiresJavaScript'] = 'Do poprawnego działania czata wymagana jest obsługa JavaScript.';
+$lang['errorInvalidUser'] = 'Nieprawidłowy nick.';
+$lang['errorUserInUse'] = 'Wybrany nick jest już używany.';
+$lang['errorBanned'] = 'Nick lub IP jest zablokowane.';
+$lang['errorMaxUsersLoggedIn'] = 'Czat jest już pełny.';
+$lang['errorChatClosed'] = 'Czat jest tymczasowo wyłączony.';
+$lang['logsTitle'] = 'AJAX Chat - Logi';
+$lang['logsDate'] = 'Data';
+$lang['logsTime'] = 'Czas';
+$lang['logsSearch'] = 'Szukaj';
+$lang['logsPrivateChannels'] = 'Prywatne pokoje';
+$lang['logsPrivateMessages'] = 'Prywatne wiadomości';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/pt-br.php b/library/ajaxchat/chat/lib/lang/pt-br.php new file mode 100644 index 000000000..034a5fb09 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/pt-br.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Pedro Innecco + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Usuário'; +$lang['password'] = 'Senha'; +$lang['login'] = 'Entrar'; +$lang['logout'] = 'Sair'; +$lang['channel'] = 'Canal'; +$lang['style'] = 'Aparência'; +$lang['language'] = 'Idioma'; +$lang['inputLineBreak'] = 'Pressione SHIFT+ENTER para inserir uma quebra de linha'; +$lang['messageSubmit'] = 'Enviar'; +$lang['registeredUsers'] = 'Para Usuários Registrados'; +$lang['onlineUsers'] = 'Usuários Online'; +$lang['toggleAutoScroll'] = 'Autorolagem liga/desliga'; +$lang['toggleAudio'] = 'Som liga/desliga'; +$lang['toggleHelp'] = 'Mostrar/esconder ajuda'; +$lang['toggleSettings'] = 'Mostrar/esconder configurações'; +$lang['toggleOnlineList'] = 'Mostrar/esconder lista de usuários online'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citar'; +$lang['bbCodeLabelCode'] = 'Código'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Imagem'; +$lang['bbCodeLabelColor'] = 'Cor da fonte'; +$lang['bbCodeTitleBold'] = 'Texto negrito: [b]texto[/b]'; +$lang['bbCodeTitleItalic'] = 'Texto itálico: [i]texto[/i]'; +$lang['bbCodeTitleUnderline'] = 'Texto sublinhado: [u]texto[/u]'; +$lang['bbCodeTitleQuote'] = 'Citar texto: [quote]texto[/quote] ou [quote=autor]texto[/quote]'; +$lang['bbCodeTitleCode'] = 'Citar código: [code]código[/code]'; +$lang['bbCodeTitleURL'] = 'Inserir URL: [url]http://example.org[/url] or [url=http://example.org]texto[/url]'; +$lang['bbCodeTitleImg'] = 'Inserir imagem: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Cor da fonte: [color=red]texto[/color]'; +$lang['help'] = 'Ajuda'; +$lang['helpItemDescJoin'] = 'Entrar em um canal:'; +$lang['helpItemCodeJoin'] = '/join Nome do Canal'; +$lang['helpItemDescJoinCreate'] = 'Criar uma sala privada (Somente usuários registrados):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Convidar alguém (Por exemplo, para uma sala privada):'; +$lang['helpItemCodeInvite'] = '/invite Usuário'; +$lang['helpItemDescUninvite'] = 'Cancelar convite'; +$lang['helpItemCodeUninvite'] = '/uninvite Usuário'; +$lang['helpItemDescLogout'] = 'Sair do Chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Enviar mensagem privada:'; +$lang['helpItemCodePrivateMessage'] = '/msg Usuário Texto'; +$lang['helpItemDescQueryOpen'] = 'Abrir um canal privado:'; +$lang['helpItemCodeQueryOpen'] = '/query Usuário'; +$lang['helpItemDescQueryClose'] = 'Fechar um canal privado:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Descrever uma ação:'; +$lang['helpItemCodeAction'] = '/action Texto'; +$lang['helpItemDescDescribe'] = 'Descrever uma ação em uma mensagem privada:'; +$lang['helpItemCodeDescribe'] = '/describe Usuário Texto'; +$lang['helpItemDescIgnore'] = 'Ignorar/Aceitar mensagens de um usuário:'; +$lang['helpItemCodeIgnore'] = '/ignore Usuário'; +$lang['helpItemDescIgnoreList'] = 'Listar usuários ignorados:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Exibir canal de um usuário:'; +$lang['helpItemCodeWhereis'] = '/whereis Usuário'; +$lang['helpItemDescKick'] = 'Banir um usuário (Somente Moderadores):'; +$lang['helpItemCodeKick'] = '/kick Usuário [Bandido por minutos]'; +$lang['helpItemDescUnban'] = 'Desbanir um usuário (Somente Moderadores):'; +$lang['helpItemCodeUnban'] = '/unban Usuário'; +$lang['helpItemDescBans'] = 'Listar usuários banidos (Somente Moderadores):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Exibir IP de um usuário (Somente Moderadores):'; +$lang['helpItemCodeWhois'] = '/whois Usuário'; +$lang['helpItemDescWho'] = 'Listar usuários online:'; +$lang['helpItemCodeWho'] = '/who [Channelname]'; +$lang['helpItemDescList'] = 'Listar canais diponíveis:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Jogar dados:'; +$lang['helpItemCodeRoll'] = '/roll [números]d[lados]'; +$lang['helpItemDescNick'] = 'Trocar seu nome de usuário:'; +$lang['helpItemCodeNick'] = '/nick Nome'; +$lang['settings'] = 'Configurações'; +$lang['settingsBBCode'] = 'Permitir BBCode:'; +$lang['settingsBBCodeImages'] = 'Permitir BBCode image (imagem):'; +$lang['settingsBBCodeColors'] = 'Permitir BBCode font color (cor de fonte):'; +$lang['settingsHyperLinks'] = 'Permitir hyperlinks:'; +$lang['settingsLineBreaks'] = 'Permitir quebra-linha:'; +$lang['settingsEmoticons'] = 'Permitir emoticons:'; +$lang['settingsAutoFocus'] = 'Definir automaticamente o foco no campo de envio de mensagens:'; +$lang['settingsMaxMessages'] = 'O número máximo de mensagens na lista do Chat:'; +$lang['settingsWordWrap'] = 'Permitir quebra de linha para palavras longas:'; +$lang['settingsMaxWordLength'] = 'O comprimento máximo de uma palavra antes dele começa envolvido:'; +$lang['settingsDateFormat'] = 'Formato da exposição da data e da hora:'; +$lang['settingsPersistFontColor'] = 'Persistir cor da fonte:'; +$lang['settingsAudioVolume'] = 'Volume do som:'; +$lang['settingsSoundReceive'] = 'Som para mensagens recebidas:'; +$lang['settingsSoundSend'] = 'Som para mensagens enviadas:'; +$lang['settingsSoundEnter'] = 'Som para login e avisos de entrada em canais:'; +$lang['settingsSoundLeave'] = 'Som para logout e avisos de saida em canais:'; +$lang['settingsSoundChatBot'] = 'Som para mensagens do chatbot:'; +$lang['settingsSoundError'] = 'Som para mensagens de erro:'; +$lang['settingsBlink'] = 'Título da janela do piscamento em mensagens novas:'; +$lang['settingsBlinkInterval'] = 'Intervalo do piscamento nos milissegundos:'; +$lang['settingsBlinkIntervalNumber'] = 'Número de intervalos do piscamento:'; +$lang['playSelectedSound'] = 'Reproduzir som selecionado'; +$lang['requiresJavaScript'] = 'Javascript é requerido para este Chat.'; +$lang['errorInvalidUser'] = 'Usuário inválido.'; +$lang['errorUserInUse'] = 'Usuário já se encontra em uso.'; +$lang['errorBanned'] = 'O usuário ou endereço de IP foi banido do chat.'; +$lang['errorMaxUsersLoggedIn'] = 'O chat atingiu o número máximo de usuários permitidos.'; +$lang['errorChatClosed'] = 'O chat está fechado no momento.'; +$lang['logsTitle'] = 'Ajax Chat - Relatório'; +$lang['logsDate'] = 'Data'; +$lang['logsTime'] = 'Hora'; +$lang['logsSearch'] = 'Pesquisar'; +$lang['logsPrivateChannels'] = 'Canais privados'; +$lang['logsPrivateMessages'] = 'Mensagens privadas'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/pt-pt.php b/library/ajaxchat/chat/lib/lang/pt-pt.php new file mode 100644 index 000000000..e3399eb04 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/pt-pt.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author of translate Carlos Rocha (aka Broas@) + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Nick'; +$lang['password'] = 'Password'; +$lang['login'] = 'Entrar'; +$lang['logout'] = 'Sair'; +$lang['channel'] = 'Sala'; +$lang['style'] = 'Aparência'; +$lang['language'] = 'Idioma'; +$lang['inputLineBreak'] = 'Prima SHIFT+ENTER para inserir uma quebra de linha'; +$lang['messageSubmit'] = 'Enviar'; +$lang['registeredUsers'] = 'Utilizadores registados'; +$lang['onlineUsers'] = 'Utilizadores online'; +$lang['toggleAutoScroll'] = 'Ligar/Desligar scroll automático'; +$lang['toggleAudio'] = 'Ligar/Desligar som'; +$lang['toggleHelp'] = 'Mostrar/Esconder ajuda'; +$lang['toggleSettings'] = 'Mostrar/Esconder configurações'; +$lang['toggleOnlineList'] = 'Mostrar/Esconder listas online'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citar'; +$lang['bbCodeLabelCode'] = 'Código'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Imagem'; +$lang['bbCodeLabelColor'] = 'Cor da fonte'; +$lang['bbCodeTitleBold'] = 'Texto a negrito: [b]texto[/b]'; +$lang['bbCodeTitleItalic'] = 'Texto itálico: [i]texto[/i]'; +$lang['bbCodeTitleUnderline'] = 'Texto sublinhado: [u]texto[/u]'; +$lang['bbCodeTitleQuote'] = 'Citar texto: [quote]texto[/quote] ou [quote=autor]texto[/quote]'; +$lang['bbCodeTitleCode'] = 'Citar código: [code]código[/code]'; +$lang['bbCodeTitleURL'] = 'Inserir URL: [url]http://example.org[/url] ou [url=http://example.org]texto[/url]'; +$lang['bbCodeTitleImg'] = 'Inserir imagem: [img]http://example.org/imagem.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Cor da fonte: [color=red]texto[/color]'; +$lang['help'] = 'Ajuda'; +$lang['helpItemDescJoin'] = 'Entrar numa sala:'; +$lang['helpItemCodeJoin'] = '/join [Nome da sala]'; +$lang['helpItemDescJoinCreate'] = 'Criar sala privada (Só para utilizadores registados):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Convidar alguém para uma sala privada:'; +$lang['helpItemCodeInvite'] = '/invite [Utilizador]'; +$lang['helpItemDescUninvite'] = 'Cancelar convite'; +$lang['helpItemCodeUninvite'] = '/uninvite [Utilizador]'; +$lang['helpItemDescLogout'] = 'Sair do chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Enviar mensagem privada:'; +$lang['helpItemCodePrivateMessage'] = '/msg [Utilizador] [Texto]'; +$lang['helpItemDescQueryOpen'] = 'Abrir uma sala privada:'; +$lang['helpItemCodeQueryOpen'] = '/query [Utilizador]'; +$lang['helpItemDescQueryClose'] = 'Fechar uma sala privada:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Acção:'; +$lang['helpItemCodeAction'] = '/action [Texto]'; +$lang['helpItemDescDescribe'] = 'Descreve a acção em mensagem privada:'; +$lang['helpItemCodeDescribe'] = '/describe [Utilizador] [Texto]'; +$lang['helpItemDescIgnore'] = 'Adicionar/Remover utilizador à lista de ignorados:'; +$lang['helpItemCodeIgnore'] = '/ignore [Utilizador]'; +$lang['helpItemDescIgnoreList'] = 'Lista de utilizadores ignorados:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Encontrar um utilizador:'; +$lang['helpItemCodeWhereis'] = '/whereis [Utilizador]'; +$lang['helpItemDescKick'] = 'Kickar um utilizador (Só Moderadores):'; +$lang['helpItemCodeKick'] = '/kick [Utilizador] [Minutos]'; +$lang['helpItemDescUnban'] = 'Desbanir um utilizador (Só Moderadores):'; +$lang['helpItemCodeUnban'] = '/unban [Utilizador]'; +$lang['helpItemDescBans'] = 'Lista de utilizadores banidos (Só Moderadores):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Mostrar IP de um utilizador (Só Moderadores):'; +$lang['helpItemCodeWhois'] = '/whois [Utilizador]'; +$lang['helpItemDescWho'] = 'Lista de utilizadores online na sala:'; +$lang['helpItemCodeWho'] = '/who ou /who [Sala]'; +$lang['helpItemDescList'] = 'Lista canais diponíveis:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Jogar dados:'; +$lang['helpItemCodeRoll'] = '/roll [números] [dados]'; +$lang['helpItemDescNick'] = 'Trocar de nick:'; +$lang['helpItemCodeNick'] = '/nick [Novo nick]'; +$lang['settings'] = 'Configurações'; +$lang['settingsBBCode'] = 'Permitir BBCode:'; +$lang['settingsBBCodeImages'] = 'Permitir BBCode para imagem:'; +$lang['settingsBBCodeColors'] = 'Permitir BBCode para cor da fonte:'; +$lang['settingsHyperLinks'] = 'Permitir URL:'; +$lang['settingsLineBreaks'] = 'Permitir quebra de linha:'; +$lang['settingsEmoticons'] = 'Permitir smileys:'; +$lang['settingsAutoFocus'] = 'Definir automaticamente a centrar-se no campo de pesquisa:'; +$lang['settingsMaxMessages'] = 'Número máximo de mensagens no Chat:'; +$lang['settingsWordWrap'] = 'Permitir palavras longas:'; +$lang['settingsMaxWordLength'] = 'O comprimento máximo de uma palavra é de:'; +$lang['settingsDateFormat'] = 'Formato da hora e data:'; +$lang['settingsPersistFontColor'] = 'Persistir cor da fonte:'; +$lang['settingsAudioVolume'] = 'Volume do som:'; +$lang['settingsSoundReceive'] = 'Som para as mensagens recebidas:'; +$lang['settingsSoundSend'] = 'Som de mensagens enviadas:'; +$lang['settingsSoundEnter'] = 'Som de login:'; +$lang['settingsSoundLeave'] = 'Som de logout:'; +$lang['settingsSoundChatBot'] = 'Som para mensagens do chatbot:'; +$lang['settingsSoundError'] = 'Som para mensagens de erro:'; +$lang['settingsBlink'] = 'Título da janela do "piscamento" em mensagens novas:'; +$lang['settingsBlinkInterval'] = 'Intervalo do "piscamento" em milissegundos:'; +$lang['settingsBlinkIntervalNumber'] = 'Número de intervalos do "piscamento":'; +$lang['playSelectedSound'] = 'Reproduzir o som selecionado'; +$lang['requiresJavaScript'] = 'O Javascript tem de estar ligado para entrares no Chat.'; +$lang['errorInvalidUser'] = 'Nick inválido.'; +$lang['errorUserInUse'] = 'Nick em uso.'; +$lang['errorBanned'] = 'O teu nick ou IP está banido.'; +$lang['errorMaxUsersLoggedIn'] = 'O chat atingiu o número máximo de utilizadores ligados.'; +$lang['errorChatClosed'] = 'O Chat está encerrado de momento.'; +$lang['logsTitle'] = 'AJAX Chat - Relatório'; +$lang['logsDate'] = 'Data'; +$lang['logsTime'] = 'Tempo'; +$lang['logsSearch'] = 'Procurar'; +$lang['logsPrivateChannels'] = 'Salas privadas'; +$lang['logsPrivateMessages'] = 'Mensagens privadas'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ro.php b/library/ajaxchat/chat/lib/lang/ro.php new file mode 100644 index 000000000..8e6d6418f --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ro.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author K.Z. + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'Chat AJAX'; +$lang['userName'] = 'Nume de utilizator'; +$lang['password'] = 'Parolă'; +$lang['login'] = 'Autentificare'; +$lang['logout'] = 'Ieşire'; +$lang['channel'] = 'Canal'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Limbă'; +$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break'; +$lang['messageSubmit'] = 'Trimite'; +$lang['registeredUsers'] = 'Utizatori înregistraţi'; +$lang['onlineUsers'] = 'Utilizatori activi'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Sound on/off'; +$lang['toggleHelp'] = 'Show/hide help'; +$lang['toggleSettings'] = 'Show/hide settings'; +$lang['toggleOnlineList'] = 'Show/hide online list'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citat'; +$lang['bbCodeLabelCode'] = 'Cod'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Culoare fontului'; +$lang['bbCodeTitleBold'] = 'Text îngroşat: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Text înclinat: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Text subliniat: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Citează text: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Scrie cod: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Introdu URL: [url]http://example.org[/url] or [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Culoarea fontului: [color=red]text[/color]'; +$lang['help'] = 'Ajutor'; +$lang['helpItemDescJoin'] = 'Alăturăte canalului:'; +$lang['helpItemCodeJoin'] = '/join Channelname'; +$lang['helpItemDescJoinCreate'] = 'Creează o cameră privată de chat (Utilizatorii înregistraţi):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Invită pe cineva (ex.: într-o cameră privată):'; +$lang['helpItemCodeInvite'] = '/invite Username'; +$lang['helpItemDescUninvite'] = 'Respinge invitaţia:'; +$lang['helpItemCodeUninvite'] = '/uninvite Username'; +$lang['helpItemDescLogout'] = 'Ieşire din chat:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Mesaj privat:'; +$lang['helpItemCodePrivateMessage'] = '/msg Username Text'; +$lang['helpItemDescQueryOpen'] = 'Deschide un canal privat:'; +$lang['helpItemCodeQueryOpen'] = '/query Username'; +$lang['helpItemDescQueryClose'] = 'Închide un canal privat:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Descrie acţiune:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'Descrie acţiune în mesaj privat:'; +$lang['helpItemCodeDescribe'] = '/describe Username Text'; +$lang['helpItemDescIgnore'] = 'Ignoră/acceptă mesaj de la un utilizator:'; +$lang['helpItemCodeIgnore'] = '/ignore Username'; +$lang['helpItemDescIgnoreList'] = 'Arată lista cu utilizatorii ignoraţi:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Dă afară un utilizator (doar Moderatorii):'; +$lang['helpItemCodeKick'] = '/kick Username [Minutes banned]'; +$lang['helpItemDescUnban'] = 'Redă accesul la chat al unui utilizator (doar Moderatorii):'; +$lang['helpItemCodeUnban'] = '/unban Username'; +$lang['helpItemDescBans'] = 'Listează utilizatorii care au accesul interzis (doar Moderatorii):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Arată IP-ul utilizatorului (doar Moderatorii):'; +$lang['helpItemCodeWhois'] = '/whois Username'; +$lang['helpItemDescWho'] = 'Listează utilizatorii activi:'; +$lang['helpItemCodeWho'] = '/who [Channelname]'; +$lang['helpItemDescList'] = 'Listează canalele disponbile:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Aruncă zarul:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'Change username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Settings'; +$lang['settingsBBCode'] = 'Enable BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Enable hyperlinks:'; +$lang['settingsLineBreaks'] = 'Enable line breaks:'; +$lang['settingsEmoticons'] = 'Enable emoticons:'; +$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:'; +$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:'; +$lang['settingsWordWrap'] = 'Enable wrapping of long words:'; +$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:'; +$lang['settingsDateFormat'] = 'Format of date and time display:'; +$lang['settingsPersistFontColor'] = 'Persist font color:'; +$lang['settingsAudioVolume'] = 'Sound Volume:'; +$lang['settingsSoundReceive'] = 'Sound for incoming messages:'; +$lang['settingsSoundSend'] = 'Sound for outgoing messages:'; +$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:'; +$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:'; +$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:'; +$lang['settingsSoundError'] = 'Sound for error messages:'; +$lang['settingsBlink'] = 'Blink window title on new messages:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'Play selected sound'; +$lang['requiresJavaScript'] = 'Pentru a vizualiza acest chat trebuie să aveţi activat JavaScript-ul activat.'; +$lang['errorInvalidUser'] = 'Numele de utilizator incorect.'; +$lang['errorUserInUse'] = 'Numele de utilizator este deja folosit.'; +$lang['errorBanned'] = 'Accesul interzis utilizatorului sau persoanei cu acest IP.'; +$lang['errorMaxUsersLoggedIn'] = 'Chat-ul a atins numărul maxim de utilizatori.'; +$lang['errorChatClosed'] = 'Chat-ul este închis temporar.'; +$lang['logsTitle'] = 'Chat AJAX - Loguri'; +$lang['logsDate'] = 'Data'; +$lang['logsTime'] = 'Ora'; +$lang['logsSearch'] = 'Caută'; +$lang['logsPrivateChannels'] = 'Canale private'; +$lang['logsPrivateMessages'] = 'Mesaje private'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/ru.php b/library/ajaxchat/chat/lib/lang/ru.php new file mode 100644 index 000000000..ac86531dc --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/ru.php @@ -0,0 +1,125 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author SkyKnight + * @author Dmitry Plyonkin + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Имя'; +$lang['password'] = 'Пароль'; +$lang['login'] = 'Login'; +$lang['logout'] = 'Выйти'; +$lang['channel'] = 'Канал'; +$lang['style'] = 'Стиль'; +$lang['language'] = 'Язык'; +$lang['inputLineBreak'] = 'Нажмите SHIFT+ENTER, чтобы перейти на новую строку'; +$lang['messageSubmit'] = 'Отправить'; +$lang['registeredUsers'] = 'Только для зарегистрированных пользователей'; +$lang['onlineUsers'] = 'Пользователи онлайн'; +$lang['toggleAutoScroll'] = 'Вкл/выкл авто-прокрутку'; +$lang['toggleAudio'] = 'Вкл/выкл звук'; +$lang['toggleHelp'] = 'Показать/скрыть подсказку'; +$lang['toggleSettings'] = 'Показать/скрыть настройки'; +$lang['toggleOnlineList'] = 'Показать/скрыть список участников'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Цитата'; +$lang['bbCodeLabelCode'] = 'Код'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Цвет шрифта'; +$lang['bbCodeTitleBold'] = 'Жирный текст: [b]текст[/b]'; +$lang['bbCodeTitleItalic'] = 'Курсив: [i]текст[/i]'; +$lang['bbCodeTitleUnderline'] = 'Подчеркнутый текст: [u]текст[/u]'; +$lang['bbCodeTitleQuote'] = 'Цитата: [quote]текст[/quote] или [quote=автор]текст[/quote]'; +$lang['bbCodeTitleCode'] = 'Код: [code]текст[/code]'; +$lang['bbCodeTitleURL'] = 'Вставить ссылку: [url]http://example.org[/url] или [url=http://example.org]текст[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Цвет шрифта: [color=red]текст[/color]'; +$lang['help'] = 'Помощь'; +$lang['helpItemDescJoin'] = 'Присоедениться к каналу:'; +$lang['helpItemCodeJoin'] = '/join имя_канала'; +$lang['helpItemDescJoinCreate'] = 'Создать частный (приватный) канал:'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Пригласить кого-либо (например в частный канал):'; +$lang['helpItemCodeInvite'] = '/invite имя_пользователя'; +$lang['helpItemDescUninvite'] = 'Отозвать приглашение:'; +$lang['helpItemCodeUninvite'] = '/uninvite имя_пользователя'; +$lang['helpItemDescLogout'] = 'Выйти из чата:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Приватное сообщение:'; +$lang['helpItemCodePrivateMessage'] = '/msg Имя_пользователся Текст'; +$lang['helpItemDescQueryOpen'] = 'Открыть приватный канал:'; +$lang['helpItemCodeQueryOpen'] = '/query Имя_пользователя'; +$lang['helpItemDescQueryClose'] = 'Закрыть приватный канал:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Описать действия:'; +$lang['helpItemCodeAction'] = '/action Текст'; +$lang['helpItemDescDescribe'] = 'Описать действия в приватном сообщении:'; +$lang['helpItemCodeDescribe'] = '/describe Имя_пользователя Текст'; +$lang['helpItemDescIgnore'] = 'Игнорировать/принимать сообщения от пользователей:'; +$lang['helpItemCodeIgnore'] = '/ignore Имя_пользователся'; +$lang['helpItemDescIgnoreList'] = 'List ignored users:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Выгнать пользователся (Kick) (только модераторы и администраторы):'; +$lang['helpItemCodeKick'] = '/kick Имя_пользователя [Минуты]'; +$lang['helpItemDescUnban'] = 'Разбанить пользователя (Только модераторы и администраторы):'; +$lang['helpItemCodeUnban'] = '/unban Имя_пользователя'; +$lang['helpItemDescBans'] = 'Список забаненных пользователей (Только для модераторов):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Показать IP пользователся (Только модераторы и администраторы):'; +$lang['helpItemCodeWhois'] = '/whois Имя_пользователя'; +$lang['helpItemDescWho'] = 'Список доступных пользователей:'; +$lang['helpItemCodeWho'] = '/who [Имя_канала]'; +$lang['helpItemDescList'] = 'Список доступных каналов:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Бросить кубики:'; +$lang['helpItemCodeRoll'] = '/roll [количесво]d[количество сторон]'; +$lang['helpItemDescNick'] = 'Change username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Настройки'; +$lang['settingsBBCode'] = 'Разрешить BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Разрешить ссылки:'; +$lang['settingsLineBreaks'] = 'Разрешить переводы строк:'; +$lang['settingsEmoticons'] = 'Разрешить смайлики:'; +$lang['settingsAutoFocus'] = 'Автоматически ставить курсор в поле ввода:'; +$lang['settingsMaxMessages'] = 'Маскимальное количество сообщений, отображающихся в чате:'; +$lang['settingsWordWrap'] = 'Переносить длинные слова:'; +$lang['settingsMaxWordLength'] = 'Максимально допустимая длина слова, которе не будет разбито для переноса:'; +$lang['settingsDateFormat'] = 'Формат даты и времени:'; +$lang['settingsPersistFontColor'] = 'Постоянный цвет шрифта:'; +$lang['settingsAudioVolume'] = 'Громкость:'; +$lang['settingsSoundReceive'] = 'Звук для входящих сообщений:'; +$lang['settingsSoundSend'] = 'Звук для исходящих сообщений:'; +$lang['settingsSoundEnter'] = 'Звук для оповещения о новом участнике в чате:'; +$lang['settingsSoundLeave'] = 'Звук для оповещения об уходе участника из чата:'; +$lang['settingsSoundChatBot'] = 'Звук для сообщений бота:'; +$lang['settingsSoundError'] = 'Звук для оповещений об ошибках:'; +$lang['settingsBlink'] = '"Моргать" заголовком окна при новом сообщении:'; +$lang['settingsBlinkInterval'] = 'Интервал "моргания" (в миллисекундах):'; +$lang['settingsBlinkIntervalNumber'] = 'Количество "морганий":'; +$lang['playSelectedSound'] = 'Воспроизвести выбранный звук'; +$lang['requiresJavaScript'] = 'Для корректной работы чата должен быть разрешен JavaScript.'; +$lang['errorInvalidUser'] = 'Неверное имя пользователя.'; +$lang['errorUserInUse'] = 'Имя занято.'; +$lang['errorBanned'] = 'Пользователь или IP забанены.'; +$lang['errorMaxUsersLoggedIn'] = 'В чате максимальное количество пользователей. Попробуйте зайти позднее.'; +$lang['errorChatClosed'] = 'Чат закрыт в настоящий момент.'; +$lang['logsTitle'] = 'AJAX Chat - История'; +$lang['logsDate'] = 'Дата'; +$lang['logsTime'] = 'Время'; +$lang['logsSearch'] = 'Поиск'; +$lang['logsPrivateChannels'] = 'Приватные каналы'; +$lang['logsPrivateMessages'] = 'Приватные сообщения'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/sk.php b/library/ajaxchat/chat/lib/lang/sk.php new file mode 100644 index 000000000..fae99a785 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/sk.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Peter + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Meno'; +$lang['password'] = 'Heslo'; +$lang['login'] = 'Prihlásiť'; +$lang['logout'] = 'Odhlásiť'; +$lang['channel'] = 'Kanál'; +$lang['style'] = 'Štýl'; +$lang['language'] = 'Jazyk'; +$lang['inputLineBreak'] = 'Press SHIFT+ENTER to input a line break'; +$lang['messageSubmit'] = 'Poslať'; +$lang['registeredUsers'] = 'Registrovaní užívatelia'; +$lang['onlineUsers'] = 'Prihlásení užívatelia'; +$lang['toggleAutoScroll'] = 'Autoscroll on/off'; +$lang['toggleAudio'] = 'Sound on/off'; +$lang['toggleHelp'] = 'Show/hide help'; +$lang['toggleSettings'] = 'Show/hide settings'; +$lang['toggleOnlineList'] = 'Show/hide online list'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citovať'; +$lang['bbCodeLabelCode'] = 'Kód'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Farba písma'; +$lang['bbCodeTitleBold'] = 'Tučné: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Kurzívou: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Podčiarknuté: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Citovať text: [quote]text[/quote] alebo [quote=autor]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Zobraziť kód: [code]kód[/code]'; +$lang['bbCodeTitleURL'] = 'Vložiť URL: [url]http://www.example.org/[/url] alebo [url=http://www.example.org/]text[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Farba písma: [color=red]text[/color]'; +$lang['help'] = 'Nápoveda'; +$lang['helpItemDescJoin'] = 'Prihlásenie do kanálu:'; +$lang['helpItemCodeJoin'] = '/join Názov_kanálu'; +$lang['helpItemDescJoinCreate'] = 'Vytvoriť súkromný chat (Iba pre registrovaných užívateľov):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Pozvať niekoho k súkromnému rozhovoru:'; +$lang['helpItemCodeInvite'] = '/invite Meno_užívateľa'; +$lang['helpItemDescUninvite'] = 'Odriecť pozvanie:'; +$lang['helpItemCodeUninvite'] = '/uninvite Meno_užívateľa'; +$lang['helpItemDescLogout'] = 'Odhlásenie z chatu:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Súkromná správa:'; +$lang['helpItemCodePrivateMessage'] = '/msg Meno_užívateľa Text'; +$lang['helpItemDescQueryOpen'] = 'Otvoriť súkromný kanál:'; +$lang['helpItemCodeQueryOpen'] = '/query Meno_užívateľa'; +$lang['helpItemDescQueryClose'] = 'Zavrieť súkromný kanál:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Opísať akciu:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'Opísať akciu v súkromnej správe:'; +$lang['helpItemCodeDescribe'] = '/describe Meno_užívateľa Text'; +$lang['helpItemDescIgnore'] = 'Ignoruj/akceptuj správu od užívateľa:'; +$lang['helpItemCodeIgnore'] = '/ignore (accept) Meno_užívateľa'; +$lang['helpItemDescIgnoreList'] = 'Zoznam zamietnutých užívateľov:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Display user channel:'; +$lang['helpItemCodeWhereis'] = '/whereis Username'; +$lang['helpItemDescKick'] = 'Vylúčiť užívateľa (Iba Moderátori):'; +$lang['helpItemCodeKick'] = '/kick Meno_užívateľa [čas vylúčenia v minútach]'; +$lang['helpItemDescUnban'] = 'Prijať vylúčeného užívateľa (Iba Moderátori):'; +$lang['helpItemCodeUnban'] = '/unban Meno_užívateľa'; +$lang['helpItemDescBans'] = 'Zoznam vylúčených užívateľov (Iba Moderátori):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Zobraz IP užívateľa(Iba Moderátori):'; +$lang['helpItemCodeWhois'] = '/whois Meno_užívateľa'; +$lang['helpItemDescWho'] = 'Zoznam prihlásených užívateľov:'; +$lang['helpItemCodeWho'] = '/who [Meno_kanálu]'; +$lang['helpItemDescList'] = 'Zoznam dostupných kanálov:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Hodiť kocky:'; +$lang['helpItemCodeRoll'] = '/roll [číslo]d[strana]'; +$lang['helpItemDescNick'] = 'Change username:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = 'Settings'; +$lang['settingsBBCode'] = 'Enable BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Enable hyperlinks:'; +$lang['settingsLineBreaks'] = 'Enable line breaks:'; +$lang['settingsEmoticons'] = 'Enable emoticons:'; +$lang['settingsAutoFocus'] = 'Automatically set the focus on the input field:'; +$lang['settingsMaxMessages'] = 'Maximum number of messages in the chatlist:'; +$lang['settingsWordWrap'] = 'Enable wrapping of long words:'; +$lang['settingsMaxWordLength'] = 'Maximum length of a word before it gets wrapped:'; +$lang['settingsDateFormat'] = 'Format of date and time display:'; +$lang['settingsPersistFontColor'] = 'Persist font color:'; +$lang['settingsAudioVolume'] = 'Sound Volume:'; +$lang['settingsSoundReceive'] = 'Sound for incoming messages:'; +$lang['settingsSoundSend'] = 'Sound for outgoing messages:'; +$lang['settingsSoundEnter'] = 'Sound for login and channel enter messages:'; +$lang['settingsSoundLeave'] = 'Sound for logout and channel leave messages:'; +$lang['settingsSoundChatBot'] = 'Sound for chatbot messages:'; +$lang['settingsSoundError'] = 'Sound for error messages:'; +$lang['settingsBlink'] = 'Blink window title on new messages:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'Play selected sound'; +$lang['requiresJavaScript'] = 'Pre tento chat sa vyžaduje nainštalovať JavaScript.'; +$lang['errorInvalidUser'] = 'Neplatné užívateľské meno.'; +$lang['errorUserInUse'] = 'Použité užívateľské meno.'; +$lang['errorBanned'] = 'Užívateľ alebo IP je zakázané.'; +$lang['errorMaxUsersLoggedIn'] = 'Chat dosiahol maximálny počet prihlásených užívateľov.'; +$lang['errorChatClosed'] = 'Chat je momentálne nedostupný.'; +$lang['logsTitle'] = 'AJAX Chat - Záznamy'; +$lang['logsDate'] = 'Dátum'; +$lang['logsTime'] = 'Čas'; +$lang['logsSearch'] = 'Vyhľadávanie'; +$lang['logsPrivateChannels'] = 'Súkromný kanál'; +$lang['logsPrivateMessages'] = 'Súkromná správa'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/sl.php b/library/ajaxchat/chat/lib/lang/sl.php new file mode 100644 index 000000000..6e4941532 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/sl.php @@ -0,0 +1,124 @@ +<?php
+/*
+ * @package AJAX_Chat
+ * @author Sebastian Tschan
+ * @author Valter Pepelko
+ * @copyright (c) Sebastian Tschan
+ * @license Modified MIT License
+ * @link https://blueimp.net/ajax/
+ */
+
+$lang = array();
+$lang['title'] = 'Klepetalnica';
+$lang['userName'] = 'Uporabniško ime';
+$lang['password'] = 'Geslo';
+$lang['login'] = 'Prijava';
+$lang['logout'] = 'Odjava';
+$lang['channel'] = 'Soba';
+$lang['style'] = 'Stil';
+$lang['language'] = 'Jezik';
+$lang['inputLineBreak'] = 'Pritisnite SHIFT+ENTER za novo vrstico';
+$lang['messageSubmit'] = 'Pošlji';
+$lang['registeredUsers'] = 'Registrirani uporabniki';
+$lang['onlineUsers'] = 'Prisotni';
+$lang['toggleAutoScroll'] = 'Samodejno pomikanje besedila vklop/izklop';
+$lang['toggleAudio'] = 'Zvok vklop/izklop';
+$lang['toggleHelp'] = 'Pomoč prikaži/skrij';
+$lang['toggleSettings'] = 'Nastavitve prikaži/skrij';
+$lang['toggleOnlineList'] = 'Prisotni prikaži/skrij';
+$lang['bbCodeLabelBold'] = 'b';
+$lang['bbCodeLabelItalic'] = 'i';
+$lang['bbCodeLabelUnderline'] = 'u';
+$lang['bbCodeLabelQuote'] = 'Citiranje';
+$lang['bbCodeLabelCode'] = 'Koda';
+$lang['bbCodeLabelURL'] = 'URL';
+$lang['bbCodeLabelImg'] = 'Slika';
+$lang['bbCodeLabelColor'] = 'Barva črk';
+$lang['bbCodeTitleBold'] = 'Odebeljeno besedilo: [b]besedilo[/b]';
+$lang['bbCodeTitleItalic'] = 'Poševno besedilo: [i]besedilo[/i]';
+$lang['bbCodeTitleUnderline'] = 'Podčrtano besedilo: [u]besedilo[/u]';
+$lang['bbCodeTitleQuote'] = 'Citirano besedilo: [quote]besedilo[/quote] ali [quote=autor]besedilo[/quote]';
+$lang['bbCodeTitleCode'] = 'Prikazovanje kode: [code]koda[/code]';
+$lang['bbCodeTitleURL'] = 'Vnesi URL: [url]http://www.primer.org/[/url] ali [url=http://www.primer.org/]besedilo[/url]';
+$lang['bbCodeTitleImg'] = 'Vstavi sliko: [img]http://priemr.org/slika.jpg[/img]';
+$lang['bbCodeTitleColor'] = 'Barva črk: [color=red]besedilo[/color]';
+$lang['help'] = 'Pomoč';
+$lang['helpItemDescJoin'] = 'Vstopi v sobo:';
+$lang['helpItemCodeJoin'] = '/join Ime sobe';
+$lang['helpItemDescJoinCreate'] = 'Izdelaj privatno sobo (samo registrirani uporabniki):';
+$lang['helpItemCodeJoinCreate'] = '/join';
+$lang['helpItemDescInvite'] = 'Povabi uporabnika v privatno sobo:';
+$lang['helpItemCodeInvite'] = '/invite Uporabnik';
+$lang['helpItemDescUninvite'] = 'Preklic povabila v privatno sobo uporabniku:';
+$lang['helpItemCodeUninvite'] = '/uninvite Uporabnik';
+$lang['helpItemDescLogout'] = 'Odjava:';
+$lang['helpItemCodeLogout'] = '/quit';
+$lang['helpItemDescPrivateMessage'] = 'Privatno sporočilo:';
+$lang['helpItemCodePrivateMessage'] = '/msg Uporabnik Besedilo sporočila';
+$lang['helpItemDescQueryOpen'] = 'Odpri privatno sobo:';
+$lang['helpItemCodeQueryOpen'] = '/query Uporabnik';
+$lang['helpItemDescQueryClose'] = 'Zapri privatno sobo:';
+$lang['helpItemCodeQueryClose'] = '/query';
+$lang['helpItemDescAction'] = 'Opiši akcijo:';
+$lang['helpItemCodeAction'] = '/action Besedilo';
+$lang['helpItemDescDescribe'] = 'Opiši akcijo v privatnem sporočilu:';
+$lang['helpItemCodeDescribe'] = '/describe Uporabnik Besedilo';
+$lang['helpItemDescIgnore'] = 'Ignoriraj sporočila uporabnika:';
+$lang['helpItemCodeIgnore'] = '/ignore Uporabnik';
+$lang['helpItemDescIgnoreList'] = 'Seznam ignoriranih uporabnikov:';
+$lang['helpItemCodeIgnoreList'] = '/ignore';
+$lang['helpItemDescWhereis'] = 'Prikaži v kateri sobi je uporabnik:';
+$lang['helpItemCodeWhereis'] = '/whereis Uporabnik';
+$lang['helpItemDescKick'] = 'Prepovej uporabnika (samo Moderatorji):';
+$lang['helpItemCodeKick'] = '/kick Uporabnik [čas prepovedi v minutah]';
+$lang['helpItemDescUnban'] = 'Prekliči prepoved uporabniku (samo Moderatorji):';
+$lang['helpItemCodeUnban'] = '/unban Uporabnik';
+$lang['helpItemDescBans'] = 'Seznam prepovedanih uporabnikov (samo Moderatorji):';
+$lang['helpItemCodeBans'] = '/bans';
+$lang['helpItemDescWhois'] = 'Prikaži IP uporabnika (samo Moderatorji):';
+$lang['helpItemCodeWhois'] = '/whois Uporabnik';
+$lang['helpItemDescWho'] = 'Seznam prijavljenih uporabnikov:';
+$lang['helpItemCodeWho'] = '/who [Ime sobe]';
+$lang['helpItemDescList'] = 'Seznam dostopnih sob:';
+$lang['helpItemCodeList'] = '/list';
+$lang['helpItemDescRoll'] = 'Vrzi kocko:';
+$lang['helpItemCodeRoll'] = '/roll [število]d[strani]';
+$lang['helpItemDescNick'] = 'Zamenjaj Uporabniško ime:';
+$lang['helpItemCodeNick'] = '/nick Uporabnik';
+$lang['settings'] = 'Nastavitve';
+$lang['settingsBBCode'] = 'Omogoči BB kodo:';
+$lang['settingsBBCodeImages'] = 'Omogoči slikovno BBCode:';
+$lang['settingsBBCodeColors'] = 'Omogoči barvo črk BBCode:';
+$lang['settingsHyperLinks'] = 'Omogoči hiperlinke:';
+$lang['settingsLineBreaks'] = 'Omogoči nove vrstice:';
+$lang['settingsEmoticons'] = 'Omogoči smeške:';
+$lang['settingsAutoFocus'] = 'Samodejno naravnaj fokus na polje za vnos besedila:';
+$lang['settingsMaxMessages'] = 'Maksimalno število sporočil na chat seznamu:';
+$lang['settingsWordWrap'] = 'Omogoči ovijanje dolgih besed:';
+$lang['settingsMaxWordLength'] = 'Maksimalna dolžina besed pred ovijanjem:';
+$lang['settingsDateFormat'] = 'Format prikaza datuma i ure:';
+$lang['settingsPersistFontColor'] = 'Stalna barva črk:';
+$lang['settingsAudioVolume'] = 'Višina zvoka:';
+$lang['settingsSoundReceive'] = 'Zvok za prispela sporočila:';
+$lang['settingsSoundSend'] = 'Zvok za poslana sporočila:';
+$lang['settingsSoundEnter'] = 'Zvok za prijavo in vstop v sobo:';
+$lang['settingsSoundLeave'] = 'Zvok za odjavo in izhod iz sobe:';
+$lang['settingsSoundChatBot'] = 'Zvok za chatbot sporočila:';
+$lang['settingsSoundError'] = 'Zvuk za sporočila o napakah:';
+$lang['settingsBlink'] = 'Trepetanje imena okna za nova sporočila:';
+$lang['settingsBlinkInterval'] = 'Interval trepetanja v milisekundah:';
+$lang['settingsBlinkIntervalNumber'] = 'Število intervalov trepetanja:';
+$lang['playSelectedSound'] = 'Reprodukcija izbranega zvoka';
+$lang['requiresJavaScript'] = 'Za uporabo klepetalnice moraš imeti nameščen JavaScript!';
+$lang['errorInvalidUser'] = 'Napačno uporabniško ime!';
+$lang['errorUserInUse'] = 'Uporabnik je že prijavljen!';
+$lang['errorBanned'] = 'Uporabnik ali ta IP je prepovedan!';
+$lang['errorMaxUsersLoggedIn'] = 'Na kleptu je prijavljeno maksimalno število uporabnikov!';
+$lang['errorChatClosed'] = 'Klepet je trenutno nedostopen!';
+$lang['logsTitle'] = 'Klepet - Beležke';
+$lang['logsDate'] = 'Datum';
+$lang['logsTime'] = 'Ura';
+$lang['logsSearch'] = 'Iskanje';
+$lang['logsPrivateChannels'] = 'Privatne sobe';
+$lang['logsPrivateMessages'] = 'Privatna sporočila';
+?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/sr.php b/library/ajaxchat/chat/lib/lang/sr.php new file mode 100644 index 000000000..a14ba5512 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/sr.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Saša Stojanović + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Korisničko ime'; +$lang['password'] = 'Lozinka'; +$lang['login'] = 'Prijava'; +$lang['logout'] = 'Odjava'; +$lang['channel'] = 'Soba'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Jezik'; +$lang['inputLineBreak'] = 'Pritisnite SHIFT+ENTER za novi red'; +$lang['messageSubmit'] = 'Pošalji'; +$lang['registeredUsers'] = 'Registrovani korisnici'; +$lang['onlineUsers'] = 'Prisutni korisnici'; +$lang['toggleAutoScroll'] = 'Automatsko pomeranje teksta uključeno/isključeno'; +$lang['toggleAudio'] = 'Zvuk uključen/isključen'; +$lang['toggleHelp'] = 'Pomoć prikaži/sakrij'; +$lang['toggleSettings'] = 'Podešavanja prikaži/sakrij'; +$lang['toggleOnlineList'] = 'Prisutne korisnike prikaži/sakrij'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citiranje'; +$lang['bbCodeLabelCode'] = 'Kod'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Boja fonta'; +$lang['bbCodeTitleBold'] = 'Podebljan tekst: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Iskrivljen tekst: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Podvučen tekst: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Citiran tekst: [quote]text[/quote] ili [quote=autor]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Prikazivanje koda: [code]kod[/code]'; +$lang['bbCodeTitleURL'] = 'Unesi URL: [url]http://www.example.org/[/url] ili [url=http://www.example.org/]text[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Boja fonta: [color=red]text[/color]'; +$lang['help'] = 'Pomoć'; +$lang['helpItemDescJoin'] = 'Priključi se sobi:'; +$lang['helpItemCodeJoin'] = '/join Naziv sobe'; +$lang['helpItemDescJoinCreate'] = 'Napravi privatnu sobu (samo registrovani korisnici):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Pozovi korisnika u privatnu sobu:'; +$lang['helpItemCodeInvite'] = '/invite Korisnik'; +$lang['helpItemDescUninvite'] = 'Opoziv poziva u privatnu sobu korisnika:'; +$lang['helpItemCodeUninvite'] = '/uninvite Korisnik'; +$lang['helpItemDescLogout'] = 'Odjavljivanje:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privatna poruka:'; +$lang['helpItemCodePrivateMessage'] = '/msg Korisnik Tekst poruke'; +$lang['helpItemDescQueryOpen'] = 'Otvori privatnu sobu:'; +$lang['helpItemCodeQueryOpen'] = '/query Korisnik'; +$lang['helpItemDescQueryClose'] = 'Zatvori privatnu sobu:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Opiši akciju:'; +$lang['helpItemCodeAction'] = '/action Tekst'; +$lang['helpItemDescDescribe'] = 'Opiši akciju u privatnoj poruci:'; +$lang['helpItemCodeDescribe'] = '/describe Korisnik Tekst'; +$lang['helpItemDescIgnore'] = 'Prikazuj/neprikazuj poruke od korisnika:'; +$lang['helpItemCodeIgnore'] = '/ignore Korisnik'; +$lang['helpItemDescIgnoreList'] = 'Lista ignorisanih korisnika:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Prikaži u kojoj sobi je korisnik:'; +$lang['helpItemCodeWhereis'] = '/whereis Korisnik'; +$lang['helpItemDescKick'] = 'Zabrani korisnika (samo za Moderatore):'; +$lang['helpItemCodeKick'] = '/kick Korisnik [vreme zabrane u minutima]'; +$lang['helpItemDescUnban'] = 'Opozovi zabranu korisnika (samo za Moderatore):'; +$lang['helpItemCodeUnban'] = '/unban Korisnik'; +$lang['helpItemDescBans'] = 'Lista zabranjenih korisnika (samo za Moderatore):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Prikaži IP korisnika (samo za Moderatore):'; +$lang['helpItemCodeWhois'] = '/whois Korisnik'; +$lang['helpItemDescWho'] = 'Lista prijavljenih korisnika:'; +$lang['helpItemCodeWho'] = '/who [Ime sobe]'; +$lang['helpItemDescList'] = 'Lista dostupnih soba:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Baci kocku:'; +$lang['helpItemCodeRoll'] = '/roll [broj]d[strana]'; +$lang['helpItemDescNick'] = 'Promeni Korisničko ime:'; +$lang['helpItemCodeNick'] = '/nick Korisnik'; +$lang['settings'] = 'Podešavanja'; +$lang['settingsBBCode'] = 'Omogući BB kod:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Omogući hiperlinkove:'; +$lang['settingsLineBreaks'] = 'Omugući novi red:'; +$lang['settingsEmoticons'] = 'Omugući emocije:'; +$lang['settingsAutoFocus'] = 'Automatski podesi fokus na polje za unos teksta:'; +$lang['settingsMaxMessages'] = 'Maksimalni broj poruka u chat listi:'; +$lang['settingsWordWrap'] = 'Omogući omotavanje dugačkih reči:'; +$lang['settingsMaxWordLength'] = 'Maksimalna dužina reči pre nego što se omota:'; +$lang['settingsDateFormat'] = 'Format prikaza datuma i vremena:'; +$lang['settingsPersistFontColor'] = 'Stalna boja fonta:'; +$lang['settingsAudioVolume'] = 'Jačina zvuka:'; +$lang['settingsSoundReceive'] = 'Zvuk za primljene poruke:'; +$lang['settingsSoundSend'] = 'Zvuk za poslate poruke:'; +$lang['settingsSoundEnter'] = 'Zvuk za prijavljivanje i ulazak u sobu:'; +$lang['settingsSoundLeave'] = 'Zvuk za odjavljivanje i izlazak iz sobe:'; +$lang['settingsSoundChatBot'] = 'Zvuk za chatbot poruke:'; +$lang['settingsSoundError'] = 'Zvuk za poruke o grešci:'; +$lang['settingsBlink'] = 'Treptanje naziva prozora za nove poruke:'; +$lang['settingsBlinkInterval'] = 'Interval treptanja u milisekundama:'; +$lang['settingsBlinkIntervalNumber'] = 'Broj intervala treptanja:'; +$lang['playSelectedSound'] = 'Reprodukcija selektovanog zvuka'; +$lang['requiresJavaScript'] = 'JavaScript je neophodan za ovaj chat.'; +$lang['errorInvalidUser'] = 'Pogrešno korisničko ime.'; +$lang['errorUserInUse'] = 'Korisnik je već prijavljen.'; +$lang['errorBanned'] = 'Korisnik ili IP je zabranjen.'; +$lang['errorMaxUsersLoggedIn'] = 'Na chatu je prijavljen maksimalni broj korisnika.'; +$lang['errorChatClosed'] = 'Chat je trenutno nedostupan.'; +$lang['logsTitle'] = 'AJAX Chat - Beleške'; +$lang['logsDate'] = 'Datum'; +$lang['logsTime'] = 'Vreme'; +$lang['logsSearch'] = 'Pretraga'; +$lang['logsPrivateChannels'] = 'Privatne sobe'; +$lang['logsPrivateMessages'] = 'Privatne poruke'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/sv.php b/library/ajaxchat/chat/lib/lang/sv.php new file mode 100644 index 000000000..87f03a0ce --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/sv.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Eric [June 7,2008] + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Användarnamn'; +$lang['password'] = 'Lösenord'; +$lang['login'] = 'Logga In'; +$lang['logout'] = 'Logga Ut'; +$lang['channel'] = 'Kanal'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Språk'; +$lang['inputLineBreak'] = 'Håll ner SHIFT+ENTER för att göra ett radbryt'; +$lang['messageSubmit'] = 'Skicka'; +$lang['registeredUsers'] = 'Registerade Användare'; +$lang['onlineUsers'] = 'Användare OnLine'; +$lang['toggleAutoScroll'] = 'Autoscroll av/på'; +$lang['toggleAudio'] = 'Ljud av/på'; +$lang['toggleHelp'] = 'Visa/göm hjälp'; +$lang['toggleSettings'] = 'Visa/göm inställningar'; +$lang['toggleOnlineList'] = 'Visa/göm OnLine-listan'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Citera'; +$lang['bbCodeLabelCode'] = 'Kod'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Textfärg'; +$lang['bbCodeTitleBold'] = 'Fet text: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Kursiv text: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Understruken text: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Citera text: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Visa kod: [code]code[/code]'; +$lang['bbCodeTitleURL'] = 'Lägg till URL: [url]http://www.example.org/[/url] or [url=http://www.example.org/]text[/url]'; +$lang['bbCodeTitleImg'] = 'Infoga bild: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Textfärg: [color=red]text[/color]'; +$lang['help'] = 'Hjälp'; +$lang['helpItemDescJoin'] = 'Anslut till kanal:'; +$lang['helpItemCodeJoin'] = '/join Kanalens namn'; +$lang['helpItemDescJoinCreate'] = 'Skapa privat rum (Endast registrerade användare):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Bjud in någon (eg till ett privat rum):'; +$lang['helpItemCodeInvite'] = '/invite Användare'; +$lang['helpItemDescUninvite'] = 'Upphäv inbjudan:'; +$lang['helpItemCodeUninvite'] = '/uninvite Användare'; +$lang['helpItemDescLogout'] = 'Logga ut från Chatten:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Privat meddelande:'; +$lang['helpItemCodePrivateMessage'] = '/msg Användare Text'; +$lang['helpItemDescQueryOpen'] = 'Öppna privat kanal:'; +$lang['helpItemCodeQueryOpen'] = '/query Användare'; +$lang['helpItemDescQueryClose'] = 'Stäng privat kanal:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Beskriv händelse:'; +$lang['helpItemCodeAction'] = '/action Text'; +$lang['helpItemDescDescribe'] = 'Beskriv händelse i privat meddelande:'; +$lang['helpItemCodeDescribe'] = '/describe Användare Text'; +$lang['helpItemDescIgnore'] = 'Ignorera/acceptera meddelande från användare:'; +$lang['helpItemCodeIgnore'] = '/ignore Användare'; +$lang['helpItemDescIgnoreList'] = 'Lista ignorerade användare:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Visa användare & kanal:'; +$lang['helpItemCodeWhereis'] = '/whereis Användarnamn'; +$lang['helpItemDescKick'] = 'Sparka användare (Endast moderatorer):'; +$lang['helpItemCodeKick'] = '/kick Användare [Minuter bannad]'; +$lang['helpItemDescUnban'] = 'Upphäv banning av användare (Endast moderatorer):'; +$lang['helpItemCodeUnban'] = '/unban Användare'; +$lang['helpItemDescBans'] = 'Lista bannade användare (Endast moderatorer):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Visa användares IP (Endast moderatorer):'; +$lang['helpItemCodeWhois'] = '/whois Användare'; +$lang['helpItemDescWho'] = 'Lista användare online:'; +$lang['helpItemCodeWho'] = '/who [Kanalnamn]'; +$lang['helpItemDescList'] = 'Lista tillgängliga kanaler:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Rulla tärning:'; +$lang['helpItemCodeRoll'] = '/roll [siffra]d[sidor]'; +$lang['helpItemDescNick'] = 'Ändra användarnamn:'; +$lang['helpItemCodeNick'] = '/nick Användarnamn'; +$lang['settings'] = 'Inställningar'; +$lang['settingsBBCode'] = 'Aktivera BBCode:'; +$lang['settingsBBCodeImages'] = 'Aktivera BBCode bilder:'; +$lang['settingsBBCodeColors'] = 'Enable BBCode textfärg:'; +$lang['settingsHyperLinks'] = 'Aktivera länkar:'; +$lang['settingsLineBreaks'] = 'Aktivera radbryt:'; +$lang['settingsEmoticons'] = 'Aktivera smiley\'s:'; +$lang['settingsAutoFocus'] = 'Sätt fokus automatiskt på skrivraden:'; +$lang['settingsMaxMessages'] = 'Maximalt antal meddelanden i Chatlistan:'; +$lang['settingsWordWrap'] = 'Aktivera "wrapping" av långa ord:'; +$lang['settingsMaxWordLength'] = 'Maxlängd på ord innan det blir avdelat:'; +$lang['settingsDateFormat'] = 'Visningsformat av datum och tid:'; +$lang['settingsPersistFontColor'] = 'Behåll textfärg:'; +$lang['settingsAudioVolume'] = 'Volym:'; +$lang['settingsSoundReceive'] = 'Ljud för inkommande meddelanden:'; +$lang['settingsSoundSend'] = 'Ljud för utgående meddelanden:'; +$lang['settingsSoundEnter'] = 'Ljud för Logga in/Kanal meddelanden:'; +$lang['settingsSoundLeave'] = 'Ljud för Logga ut/lämna Kanal meddelanden:'; +$lang['settingsSoundChatBot'] = 'Ljud för Chatbot meddelanden:'; +$lang['settingsSoundError'] = 'Ljud för felmeddelanden:'; +$lang['settingsBlink'] = 'Blinka fönstrets titel vid nya meddelanden:'; +$lang['settingsBlinkInterval'] = 'Blinkintervall i millisekunder:'; +$lang['settingsBlinkIntervalNumber'] = 'Antal blinkintervaller:'; +$lang['playSelectedSound'] = 'Spela valt ljud'; +$lang['requiresJavaScript'] = 'JavaScript krävs för denna Chat.'; +$lang['errorInvalidUser'] = 'Ogiltigt användarnamn.'; +$lang['errorUserInUse'] = 'Användarnamnet är redan i bruk.'; +$lang['errorBanned'] = 'Användaren eller IP-numret är bannat.'; +$lang['errorMaxUsersLoggedIn'] = 'Chatten är full. Max antal användare är inloggade.'; +$lang['errorChatClosed'] = 'Chatten är stängd för tillfället.'; +$lang['logsTitle'] = 'AJAX Chat - Loggfiler'; +$lang['logsDate'] = 'Datum'; +$lang['logsTime'] = 'Tid'; +$lang['logsSearch'] = 'Sök'; +$lang['logsPrivateChannels'] = 'Privata Kanaler'; +$lang['logsPrivateMessages'] = 'Privata Meddelanden'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/th.php b/library/ajaxchat/chat/lib/lang/th.php new file mode 100644 index 000000000..7ed3b1ef0 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/th.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + * @Translate by Charge01 @ http://www.thaira2lovers.co.cc + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'ชื่อผู้ใช้'; +$lang['password'] = 'รหัสผ่าน'; +$lang['login'] = 'เข้าสู่ระบบ'; +$lang['logout'] = 'ออกจากระบบ'; +$lang['channel'] = 'ห้องแชท'; +$lang['style'] = 'รูปแบบ'; +$lang['language'] = 'ภาษา'; +$lang['inputLineBreak'] = 'กด SHIFT+ENTER เพื่อเว้นบรรทัด'; +$lang['messageSubmit'] = 'ส่ง'; +$lang['registeredUsers'] = 'ผู้ใช้ที่ลงทะเบียนแล้ว'; +$lang['onlineUsers'] = 'ผู้ใช้ออนไลน์อยู่'; +$lang['toggleAutoScroll'] = 'เลื่อนอัตโนมัติ เปิด/ปิด'; +$lang['toggleAudio'] = 'เสียง เปิด/ปิด'; +$lang['toggleHelp'] = 'ช่วยเหลือ แสดง/ซ่อน'; +$lang['toggleSettings'] = 'ตั้งค่า แสดง/ซ่อน'; +$lang['toggleOnlineList'] = 'ผู้ใช้ออนไลน์ แสดง/ซ่อน'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'อ้างอิง'; +$lang['bbCodeLabelCode'] = 'โค๊ด'; +$lang['bbCodeLabelURL'] = 'ลิงค์'; +$lang['bbCodeLabelImg'] = 'ภาพ'; +$lang['bbCodeLabelColor'] = 'สีอักษร'; +$lang['bbCodeTitleBold'] = 'อักษรตัวหน้า: [b]ข้อความ[/b]'; +$lang['bbCodeTitleItalic'] = 'อักษรตัวเอียง: [i]ข้อความ[/i]'; +$lang['bbCodeTitleUnderline'] = 'อักษรขีดเส้นใต้: [u]ข้อความ[/u]'; +$lang['bbCodeTitleQuote'] = 'อ้างอิงข้อความ: [quote]ข้อความ[/quote] หรือ [quote=เจ้าของข้อความ]ข้อความ[/quote]'; +$lang['bbCodeTitleCode'] = 'แสดงโค๊ด: [code]โค๊ด[/code]'; +$lang['bbCodeTitleURL'] = 'แทรกลิงค์: [url]http://example.org[/url] or [url=http://example.org]ข้อความ[/url]'; +$lang['bbCodeTitleImg'] = 'แทรกภาพ: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'ตัวอักษรสี: [color=red]ข้อความ[/color]'; +$lang['help'] = 'ช่วยเหลือ'; +$lang['helpItemDescJoin'] = 'ร่วมห้องแชท:'; +$lang['helpItemCodeJoin'] = '/join ชื่อห้องแชท'; +$lang['helpItemDescJoinCreate'] = 'สร้างห้องส่วนตัว (สำหรับสมาชิกเท่านั้น):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'เชิญใครสักคน (เช่น คุยในห้องส่วนตัว):'; +$lang['helpItemCodeInvite'] = '/invite ชื่อผู้ใช้'; +$lang['helpItemDescUninvite'] = 'ถอนคำเชิญ:'; +$lang['helpItemCodeUninvite'] = '/uninvite ชื่อผู้ใช้'; +$lang['helpItemDescLogout'] = 'ออกจากระบบห้องแชท:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'ข้อความส่วนตัว:'; +$lang['helpItemCodePrivateMessage'] = '/msg ชื่อผู้ใช้ ข้อความ'; +$lang['helpItemDescQueryOpen'] = 'เปิดห้องส่วนตัว:'; +$lang['helpItemCodeQueryOpen'] = '/query ชื่อผู้ใช้'; +$lang['helpItemDescQueryClose'] = 'ปิดห้องส่วนตัว:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'บอกสิ่งกระทำ:'; +$lang['helpItemCodeAction'] = '/action สิ่งที่ำกำลังทำ'; +$lang['helpItemDescDescribe'] = 'บอกสิ่งที่กระทำในข้อความส่วนตัว:'; +$lang['helpItemCodeDescribe'] = '/describe ชื่อผู้ใช้ ข้อความ'; +$lang['helpItemDescIgnore'] = 'ไม่สนใจ/ยอมรับ ข้อความจากผู้ใช้:'; +$lang['helpItemCodeIgnore'] = '/ignore ชื่อผู้ใช้'; +$lang['helpItemDescIgnoreList'] = 'รายการผู้ใช้ที่ไม่สนใจ:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'แสดงผู้ใช้อยู่ในห้อง:'; +$lang['helpItemCodeWhereis'] = '/whereis ชื่อผู้ใช้'; +$lang['helpItemDescKick'] = 'ไล่ผู้ใช้ (ผู้ดูแลเท่านั้น):'; +$lang['helpItemCodeKick'] = '/kick ผู้ใช้ [แบนในหนึ่งนาที]'; +$lang['helpItemDescUnban'] = 'ยกเลิกแบนผู้ใช้ (ผู้ดูแลเท่านั้น):'; +$lang['helpItemCodeUnban'] = '/unban ชื่อผู้ใช้'; +$lang['helpItemDescBans'] = 'รายการผู้ใช้ถูกแบน (ผู้ดูแลเท่านั้น):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'แสดง IP ของผู้ใช้ (ผู้ดูแลเท่านั้น):'; +$lang['helpItemCodeWhois'] = '/whois ชื่อผู้ใช้'; +$lang['helpItemDescWho'] = 'รายชื่อผู้ใช้ที่ออนไลน์:'; +$lang['helpItemCodeWho'] = '/who [ชื่อห้อง]'; +$lang['helpItemDescList'] = 'รายชื่อห้องที่มีอยู่:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'ทอยลูกเต๋า:'; +$lang['helpItemCodeRoll'] = '/roll [เลข]d[ด้าน]'; +$lang['helpItemDescNick'] = 'เปลี่ยนชื่อผู้ใช้:'; +$lang['helpItemCodeNick'] = '/nick ชื่อผู้ใช้ใหม่'; +$lang['settings'] = 'ตั้งค่า'; +$lang['settingsBBCode'] = 'เปิดใช้งาน BBCode:'; +$lang['settingsBBCodeImages'] = 'เปิดใช้งาน BBCode ภาพ:'; +$lang['settingsBBCodeColors'] = 'เปิดใช้งาน อักษรสี BBCode:'; +$lang['settingsHyperLinks'] = 'เปิดใช้งานลิงค์:'; +$lang['settingsLineBreaks'] = 'เปิดใช้งานการเว้นบรรทัด:'; +$lang['settingsEmoticons'] = 'เปิดใช้งาน รูปแสดงอารมณ์:'; +$lang['settingsAutoFocus'] = 'ตั้งโฟกัสในช่องพิมพ์อัตโนมัติ:'; +$lang['settingsMaxMessages'] = 'อักษรที่สามารถให้พิมพ์ได้มากสุดในข้อความ:'; +$lang['settingsWordWrap'] = 'เปิดใช้งานการเว้นบรรทัดข้อความที่ยาว:'; +$lang['settingsMaxWordLength'] = 'ความาวของคำก่อนที่จะเว้นบรรทัดใหม่ให้:'; +$lang['settingsDateFormat'] = 'รูปแบบวันที่และเวลา:'; +$lang['settingsPersistFontColor'] = 'สีอักษรทั้งข้อความ:'; +$lang['settingsAudioVolume'] = 'ระดับเสียง:'; +$lang['settingsSoundReceive'] = 'เสียงสำหรับข้อความเข้า:'; +$lang['settingsSoundSend'] = 'เสียงสำหรับข้อความออกไป:'; +$lang['settingsSoundEnter'] = 'เสียงสำหรับเข้าระบบและเข้าห้อง:'; +$lang['settingsSoundLeave'] = 'เสียงสำหรับออกจากระบบและออกจากห้อง:'; +$lang['settingsSoundChatBot'] = 'เสียงสำหรับข้อความจาำกระบบ:'; +$lang['settingsSoundError'] = 'เสียงสำหรับข้อความผิดพลาด:'; +$lang['settingsBlink'] = 'มีสัญญาณ กระพริบบน Title Bar เมื่อมีข้อความใหม่:'; +$lang['settingsBlinkInterval'] = 'Blink interval in milliseconds:'; +$lang['settingsBlinkIntervalNumber'] = 'Number of blink intervals:'; +$lang['playSelectedSound'] = 'เล่นเสียงที่เลือก'; +$lang['requiresJavaScript'] = 'ต้องการจาวาสคริปสำหรับห้องแชท'; +$lang['errorInvalidUser'] = 'ชื่อผู้ใช้ผิดพลาด'; +$lang['errorUserInUse'] = 'ชื่อผู้ใช้นี้กำลังใช้งานอยู่'; +$lang['errorBanned'] = 'ผู้ใช้นี้หรือ IP นี้ถูกแบน'; +$lang['errorMaxUsersLoggedIn'] = 'ห้องแชทเต็ม'; +$lang['errorChatClosed'] = 'ห้องแชทถูกปิดชั่วคราว'; +$lang['logsTitle'] = 'AJAX Chat - บันทึกการใช้งาน'; +$lang['logsDate'] = 'วันที่'; +$lang['logsTime'] = 'เวลา'; +$lang['logsSearch'] = 'ค้นหา'; +$lang['logsPrivateChannels'] = 'ห้องส่วนตัว'; +$lang['logsPrivateMessages'] = 'ข้อความส่วนตัว'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/tr.php b/library/ajaxchat/chat/lib/lang/tr.php new file mode 100644 index 000000000..00f7dfaa6 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/tr.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Cydonian + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Üye adı'; +$lang['password'] = 'Şifre'; +$lang['login'] = 'Giriş'; +$lang['logout'] = 'Çıkış'; +$lang['channel'] = 'Kanal'; +$lang['style'] = 'Stil'; +$lang['language'] = 'Dil'; +$lang['inputLineBreak'] = 'Bir satır ara için SHIFT+ENTER tuşlarına basınız'; +$lang['messageSubmit'] = 'Gönder'; +$lang['registeredUsers'] = 'Kayıtlı Üyeler'; +$lang['onlineUsers'] = 'Çevrimiçi üyeler'; +$lang['toggleAutoScroll'] = 'Otomatik kaydırma aç/kapat'; +$lang['toggleAudio'] = 'Ses aç/kapat'; +$lang['toggleHelp'] = 'Yardımı göster/sakla'; +$lang['toggleSettings'] = 'Ayarları göster/sakla'; +$lang['toggleOnlineList'] = 'Çevrimiçi listesini göster/sakla'; +$lang['bbCodeLabelBold'] = 'b'; +$lang['bbCodeLabelItalic'] = 'i'; +$lang['bbCodeLabelUnderline'] = 'u'; +$lang['bbCodeLabelQuote'] = 'Büyük'; +$lang['bbCodeLabelCode'] = 'Kod'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Resim'; +$lang['bbCodeLabelColor'] = 'Renkli Yazı'; +$lang['bbCodeTitleBold'] = 'Kalın text: [b]text[/b]'; +$lang['bbCodeTitleItalic'] = 'Eğik text: [i]text[/i]'; +$lang['bbCodeTitleUnderline'] = 'Altçizgili text: [u]text[/u]'; +$lang['bbCodeTitleQuote'] = 'Büyük text: [quote]text[/quote] or [quote=author]text[/quote]'; +$lang['bbCodeTitleCode'] = 'Kod gösterim: [code]kod[/code]'; +$lang['bbCodeTitleURL'] = 'URL gir: [url]http://example.org[/url] veya [url=http://example.org]text[/url]'; +$lang['bbCodeTitleImg'] = 'Resim gir: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Font Rengi: [color=red]text[/color]'; +$lang['help'] = 'Yardım'; +$lang['helpItemDescJoin'] = 'Bir kanala girin:'; +$lang['helpItemCodeJoin'] = '/join kanalismi'; +$lang['helpItemDescJoinCreate'] = 'Özel oda aç (Sadece kayıtlı üyeler için):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Birisini Davet Et (örn. özel bir odaya):'; +$lang['helpItemCodeInvite'] = '/invite üyeismi'; +$lang['helpItemDescUninvite'] = 'Daveti İptal Et:'; +$lang['helpItemCodeUninvite'] = '/uninvite üyeismi'; +$lang['helpItemDescLogout'] = 'Sohbetten Çık:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Özel mesaj:'; +$lang['helpItemCodePrivateMessage'] = '/msg üyeismi mesaj'; +$lang['helpItemDescQueryOpen'] = 'Özel bir kanal aç:'; +$lang['helpItemCodeQueryOpen'] = '/query üyeismi'; +$lang['helpItemDescQueryClose'] = 'Özel bir kanalı kapat:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Aksiyon:'; +$lang['helpItemCodeAction'] = '/action mesaj'; +$lang['helpItemDescDescribe'] = 'Özel mesajda aksiyon:'; +$lang['helpItemCodeDescribe'] = '/describe üyeismi mesaj'; +$lang['helpItemDescIgnore'] = 'Üyeden gelen mesajları Blokla/KabulEt:'; +$lang['helpItemCodeIgnore'] = '/ignore üyeismi'; +$lang['helpItemDescIgnoreList'] = 'Bloklanmış üyeleri listele:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Üyenin kanalını göster:'; +$lang['helpItemCodeWhereis'] = '/whereis üyeismi'; +$lang['helpItemDescKick'] = 'Üyeyi at (Sadece Moderatörler):'; +$lang['helpItemCodeKick'] = '/kick üyeismi [Yasaklanan Dakika]'; +$lang['helpItemDescUnban'] = 'Üyenin yasağını kaldır (Sadece Moderatörler):'; +$lang['helpItemCodeUnban'] = '/unban üyeismi'; +$lang['helpItemDescBans'] = 'Yasaklanan üyeleri listele (Sadece Moderatörler):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Üyenin IP adresini göster (Sadece Moderatörler):'; +$lang['helpItemCodeWhois'] = '/whois üyeismi'; +$lang['helpItemDescWho'] = 'Çevrimiçi üyeleri listele:'; +$lang['helpItemCodeWho'] = '/who [kanalismi]'; +$lang['helpItemDescList'] = 'Kullanılabilir kanalları listele:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Zarları at:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = 'Üye ismini değiştir:'; +$lang['helpItemCodeNick'] = '/nick üyeismi'; +$lang['settings'] = 'Ayarlar'; +$lang['settingsBBCode'] = 'BBCode u aç:'; +$lang['settingsBBCodeImages'] = 'Resim BBCode u aç:'; +$lang['settingsBBCodeColors'] = 'Font Rengi BBCode u aç:'; +$lang['settingsHyperLinks'] = 'Bağlantıları (link) aç:'; +$lang['settingsLineBreaks'] = 'Satır aralarını aç:'; +$lang['settingsEmoticons'] = 'Emoticons ı aç:'; +$lang['settingsAutoFocus'] = 'Giriş kutusuna otomatik odaklan:'; +$lang['settingsMaxMessages'] = 'Sohbet listesinde maksimum mesaj sayısı:'; +$lang['settingsWordWrap'] = 'Uzun kelimeleri kısaltmayı aç:'; +$lang['settingsMaxWordLength'] = 'Kısaltılacak kelimenin maksimum uzunluğu:'; +$lang['settingsDateFormat'] = 'Tarih ve zaman gösterim formatı:'; +$lang['settingsPersistFontColor'] = 'Kalıcı font rengi:'; +$lang['settingsAudioVolume'] = 'Ses Düzeyi:'; +$lang['settingsSoundReceive'] = 'Gelen mesaj sesi:'; +$lang['settingsSoundSend'] = 'Giden mesaj sesi:'; +$lang['settingsSoundEnter'] = 'Giriş ve kanala giriş sesi:'; +$lang['settingsSoundLeave'] = 'Çıkış ve kanaldan çıkış sesi:'; +$lang['settingsSoundChatBot'] = 'Chatbot mesajları sesi:'; +$lang['settingsSoundError'] = 'Hata mesajları sesi:'; +$lang['settingsBlink'] = 'Yeni mesaj geldiğinde pencere başlığını kırp:'; +$lang['settingsBlinkInterval'] = 'Milisaniye olarak kırpma aralığı:'; +$lang['settingsBlinkIntervalNumber'] = 'Kırpma sayısı aralığı:'; +$lang['playSelectedSound'] = 'Seçili sesi çal'; +$lang['requiresJavaScript'] = 'Bu Sohbet için JavaScript gereklidir.'; +$lang['errorInvalidUser'] = 'Geçersiz üyeismi.'; +$lang['errorUserInUse'] = 'Üyeismi kullanımda.'; +$lang['errorBanned'] = 'Üye veya IP yasaklanmıştır.'; +$lang['errorMaxUsersLoggedIn'] = 'Sohbet maksimum kullanıcı sayısına ulaştı.'; +$lang['errorChatClosed'] = 'Sohbet şu anda kapalıdır.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Tarih'; +$lang['logsTime'] = 'Saat'; +$lang['logsSearch'] = 'Ara'; +$lang['logsPrivateChannels'] = 'Özel Kanallar'; +$lang['logsPrivateMessages'] = 'Özel Mesajlar'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/uk.php b/library/ajaxchat/chat/lib/lang/uk.php new file mode 100644 index 000000000..a7d80c16b --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/uk.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author Yuriy Smetana (yura@stryi.com.ua, http://joomla.org.ua) + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = 'Ім\'я користувача'; +$lang['password'] = 'Пароль'; +$lang['login'] = 'Увійти'; +$lang['logout'] = 'Вийти'; +$lang['channel'] = 'Кімната'; +$lang['style'] = 'Стиль'; +$lang['language'] = 'Мова'; +$lang['inputLineBreak'] = 'Використовуйте SHIFT+ENTER для нового рядка'; +$lang['messageSubmit'] = 'Надіслати'; +$lang['registeredUsers'] = 'Зареєстровані користувачі'; +$lang['onlineUsers'] = 'Зараз в Чаті'; +$lang['toggleAutoScroll'] = 'Прогортувати: так/ні'; +$lang['toggleAudio'] = 'Звік: так/ні'; +$lang['toggleHelp'] = 'Показати допомогу: так/ні'; +$lang['toggleSettings'] = 'Показати налаштування: так/ні'; +$lang['toggleOnlineList'] = 'Хто в Чаті: так/ні'; +$lang['bbCodeLabelBold'] = 'Ж'; +$lang['bbCodeLabelItalic'] = 'Н'; +$lang['bbCodeLabelUnderline'] = 'П'; +$lang['bbCodeLabelQuote'] = 'Цитата'; +$lang['bbCodeLabelCode'] = 'Код'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = 'Колір шрифту'; +$lang['bbCodeTitleBold'] = 'Жирний текст: [b]текст[/b]'; +$lang['bbCodeTitleItalic'] = 'Текст курсивом: [i]текст[/i]'; +$lang['bbCodeTitleUnderline'] = 'Підкреслений текст: [u]текст[/u]'; +$lang['bbCodeTitleQuote'] = 'Цитований текст: [quote]текст[/quote] чи [quote=author]текст[/quote]'; +$lang['bbCodeTitleCode'] = 'Показати код: [code]код[/code]'; +$lang['bbCodeTitleURL'] = 'Показати URL: [url]http://example.org[/url] or [url=http://example.org]текст[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = 'Колір шрифту: [color=red]текст[/color]'; +$lang['help'] = 'Допомога'; +$lang['helpItemDescJoin'] = 'Зайти в кімнату:'; +$lang['helpItemCodeJoin'] = '/join Назва_Кімнати'; +$lang['helpItemDescJoinCreate'] = 'Створити приватну кімнату (тільки для зареєстрованих користувачів):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = 'Запросити когось (наприклад до приватної кімнати):'; +$lang['helpItemCodeInvite'] = '/invite Користувач'; +$lang['helpItemDescUninvite'] = 'Відмінити запрошення:'; +$lang['helpItemCodeUninvite'] = '/uninvite Користувач'; +$lang['helpItemDescLogout'] = 'Вийти з чату:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = 'Приватне повідомлення:'; +$lang['helpItemCodePrivateMessage'] = '/msg Користувач Текст'; +$lang['helpItemDescQueryOpen'] = 'Створити приватну кімнату:'; +$lang['helpItemCodeQueryOpen'] = '/query Користувач'; +$lang['helpItemDescQueryClose'] = 'Закрити приватну кімнату:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = 'Описати чим займаєтесь:'; +$lang['helpItemCodeAction'] = '/action Що Робите'; +$lang['helpItemDescDescribe'] = 'Описати чим займаєтесь, в приватному повідомленні:'; +$lang['helpItemCodeDescribe'] = '/describe Кому Що Робите'; +$lang['helpItemDescIgnore'] = 'Ігнорувати/приймати повідомлення від користувача:'; +$lang['helpItemCodeIgnore'] = '/ignore Користувач'; +$lang['helpItemDescIgnoreList'] = 'Перелік ігнорованих користувачів:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = 'Показати кімнату користувача:'; +$lang['helpItemCodeWhereis'] = '/whereis Користувач'; +$lang['helpItemDescKick'] = 'Вигнати користувача (тільки для модераторів):'; +$lang['helpItemCodeKick'] = '/kick Користувач [на скільки хвилин]'; +$lang['helpItemDescUnban'] = 'Розблокувати користувача (тільки для модераторів):'; +$lang['helpItemCodeUnban'] = '/unban Користувач'; +$lang['helpItemDescBans'] = 'Перелік заблокованих користувачів:'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = 'Показати ІР користувача (тільки для модераторів):'; +$lang['helpItemCodeWhois'] = '/whois Користувач'; +$lang['helpItemDescWho'] = 'Хто в Чаті:'; +$lang['helpItemCodeWho'] = '/who [Кімната]'; +$lang['helpItemDescList'] = 'Перелік кімнат:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = 'Кинути кості:'; +$lang['helpItemCodeRoll'] = '/roll [к-сть]d[к-сть сторін]'; +$lang['helpItemDescNick'] = 'Змінити ім\'я користувача:'; +$lang['helpItemCodeNick'] = '/nick Користувач'; +$lang['settings'] = 'Налаштування'; +$lang['settingsBBCode'] = 'Дозволити коди BB:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = 'Дозволити посилання:'; +$lang['settingsLineBreaks'] = 'Дозволити багаторядковість:'; +$lang['settingsEmoticons'] = 'Дозволити хихоньки:'; +$lang['settingsAutoFocus'] = 'Автоматично встановлювати фокус на полі вводу:'; +$lang['settingsMaxMessages'] = 'Максимальна кількість повідомлень у вікні Чату:'; +$lang['settingsWordWrap'] = 'Розділювати довгі слова:'; +$lang['settingsMaxWordLength'] = 'Максимальна довжина слова після якої його буде розділено:'; +$lang['settingsDateFormat'] = 'Формат дати та часу:'; +$lang['settingsPersistFontColor'] = 'Колір для привернення уваги:'; +$lang['settingsAudioVolume'] = 'Гучність:'; +$lang['settingsSoundReceive'] = 'Звук для отриманих повідомлень:'; +$lang['settingsSoundSend'] = 'Звук для надісланих повідомлень:'; +$lang['settingsSoundEnter'] = 'Звук для події входу в Чат чи кімнату:'; +$lang['settingsSoundLeave'] = 'Звук для події виходу з Чату чи кімнати:'; +$lang['settingsSoundChatBot'] = 'Звук для системних повідомлень:'; +$lang['settingsSoundError'] = 'Звук для помилок:'; +$lang['settingsBlink'] = 'Сигналізувати при появі нових повідомлень (блимання заголовку вікна):'; +$lang['settingsBlinkInterval'] = 'Тривалість блимання заголовку вікна:'; +$lang['settingsBlinkIntervalNumber'] = 'Кількість блимань:'; +$lang['playSelectedSound'] = 'Відтворити обраний звук'; +$lang['requiresJavaScript'] = 'Для цього Чату потрібно дозволити JavaScript.'; +$lang['errorInvalidUser'] = 'Неправильне ім\'я користувача.'; +$lang['errorUserInUse'] = 'Таке ім\'я вже використовується'; +$lang['errorBanned'] = 'Користувач або IP заблокований.'; +$lang['errorMaxUsersLoggedIn'] = 'В Чаті максимальна кількість учасників.'; +$lang['errorChatClosed'] = 'Чат, тимчасово, закрито.'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = 'Дата'; +$lang['logsTime'] = 'Час'; +$lang['logsSearch'] = 'Пошук'; +$lang['logsPrivateChannels'] = 'Приватні кімнати'; +$lang['logsPrivateMessages'] = 'Приватні повідомлення'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/lang/zh-tw.php b/library/ajaxchat/chat/lib/lang/zh-tw.php new file mode 100644 index 000000000..d39fe6b14 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/zh-tw.php @@ -0,0 +1,123 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = '使用者帳號'; +$lang['password'] = '密碼'; +$lang['login'] = '登入'; +$lang['logout'] = '登出'; +$lang['channel'] = '房間'; +$lang['style'] = '版面風格'; +$lang['language'] = '語言'; +$lang['inputLineBreak'] = '按 SHIFT+ENTER 換行'; +$lang['messageSubmit'] = '發送'; +$lang['registeredUsers'] = '已註冊會員'; +$lang['onlineUsers'] = '在線會員'; +$lang['toggleAutoScroll'] = '自動捲動 開/關'; +$lang['toggleAudio'] = '音效 開/關'; +$lang['toggleHelp'] = '開啟/關閉 使用說明'; +$lang['toggleSettings'] = '開啟/關閉 選項設定'; +$lang['toggleOnlineList'] = '開啟/關閉 線上名單'; +$lang['bbCodeLabelBold'] = '粗體'; +$lang['bbCodeLabelItalic'] = '斜體'; +$lang['bbCodeLabelUnderline'] = '底線'; +$lang['bbCodeLabelQuote'] = '引用'; +$lang['bbCodeLabelCode'] = '代碼'; +$lang['bbCodeLabelURL'] = '連結'; +$lang['bbCodeLabelImg'] = '圖片'; +$lang['bbCodeLabelColor'] = '字體顏色'; +$lang['bbCodeTitleBold'] = '粗體字: [b]文字[/b]'; +$lang['bbCodeTitleItalic'] = '斜體字: [i]文字[/i]'; +$lang['bbCodeTitleUnderline'] = '底線: [u]文字[/u]'; +$lang['bbCodeTitleQuote'] = '引用文字: [quote]文字[/quote] 或 [quote=某人]文字[/quote]'; +$lang['bbCodeTitleCode'] = '代碼: [code]代碼[/code]'; +$lang['bbCodeTitleURL'] = '插入URL: [url]http://example.org[/url] 或 [url=http://example.org]文字[/url]'; +$lang['bbCodeTitleImg'] = '插入圖片: [img]http://example.org/image.png[/img]'; +$lang['bbCodeTitleColor'] = '字體顏色: [color=red]文字[/color]'; +$lang['help'] = '使用說明'; +$lang['helpItemDescJoin'] = '進入一個房間:'; +$lang['helpItemCodeJoin'] = '/join 房間名'; +$lang['helpItemDescJoinCreate'] = '進入自己的私人房間(會員限定):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = '邀請某人(進入自己的私人房):'; +$lang['helpItemCodeInvite'] = '/invite 使用者帳號'; +$lang['helpItemDescUninvite'] = '收回邀請函:'; +$lang['helpItemCodeUninvite'] = '/uninvite 使用者帳號'; +$lang['helpItemDescLogout'] = '登出:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = '悄悄話:'; +$lang['helpItemCodePrivateMessage'] = '/msg 使用者帳號 文字'; +$lang['helpItemDescQueryOpen'] = '開啟一間私人房:'; +$lang['helpItemCodeQueryOpen'] = '/query 使用者帳號'; +$lang['helpItemDescQueryClose'] = '關閉私人房:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = '描述動作:'; +$lang['helpItemCodeAction'] = '/action 文字'; +$lang['helpItemDescDescribe'] = '用悄悄話描述動作:'; +$lang['helpItemCodeDescribe'] = '/describe 使用者帳號 文字'; +$lang['helpItemDescIgnore'] = '忽略/接受某人的訊息:'; +$lang['helpItemCodeIgnore'] = '/ignore 使用者帳號'; +$lang['helpItemDescIgnoreList'] = '列出所有被忽略訊息的人:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = '尋找某人的位置:'; +$lang['helpItemCodeWhereis'] = '/whereis 使用者帳號'; +$lang['helpItemDescKick'] = '踢除某人(版主限定):'; +$lang['helpItemCodeKick'] = '/kick 使用者帳號 [Minutes banned]'; +$lang['helpItemDescUnban'] = '解除封鎖某人(版主限定):'; +$lang['helpItemCodeUnban'] = '/unban 使用者帳號'; +$lang['helpItemDescBans'] = '列出所有被禁止使用的人(版主限定):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = '查詢某人的IP(版主限定):'; +$lang['helpItemCodeWhois'] = '/whois 使用者帳號'; +$lang['helpItemDescWho'] = '列出所有在房間的人:'; +$lang['helpItemCodeWho'] = '/who [房間名]'; +$lang['helpItemDescList'] = '列出所有可進去的房間:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = '擲骰子:'; +$lang['helpItemCodeRoll'] = '/roll [幾次]d[幾種點]'; +$lang['helpItemDescNick'] = '更換暱稱:'; +$lang['helpItemCodeNick'] = '/nick 使用者帳號'; +$lang['settings'] = '選項'; +$lang['settingsBBCode'] = '啟用BBCode:'; +$lang['settingsBBCodeImages'] = '啟用圖形的BBCode:'; +$lang['settingsBBCodeColors'] = '啟用字體顏色的BBCode:'; +$lang['settingsHyperLinks'] = '啟用超連結:'; +$lang['settingsLineBreaks'] = '啟用換行符號'; +$lang['settingsEmoticons'] = '啟用表情圖示:'; +$lang['settingsAutoFocus'] = '自動切換焦點至輸入框:'; +$lang['settingsMaxMessages'] = '對話框裡訊息的最大數量:'; +$lang['settingsWordWrap'] = '遇長字彙時隨螢幕大小自動斷行:'; +$lang['settingsMaxWordLength'] = '字被截斷之前的最大長度:'; +$lang['settingsDateFormat'] = '時間格式:'; +$lang['settingsPersistFontColor'] = '固定字體顏色:'; +$lang['settingsAudioVolume'] = '音效的音量:'; +$lang['settingsSoundReceive'] = '新訊息的音效:'; +$lang['settingsSoundSend'] = '舊訊息的音效:'; +$lang['settingsSoundEnter'] = '登入和進入房間的音效:'; +$lang['settingsSoundLeave'] = '登出和離開房間的音效:'; +$lang['settingsSoundChatBot'] = '系統訊息的音效:'; +$lang['settingsSoundError'] = '錯誤訊息的音效:'; +$lang['settingsBlink'] = '當有新訊息時閃動標題:'; +$lang['settingsBlinkInterval'] = '閃動的間隔時間(毫秒):'; +$lang['settingsBlinkIntervalNumber'] = '閃動次數:'; +$lang['playSelectedSound'] = '播放選取的音效'; +$lang['requiresJavaScript'] = '請啟用JavaScript才能登入!'; +$lang['errorInvalidUser'] = '使用者名稱無法使用……'; +$lang['errorUserInUse'] = '使用者名稱正在使用中……'; +$lang['errorBanned'] = '使用者名稱或IP已被封鎖……'; +$lang['errorMaxUsersLoggedIn'] = '聊天室已客滿,無法進入……'; +$lang['errorChatClosed'] = '聊天室目前已關閉……'; +$lang['logsTitle'] = 'AJAX Chat - Logs'; +$lang['logsDate'] = '日期'; +$lang['logsTime'] = '時間'; +$lang['logsSearch'] = '搜尋'; +$lang['logsPrivateChannels'] = '私人房'; +$lang['logsPrivateMessages'] = '悄悄話'; +?> diff --git a/library/ajaxchat/chat/lib/lang/zh.php b/library/ajaxchat/chat/lib/lang/zh.php new file mode 100644 index 000000000..1d18f0bc0 --- /dev/null +++ b/library/ajaxchat/chat/lib/lang/zh.php @@ -0,0 +1,124 @@ +<?php +/* + * @package AJAX_Chat + * @author Sebastian Tschan + * @author mikespook + * @copyright (c) Sebastian Tschan + * @license Modified MIT License + * @link https://blueimp.net/ajax/ + */ + +$lang = array(); +$lang['title'] = 'AJAX Chat'; +$lang['userName'] = '用户名'; +$lang['password'] = '密码'; +$lang['login'] = '登录'; +$lang['logout'] = '退出'; +$lang['channel'] = '频道'; +$lang['style'] = '样式'; +$lang['language'] = '语言'; +$lang['inputLineBreak'] = '按 SHIFT + ENTER 输入新行'; +$lang['messageSubmit'] = '提交'; +$lang['registeredUsers'] = '注册用户'; +$lang['onlineUsers'] = '在线用户'; +$lang['toggleAutoScroll'] = '自动滚动 开/关'; +$lang['toggleAudio'] = '声音 开/关'; +$lang['toggleHelp'] = '显示/隐藏 帮助'; +$lang['toggleSettings'] = '显示/隐藏 设置'; +$lang['toggleOnlineList'] = '显示/隐藏 在线列表'; +$lang['bbCodeLabelBold'] = '粗体'; +$lang['bbCodeLabelItalic'] = '斜体'; +$lang['bbCodeLabelUnderline'] = '下划线'; +$lang['bbCodeLabelQuote'] = '引用'; +$lang['bbCodeLabelCode'] = '代码'; +$lang['bbCodeLabelURL'] = 'URL'; +$lang['bbCodeLabelImg'] = 'Image'; +$lang['bbCodeLabelColor'] = '文字颜色'; +$lang['bbCodeTitleBold'] = '粗体:[b]文字[/b]'; +$lang['bbCodeTitleItalic'] = '斜体:[i]文字[/i]'; +$lang['bbCodeTitleUnderline'] = '下划线:[u]文字[/u]'; +$lang['bbCodeTitleQuote'] = '引用:[quote]引用[/quote] or [quote=作者]引用[/quote]'; +$lang['bbCodeTitleCode'] = '显示代码:[code]代码[/code]'; +$lang['bbCodeTitleURL'] = '插入 URL:[url]http://example.org[/url] 或者 [url=http://example.org]文字[/url]'; +$lang['bbCodeTitleImg'] = 'Insert image: [img]http://example.org/image.jpg[/img]'; +$lang['bbCodeTitleColor'] = '文字颜色:[color=red]文字[/color]'; +$lang['help'] = '帮助'; +$lang['helpItemDescJoin'] = '加入频道'; +$lang['helpItemCodeJoin'] = '/join 频道名'; +$lang['helpItemDescJoinCreate'] = '创建私人房间(仅限注册用户):'; +$lang['helpItemCodeJoinCreate'] = '/join'; +$lang['helpItemDescInvite'] = '邀请某人(例如进入私人房间):'; +$lang['helpItemCodeInvite'] = '/invite 用户名'; +$lang['helpItemDescUninvite'] = '取消邀请:'; +$lang['helpItemCodeUninvite'] = '/uninvite 用户名'; +$lang['helpItemDescLogout'] = '推出登录:'; +$lang['helpItemCodeLogout'] = '/quit'; +$lang['helpItemDescPrivateMessage'] = '悄悄话'; +$lang['helpItemCodePrivateMessage'] = '/msg 用户名 内容'; +$lang['helpItemDescQueryOpen'] = '打开私人频道:'; +$lang['helpItemCodeQueryOpen'] = '/query 用户名'; +$lang['helpItemDescQueryClose'] = '关闭私人频道:'; +$lang['helpItemCodeQueryClose'] = '/query'; +$lang['helpItemDescAction'] = '动作描述:'; +$lang['helpItemCodeAction'] = '/action 文字'; +$lang['helpItemDescDescribe'] = '在悄悄话中做动作:'; +$lang['helpItemCodeDescribe'] = '/describe 用户名 文字'; +$lang['helpItemDescIgnore'] = '忽略/接受用户消息:'; +$lang['helpItemCodeIgnore'] = '/ignore 用户名'; +$lang['helpItemDescIgnoreList'] = '列出忽略用户:'; +$lang['helpItemCodeIgnoreList'] = '/ignore'; +$lang['helpItemDescWhereis'] = '显示用户频道:'; +$lang['helpItemCodeWhereis'] = '/whereis 用户名'; +$lang['helpItemDescKick'] = '踢出用户(仅限版主):'; +$lang['helpItemCodeKick'] = '/kick 用户名 [倒数秒数]'; +$lang['helpItemDescUnban'] = '取消用户禁言(仅限版主):'; +$lang['helpItemCodeUnban'] = '/unban 用户名'; +$lang['helpItemDescBans'] = '列出禁言用户(仅限版主):'; +$lang['helpItemCodeBans'] = '/bans'; +$lang['helpItemDescWhois'] = '显示用户 IP(仅限版主):'; +$lang['helpItemCodeWhois'] = '/whois 用户名'; +$lang['helpItemDescWho'] = '列出在线用户:'; +$lang['helpItemCodeWho'] = '/who [频道名]'; +$lang['helpItemDescList'] = '列出可用频道:'; +$lang['helpItemCodeList'] = '/list'; +$lang['helpItemDescRoll'] = '摇骰子:'; +$lang['helpItemCodeRoll'] = '/roll [number]d[sides]'; +$lang['helpItemDescNick'] = '修改用户名:'; +$lang['helpItemCodeNick'] = '/nick Username'; +$lang['settings'] = '设置'; +$lang['settingsBBCode'] = '可用 BBCode:'; +$lang['settingsBBCodeImages'] = 'Enable image BBCode:'; +$lang['settingsBBCodeColors'] = 'Enable font color BBCode:'; +$lang['settingsHyperLinks'] = '可用超链接:'; +$lang['settingsLineBreaks'] = '可用换行:'; +$lang['settingsEmoticons'] = '可用表情符号:'; +$lang['settingsAutoFocus'] = '自动将焦点定位于输入框:'; +$lang['settingsMaxMessages'] = '消息列表中的最大消息数:'; +$lang['settingsWordWrap'] = '开启超宽换行:'; +$lang['settingsMaxWordLength'] = '行宽:'; +$lang['settingsDateFormat'] = '时间和日期显示格式:'; +$lang['settingsPersistFontColor'] = '字体颜色:'; +$lang['settingsAudioVolume'] = '音量:'; +$lang['settingsSoundReceive'] = '声音提示进入信息:'; +$lang['settingsSoundSend'] = '声音提示离开信息:'; +$lang['settingsSoundEnter'] = '声音提示登录或进入频道信息:'; +$lang['settingsSoundLeave'] = '声音提示退出或离开频道信息:'; +$lang['settingsSoundChatBot'] = '声音提示机器人信息:'; +$lang['settingsSoundError'] = '声音提示错误信息:'; +$lang['settingsBlink'] = '有新消息时闪烁窗口标题:'; +$lang['settingsBlinkInterval'] = '空闲间隔毫秒数:'; +$lang['settingsBlinkIntervalNumber'] = '空闲间隔数:'; +$lang['playSelectedSound'] = '播放选择的声音'; +$lang['requiresJavaScript'] = '需要 JavaScript。'; +$lang['errorInvalidUser'] = '不合法的用户名。'; +$lang['errorUserInUse'] = '用户名已被使用。'; +$lang['errorBanned'] = '用户名或 IP 被禁止。'; +$lang['errorMaxUsersLoggedIn'] = '聊天室达到最大用户数。'; +$lang['errorChatClosed'] = '当前聊天室暂停服务。'; +$lang['logsTitle'] = 'AJAX Chat - 日志'; +$lang['logsDate'] = '日期'; +$lang['logsTime'] = '时间'; +$lang['logsSearch'] = '搜索'; +$lang['logsPrivateChannels'] = '私人频道'; +$lang['logsPrivateMessages'] = '私人消息'; +?>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/template/loggedIn.html b/library/ajaxchat/chat/lib/template/loggedIn.html new file mode 100644 index 000000000..16a75ebe9 --- /dev/null +++ b/library/ajaxchat/chat/lib/template/loggedIn.html @@ -0,0 +1,387 @@ +<?xml version="1.0" encoding="[CONTENT_ENCODING/]"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="[LANG_CODE/]" lang="[LANG_CODE/]" dir="[BASE_DIRECTION/]"> + +<head> + <meta http-equiv="Content-Type" content="[CONTENT_TYPE/]" /> + <title>[LANG]title[/LANG]</title> + <style type="text/css"> + body { + padding:0; + margin:0; + } + </style> + [STYLE_SHEETS/] + <!--[if lt IE 7]> + <link rel="stylesheet" type="text/css" href="css/ie5-6.css"/> + <script type="text/javascript"> + var isIElt7 = true; + </script> + <![endif]--> + <script src="js/chat.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/custom.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/lang/[LANG_CODE/].js" type="text/javascript" charset="UTF-8"></script> + <script src="js/config.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/FABridge.js" type="text/javascript" charset="UTF-8"></script> + <script type="text/javascript"> + // <![CDATA[ + function toggleContainer(containerID, hideContainerIDs) { + if(hideContainerIDs) { + for(var i=0; i<hideContainerIDs.length; i++) { + ajaxChat.showHide(hideContainerIDs[i], 'none'); + } + } + ajaxChat.showHide(containerID); + if(typeof arguments.callee.styleProperty == 'undefined') { + if(typeof isIElt7 != 'undefined') { + arguments.callee.styleProperty = 'marginRight'; + } else { + arguments.callee.styleProperty = 'right'; + } + } + var containerWidth = document.getElementById(containerID).offsetWidth; + if(containerWidth) { + document.getElementById('chatList').style[arguments.callee.styleProperty] = (containerWidth+28)+'px'; + } else { + document.getElementById('chatList').style[arguments.callee.styleProperty] = '20px'; + } + } + + function initialize() { + ajaxChat.updateButton('audio', 'audioButton'); + ajaxChat.updateButton('autoScroll', 'autoScrollButton'); + document.getElementById('bbCodeSetting').checked = ajaxChat.getSetting('bbCode'); + document.getElementById('bbCodeImagesSetting').checked = ajaxChat.getSetting('bbCodeImages'); + document.getElementById('bbCodeColorsSetting').checked = ajaxChat.getSetting('bbCodeColors'); + document.getElementById('hyperLinksSetting').checked = ajaxChat.getSetting('hyperLinks'); + document.getElementById('lineBreaksSetting').checked = ajaxChat.getSetting('lineBreaks'); + document.getElementById('emoticonsSetting').checked = ajaxChat.getSetting('emoticons'); + document.getElementById('autoFocusSetting').checked = ajaxChat.getSetting('autoFocus'); + document.getElementById('maxMessagesSetting').value = ajaxChat.getSetting('maxMessages'); + document.getElementById('wordWrapSetting').checked = ajaxChat.getSetting('wordWrap'); + document.getElementById('maxWordLengthSetting').value = ajaxChat.getSetting('maxWordLength'); + document.getElementById('dateFormatSetting').value = ajaxChat.getSetting('dateFormat'); + document.getElementById('persistFontColorSetting').checked = ajaxChat.getSetting('persistFontColor'); + for(var i=0; i<document.getElementById('audioVolumeSetting').options.length; i++) { + if(document.getElementById('audioVolumeSetting').options[i].value == ajaxChat.getSetting('audioVolume')) { + document.getElementById('audioVolumeSetting').options[i].selected = true; + break; + } + } + ajaxChat.fillSoundSelection('soundReceiveSetting', ajaxChat.getSetting('soundReceive')); + ajaxChat.fillSoundSelection('soundSendSetting', ajaxChat.getSetting('soundSend')); + ajaxChat.fillSoundSelection('soundEnterSetting', ajaxChat.getSetting('soundEnter')); + ajaxChat.fillSoundSelection('soundLeaveSetting', ajaxChat.getSetting('soundLeave')); + ajaxChat.fillSoundSelection('soundChatBotSetting', ajaxChat.getSetting('soundChatBot')); + ajaxChat.fillSoundSelection('soundErrorSetting', ajaxChat.getSetting('soundError')); + document.getElementById('blinkSetting').checked = ajaxChat.getSetting('blink'); + document.getElementById('blinkIntervalSetting').value = ajaxChat.getSetting('blinkInterval'); + document.getElementById('blinkIntervalNumberSetting').value = ajaxChat.getSetting('blinkIntervalNumber'); + } + + ajaxChatConfig.loginChannelID = parseInt('[LOGIN_CHANNEL_ID/]'); + ajaxChatConfig.sessionName = '[SESSION_NAME/]'; + ajaxChatConfig.cookieExpiration = parseInt('[COOKIE_EXPIRATION/]'); + ajaxChatConfig.cookiePath = '[COOKIE_PATH/]'; + ajaxChatConfig.cookieDomain = '[COOKIE_DOMAIN/]'; + ajaxChatConfig.cookieSecure = '[COOKIE_SECURE/]'; + ajaxChatConfig.chatBotName = decodeURIComponent('[CHAT_BOT_NAME/]'); + ajaxChatConfig.chatBotID = '[CHAT_BOT_ID/]'; + ajaxChatConfig.allowUserMessageDelete = parseInt('[ALLOW_USER_MESSAGE_DELETE/]'); + ajaxChatConfig.inactiveTimeout = parseInt('[INACTIVE_TIMEOUT/]'); + ajaxChatConfig.privateChannelDiff = parseInt('[PRIVATE_CHANNEL_DIFF/]'); + ajaxChatConfig.privateMessageDiff = parseInt('[PRIVATE_MESSAGE_DIFF/]'); + ajaxChatConfig.showChannelMessages = parseInt('[SHOW_CHANNEL_MESSAGES/]'); + ajaxChatConfig.messageTextMaxLength = parseInt('[MESSAGE_TEXT_MAX_LENGTH/]'); + ajaxChatConfig.socketServerEnabled = parseInt('[SOCKET_SERVER_ENABLED/]'); + ajaxChatConfig.socketServerHost = decodeURIComponent('[SOCKET_SERVER_HOST/]'); + ajaxChatConfig.socketServerPort = parseInt('[SOCKET_SERVER_PORT/]'); + ajaxChatConfig.socketServerChatID = parseInt('[SOCKET_SERVER_CHAT_ID/]'); + + ajaxChat.init(ajaxChatConfig, ajaxChatLang, true, true, true, initialize); + // ]]> + </script> +</head> + +<body> + <div id="content"> + <div id="headlineContainer"> + <h1>[LANG]title[/LANG]</h1> + </div> + <div id="logoutChannelContainer"> + <input type="button" id="logoutButton" value="[LANG]logout[/LANG]" onclick="ajaxChat.logout();"/> + <label for="channelSelection">[LANG]channel[/LANG]:</label> + <select id="channelSelection" onchange="ajaxChat.switchChannel(this.options[this.selectedIndex].value);">[CHANNEL_OPTIONS/]</select> + <label for="styleSelection">[LANG]style[/LANG]:</label> + <select id="styleSelection" onchange="ajaxChat.setActiveStyleSheet(ajaxChat.getSelectedStyle());">[STYLE_OPTIONS/]</select> + <label for="languageSelection">[LANG]language[/LANG]:</label> + <select id="languageSelection" onchange="ajaxChat.switchLanguage(this.value);">[LANGUAGE_OPTIONS/]</select> + </div> + <div id="statusIconContainer" class="statusContainerOn"></div> + <!--[if lt IE 7]> + <div></div> + <![endif]--> + <div id="chatList"></div> + <div id="inputFieldContainer"> + <textarea id="inputField" rows="1" cols="50" title="[LANG]inputLineBreak[/LANG]" onkeypress="ajaxChat.handleInputFieldKeyPress(event);" onkeyup="ajaxChat.handleInputFieldKeyUp(event);"></textarea> + </div> + <div id="submitButtonContainer"> + <span id="messageLengthCounter">0/[MESSAGE_TEXT_MAX_LENGTH/]</span> + <input type="button" id="submitButton" value="[LANG]messageSubmit[/LANG]" onclick="ajaxChat.sendMessage();"/> + </div> + <div id="emoticonsContainer" dir="ltr"></div> + <div id="bbCodeContainer"> + <input type="button" value="[LANG]bbCodeLabelBold[/LANG]" title="[LANG]bbCodeTitleBold[/LANG]" onclick="ajaxChat.insertBBCode('b');" style="font-weight:bold;"/> + <input type="button" value="[LANG]bbCodeLabelItalic[/LANG]" title="[LANG]bbCodeTitleItalic[/LANG]" onclick="ajaxChat.insertBBCode('i');" style="font-style:italic;"/> + <input type="button" value="[LANG]bbCodeLabelUnderline[/LANG]" title="[LANG]bbCodeTitleUnderline[/LANG]" onclick="ajaxChat.insertBBCode('u');" style="text-decoration:underline;"/> + <input type="button" value="[LANG]bbCodeLabelQuote[/LANG]" title="[LANG]bbCodeTitleQuote[/LANG]" onclick="ajaxChat.insertBBCode('quote');"/> + <input type="button" value="[LANG]bbCodeLabelCode[/LANG]" title="[LANG]bbCodeTitleCode[/LANG]" onclick="ajaxChat.insertBBCode('code');"/> + <input type="button" value="[LANG]bbCodeLabelURL[/LANG]" title="[LANG]bbCodeTitleURL[/LANG]" onclick="ajaxChat.insertBBCode('url');"/> + <input type="button" value="[LANG]bbCodeLabelImg[/LANG]" title="[LANG]bbCodeTitleImg[/LANG]" onclick="ajaxChat.insertBBCode('img');"/> + <input type="button" value="[LANG]bbCodeLabelColor[/LANG]" title="[LANG]bbCodeTitleColor[/LANG]" onclick="ajaxChat.showHide('colorCodesContainer', null);"/> + </div> + <div id="colorCodesContainer" style="display:none;" dir="ltr"></div> + <div id="optionsContainer"> + <input type="image" src="img/pixel.gif" class="button" id="helpButton" alt="[LANG]toggleHelp[/LANG]" title="[LANG]toggleHelp[/LANG]" onclick="toggleContainer('helpContainer', new Array('onlineListContainer','settingsContainer'));"/> + <input type="image" src="img/pixel.gif" class="button" id="settingsButton" alt="[LANG]toggleSettings[/LANG]" title="[LANG]toggleSettings[/LANG]" onclick="toggleContainer('settingsContainer', new Array('onlineListContainer','helpContainer'));"/> + <input type="image" src="img/pixel.gif" class="button" id="onlineListButton" alt="[LANG]toggleOnlineList[/LANG]" title="[LANG]toggleOnlineList[/LANG]" onclick="toggleContainer('onlineListContainer', new Array('settingsContainer','helpContainer'));"/> + <input type="image" src="img/pixel.gif" class="button" id="audioButton" alt="[LANG]toggleAudio[/LANG]" title="[LANG]toggleAudio[/LANG]" onclick="ajaxChat.toggleSetting('audio', 'audioButton');"/> + <input type="image" src="img/pixel.gif" class="button" id="autoScrollButton" alt="[LANG]toggleAutoScroll[/LANG]" title="[LANG]toggleAutoScroll[/LANG]" onclick="ajaxChat.toggleSetting('autoScroll', 'autoScrollButton');"/> + </div> + <div id="onlineListContainer"> + <h3>[LANG]onlineUsers[/LANG]</h3> + <div id="onlineList"></div> + </div> + <div id="helpContainer" style="display:none;"> + <h3>[LANG]help[/LANG]</h3> + <div id="helpList"> + <table> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescJoin[/LANG]</td> + <td class="code">[LANG]helpItemCodeJoin[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescJoinCreate[/LANG]</td> + <td class="code">[LANG]helpItemCodeJoinCreate[/LANG]</td> + + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescInvite[/LANG]</td> + <td class="code">[LANG]helpItemCodeInvite[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescUninvite[/LANG]</td> + <td class="code">[LANG]helpItemCodeUninvite[/LANG]</td> + </tr> + + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescLogout[/LANG]</td> + <td class="code">[LANG]helpItemCodeLogout[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescPrivateMessage[/LANG]</td> + <td class="code">[LANG]helpItemCodePrivateMessage[/LANG]</td> + </tr> + <tr class="rowOdd"> + + <td class="desc">[LANG]helpItemDescQueryOpen[/LANG]</td> + <td class="code">[LANG]helpItemCodeQueryOpen[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescQueryClose[/LANG]</td> + <td class="code">[LANG]helpItemCodeQueryClose[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescAction[/LANG]</td> + <td class="code">[LANG]helpItemCodeAction[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescDescribe[/LANG]</td> + <td class="code">[LANG]helpItemCodeDescribe[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescIgnore[/LANG]</td> + <td class="code">[LANG]helpItemCodeIgnore[/LANG]</td> + + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescIgnoreList[/LANG]</td> + <td class="code">[LANG]helpItemCodeIgnoreList[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescWhereis[/LANG]</td> + <td class="code">[LANG]helpItemCodeWhereis[/LANG]</td> + </tr> + + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescKick[/LANG]</td> + <td class="code">[LANG]helpItemCodeKick[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescUnban[/LANG]</td> + <td class="code">[LANG]helpItemCodeUnban[/LANG]</td> + </tr> + <tr class="rowEven"> + + <td class="desc">[LANG]helpItemDescBans[/LANG]</td> + <td class="code">[LANG]helpItemCodeBans[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescWhois[/LANG]</td> + <td class="code">[LANG]helpItemCodeWhois[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescWho[/LANG]</td> + + <td class="code">[LANG]helpItemCodeWho[/LANG]</td> + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescList[/LANG]</td> + <td class="code">[LANG]helpItemCodeList[/LANG]</td> + </tr> + <tr class="rowEven"> + <td class="desc">[LANG]helpItemDescRoll[/LANG]</td> + <td class="code">[LANG]helpItemCodeRoll[/LANG]</td> + + </tr> + <tr class="rowOdd"> + <td class="desc">[LANG]helpItemDescNick[/LANG]</td> + <td class="code">[LANG]helpItemCodeNick[/LANG]</td> + </tr> + </table> + </div> + </div> + <div id="settingsContainer" style="display:none;"> + <h3>[LANG]settings[/LANG]</h3> + <div id="settingsList"> + <table> + <tr class="rowOdd"> + <td><label for="bbCodeSetting">[LANG]settingsBBCode[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="bbCodeSetting" onclick="ajaxChat.setSetting('bbCode', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="bbCodeImagesSetting">[LANG]settingsBBCodeImages[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="bbCodeImagesSetting" onclick="ajaxChat.setSetting('bbCodeImages', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="bbCodeColorsSetting">[LANG]settingsBBCodeColors[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="bbCodeColorsSetting" onclick="ajaxChat.setSetting('bbCodeColors', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="hyperLinksSetting">[LANG]settingsHyperLinks[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="hyperLinksSetting" onclick="ajaxChat.setSetting('hyperLinks', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="lineBreaksSetting">[LANG]settingsLineBreaks[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="lineBreaksSetting" onclick="ajaxChat.setSetting('lineBreaks', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="emoticonsSetting">[LANG]settingsEmoticons[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="emoticonsSetting" onclick="ajaxChat.setSetting('emoticons', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="autoFocusSetting">[LANG]settingsAutoFocus[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="autoFocusSetting" onclick="ajaxChat.setSetting('autoFocus', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="maxMessagesSetting">[LANG]settingsMaxMessages[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="maxMessagesSetting" onchange="ajaxChat.setSetting('maxMessages', parseInt(this.value));"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="wordWrapSetting">[LANG]settingsWordWrap[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="wordWrapSetting" onclick="ajaxChat.setSetting('wordWrap', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="maxWordLengthSetting">[LANG]settingsMaxWordLength[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="maxWordLengthSetting" onchange="ajaxChat.setSetting('maxWordLength', parseInt(this.value));"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="dateFormatSetting">[LANG]settingsDateFormat[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="dateFormatSetting" onchange="ajaxChat.setSetting('dateFormat', this.value);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="persistFontColorSetting">[LANG]settingsPersistFontColor[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="persistFontColorSetting" onclick="ajaxChat.setPersistFontColor(this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="audioVolumeSetting">[LANG]settingsAudioVolume[/LANG]</label></td> + <td class="setting"> + <select class="left" id="audioVolumeSetting" onchange="ajaxChat.setAudioVolume(this.options[this.selectedIndex].value);"> + <option value="1.0">100 %</option> + <option value="0.9">90 %</option> + <option value="0.8">80 %</option> + <option value="0.7">70 %</option> + <option value="0.6">60 %</option> + <option value="0.5">50 %</option> + <option value="0.4">40 %</option> + <option value="0.3">30 %</option> + <option value="0.2">20 %</option> + <option value="0.1">10 %</option> + </select> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundReceiveSetting">[LANG]settingsSoundReceive[/LANG]</label></td> + <td class="setting"> + <select id="soundReceiveSetting" onchange="ajaxChat.setSetting('soundReceive', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundSendSetting">[LANG]settingsSoundSend[/LANG]</label></td> + <td class="setting"> + <select id="soundSendSetting" onchange="ajaxChat.setSetting('soundSend', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundEnterSetting">[LANG]settingsSoundEnter[/LANG]</label></td> + <td class="setting"> + <select id="soundEnterSetting" onchange="ajaxChat.setSetting('soundEnter', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundLeaveSetting">[LANG]settingsSoundLeave[/LANG]</label></td> + <td class="setting"> + <select id="soundLeaveSetting" onchange="ajaxChat.setSetting('soundLeave', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundChatBotSetting">[LANG]settingsSoundChatBot[/LANG]</label></td> + <td class="setting"> + <select id="soundChatBotSetting" onchange="ajaxChat.setSetting('soundChatBot', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundErrorSetting">[LANG]settingsSoundError[/LANG]</label></td> + <td class="setting"> + <select id="soundErrorSetting" onchange="ajaxChat.setSetting('soundError', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="blinkSetting">[LANG]settingsBlink[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="blinkSetting" onclick="ajaxChat.setSetting('blink', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="blinkIntervalSetting">[LANG]settingsBlinkInterval[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="blinkIntervalSetting" onchange="ajaxChat.setSetting('blinkInterval', parseInt(this.value));"/></td> + </tr> + <tr class="rowEven"> + <td><label for="blinkIntervalNumberSetting">[LANG]settingsBlinkIntervalNumber[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="blinkIntervalNumberSetting" onchange="ajaxChat.setSetting('blinkIntervalNumber', parseInt(this.value));"/></td> + </tr> + </table> + </div> + </div> + <!-- + Please retain the full copyright notice below including the link to blueimp.net. + This not only gives respect to the amount of time given freely by the developer + but also helps build interest, traffic and use of AJAX Chat. + + Thanks, + Sebastian Tschan + //--> + <div id="copyright"><a href="https://blueimp.net/ajax/">AJAX Chat</a> © <a href="https://blueimp.net">blueimp.net</a></div> + </div> + <div id="flashInterfaceContainer"></div> +</body> + +</html>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/template/loggedOut.html b/library/ajaxchat/chat/lib/template/loggedOut.html new file mode 100644 index 000000000..ba8a8a4a9 --- /dev/null +++ b/library/ajaxchat/chat/lib/template/loggedOut.html @@ -0,0 +1,78 @@ +<?xml version="1.0" encoding="[CONTENT_ENCODING/]"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="[LANG_CODE/]" lang="[LANG_CODE/]" dir="[BASE_DIRECTION/]"> + +<head> + <meta http-equiv="Content-Type" content="[CONTENT_TYPE/]" /> + <title>[LANG]title[/LANG]</title> + <style type="text/css"> + body { + padding:0; + margin:0; + } + </style> + [STYLE_SHEETS/] + <!--[if lt IE 7]> + <link rel="stylesheet" type="text/css" href="css/ie5-6.css"/> + <![endif]--> + <script src="js/chat.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/lang/[LANG_CODE/].js" type="text/javascript" charset="UTF-8"></script> + <script src="js/config.js" type="text/javascript" charset="UTF-8"></script> + <script type="text/javascript"> + // <![CDATA[ + function initializeLoginPage() { + document.getElementById('userNameField').focus(); + if(!ajaxChat.isCookieEnabled()) { + var node = document.createElement('div'); + var text = document.createTextNode(ajaxChatLang['errorCookiesRequired']); + node.appendChild(text); + document.getElementById('errorContainer').appendChild(node); + } + } + + ajaxChatConfig.sessionName = '[SESSION_NAME/]'; + ajaxChatConfig.cookieExpiration = parseInt('[COOKIE_EXPIRATION/]'); + ajaxChatConfig.cookiePath = '[COOKIE_PATH/]'; + ajaxChatConfig.cookieDomain = '[COOKIE_DOMAIN/]'; + ajaxChatConfig.cookieSecure = '[COOKIE_SECURE/]'; + + ajaxChat.init(ajaxChatConfig, ajaxChatLang, true, true, false); + // ]]> + </script> +</head> + +<body onload="initializeLoginPage();"> + <div id="loginContent"> + <div id="loginHeadlineContainer"> + <h1>[LANG]title[/LANG]</h1> + </div> + <form id="loginForm" action="[LOGIN_URL/]" method="post" enctype="application/x-www-form-urlencoded"> + <div id="loginFormContainer"> + <input type="hidden" name="login" id="loginField" value="login"/> + <input type="hidden" name="redirect" id="redirectField" value="[REDIRECT_URL/]"/> + <div><label for="userNameField">[LANG]userName[/LANG]:</label><br /> + <input type="text" name="userName" id="userNameField" maxlength="[USER_NAME_MAX_LENGTH/]"/></div> + <div><label for="passwordField">[LANG]password[/LANG]*:</label><br /> + <input type="password" name="password" id="passwordField"/></div> + <div><label for="channelField">[LANG]channel[/LANG]:</label><br /> + <select name="channelName" id="channelField">[CHANNEL_OPTIONS/]</select></div> + <div><label for="languageSelection">[LANG]language[/LANG]:</label><br /> + <select id="languageSelection" name="lang" onchange="ajaxChat.switchLanguage(this.value);">[LANGUAGE_OPTIONS/]</select></div> + <div><input type="submit" name="submit" id="loginButton" value="[LANG]login[/LANG]"/></div> + <div id="loginRegisteredUsers">* [LANG]registeredUsers[/LANG]</div> + </div> + </form> + <div id="errorContainer">[ERROR_MESSAGES/]<noscript><div>[LANG]requiresJavaScript[/LANG]</div></noscript></div> + <!-- + Please retain the full copyright notice below including the link to blueimp.net. + This not only gives respect to the amount of time given freely by the developer + but also helps build interest, traffic and use of AJAX Chat. + + Thanks, + Sebastian Tschan + //--> + <div id="copyright"><a href="https://blueimp.net/ajax/">AJAX Chat</a> © <a href="https://blueimp.net">blueimp.net</a></div> + </div> +</body> + +</html>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/template/logs.html b/library/ajaxchat/chat/lib/template/logs.html new file mode 100644 index 000000000..d0b9162a9 --- /dev/null +++ b/library/ajaxchat/chat/lib/template/logs.html @@ -0,0 +1,276 @@ +<?xml version="1.0" encoding="[CONTENT_ENCODING/]"?> +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="[LANG_CODE/]" lang="[LANG_CODE/]" dir="[BASE_DIRECTION/]"> + +<head> + <meta http-equiv="Content-Type" content="[CONTENT_TYPE/]" /> + <title>[LANG]logsTitle[/LANG]</title> + <style type="text/css"> + body { + padding:0; + margin:0; + } + </style> + [STYLE_SHEETS/] + <!--[if lt IE 7]> + <link rel="stylesheet" type="text/css" href="css/ie5-6.css"/> + <script type="text/javascript"> + var isIElt7 = true; + </script> + <![endif]--> + <script src="js/chat.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/logs.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/lang/[LANG_CODE/].js" type="text/javascript" charset="UTF-8"></script> + <script src="js/config.js" type="text/javascript" charset="UTF-8"></script> + <script src="js/FABridge.js" type="text/javascript" charset="UTF-8"></script> + <script type="text/javascript"> + // <![CDATA[ + function toggleContainer(containerID, hideContainerIDs) { + if(hideContainerIDs) { + for(var i=0; i<hideContainerIDs.length; i++) { + ajaxChat.showHide(hideContainerIDs[i], 'none'); + } + } + ajaxChat.showHide(containerID); + if(typeof arguments.callee.styleProperty == 'undefined') { + if(typeof isIElt7 != 'undefined') { + arguments.callee.styleProperty = 'marginRight'; + } else { + arguments.callee.styleProperty = 'right'; + } + } + var containerWidth = document.getElementById(containerID).offsetWidth; + if(containerWidth) { + document.getElementById('chatList').style[arguments.callee.styleProperty] = (containerWidth+28)+'px'; + } else { + document.getElementById('chatList').style[arguments.callee.styleProperty] = '20px'; + } + } + + function initialize() { + toggleContainer('settingsContainer'); + ajaxChat.updateButton('audio', 'audioButton'); + ajaxChat.updateButton('autoScroll', 'autoScrollButton'); + document.getElementById('bbCodeSetting').checked = ajaxChat.getSetting('bbCode'); + document.getElementById('hyperLinksSetting').checked = ajaxChat.getSetting('hyperLinks'); + document.getElementById('lineBreaksSetting').checked = ajaxChat.getSetting('lineBreaks'); + document.getElementById('emoticonsSetting').checked = ajaxChat.getSetting('emoticons'); + document.getElementById('autoFocusSetting').checked = ajaxChat.getSetting('autoFocus'); + document.getElementById('maxMessagesSetting').value = ajaxChat.getSetting('maxMessages'); + document.getElementById('wordWrapSetting').checked = ajaxChat.getSetting('wordWrap'); + document.getElementById('maxWordLengthSetting').value = ajaxChat.getSetting('maxWordLength'); + document.getElementById('dateFormatSetting').value = ajaxChat.getSetting('dateFormat'); + document.getElementById('persistFontColorSetting').checked = ajaxChat.getSetting('persistFontColor'); + for(var i=0; i<document.getElementById('audioVolumeSetting').options.length; i++) { + if(document.getElementById('audioVolumeSetting').options[i].value == ajaxChat.getSetting('audioVolume')) { + document.getElementById('audioVolumeSetting').options[i].selected = true; + break; + } + } + ajaxChat.fillSoundSelection('soundReceiveSetting', ajaxChat.getSetting('soundReceive')); + ajaxChat.fillSoundSelection('soundSendSetting', ajaxChat.getSetting('soundSend')); + ajaxChat.fillSoundSelection('soundEnterSetting', ajaxChat.getSetting('soundEnter')); + ajaxChat.fillSoundSelection('soundLeaveSetting', ajaxChat.getSetting('soundLeave')); + ajaxChat.fillSoundSelection('soundChatBotSetting', ajaxChat.getSetting('soundChatBot')); + ajaxChat.fillSoundSelection('soundErrorSetting', ajaxChat.getSetting('soundError')); + document.getElementById('blinkSetting').checked = ajaxChat.getSetting('blink'); + document.getElementById('blinkIntervalSetting').value = ajaxChat.getSetting('blinkInterval'); + document.getElementById('blinkIntervalNumberSetting').value = ajaxChat.getSetting('blinkIntervalNumber'); + } + + ajaxChatConfig.sessionName = '[SESSION_NAME/]'; + ajaxChatConfig.cookieExpiration = parseInt('[COOKIE_EXPIRATION/]'); + ajaxChatConfig.cookiePath = '[COOKIE_PATH/]'; + ajaxChatConfig.cookieDomain = '[COOKIE_DOMAIN/]'; + ajaxChatConfig.cookieSecure = '[COOKIE_SECURE/]'; + ajaxChatConfig.chatBotName = decodeURIComponent('[CHAT_BOT_NAME/]'); + ajaxChatConfig.chatBotID = '[CHAT_BOT_ID/]'; + ajaxChatConfig.allowUserMessageDelete = parseInt('[ALLOW_USER_MESSAGE_DELETE/]'); + ajaxChatConfig.inactiveTimeout = parseInt('[INACTIVE_TIMEOUT/]'); + ajaxChatConfig.privateChannelDiff = parseInt('[PRIVATE_CHANNEL_DIFF/]'); + ajaxChatConfig.privateMessageDiff = parseInt('[PRIVATE_MESSAGE_DIFF/]'); + ajaxChatConfig.showChannelMessages = true; + ajaxChatConfig.messageTextMaxLength = parseInt('[MESSAGE_TEXT_MAX_LENGTH/]'); + ajaxChatConfig.socketServerEnabled = parseInt('[SOCKET_SERVER_ENABLED/]'); + ajaxChatConfig.socketServerHost = decodeURIComponent('[SOCKET_SERVER_HOST/]'); + ajaxChatConfig.socketServerPort = parseInt('[SOCKET_SERVER_PORT/]'); + ajaxChatConfig.socketServerChatID = parseInt('[SOCKET_SERVER_CHAT_ID/]'); + + ajaxChatConfig.ajaxURL += '&view=logs'; + + ajaxChatConfig.domIDs['yearSelection'] = 'yearSelection'; + ajaxChatConfig.domIDs['monthSelection'] = 'monthSelection'; + ajaxChatConfig.domIDs['daySelection'] = 'daySelection'; + ajaxChatConfig.domIDs['hourSelection'] = 'hourSelection'; + + ajaxChatConfig.settings.dateFormat = '(%Y.%m.%d - %H:%i:%s)'; + ajaxChatConfig.settings.audio = false; + ajaxChatConfig.settings.blink = false; + ajaxChatConfig.nonPersistentSettings.push('dateFormat','audio','blink'); + + ajaxChat.init(ajaxChatConfig, ajaxChatLang, true, true, true, initialize); + // ]]> + </script> +</head> + +<body> + <div id="content"> + <div id="headlineContainer"> + <h1>[LANG]logsTitle[/LANG]</h1> + </div> + <div id="logoutChannelContainer"> + <input type="button" id="logoutButton" value="[LANG]logout[/LANG]" onclick="ajaxChat.logout();"/> + <label for="channelSelection">[LANG]channel[/LANG]:</label> + <select id="channelSelection" onchange="ajaxChat.getLogs();">[LOGS_CHANNEL_OPTIONS/]</select> + <label for="yearSelection">[LANG]logsDate[/LANG]:</label> + <select id="yearSelection" onchange="ajaxChat.getLogs();">[LOGS_YEAR_OPTIONS/]</select> + <select id="monthSelection" onchange="ajaxChat.getLogs();">[LOGS_MONTH_OPTIONS/]</select> + <select id="daySelection" onchange="ajaxChat.getLogs();">[LOGS_DAY_OPTIONS/]</select> + <label for="hourSelection">[LANG]logsTime[/LANG]:</label> + <select id="hourSelection" onchange="ajaxChat.getLogs();">[LOGS_HOUR_OPTIONS/]</select> + <label for="styleSelection">[LANG]style[/LANG]:</label> + <select id="styleSelection" onchange="ajaxChat.setActiveStyleSheet(ajaxChat.getSelectedStyle());">[STYLE_OPTIONS/]</select> + <label for="languageSelection">[LANG]language[/LANG]:</label> + <select id="languageSelection" onchange="ajaxChat.switchLanguage(this.value);">[LANGUAGE_OPTIONS/]</select> + </div> + <!--[if lt IE 7]> + <div></div> + <![endif]--> + <div id="chatList"></div> + <div id="inputFieldContainer"> + <textarea id="inputField" rows="1" cols="50" title="[LANG]inputLineBreak[/LANG]" onkeypress="ajaxChat.handleInputFieldKeyPress(event);"></textarea> + </div> + <div id="submitButtonContainer"> + <input type="button" id="submitButton" value="[LANG]logsSearch[/LANG]" onclick="ajaxChat.sendMessage();"/> + </div> + <div id="optionsContainer"> + <input type="image" src="img/pixel.gif" class="button" id="settingsButton" alt="[LANG]toggleSettings[/LANG]" title="[LANG]toggleSettings[/LANG]" onclick="toggleContainer('settingsContainer');"/> + <input type="image" src="img/pixel.gif" class="button" id="audioButton" alt="[LANG]toggleAudio[/LANG]" title="[LANG]toggleAudio[/LANG]" onclick="ajaxChat.toggleSetting('audio', 'audioButton');"/> + <input type="image" src="img/pixel.gif" class="button" id="autoScrollButton" alt="[LANG]toggleAutoScroll[/LANG]" title="[LANG]toggleAutoScroll[/LANG]" onclick="ajaxChat.toggleSetting('autoScroll', 'autoScrollButton')"/> + </div> + <div id="settingsContainer" style="display:none;"> + <h3>[LANG]settings[/LANG]</h3> + <div id="settingsList"> + <table> + <tr class="rowOdd"> + <td><label for="bbCodeSetting">[LANG]settingsBBCode[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="bbCodeSetting" onclick="ajaxChat.setSetting('bbCode', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="hyperLinksSetting">[LANG]settingsHyperLinks[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="hyperLinksSetting" onclick="ajaxChat.setSetting('hyperLinks', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="lineBreaksSetting">[LANG]settingsLineBreaks[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="lineBreaksSetting" onclick="ajaxChat.setSetting('lineBreaks', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="emoticonsSetting">[LANG]settingsEmoticons[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="emoticonsSetting" onclick="ajaxChat.setSetting('emoticons', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="autoFocusSetting">[LANG]settingsAutoFocus[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="autoFocusSetting" onclick="ajaxChat.setSetting('autoFocus', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="maxMessagesSetting">[LANG]settingsMaxMessages[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="maxMessagesSetting" onchange="ajaxChat.setSetting('maxMessages', parseInt(this.value));"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="wordWrapSetting">[LANG]settingsWordWrap[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="wordWrapSetting" onclick="ajaxChat.setSetting('wordWrap', this.checked);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="maxWordLengthSetting">[LANG]settingsMaxWordLength[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="maxWordLengthSetting" onchange="ajaxChat.setSetting('maxWordLength', parseInt(this.value));"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="dateFormatSetting">[LANG]settingsDateFormat[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="dateFormatSetting" onchange="ajaxChat.setSetting('dateFormat', this.value);"/></td> + </tr> + <tr class="rowEven"> + <td><label for="persistFontColorSetting">[LANG]settingsPersistFontColor[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="persistFontColorSetting" onclick="ajaxChat.setPersistFontColor(this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="audioVolumeSetting">[LANG]settingsAudioVolume[/LANG]</label></td> + <td class="setting"> + <select class="left" id="audioVolumeSetting" onchange="ajaxChat.setAudioVolume(this.options[this.selectedIndex].value);"> + <option value="1.0">100 %</option> + <option value="0.9">90 %</option> + <option value="0.8">80 %</option> + <option value="0.7">70 %</option> + <option value="0.6">60 %</option> + <option value="0.5">50 %</option> + <option value="0.4">40 %</option> + <option value="0.3">30 %</option> + <option value="0.2">20 %</option> + <option value="0.1">10 %</option> + </select> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundReceiveSetting">[LANG]settingsSoundReceive[/LANG]</label></td> + <td class="setting"> + <select id="soundReceiveSetting" onchange="ajaxChat.setSetting('soundReceive', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundSendSetting">[LANG]settingsSoundSend[/LANG]</label></td> + <td class="setting"> + <select id="soundSendSetting" onchange="ajaxChat.setSetting('soundSend', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundEnterSetting">[LANG]settingsSoundEnter[/LANG]</label></td> + <td class="setting"> + <select id="soundEnterSetting" onchange="ajaxChat.setSetting('soundEnter', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundLeaveSetting">[LANG]settingsSoundLeave[/LANG]</label></td> + <td class="setting"> + <select id="soundLeaveSetting" onchange="ajaxChat.setSetting('soundLeave', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="soundChatBotSetting">[LANG]settingsSoundChatBot[/LANG]</label></td> + <td class="setting"> + <select id="soundChatBotSetting" onchange="ajaxChat.setSetting('soundChatBot', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowOdd"> + <td><label for="soundErrorSetting">[LANG]settingsSoundError[/LANG]</label></td> + <td class="setting"> + <select id="soundErrorSetting" onchange="ajaxChat.setSetting('soundError', this.options[this.selectedIndex].value);"><option value="">-</option></select><input type="image" src="img/pixel.gif" class="button playback" alt="[LANG]playSelectedSound[/LANG]" title="[LANG]playSelectedSound[/LANG]" onclick="ajaxChat.playSound(this.previousSibling.options[this.previousSibling.selectedIndex].value);"/> + </td> + </tr> + <tr class="rowEven"> + <td><label for="blinkSetting">[LANG]settingsBlink[/LANG]</label></td> + <td class="setting"><input type="checkbox" id="blinkSetting" onclick="ajaxChat.setSetting('blink', this.checked);"/></td> + </tr> + <tr class="rowOdd"> + <td><label for="blinkIntervalSetting">[LANG]settingsBlinkInterval[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="blinkIntervalSetting" onchange="ajaxChat.setSetting('blinkInterval', parseInt(this.value));"/></td> + </tr> + <tr class="rowEven"> + <td><label for="blinkIntervalNumberSetting">[LANG]settingsBlinkIntervalNumber[/LANG]</label></td> + <td class="setting"><input type="text" class="text" id="blinkIntervalNumberSetting" onchange="ajaxChat.setSetting('blinkIntervalNumber', parseInt(this.value));"/></td> + </tr> + </table> + </div> + </div> + <!-- + Please retain the full copyright notice below including the link to blueimp.net. + This not only gives respect to the amount of time given freely by the developer + but also helps build interest, traffic and use of AJAX Chat. + + Thanks, + Sebastian Tschan + //--> + <div id="copyright"><a href="https://blueimp.net/ajax/">AJAX Chat</a> © <a href="https://blueimp.net">blueimp.net</a></div> + </div> + <div id="flashInterfaceContainer"></div> +</body> + +</html>
\ No newline at end of file diff --git a/library/ajaxchat/chat/lib/template/shoutbox.html b/library/ajaxchat/chat/lib/template/shoutbox.html new file mode 100644 index 000000000..5f2de9981 --- /dev/null +++ b/library/ajaxchat/chat/lib/template/shoutbox.html @@ -0,0 +1,60 @@ +<div id="ajaxChatContent"> + <script src="[AJAX_CHAT_URL/]js/chat.js" type="text/javascript" charset="UTF-8"></script> + <script src="[AJAX_CHAT_URL/]js/custom.js" type="text/javascript" charset="UTF-8"></script> + <script src="[AJAX_CHAT_URL/]js/shoutbox.js" type="text/javascript" charset="UTF-8"></script> + <script src="[AJAX_CHAT_URL/]js/lang/[LANG_CODE/].js" type="text/javascript" charset="UTF-8"></script> + <script src="[AJAX_CHAT_URL/]js/config.js" type="text/javascript" charset="UTF-8"></script> + <script src="[AJAX_CHAT_URL/]js/FABridge.js" type="text/javascript" charset="UTF-8"></script> + <div id="ajaxChatChatList"></div> + <div id="ajaxChatInputFieldContainer" class="[CLASS_WRITEABLE/]"> + <input id="ajaxChatInputField" type="text" maxlength="[MESSAGE_TEXT_MAX_LENGTH/]" onkeypress="ajaxChat.handleInputFieldKeyPress(event);"/> + </div> + <script type="text/javascript"> + // <![CDATA[ + ajaxChatConfig.ajaxURL = '[AJAX_CHAT_URL/]?ajax=true&shoutbox=true'; + ajaxChatConfig.baseURL = '[AJAX_CHAT_URL/]'; + + ajaxChatConfig.sessionName = '[SESSION_NAME/]'; + ajaxChatConfig.cookieExpiration = parseInt('[COOKIE_EXPIRATION/]'); + ajaxChatConfig.cookiePath = '[COOKIE_PATH/]'; + ajaxChatConfig.cookieDomain = '[COOKIE_DOMAIN/]'; + ajaxChatConfig.cookieSecure = '[COOKIE_SECURE/]'; + ajaxChatConfig.chatBotName = decodeURIComponent('[CHAT_BOT_NAME/]'); + ajaxChatConfig.chatBotID = '[CHAT_BOT_ID/]'; + ajaxChatConfig.allowUserMessageDelete = parseInt('[ALLOW_USER_MESSAGE_DELETE/]'); + ajaxChatConfig.inactiveTimeout = parseInt('[INACTIVE_TIMEOUT/]'); + ajaxChatConfig.privateChannelDiff = parseInt('[PRIVATE_CHANNEL_DIFF/]'); + ajaxChatConfig.privateMessageDiff = parseInt('[PRIVATE_MESSAGE_DIFF/]'); + ajaxChatConfig.showChannelMessages = false; + ajaxChatConfig.messageTextMaxLength = parseInt('[MESSAGE_TEXT_MAX_LENGTH/]'); + ajaxChatConfig.socketServerEnabled = parseInt('[SOCKET_SERVER_ENABLED/]'); + ajaxChatConfig.socketServerHost = decodeURIComponent('[SOCKET_SERVER_HOST/]'); + ajaxChatConfig.socketServerPort = parseInt('[SOCKET_SERVER_PORT/]'); + ajaxChatConfig.socketServerChatID = parseInt('[SOCKET_SERVER_CHAT_ID/]'); + + ajaxChatConfig.domIDs['chatList'] = 'ajaxChatChatList'; + ajaxChatConfig.domIDs['inputField'] = 'ajaxChatInputField'; + ajaxChatConfig.domIDs['flashInterfaceContainer'] = 'ajaxChatFlashInterfaceContainer'; + + ajaxChatConfig.startChatOnLoad = false; + + ajaxChatConfig.settings.autoFocus = false; + ajaxChatConfig.settings.wordWrap = true; + ajaxChatConfig.settings.maxWordLength = 11; + ajaxChatConfig.settings.blink = false; + ajaxChatConfig.nonPersistentSettings.push('autoFocus','wordWrap','maxWordLength','blink'); + + ajaxChat.init(ajaxChatConfig, ajaxChatLang, true, false, true); + // ]]> + </script> + <!-- + Please retain the full copyright notice below including the link to blueimp.net. + This not only gives respect to the amount of time given freely by the developer + but also helps build interest, traffic and use of AJAX Chat. + + Thanks, + Sebastian Tschan + //--> + <div id="ajaxChatCopyright"><a href="https://blueimp.net/ajax/">AJAX Chat</a> © <a href="https://blueimp.net">blueimp.net</a></div> +</div> +<div id="ajaxChatFlashInterfaceContainer"></div> |