Форумы » MPCHAT - CMS хостинг чатов для профессионалов »

ОБНОВЛЕНИЯ и НОВЫЕ ФУНКЦИИ!



1 2 3

19337
Dimitry
[b]Удаление сообщений прямо в окне чата[/b]
(без удаления сообщений в логе)

Просто выберите в селекторе команд удалить сообщения, и потом нажимайте на время сообщений.
На форуме существует подобная версия удаления сообщений внутри чата, это более улучшенный код от нас.
Позволяет не только модераторам, [u]но и пользователям удалять свои сообщения[/u].
Чтобы пользователи не могли удалять свои сообщения, удалите синий код.

На верху скриптов чата jscripts.dat можно задать ники модераторов:
[quote]/* Ники модераторов удаляющих сообщения командой /remove */
var remover = new Array();
remover['adm']=1;[/quote]
Ниже в функции f() после кода автоответчика добавляем такой код:

[quote]if(text.substr(0,7)=="/remove") {
var timeremovez;
var deleted=0;
text=text.replace("/remove", "");
timeremovez = text.match(/см\.\s(\d\d.\d\d.\d\d)|[^\s\(\)]{3,50}/g);
if(timeremovez==null) return;
var obj=document.getElementById("leftdiv");
var div=obj.getElementsByTagName('div');
for (var i=0; i<timeremovez.length; i++) {
for (var k=0; k<div.length; k++) {
if (div[k].innerHTML.search(timeremovez[i])>=0 && (remover[nick] [color=blue]|| div[k].innerHTML.search(">"+nick+":<")>=0[/color]) ){
obj.removeChild(div[k]); k--; deleted++;
}
}
}
if(nick!=mynick || !deleted) return;
text='Вы удалили сообщение/я с '+timeremovez;
}[/quote]
А теперь в шаблоне чата chat.inc в селектор команд добавим команду уделения сообщений:
[quote]<option value='/remove '>удалить сообщения</option>[/quote]
19337
Dimitry
[b]Mpchat переходит на PHP 7.4[/b]

Как быстро летит время и официальная поддержка PHP 7.1 закончилась. Наш хостинг поддерживает самый новый PHP 7.4, но Mpchat его не поддерживал. Весь движок и [u]файлы сервиса уже переведены[/u] на версию [b]PHP 7.4[/b], для новых чатов она также теперь по умолчанию.

[b]Основные проблемы при переходе и их решение[/b]

[b]1.[/b] Основная проблема это устаревшее со времён PHP 4 использование массивов в виде [b]$array[var][/b]
Такое использование начиная с версии 7.2 не допускается. Для удачного перехода нужно все переменные массивов привести к такому виду: [b]$array['var'][/b]
Кроме этого нельзя забывать про редкие многомерные массивы: [b]$array['var1']['var2'][/b]

[b]2.[/b] Если переменная использовалась напрямую [u]в строке или echo[/u], то также обрамить скобками, например:
echo "Привет [b]{$u['name']}[/b], как дела?";
или можно вынести переменную из строки, например так:
echo "Привет [b]".$u['name']."[/b], как дела?";

[b]3.[/b] У некоторых может появиться ошибка на функцию [b]each()[/b], её нужно заменить на новый вид с foreach().
В стандартных скриптах можно всегда посмотреть исправленный код.


[b]Как перейти на версию PHP 7.4[/b]

Чатам которые не используют свои PHP скрипты и работают полностью на стандартных от мпчата, делать ничего не нужно.
[b][color=green]Дальше вам можно просто не читать, ниже для тех у кого свои или модифицированные PHP скрипты.[/color][/b]


[b]Как исправить свои PHP скрипты[/b]

Если вы используете старые модифицированные скрипты от мпчата или какие либо свои скрипты, например стол заказов, то вам нужно произвести проверку и исправления. Чтобы найти все переменные я написал [b]скрипт конвертер fix.php[/b] для поиска и автозамены, там где это возможно. Обратите внимание, файл [b]config.php[/b] был для всех чатов исправлен автоматически, его можно не трогать! Для упрощения кода в [b]ini.php[/b] также добавлена переменная [b]$myid[/b], которая содержит ID авторизованного пользователя.

Приступим:
Сохраните файл правой кнопкой мышки и переименуйте его в [u]fix.php[/u] => https://imgs.su/upload/264/4035551043.txt
Файл [b]fix.php[/b] нужно загружать в ту папку в которой вы хотите проверить файлы.

[b]1.[/b] Для проверки PHP файлов в корневой папке [b]/home/mychat/[/b] нужно загрузить файл fix.php как модуль в эту же папку,
а затем открывать ссылку вида: https://chat.mpchat.com/?inc=fix

