diff --git a/chat.php b/chat.php index d673d5a..a35253c 100644 --- a/chat.php +++ b/chat.php @@ -40,6 +40,7 @@ $U=[];// This user data $db = null;// Database connection $memcached = null;// Memcached connection $language = LANG;// user selected language +$scripts = []; //js enhancements $styles = []; //css styles $session = $_REQUEST['session'] ?? ''; //requested session // set session variable to cookie if cookies are enabled @@ -94,7 +95,7 @@ function route(){ if(!isset($_POST['what'])){ }elseif($_POST['what']==='all'){ if(isset($_POST['confirm'])){ - del_all_messages($U['nickname'], (int) ($U['status']==1 ? $U['entry'] : 0)); + del_all_messages('', (int) ($U['status']==1 ? $U['entry'] : 0)); }else{ send_del_confirm(); } @@ -236,10 +237,10 @@ function route_setup(){ if(!valid_admin()){ send_alogin(); } - $C['bool_settings']=['suguests', 'imgembed', 'timestamps', 'trackip', 'memkick', 'memkickalways', 'forceredirect', 'incognito', 'sendmail', 'modfallback', 'disablepm', 'eninbox', 'enablegreeting', 'sortupdown', 'hidechatters', 'personalnotes', 'publicnotes', 'filtermodkick', 'namedoers']; + $C['bool_settings']=['suguests', 'imgembed', 'timestamps', 'trackip', 'memkick', 'memkickalways', 'forceredirect', 'incognito', 'sendmail', 'modfallback', 'disablepm', 'eninbox', 'enablegreeting', 'sortupdown', 'hidechatters', 'personalnotes', 'publicnotes', 'filtermodkick', 'namedoers', 'hide_reload_post_box', 'hide_reload_messages', 'hide_profile', 'hide_admin', 'hide_notes', 'hide_clone', 'hide_rearrange', 'hide_help', 'postbox_delete_globally', 'allow_js']; $C['colour_settings']=['colbg', 'coltxt']; $C['msg_settings']=['msgenter', 'msgexit', 'msgmemreg', 'msgsureg', 'msgkick', 'msgmultikick', 'msgallkick', 'msgclean', 'msgsendall', 'msgsendmem', 'msgsendmod', 'msgsendadm', 'msgsendprv', 'msgattache']; - $C['number_settings']=['memberexpire', 'guestexpire', 'kickpenalty', 'entrywait', 'captchatime', 'messageexpire', 'messagelimit', 'maxmessage', 'maxname', 'minpass', 'defaultrefresh', 'numnotes', 'maxuploadsize', 'enfileupload']; + $C['number_settings']=['memberexpire', 'guestexpire', 'kickpenalty', 'entrywait', 'captchatime', 'messageexpire', 'messagelimit', 'maxmessage', 'maxname', 'minpass', 'defaultrefresh', 'numnotes', 'maxuploadsize', 'enfileupload', 'max_refresh_rate', 'min_refresh_rate']; $C['textarea_settings']=['rulestxt', 'css', 'disabletext']; $C['text_settings']=['dateformat', 'captchachars', 'redirect', 'chatname', 'mailsender', 'mailreceiver', 'nickregex', 'passregex', 'externalcss', 'metadescription', 'sysmessagetxt']; $C['settings']=array_merge(['guestaccess', 'englobalpass', 'globalpass', 'captcha', 'dismemcaptcha', 'topic', 'guestreg', 'defaulttz'], $C['bool_settings'], $C['colour_settings'], $C['msg_settings'], $C['number_settings'], $C['textarea_settings'], $C['text_settings']); // All settings in the database @@ -262,8 +263,8 @@ function route_setup(){ } // html output subs -function prepare_stylesheets(bool $init = false){ - global $U, $db, $styles; +function prepare_stylesheets(string $class){ + global $U, $db, $scripts, $styles; $styles['fatal_error'] = 'body{background-color:#000000;color:#FF0033}'; $styles['default'] = 'body,iframe{background-color:#000000;color:#FFFFFF;font-size:14px;text-align:center}'; $styles['default'] .= 'a:visited{color:#B33CB4} a:link{color:#00A2D4} a:active{color:#55A2D4} #messages{word-wrap:break-word}'; @@ -289,7 +290,7 @@ function prepare_stylesheets(bool $init = false){ $styles['default'] .= '@keyframes timeout_messages{0%{top:-200%} 99%{top:-200%} 100%{top:0%}} '; $styles['default'] .= '.notes textarea{height:80vh;width:80%} iframe{width:100%;height:100%;margin:0;padding:0;border:none}'; $styles['default'] .= '.msg{max-height:180px;overflow-y:auto}'; - if($init || ! $db instanceof PDO){ + if($class === 'init' || ! $db instanceof PDO){ return; } $css=get_setting('css'); @@ -300,17 +301,26 @@ function prepare_stylesheets(bool $init = false){ $colbg=get_setting('colbg'); } $styles['custom'] = preg_replace("/(\r?\n|\r\n?)/u", '', "body,iframe{background-color:#$colbg;color:#$coltxt} $css"); + $allow_js = (bool) get_setting('allow_js'); + if($allow_js){ + $scripts['default'] = ''; + } } -function print_stylesheet(bool $init = false){ - global $styles; +function print_stylesheet(string $class) +{ + global $scripts, $styles; //default css echo ""; - if($init){ + if ( $class === 'init' ) { return; } //overwrite with custom css echo ""; + $allow_js = (bool) get_setting( 'allow_js' ); + if ( $allow_js ) { + echo ""; + } } function print_end(){ @@ -375,7 +385,7 @@ function thr(){ function print_start(string $class='', int $ref=0, string $url=''){ global $I, $language; - prepare_stylesheets($class === 'init'); + prepare_stylesheets($class); send_headers(); if(!empty($url)){ $url=str_replace('&', '&', $url);// Don't escape "&" in URLs here, it breaks some (older) browsers and js refresh! @@ -387,11 +397,10 @@ function print_start(string $class='', int $ref=0, string $url=''){ } if($class==='init'){ echo "$I[init]"; - print_stylesheet(true); }else{ echo ''.get_setting('chatname').''; - print_stylesheet(); } + print_stylesheet($class); echo ""; if($class!=='init' && ($externalcss=get_setting('externalcss'))!=''){ //external css - in body to make it non-renderblocking @@ -1452,11 +1461,11 @@ function send_linkfilter(string $arg=''){ function send_frameset(){ global $U, $db, $language; - prepare_stylesheets(); + prepare_stylesheets('frameset'); send_headers(); echo ''.meta_html(); echo ''.get_setting('chatname').''; - print_stylesheet(); + print_stylesheet('frameset'); echo ''; if(isset($_POST['sort'])){ if($_POST['sort']==1){ @@ -1970,8 +1979,10 @@ function send_profile(string $arg=''){ } echo ''; thr(); - echo "
$I[refreshrate]"; - echo "
"; + $max_refresh_rate = get_setting('max_refresh_rate'); + $min_refresh_rate = get_setting('min_refresh_rate'); + echo '
'.sprintf($I['refreshrate'], $min_refresh_rate, $max_refresh_rate).''; + echo '
'; thr(); preg_match('/#([0-9a-f]{6})/i', $U['style'], $matches); echo "
$I[fontcolour] ($I[viewexample])"; @@ -2092,13 +2103,29 @@ function send_controls(){ print_start('controls'); $personalnotes=(bool) get_setting('personalnotes'); $publicnotes=(bool) get_setting('publicnotes'); + $hide_reload_post_box=(bool) get_setting('hide_reload_post_box'); + $hide_reload_messages=(bool) get_setting('hide_reload_messages'); + $hide_profile=(bool) get_setting('hide_profile'); + $hide_admin=(bool) get_setting('hide_admin'); + $hide_notes=(bool) get_setting('hide_notes'); + $hide_clone=(bool) get_setting('hide_clone'); + $hide_rearrange=(bool) get_setting('hide_rearrange'); + $hide_help=(bool) get_setting('hide_help'); echo ''; - echo ''; - echo ''; - echo ''; + if(!$hide_reload_post_box) { + echo ''; + } + if(!$hide_reload_messages) { + echo ''; + } + if(!$hide_profile) { + echo ''; + } if($U['status']>=5){ - echo ''; - if(!$personalnotes){ + if(!$hide_admin) { + echo ''; + } + if(!$personalnotes && !$hide_notes){ echo ''; } } @@ -2109,15 +2136,21 @@ function send_controls(){ if($personalnotes || $publicnotes){ echo ''; } - echo ''; + if(!$hide_clone) { + echo ''; + } } if(!isset($_GET['sort'])){ $sort=0; }else{ $sort=1; } - echo ''; - echo ''; + if(!$hide_rearrange) { + echo ''; + } + if(!$hide_help) { + echo ''; + } echo ''; echo '
'.form_target('post', 'post').submit($I['reloadpb']).''.form_target('view', 'view').submit($I['reloadmsgs']).''.form_target('view', 'profile').submit($I['chgprofile']).'' . form_target( 'post', 'post' ) . submit( $I[ 'reloadpb' ] ) . '' . form_target( 'view', 'view' ) . submit( $I[ 'reloadmsgs' ] ) . '' . form_target( 'view', 'profile' ) . submit( $I[ 'chgprofile' ] ) . ''.form_target('view', 'admin').submit($I['adminbtn']).'' . form_target( 'view', 'admin' ) . submit( $I[ 'adminbtn' ] ) . ''.form_target('view', 'notes', 'staff').submit($I['notes']).''.form_target('view', 'notes').submit($I['notes']).''.form_target('_blank', 'login').submit($I['clone']).'' . form_target( '_blank', 'login' ) . submit( $I[ 'clone' ] ) . ''.form_target('_parent', 'login').hidden('sort', $sort).submit($I['sortframe']).''.form_target('view', 'help').submit($I['randh']).'' . form_target( '_parent', 'login' ) . hidden( 'sort', $sort ) . submit( $I[ 'sortframe' ] ) . '' . form_target( 'view', 'help' ) . submit( $I[ 'randh' ] ) . ''.form_target('_parent', 'logout').submit($I['exit'], 'id="exitbutton"').'
'; print_end(); @@ -2239,7 +2272,7 @@ function send_error(string $err){ function send_fatal_error(string $err){ global $I, $language, $styles; - prepare_stylesheets(); + prepare_stylesheets('fatal_error'); send_headers(); echo ''.meta_html(); echo "$I[fatalerror]"; @@ -3375,14 +3408,20 @@ function clean_inbox_selected(){ } function del_all_messages(string $nick, int $entry){ - global $db; - if($nick==''){ - return; + global $db, $U; + $globally = (bool) get_setting('postbox_delete_globally'); + if($globally && $U['status'] > 4){ + $stmt = $db->prepare( 'DELETE FROM ' . PREFIX . 'messages;' ); + $stmt->execute(); + } else { + if ( $nick === '' ) { + $nick = $U[ 'nickname' ]; + } + $stmt = $db->prepare( 'DELETE FROM ' . PREFIX . 'messages WHERE poster=? AND postdate>=?;' ); + $stmt->execute( [ $nick, $entry ] ); + $stmt = $db->prepare( 'DELETE FROM ' . PREFIX . 'inbox WHERE poster=? AND postdate>=?;' ); + $stmt->execute( [ $nick, $entry ] ); } - $stmt=$db->prepare('DELETE FROM ' . PREFIX . 'messages WHERE poster=? AND postdate>=?;'); - $stmt->execute([$nick, $entry]); - $stmt=$db->prepare('DELETE FROM ' . PREFIX . 'inbox WHERE poster=? AND postdate>=?;'); - $stmt->execute([$nick, $entry]); } function del_last_message(){ @@ -3392,13 +3431,19 @@ function del_last_message(){ }else{ $entry=$U['entry']; } - $stmt=$db->prepare('SELECT id FROM ' . PREFIX . 'messages WHERE poster=? AND postdate>=? ORDER BY id DESC LIMIT 1;'); - $stmt->execute([$U['nickname'], $entry]); - if($id=$stmt->fetch(PDO::FETCH_NUM)){ - $stmt=$db->prepare('DELETE FROM ' . PREFIX . 'messages WHERE id=?;'); - $stmt->execute($id); - $stmt=$db->prepare('DELETE FROM ' . PREFIX . 'inbox WHERE postid=?;'); - $stmt->execute($id); + $globally = (bool) get_setting('postbox_delete_globally'); + if($globally && $U['status'] > 4) { + $stmt = $db->prepare( 'SELECT id FROM ' . PREFIX . 'messages WHERE postdate>=? ORDER BY id DESC LIMIT 1;' ); + $stmt->execute( [ $entry ] ); + } else { + $stmt = $db->prepare( 'SELECT id FROM ' . PREFIX . 'messages WHERE poster=? AND postdate>=? ORDER BY id DESC LIMIT 1;' ); + $stmt->execute( [ $U[ 'nickname' ], $entry ] ); + } + if ( $id = $stmt->fetch( PDO::FETCH_NUM ) ) { + $stmt = $db->prepare( 'DELETE FROM ' . PREFIX . 'messages WHERE id=?;' ); + $stmt->execute( $id ); + $stmt = $db->prepare( 'DELETE FROM ' . PREFIX . 'inbox WHERE postid=?;' ); + $stmt->execute( $id ); } } @@ -3479,7 +3524,7 @@ function prepare_message_print(array &$message, bool $removeEmbed){ // this and that function send_headers(){ - global $U, $styles; + global $U, $scripts, $styles; header('Content-Type: text/html; charset=UTF-8'); header('Pragma: no-cache'); header('Cache-Control: no-cache, no-store, must-revalidate, max-age=0, private'); @@ -3495,7 +3540,11 @@ function send_headers(){ foreach($styles as $style) { $style_hashes .= " 'sha256-".base64_encode(hash('sha256', $style, true))."'"; } - header("Content-Security-Policy: base-uri 'self'; default-src 'none'; font-src 'self'; form-action 'self'; frame-ancestors 'self'; frame-src 'self'; img-src * data:; media-src * data:; style-src 'self' 'unsafe-inline'"); // $style_hashes"); //we can add computed hashes as soon as all inline css is moved to default css + $script_hashes = ''; + foreach($scripts as $script) { + $script_hashes .= " 'sha256-".base64_encode(hash('sha256', $script, true))."'"; + } + header("Content-Security-Policy: base-uri 'self'; default-src 'none'; font-src 'self'; form-action 'self'; frame-ancestors 'self'; frame-src 'self'; img-src * data:; media-src * data:; style-src 'self' 'unsafe-inline'; style-src $script_hashes"); // $style_hashes"); //we can add computed hashes as soon as all inline css is moved to default css header('X-Content-Type-Options: nosniff'); header('X-Frame-Options: sameorigin'); header('X-XSS-Protection: 1; mode=block'); @@ -3907,6 +3956,18 @@ function init_chat(){ ['filtermodkick', '0'], ['metadescription', $I['defaultmetadescription']], ['sysmessagetxt', 'ℹ️  '], + ['hide_reload_post_box', '0'], + ['hide_reload_messages', '0'], + ['hide_profile', '0'], + ['hide_admin', '0'], + ['hide_notes', '0'], + ['hide_clone', '0'], + ['hide_rearrange', '0'], + ['hide_help', '0'], + ['max_refresh_rate', '150'], + ['min_refresh_rate', '5'], + ['postbox_delete_globally', '0'], + ['allow_js', '1'], ]; $stmt=$db->prepare('INSERT INTO ' . PREFIX . 'settings (setting, value) VALUES (?, ?);'); foreach($settings as $pair){ @@ -4276,6 +4337,9 @@ function update_db(){ if($dbversion<46){ $db->exec('ALTER TABLE ' . PREFIX . 'members ADD COLUMN loginfails integer unsigned NOT NULL DEFAULT 0;'); } + if($dbversion<47){ + $db->exec('INSERT INTO ' . PREFIX . "settings (setting,value) VALUES ('hide_reload_post_box', '0'), ('hide_reload_messages', '0'),('hide_profile', '0'),('hide_admin', '0'),('hide_notes', '0'),('hide_clone', '0'),('hide_rearrange', '0'),('hide_help', '0'),('max_refresh_rate', '150'),('min_refresh_rate', '5'),('postbox_delete_globally', '0'),('allow_js', '1');"); + } update_setting('dbversion', DBVERSION); if($msgencrypted!==MSGENCRYPTED){ if(!extension_loaded('sodium')){ @@ -4476,7 +4540,7 @@ function load_lang(){ function load_config(){ mb_internal_encoding('UTF-8'); define('VERSION', '1.24.1'); // Script version - define('DBVERSION', 46); // Database layout version + define('DBVERSION', 47); // Database layout version define('MSGENCRYPTED', false); // Store messages encrypted in the database to prevent other database users from reading them - true/false - visit the setup page after editing! define('ENCRYPTKEY_PASS', 'MY_SECRET_KEY'); // Recommended length: 32. Encryption key for messages define('AES_IV_PASS', '012345678912'); // Recommended length: 12. AES Encryption IV diff --git a/lang_ar.php b/lang_ar.php index 7f05460..b1a02ba 100644 --- a/lang_ar.php +++ b/lang_ar.php @@ -139,7 +139,7 @@ $T=[ 'profile' => 'ملفك الشخصي', 'ignore' => 'تم التجاهل', 'unignore' => 'لا تتجاهل مرة أخرى', - 'refreshrate' => 'معدل التحديث (5-150 ثانية)', + 'refreshrate' => 'معدل التحديث (%1$d-%2$d ثانية)', 'fontcolour' => 'لون الخط', 'viewexample' => 'اعرض الأمثلة', 'bgcolour' => 'لون الخلفية', diff --git a/lang_bg.php b/lang_bg.php index f5cc28f..24e03db 100644 --- a/lang_bg.php +++ b/lang_bg.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Твоят профил', 'ignore' => 'Игнорирай', 'unignore' => 'Спри да игнорираш', - 'refreshrate' => 'Честота на опресняване (5-150 секунди)', + 'refreshrate' => 'Честота на опресняване (%1$d-%2$d секунди)', 'fontcolour' => 'Цвят на шрифта', 'viewexample' => 'Виж примери', 'bgcolour' => 'Цвят на фона', diff --git a/lang_cs.php b/lang_cs.php index 052f29b..ab95e23 100644 --- a/lang_cs.php +++ b/lang_cs.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Váš profil', 'ignore' => 'Ignorovat', 'unignore' => 'Již neignorovat', - 'refreshrate' => 'Obnovovací frekvence (5-150 sekund)', + 'refreshrate' => 'Obnovovací frekvence (%1$d-%2$d sekund)', 'fontcolour' => 'Barva písma', 'viewexample' => 'Zobrazit příklady', 'bgcolour' => 'Barva pozadí', diff --git a/lang_de.php b/lang_de.php index c6a4202..f9058c1 100644 --- a/lang_de.php +++ b/lang_de.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Ihr Profil', 'ignore' => 'Ignorieren', 'unignore' => 'Nicht mehr ignorieren', - 'refreshrate' => 'Aktualisierungsrate (5-150 Sekunden)', + 'refreshrate' => 'Aktualisierungsrate (%1$d-%2$d Sekunden)', 'fontcolour' => 'Schriftfarbe', 'viewexample' => 'Beispiele anzeigen', 'bgcolour' => 'Hintergrundfarbe', @@ -383,4 +383,16 @@ $T=[ 'Zurück zur Einrichtungsseite', 'defaultmetadescription' => 'Eine Chatgemeinschaft', 'metadescription' => 'Metabeschreibung (Am Besten 50 - 160 Zeichen für SEO)', + 'hide_reload_post_box' => 'Postbox neu Laden Knopf verstecken', + 'hide_reload_messages' => 'Nachrichten neu laden Knopf verstecken', + 'hide_profile' => 'Profil-Knopf verstecken', + 'hide_admin' => 'Admin-Knopf verstecken', + 'hide_notes' => 'Notizen-Knopf verstecken', + 'hide_clone' => 'Klonen-Knopf verstecken', + 'hide_rearrange' => 'Umordnen-Knopf verstecken', + 'hide_help' => 'Hilfe-Knopf verstecken', + 'max_refresh_rate' => 'Niedrigste Aktualisierungsrate', + 'min_refresh_rate' => 'Höchste Aktualisierungsrate', + 'postbox_delete_globally' => 'Postbox Löschknöpfe global anwenden', + 'allow_js' => 'Verbessern der Funktionalität mit JavaScript erlauben', ]; diff --git a/lang_en.php b/lang_en.php index df2d60c..74cd857 100644 --- a/lang_en.php +++ b/lang_en.php @@ -145,7 +145,7 @@ $I=[ 'profile' => 'Your Profile', 'ignore' => 'Ignore', 'unignore' => 'Don\'t ignore anymore', - 'refreshrate' => 'Refresh rate (5-150 seconds)', + 'refreshrate' => 'Refresh rate (%1$d-%2$d seconds)', 'fontcolour' => 'Font colour', 'viewexample' => 'View examples', 'bgcolour' => 'Background colour', @@ -383,4 +383,16 @@ $I=[ 'backtosetup' => 'Back to setup', 'defaultmetadescription' => 'A chat community', 'metadescription' => 'Meta description (best 50 - 160 characters for SEO)', + 'hide_reload_post_box' => 'Hide reload post box button', + 'hide_reload_messages' => 'Hide reload messages button', + 'hide_profile' => 'Hide profile button', + 'hide_admin' => 'Hide admin button', + 'hide_notes' => 'Hide notes button', + 'hide_clone' => 'Hide clone button', + 'hide_rearrange' => 'Hide rearrange button', + 'hide_help' => 'Hide help button', + 'max_refresh_rate' => 'Lowest refresh rate', + 'min_refresh_rate' => 'Highest refresh rate', + 'postbox_delete_globally' => 'Apply postbox delete button globally', + 'allow_js' => 'Allow enhancing functionality with JavaScript', ]; diff --git a/lang_es.php b/lang_es.php index 5181d46..ec08ae3 100644 --- a/lang_es.php +++ b/lang_es.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Tu perfil', 'ignore' => 'Ignorar', 'unignore' => 'Dejar de ignorar', - 'refreshrate' => 'Tiempo de actualización (5-150 segundos)', + 'refreshrate' => 'Tiempo de actualización (%1$d-%2$d segundos)', 'fontcolour' => 'Color de texto', 'viewexample' => 'Ver ejemplos', 'bgcolour' => 'Color de fondo', diff --git a/lang_fi.php b/lang_fi.php index ee071f6..54107e8 100644 --- a/lang_fi.php +++ b/lang_fi.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Profiilisi', 'ignore' => 'Jätä huomiotta', 'unignore' => 'Poista huomiottajättö', - 'refreshrate' => 'Päivitysnopeus (5-150 sekuntia)', + 'refreshrate' => 'Päivitysnopeus (%1$d-%2$d sekuntia)', 'fontcolour' => 'Fontin väri', 'viewexample' => 'Katso esimerkit', 'bgcolour' => 'Taustaväri', diff --git a/lang_fr.php b/lang_fr.php index 4e1532c..2f762a5 100644 --- a/lang_fr.php +++ b/lang_fr.php @@ -143,7 +143,7 @@ $T=[ 'profile' => 'Votre profile', 'ignore' => 'Ignoré', 'unignore' => 'Ne jamais plus ignorer', - 'refreshrate' => 'Taux de rafraichissement (5-150 seconds)', + 'refreshrate' => 'Taux de rafraichissement (%1$d-%2$d seconds)', 'fontcolour' => 'Couleur des polices', 'viewexample' => 'Visualiser les exemples', 'bgcolour' => 'Couleur de fond', diff --git a/lang_id.php b/lang_id.php index 01aa8e6..6dc1a99 100644 --- a/lang_id.php +++ b/lang_id.php @@ -143,7 +143,7 @@ $T=[ 'profile' => 'Profil Anda', 'ignore' => 'Setuju', 'unignore' => 'Tak setuju apapun', - 'refreshrate' => 'kecepatan penyegaran (5-150 detik)', + 'refreshrate' => 'kecepatan penyegaran (%1$d-%2$d detik)', 'fontcolour' => 'Warna font', 'viewexample' => 'Lihat contoh', 'bgcolour' => 'Warna latar belakang', diff --git a/lang_it.php b/lang_it.php index 8b0551b..47fe8a9 100644 --- a/lang_it.php +++ b/lang_it.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Mio profilo', 'ignore' => 'Ignorare', 'unignore' => 'Non ignorare più', - 'refreshrate' => 'Ricarica Chat (5-150 secondi)', + 'refreshrate' => 'Ricarica Chat (%1$d-%2$d secondi)', 'fontcolour' => 'Colore carattere', 'viewexample' => 'Visualizza esempi', 'bgcolour' => 'Colore sfondo', diff --git a/lang_pt.php b/lang_pt.php index 59ff019..7c4ec46 100644 --- a/lang_pt.php +++ b/lang_pt.php @@ -145,7 +145,7 @@ $I=[ 'profile' => 'Seu perfil', 'ignore' => 'Ignorar', 'unignore' => 'Não ignorar mais', - 'refreshrate' => 'Taxa de recarregar (5-150 segundos)', + 'refreshrate' => 'Taxa de recarregar (%1$d-%2$d segundos)', 'fontcolour' => 'Cor da fonte', 'viewexample' => 'Ver exemplos', 'bgcolour' => 'Cor de fundo', diff --git a/lang_ru.php b/lang_ru.php index 880aef5..d5f07b3 100644 --- a/lang_ru.php +++ b/lang_ru.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Ваш профиль', 'ignore' => 'Игнорировать', 'unignore' => 'Больше не игнорировать', - 'refreshrate' => 'Частота обновления (5-150 секунд)', + 'refreshrate' => 'Частота обновления (%1$d-%2$d секунд)', 'fontcolour' => 'Цвет шрифта', 'viewexample' => 'Посмотреть примеры', 'bgcolour' => 'Фоновый цвет', diff --git a/lang_tr.php b/lang_tr.php index 23d54df..b2f35fd 100644 --- a/lang_tr.php +++ b/lang_tr.php @@ -145,7 +145,7 @@ $T=[ 'profile' => 'Profiliniz', 'ignore' => 'Görmezden gel', 'unignore' => 'Görmezden gelmeyi bırak', - 'refreshrate' => 'Yenileme aralığı (5-150 saniye)', + 'refreshrate' => 'Yenileme aralığı (%1$d-%2$d saniye)', 'fontcolour' => 'Yazı tipi rengi', 'viewexample' => 'Örnekleri görüntüle', 'bgcolour' => 'Arkaplan rengi', diff --git a/lang_uk.php b/lang_uk.php index 006cb49..523cb01 100644 --- a/lang_uk.php +++ b/lang_uk.php @@ -145,7 +145,7 @@ $T = [ 'profile' => 'Ваш профіль', 'ignore' => 'Ігнорувати', 'unignore' => 'Більше не ігнорувати', -'refreshrate' => 'Частота оновлення (5-150 секунд)', +'refreshrate' => 'Частота оновлення (%1$d-%2$d секунд)', 'fontcolour' => 'Колір шрифту', 'viewexample' => 'Подивитися приклади', 'bgcolour' => 'Фоновий колір', diff --git a/lang_zh-Hans.php b/lang_zh-Hans.php index 73198d6..975e0e2 100644 --- a/lang_zh-Hans.php +++ b/lang_zh-Hans.php @@ -126,7 +126,7 @@ $T=[ 'profile' => '你的个人资料', 'ignore' => '忽略', 'unignore' => '取消忽略', - 'refreshrate' => '刷新时间(5秒-150秒)', + 'refreshrate' => '刷新时间(%1$d秒-%2$d秒)', 'fontcolour' => '字体颜色', 'viewexample' => '查看示例', 'bgcolour' => '背景色', diff --git a/lang_zh-Hant.php b/lang_zh-Hant.php index 5fd77b3..de388ae 100644 --- a/lang_zh-Hant.php +++ b/lang_zh-Hant.php @@ -126,7 +126,7 @@ $T=[ 'profile' => '你的個人資料', 'ignore' => '忽略', 'unignore' => '取消忽略', - 'refreshrate' => '刷新時間(5秒-150秒)', + 'refreshrate' => '刷新時間(%1$d秒-%2$d秒)', 'fontcolour' => '字體顏色', 'viewexample' => '查看示例', 'bgcolour' => '背景色',