ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
83   •   Посмотреть все темы

Bugs - ошибки системы чатов и их исправление!

 

20089
Dimitry @Dimitry
У некоторых могут не грузиться картинки, смайлы и иконки через браузер Chrome.
Дело в том что Chrome больше не поддерживает картинки без SSL подключения и пытается грузить через SSL. Если картинки не грузятся, то хостинг где они находятся не поддерживает SSL (https). Загружайте себе в чат или выберите нормальный хостинг, наш к примеру поддерживает. **********

20089
Dimitry @Dimitry
У некоторых старых чатов мог пропасть доступ через свой домен.
Проблема в том что эти домены использовали наши старые NS сервера, которые мы не используем уже более 5 лет. Чтобы исправить проблему, зайдите к регистратору вашего домена и измените NS на:
ns1.webserv24.com
ns2.webserv24.com

20089
Dimitry @Dimitry
У многих в шаблоне кто был who.inc старая ссылка информации о IP.
Нужно заменить
**********
на
**********

20089
Dimitry @Dimitry
ВАЖНО! Обратите внимание на то, что в Дата-Центре 2го марта в 7:00 по Москве будут проводиться плановые технические работы и все наши сервера будут недоступны в течении 15-30 минут. Подобные работы проводятся обычно не чаще чем раз в год.

20089
Dimitry @Dimitry
Последний лог теперь хранит от 150-200 сообщений - при входе в чат можно вывести до 200 штук, а также увеличен размер загрузки медиа-файлов в чат до 50мб.

20089
Dimitry @Dimitry
Исправлена проблема пропадания сообщений в чате

Ранее нам уже сообщали о проблеме пропадания сообщений. Сообщение отправляется и есть в логе чата, но в чат оно сразу не выводится, а только после перезагрузки чата.

Данная проблема была связана с DNS запросами к движку Mpchat и уже исправлена заменой DNS серверов свои собственные. Так как данная проблема в логах больше не проявляется, скорее всего всё хорошо.

20089
Dimitry @Dimitry
Исправлена ошибка в популярном коде удаления сообщений

