Compare commits

...

40 Commits

Author SHA1 Message Date
53211076a0 Making a moderator to member now sets incognito back to disabled 2016-06-13 19:55:09 +02:00
5ef5d5f701 Bugfix 2016-05-21 16:49:05 +02:00
b053e18e11 Make embed image option re-appear whith cookies disabled 2016-05-17 09:55:52 +02:00
eb13ee2d2f Completely fix link-redirection 2016-05-15 09:33:06 +02:00
dca1b81ef9 Add a lang_update.php script to auto-update language files 2016-05-11 12:46:50 +02:00
86b1de0ec8 Add setting in profile to allow offline inbox for: staff, members or everyone 2016-05-10 12:49:31 +02:00
147c511c61 Only use js if browser refresh stopped working 2016-05-10 08:16:25 +02:00
07ff78994e Remove JavaScript "load only new messages" feature, add JS auto-refresh to header instead 2016-05-07 10:37:56 +02:00
b09cb6b352 Fix parts of the offline inbox 2016-05-01 20:15:55 +02:00
e454b44f2b de-duplicate code 2016-04-30 15:29:41 +02:00
a72cd08cfb Fix duplicated class-tags and spelling mistake in SQL 2016-04-29 23:03:16 +02:00
190ec4c863 Allow deletion of member accounts in profile 2016-04-29 21:51:08 +02:00
3105cffaf1 Add an offline inbox for members 2016-04-29 21:47:32 +02:00
1a8eefc396 Fix wrong registration variables 2016-04-28 19:07:09 +02:00
47ffde6839 Better wording for registering applicants 2016-04-28 16:40:07 +02:00
ae3fe6d510 Optimize language-selection function 2016-04-28 11:59:23 +02:00
6ccce399b7 De-duplicate code 2016-04-28 11:05:09 +02:00
8538b22f6a simplify parse_sessions() and write_new_session() 2016-04-28 09:58:07 +02:00
a37026ca64 Add useful error message on failed login 2016-04-28 09:02:42 +02:00
555208a556 Combine Password reset and setting new nickname 2016-04-27 11:14:54 +02:00
d9c9dae6c0 Complete time zone feature 2016-04-27 09:57:34 +02:00
266523902f Avoid douple-parsing of sessions, when logging out or kicking 2016-04-26 13:25:44 +02:00
8408edd1f8 Fix incorrect header 2016-04-26 12:27:39 +02:00
7210a9fc90 Add timezone settings 2016-04-26 12:26:40 +02:00
37fbb7bc43 Allow disabling the chat completely 2016-04-20 15:48:12 +02:00
e72dc58d56 Simplify check_init() 2016-04-19 20:24:53 +02:00
b2df491ab7 Add disable PM option 2016-04-19 20:14:06 +02:00
63b4764ec4 Display a fatal error, if SQLite engine fails to connect to the database 2016-04-19 16:13:30 +02:00
15a4eb62bc Simplify SQL table creation by using common data types for all engines 2016-04-19 15:52:15 +02:00
60355735ee Make nocache refresh hack configurable in profile 2016-04-18 17:22:22 +02:00
0b8cdcc1e5 Remove nocache hack from message reload again
(scrolls back to top every time)
2016-04-17 08:12:48 +02:00
51ee2e1495 Split routing into several sub-functions 2016-04-16 21:04:41 +02:00
db86cb984b Fix a few forms to be used cookie-less 2016-04-15 16:07:15 +02:00
30d460b91e Improve invalid filter handling + allow new line match with \n 2016-04-15 15:16:18 +02:00
ea24d7ae5b Add caching hack for aggressively caching browsers (e.g. links) 2016-04-15 08:54:14 +02:00
6a8186d984 de-duplicate code by using new functions 2016-04-14 22:32:02 +02:00
2757f62d48 Properly escape some parameters 2016-04-14 22:08:20 +02:00
df140d0ee7 Fix warning on redirection of links without a scheme 2016-04-14 19:44:32 +02:00
6890bdb80a Allow extreme captcha to be solved in both directions 2016-04-14 19:12:15 +02:00
5c62bcef00 Add CSS classes and move more css to the database 2016-04-14 18:49:25 +02:00
11 changed files with 1200 additions and 818 deletions

View File