[b]2.[/b] Для проверки PHP файлов в папке [b]/home/mychat/mychat/[/b] нужно загрузить файл fix.php в эту же папку,
а затем открывать ссылку вида: https://chat.mpchat.com/fix.php
(если будет ошибка 404, пишите, подскажу как исправить)

[b]3.[/b] Для проверки вложенных папок, например [b]/home/mychat/mychat/stol/[/b], нужно загрузить файл fix.php в эту же папку,
а затем открывать ссылку вида: https://chat.mpchat.com/stol/fix.php


[b]Как работает скрипт? [/b]

Скрипт абсолютно безопасен и не портит ваши файлы при запуске.
Сначала он проверяет первый файл и если найдёт там устаревшие массивы то выведет строки выделив красным.
Вам нужно проверить, если переменные в echo или внутри строки, то нужно вынести их от туда как описывал выше.
Затем можно смело нажимать кнопку [b]FIX FILE[/b] и открывать ссылку в браузере.
Если ошибок нет, то всё ок. Нажимаем на странице скрипта [b]Reload page[/b].
[color=red]F5 нажимать нельзя - сразу исправит следующий файл!!![/color]
Если возникла ошибка, то смотрим на какой строке и выносим переменную из строки, других проблем не попадалось.
Все ошибки можно увидеть в файле: [b]/home/mychat/errors.dat[/b]

[color=red][b]Просьба ко всем, сообщать о возникающих ошибках.
После перехода не забываем удалить файл fix.php везде где его загрузили!!!
Все чаты автоматически переключены, но вы можете переключить назад на PHP 7.1[/b][/color]
Обсуждения: https://forum.vmeste.eu/viewtopic.php?id=18319
19337
Dimitry
[b]Перенос Mphat на другой сервер[/b]

В целях улучшения инфраструктуры, mpchat будет перенесён на новый сервер:
https://s02.webserv24.com/
Перенос будет проведен завтра в ночь, с пятницы на субботу [b]21.03.2020 00:00 - 02:00[/b] по МСК.
Во время переноса примерно 1 час чаты будут работать со сбоями и проводить изменения в файлах не рекомендуется.
Обратите внимание на то, что ссылка на панель [b]Webserv24[/b] изменится на указанную выше.
Если ваши личные домены ещё не направлены на наши NS адреса, обязательно направьте их, иначе чат перестанет работать.
[b]ns1.webserv24.com
ns2.webserv24.com[/b]
В случае возникновения проблем после переноса, пишите в тему про Ошибки.
Рассылка с данным уведомлением уже отправлена всем админам чатов.

[b]PS> Перенос прошёл практически без сбоев.[/b]
19337
Dimitry
[b]Звуковые сообщения в чате с мобильного и с ПК + исправление загрузки[/b]

Ранее можно было только с телефона отправить звуковое сообщения прямо в чате, просто выбрав загрузку файла.
В скрипты движка я добавил возможность размещения кнопки микрофона для записи звука с ПК.
Для установки достаточно разместить этот код в шаблоне чата [b]chat.inc[/b].
В коде стилей можно указать свою иконку микрофона и поменять размеры на нужные.

[code]<style>
.mp_record {
display:inline-flex;
background: url('https://mpchat.com/blank/img/mic.png') no-repeat 50% 50%;
width: 28px;
height: 28px;
line-height:28;
background-size: contain;
cursor: pointer;
text-align:center;
color:white;
font:normal 11px Verdana;
vertical-align: middle;
}
.mp_recording {
border-radius:14px;
background:red;
background-image: none;
}
</style>
<div class="mp_record" onclick="mp_recording();"></div>[/code]
.

[b]Исправление загрузки файлов[/b]

Если у пользователя медленный интернет, то отправление файла может зациклиться, так как файл не успевает отправиться и отправляется повторно. Чтобы исправить это, достаточно найти функцию msg_send() в скриптах чата jscripts.dat и в самый низ внутри функции добавить этот код:
[code]//clear loadfile
setTimeout(function() {form.loadfile.value='';}, 500);[/code]
Также проверьте в файле [b]chat.inc[/b] наличие функции [b][color=red]msg_reset();[/color][/b] - если есть, просто удалите её!


[b]PHP модуль админ панели теперь доступен[/b]

Для любителей поковыряться в PHP коде теперь доступен модуль [b]adm_modules.php[/b].
Также для удобства в разделе [b]Обновления[/b] теперь выделяются синим цветом свои модули PHP.
1 2 3


Это закрытая тема - нельзя отправлять сообщения.

© 2008-2020
Контакты | Группа | Privacy и Cookie | Правила