Если в скриптах вашего чата есть timeremovez, то лучше заменить search на indexOf, например это:
if (div[k].innerHTML.search(timeremovez[i])>=0 && (remover[nick] || div[k].innerHTML.search(">"+nick+":<")!>=0) ){

на это
if (div[k].innerHTML.indexOf(timeremovez[i])>=0 && (remover[nick] || div[k].innerHTML.indexOf(">"+nick+":<")>=0) ){

Исправленная версия:
https://vmeste.eu/forum?pid=330546#p330546

20089
Dimitry @Dimitry
Доработана обработка медиа ссылок

Ранее медиа ссылки которые помещались в тег [media] отображались как картинки или видео ютуба. Теперь добавлена обработка музыки и видео. (mp3|m4a|ogg|weba и mp4|webm|mov)

Доработанный код тут:
https://vmeste.eu/forum?pid=329991#p329991

20089
Dimitry @Dimitry
Скрытие приватных сообщений в логе

В связи с жалобами пользователей о том что их приват был прочитан, мы вынуждены скрывать приватные сообщения в логах даже для администраторов чатов. Возможно не все знают, но в каждой стране существует закон/статья о тайне переписки и нарушение этого закона недопустимо. Чтобы и дальше была возможность выявлять нарушения в приватах - например вредоносного спама, система распознаёт и отображает сторонние ссылки. О других нарушениях в личных сообщениях, вам могут сообщить сами пользователи чата, например предоставив скриншот с нарушением.

20089
Dimitry @Dimitry
В связи с обращениями админов с просьбой вернуть приват, если отсутствует понимание обязанностей администратора чата, подведу итог:
Основная задача остановить публичное распространение вредоносных файлов и ссылок. Т.е. на сервере не должно быть таких файлов, и не должно быть публичных ссылок на такие ресурсы, на форуме, в гостевой и так далее. Все понимают что не возможно всё промодерировать и поэтому админ обязан также реагировать на жалобы посетителей.

Вот ввести функцию пожаловаться на сообщение, было бы не плохо. Но сделать такое сейчас будет трудновато из-за старой структуры сообщений. Такую функцию надо вводить на все сообщения, на форуме и в гостевой подавно. Во всех соцсетях такое давно есть.

101
Денис @Sloopy
А что если временно использовать вот такую финчу.
В приватных сообщениях перед смс возле времени сделать кнопку вот такого плана.

<a href='#' onclick=\"alert('Жалуясь на приватное сообщение вы открываете администрации чата доступ к вашей приватной переписке с данным человеком, с момента времени жалобного сообщения.');wo('index.php?inc=post&nick="+mynick+"&id="+myid+"&act=new&tonick=ТУТ НИК АДМИНА&subject=Жалоба на приватное сообщение:&nbsp;("+nick+":"+tonick+") в "+time+" ','PM','1000','500','yes'); return false;\" >ТУТ ИКОНКА (КАРТИНКА) ЖАЛОБЫ</a>

20089
Dimitry @Dimitry
Авторизация в магазине под другими никами

По многочисленным просьбам вернули функцию для админа авторизоваться под другим ником на выбранной странице магазина. Для этого у админа выводится кнопка с помощью которой можно изменить ник. Обратите внимание, что при переходе на другие страницы - авторизация сбрасывается на админа.

20089
Dimitry @Dimitry
Лог отслеживания PHP ошибок для 7й версии

В главную админку добавлен пункт лог ошибок в котором можно посмотреть PHP ошибки сервисных или своих личных модулей. Раздел сделан для удобства и отображает до 1000 строк из файла errors.dat.

20089
Dimitry @Dimitry
В параметры добавлена настройка сервиса проверки IP адреса.
Можно указать свой сервис, вместо IP нужно подставить %ip%.
**********

Кроме этого, ошибка о перезагрузке фрейма сообщений теперь выглядит проще. Теперь текст короче и серым цветом, а время переключения уменьшено в 2 раза - до 5 сек.

20089
Dimitry @Dimitry
Добавлена поддержка загрузки в файл картинок формата .webp

Чтобы данный формат работал внутри чата через теги file/media, необходимо в скриптах чата в файле jscripts.dat найти все строки содержащие данный код и добавить зелёное как указано ниже: |webp
gif|jpg|jpeg|bmp|png|tif|tiff|webp

20089
Dimitry @Dimitry
Исправление прокрутки в чате

Прокрутка могла не до конца прокручиваться, а также с телефона нельзя было прокрутить экран наверх - всё дёргалось.
Чтобы исправить исправьте 2 числа в функции up() вот так:
function up() {
var leftdiv=document.getElementById("leftdiv");
if(loaded==0) {leftdiv.scrollTop=0; onloaded();}
var left=leftdiv.scrollHeight-leftdiv.clientHeight-leftdiv.scrollTop;
if((left<=1 && ++delayed>20) || (scrolled==1 && left>250)) {delayed=0; return;}
leftdiv.scrollTop=Math.ceil(1+leftdiv.scrollTop+left/(1+slowscroll));
setTimeout('up()',20);
}

20089
Dimitry @Dimitry
Исправление загрузки картинок в магазин

Теперь дополнительно поддерживаются форматы bmp/webp.
Кроме этого, в админ панели в ПАРАМЕТРАХ можно задать максимальный размер картинок. По умолчанию всегда было 100x100. Теперь можно увеличить до 200x200, просто указав к примеру 150 или 200.

20089
Dimitry @Dimitry
Ошибка авторизации/комментариев у чатов с использованием jQuery

С доработкой новой версии у чатов с jQuery появилась ошибка обработки api запросов. Может не работать модальный вход в чат, а также система комментариев, в гостевой, в анкетах, в галереи.

Самое простое исправление

Уберите jQuery со страницы, ведь модуль api.js уже подгружает лёгкий аналог этой библиотеки. Если всё же нужен jQuery, читайте ниже.

Исправление с использованием jQuery

1. Выполните автообновление шаблонов нажав кнопку:
Главная админка -> Обновления -> Обновить шаблоны с комментариями
2. Если используете api.js от главного чата, нужно сбросить кеш, прописав v2 вместо v1. Сделать это можно или во всех шаблонах, или в header.html если через него подгружается верх.
<script src="//mpchat.com/chat/api.js?v2"></script>

3. Если вы используете свой api.js или загрузили его к себе, то в нём нужно добавить синее в каждую строку с $.ajax.
$.ajax({url:mp.script, dataType:'json', method:'POST', data:'type='+mp.type+'&sort='+mp.sort+'&limit='+mp.limit,

4. Если так и не заработало, проверьте все шаблоны с комментариями (gb.inc,gallery.inc,info.inc), есть ли там в каждой строке $.ajax синий код как указан выше.

ВАЖНО! Для совместной работы с jQuery, сначала разместите скрипт jQuery, а затем api.js

20089
Dimitry @Dimitry
Если сломался скрипт Действия и пишет - нет текста

Найдите в шаблоне чата chat.inc данную строку и замените converter на синее так:
parent.hidden.location.href = 'index.php?inc=write&'+yourkey+'&text= '+encodeURIComponent(arr[x]+" "+text);

20089
Dimitry @Dimitry
Как добавить отображение картинок в модуль комментариев

По умолчанию картинки выводятся ссылками и тег img не работает.
Добавьте синее в 3х местах в шаблон где комментарии и укажите максимальное кол-во картинок к отображению, вместо 0. Для отображения кнопки img и увеличения ширины нужно провести другие изменения, пример для гостевой:

/* Глобальные парамметры mp */
if(!window.mp) window.mp={};
mp.debug=0; mp.type='gb'; mp.sort='desc'; mp.limit=5; mp.script='?inc=comments'; mp.commentsok={};
mp.message_img_max=0;
/* Загрузка данных и последних сообщений */
$.ajax({url:mp.script, dataType:'json', method:'POST', data:'type='+mp.type+'&sort='+mp.sort+'&limit='+mp.limit,
success:function(data) {
if(data.disalow) return;
if(data.error) mp_err(data.error);
for(var k in data) {mp[k]=data[k];
if(mp.debug) {if(typeof(data[k])=='object') {for (var k1 in data[k]) $.debug(k1+'='+data[k][k1]);} else $.debug(k+'='+data[k]);}
}
mp_authview();
$('#tags').html(mp.tags);
if(mp.message_img_max>0) $('#imgbutton').css('display','inline');
if(data.xcode && !data.myid) $('#code').html('<img src=index.php?inc=code title="для незарегистрированных" align=absmiddle> <input type=text name=code class=text size=10>');
if(data.count==mp.limit) $('#loadmore').html('<input type=button value="Загрузить ещё" onclick="mp_loadmore();">');
for(var k in data.comments) {mp_addcomment(data.comments[k]); mp.lastid=data.comments[k].id;}
}
});
});
</script>

<div id=commentsdiv align=center>
<br>
<b>Гостевая книга</b><br><br>
<div style='width:520px;'>


...


Если не обновилось, нажмите ctrl + F5.