@ -1,3 +1,46 @@
Version 1.20.1 - Jun. 13, 2016
Bugfix when logging guests out via admin section
Don't hide image embedding option in profile with cookies disabled
Making a moderator to member now sets incognito back to disabled
Version 1.20 - May 15, 2016
Add setting in profile to allow offline inbox for: staff, members or everyone
Completely fix link-redirection
Version 1.19.2 - May 7, 2016
Remove JavaScript "load only new messages" feature
Add JS auto-refresh to header instead
Version 1.19.1 - May 1, 2016
Fix parts of the offline inbox
Version 1.19 - Apr. 29, 2016
Add an offline inbox for members
Allow deletion of member accounts in profile
Version 1.18 - Apr. 28, 2016
Add time zone settings
Combine Password reset and setting new nickname
Add useful error message on failed login
Version 1.17 - Apr. 20, 2016
Make nocache refresh hack configurable in profile
Add disable PM option
Allow disabling the chat completely
Version 1.16.4 - Apr. 15, 2016
Properly escape some parameters
Add caching hack for aggressively caching browsers (e.g. links)
Improve invalid filter handling + allow new line match with \n
Fix a few forms to be used cookie-less
Version 1.16.3 - Apr. 14, 2016
Fix warning on redirection of links without a scheme
Version 1.16.2 - Apr. 14, 2016
Add CSS classes and move more css to the database
Allow extreme captcha to be solved in both directions
Version 1.16.1 - Apr. 13, 2016
Fixed a typo

1
README
View File

@ -60,6 +60,7 @@ When you are done, you have to edit the chat script, to include your translation
'lang_code' =>'Language name',
to the $L array in the load_lang() function at the bottom, similar to what I did for the German translation.
Please share your translation with me, so I can add it to the official version.
To update your translation, you can copy each new string to your translation file or edit the automated lang_update.php script to reflect you language and run it.
REGEX:

View File

@ -64,6 +64,7 @@ When you are done, you have to edit the chat script, to include your translation
'lang_code' =>'Language name',
to the $L array in the load_lang() function at the bottom, similar to what I did for the German translation.
Please share your translation with me, so I can add it to the official version.
To update your translation, you can copy each new string to your translation file or edit the automated lang_update.php script to reflect you language and run it.
Regex:
------

1558
chat.php

File diff suppressed because it is too large Load Diff

View File

@ -86,7 +86,7 @@ $T=array(
'guestwait' => 'Mit Warteraum erlauben',
'adminallow' => 'Moderator-Erlaubnis benötigen',
'guestdisallow' => 'Nur Mitglieder',
'addsuguest' => 'Anwerber hinzufügen',
'addsuguest' => 'Anwerber registrieren',
'register' => 'Registrieren',
'admmembers' => 'Mitglieder',
'memdel' => 'Aus der Datenbank löschen',
@ -277,7 +277,6 @@ $T=array(
'restore' => 'Wiederherstellen',
'settings' => 'Einstellungen',
'linkfilter' => 'Linkfilter',
'enablejs' => 'JavaScript für besseres Nachrichtenladen erlauben',
'chatname' => 'Chatname',
'destroy' => 'Chat zerstören',
'destroyed' => 'Chat erfolgreich zerstört',
@ -309,7 +308,6 @@ $T=array(
'newer' => 'Neuer',
'accessdenied' => 'Zugriff verweigert',
'loggedinas' => 'Du bist als %s angemeldet und hast keinen Zugriff auf diesen Bereich.',
'changenickname' => 'Nickname ändern',
'newnickname' => 'Neuer Nickname:',
'nicknametaken' => 'Nickname ist bereits vergeben',
'nopass' => 'Ungültiges Passwort (Mindestens %d Zeichen), Nickname nicht geändert',
@ -324,10 +322,29 @@ $T=array(
'mailsender' => 'E-Mail mit dieser Adresse versenden',
'mailreceiver' => 'E-Mail and diese Adresse senden',
'modfallback' => 'Auf Warteraum rückgreifen, falls kein Moderator anwesend ist, um Gäste hereinzulassen',
'regpass' => 'Zum registrieren<br>Passwort wiederholen<br>(optional)',
'regpass' => 'Zum registrieren<br>Passwort wiederholen',
'guestreg' => 'Gäste sich selbst registrieren lassen',
'asmember' => 'Als Mitglied',
'assuguest' => 'Als Anwerber',
'fatalerror' => 'Fataler Fehler'
'fatalerror' => 'Fataler Fehler',
'prevmatch' => 'Ihr regex war folgender',
'matchtoolong' => 'Ihr Match war zu lang. Sie können max. 255 Zeichen benutzen. Versuchen Sie diesen aufzuteilen.',
'nocache' => 'Neulade-Hack für alte Browser hinzufügen.<br>Aktiviere dies, falls Neuladen nicht funktioniert.',
'disablepm' => 'Private Nachrichten deaktivieren',
'disablechat' => 'Chat deaktivieren',
'disabletext' => 'Chat deaktiviert Nachricht (html)',
'disabledtext' => 'Kurzzeitig deaktiviert',
'defaulttz' => 'Standard Zeitzone',
'tz' => 'Zeitzone',
'optional' => '(optional)',
'userloggedin' => 'Ein Nutzer mit diesem Nicknamen ist bereits angemeldet.',
'regednick' => 'Dieser Nickname ist ein registeriertes Mitglied.',
'eninbox' => 'Offline Posteingang aktivieren',
'inboxmsgs' => '%d Nachrichten im Posteingang lesen',
'offline' => '(offline)',
'deleteacc' => 'Konto löschen',
'eninall' => 'Für jeden',
'eninmem' => 'Nur für Mitglieder',
'eninstaff' => 'Nur für Moderatoren'
);
?>

View File

@ -86,7 +86,7 @@ $I=array(
'guestwait' => 'Allow with waitingroom',
'adminallow' => 'Require moderator approval',
'guestdisallow' => 'Only members',
'addsuguest' => 'Add applicant',
'addsuguest' => 'Register applicant',
'register' => 'Register',
'admmembers' => 'Members',
'memdel' => 'Delete from database',
@ -277,7 +277,6 @@ $I=array(
'restore' => 'Restore',
'settings' => 'Settings',
'linkfilter' => 'Linkfilter',
'enablejs' => 'Allow JavaScript for better message loading',
'chatname' => 'Chat name',
'destroy' => 'Destroy chat',
'destroyed' => 'Successfully destroyed chat',
@ -309,7 +308,6 @@ $I=array(
'newer' => 'Newer',
'accessdenied' => 'Access denied',
'loggedinas' => 'You are logged in as %s and don\'t have access to this section.',
'changenickname' => 'Change nickname',
'newnickname' => 'New nickname:',
'nicknametaken' => 'Nickname is already taken',
'nopass' => 'Invalid password (At least %d characters), not changing nickname',
@ -324,10 +322,29 @@ $I=array(
'mailsender' => 'Send mail using this address',
'mailreceiver' => 'Send mail to this address',
'modfallback' => 'Fallback to waiting room, if no moderator is present to approve guests',
'regpass' => 'Repeat password<br>to register<br>(optional)',
'regpass' => 'Repeat password<br>to register',
'guestreg' => 'Let guests register themselves',
'asmember' => 'As member',
'assuguest' => 'As applicant',
'fatalerror' => 'Fatal error'
'fatalerror' => 'Fatal error',
'prevmatch' => 'Your match was as follows',
'matchtoolong' => 'Your match was too long. You can use max. 255 characters. Try splitting it up.',
'nocache' => 'Add refresh hack for old browsers.<br>Enable, if refreshing doesn\'t work.',
'disablepm' => 'Disable private messages',
'disablechat' => 'Disable chat',
'disabletext' => 'Chat disabled message (html)',
'disabledtext' => 'Temporarily disabled',
'defaulttz' => 'Default time zone',
'tz' => 'Time zone',
'optional' => '(optional)',
'userloggedin' => 'A user with this nickname is already logged in.',
'regednick' => 'This nickname is a registered member.',
'eninbox' => 'Enable offline inbox',
'inboxmsgs' => 'Read %d messages in your inbox',
'offline' => '(offline)',
'deleteacc' => 'Delete account',
'eninall' => 'For everyone',
'eninmem' => 'For members only',
'eninstaff' => 'For staff only'
);
?>

View File

@ -276,7 +276,6 @@ $T=array(
'restore' => 'Restablacer copia',
'settings' => 'Configuración',
'linkfilter' => 'Filtro de enlaces',
'enablejs' => 'Permitir JavaScript para mejorar la carga de mensajes',
'chatname' => 'Nombre de la sala',
'destroy' => 'Destruir sala',
'destroyed' => 'Sala destruida satisfactoriamente',
@ -308,7 +307,6 @@ $T=array(
'newer' => 'Newer',
'accessdenied' => 'Acceso no permitido',
'loggedinas' => 'Estás identificado como %s y no tenés acceso a esta sección.',
'changenickname' => 'Cambiar apodo',
'newnickname' => 'Nuevo apodo:',
'nicknametaken' => 'Ese apodo ya fue tomado',
'nopass' => 'Constraseña incorrecta (al menos %d caracteres), no se cambia apodo'

View File

@ -276,7 +276,6 @@ $T=array(
'restore' => 'Restaurar',
'settings' => 'Preferencias',
'linkfilter' => 'Filtro de enlaces',
'enablejs' => 'Permitir JavaScript para mejorar la carga de mensajes',
'chatname' => 'Nombre de la sala',
'destroy' => 'Destruir sala',
'destroyed' => 'Sala destruida satisfactoriamente',
@ -308,7 +307,6 @@ $T=array(
'newer' => 'Newer',
'accessdenied' => 'Acceso denegado',
'loggedinas' => 'Estás identificado como %s y no tenés acceso a esta sección.',
'changenickname' => 'Cambiar apodo',
'newnickname' => 'Nuevo apodo:',
'nicknametaken' => 'Ese apodo ya fue tomado',
'nopass' => 'Constraseña incorrecta (al menos %d caracteres), no se cambia apodo'

View File

@ -276,7 +276,6 @@ $T=array(
'restore' => 'Récupérer',
'settings' => 'Paramètres',
'linkfilter' => 'Lien filtré',
'enablejs' => 'Autoriser JavaScript permet un meilleur chargement des messages ',
'chatname' => 'Nom du chat',
'destroy' => 'Destruction du chat',
'destroyed' => 'Chat supprimé',
@ -308,7 +307,6 @@ $T=array(
'newer' => 'Nouveau',
'accessdenied' => 'Accès interdit',
'loggedinas' => 'Vous êtes connecté en tant que %s et vous n\'avez pas accès à cette section.',
'changenickname' => 'Changer de Pseudo',
'newnickname' => 'Nouveau Pseudo:',
'nicknametaken' => 'Pseudo déjà pris',
'nopass' => 'Mot de passe invalide (au moins % caractères), ne pas changer le pseudo',

View File

@ -276,7 +276,6 @@ $T=array(
'restore' => 'Pulihkan',
'settings' => 'Pengaturan',
'linkfilter' => 'penyaring-tautan',
'enablejs' => 'Izinkan javascript agar pemuatan pesan lebih baik',
'chatname' => 'Nama obrolan',
'destroy' => 'Musnahkan obrolan',
'destroyed' => 'Berhasil memusnahkan obrolan',
@ -308,7 +307,6 @@ $T=array(
'newer' => 'Baru',
'accessdenied' => 'Akses ditolak',
'loggedinas' => 'Anda masuk sebagai %s dan tak dapat mengakses bagian ini.',
'changenickname' => 'Ubah nama',
'newnickname' => 'Nama baru:',
'nicknametaken' => 'Nama sudah ada',
'nopass' => 'Kata sandi salah (Minimal %d karakter), tak merubah nama'

45
lang_update.php Normal file
View File

@ -0,0 +1,45 @@
<?php
$native = 'Deutsch'; // Native lanugae name
$english = 'German'; // Enlish language name
$code = 'de'; // Language code
ob_start();
echo "<?php
/*
* LE CHAT-PHP - a PHP Chat based on LE CHAT - $english translation
*
* Copyright (C) 2015-2016 Daniel Winzen <d@winzen4.de>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
//Native language name: $native
\$T=array(
";
if(file_exists("lang_$code.php")){
include("lang_$code.php");
}
include('lang_en.php');
foreach($T as $id=>$value){
if(isSet($I[$id])){
$I[$id]=$value;
}
}
foreach($I as $id=>$value){
echo "\t'$id' => '".str_replace("'", "\'", $value)."',\n";
}
echo ");\n?>\n";
$file=ob_get_clean();
file_put_contents("lang_$code.php", $file);
?>