Иконка ресурса

Как сделать что бы при входе в чат показывало, с нами уже (время)?

stream

Support
Команда форума
Регистрация
09.09.14
Сообщения
958
Реакции
625
Баллы
93
Пользователь stream разместил новый ресурс:

Как сделать что бы при входе в чат показывало, с нами уже (время)? - Как сделать что бы при входе в чат показывало, с нами уже (время)?

Как сделать что бы при входе в чат показывало, с нами уже (время)?
..По мотивам "Помощь чатам VOC++", взято здесь, переделано здесь, на ХостЛайте)
Открываем корневой файл voc.php, ищем код:
PHP:
if ($hi) $messages_to_show[] = array(MESG_TIME=>my_time(), MESG_ROOM=>$room_id,...
Узнать больше об этом ресурсе...
 

Mavltd

Юзверь
Проверенный ++
Регистрация
29.06.15
Сообщения
14
Реакции
8
Баллы
3
Возраст
34
да как флаг сделать чтоб показывало?
 

mychatik

Support
Команда форума
Регистрация
26.05.15
Сообщения
482
Реакции
389
Баллы
63
Веб-сайт
mychatik.ru
Для определения страны в модуле используется сторонний сервер ipgeobase.ru
Всё хорошо, когда он работает. А если вдруг сервис отвалился? Длительное ожидание ответа будет подвешивать чат при входе пользователя. А если войдёт несколько пользователей одновременно?

Нашёл, что есть библиотека cURL с необходимыми параметрами:
CURLOPT_CONNECTTIMEOUT - Количество секунд ожидания при попытке соединения;
CURLOPT_TIMEOUT - Максимально позволенное количество секунд для выполнения запроса.
Неплохо было бы их применить...

Вот нашёл примеры использования этой библиотеки Вебмастер: как создать свой сайт
Но никак не въеду, каким из приведённых способов нужно это делать в данном модуле.
 

Rain

Администратор
Команда форума
Регистрация
04.09.14
Сообщения
367
Реакции
321
Баллы
63
Возраст
29
Заменить
[HIDE=20]
PHP:
$str = 'http://ipgeobase.ru:7020/geo?ip='.$current_user->IP;
$content = file_get_contents($str);
на
PHP:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://ipgeobase.ru:7020/geo?ip='.$current_user->IP);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_USERAGENT, 'PHP Curl');
$content = curl_exec($ch);
curl_close($ch);
[/HIDE]
Как то так.
 

mychatik

Support
Команда форума
Регистрация
26.05.15
Сообщения
482
Реакции
389
Баллы
63
Веб-сайт
mychatik.ru
Прикольно и классно, но вот если бы еще флаг показывало, было бы вообще супер))
Да не вопрос!
[HIDE=50]
Грузим в корень, или куда нужно папку flags с флагами стран. Я взял готовые флаги geoicons от старого GeoIP.
Кому надо - качаем: https://file.hostlite.ru/2Sh
Если картинки другие, переименовываем их так, как кодируются страны (типа RU.gif)
Далее, строку
PHP:
$country = $matches[0][0];
Меняем на:
PHP:
$country = $matches[1][0];
Затем заменяем:
PHP:
Страна: ".$country."
На:
PHP:
Страна: <img src="'.$chat_url.'flags/'.$country.'.gif" height="12" width="18" alt="">
--------------------------------------------
Для того, чтобы вывести картинку для неопределившейся страны после:
PHP:
$country = $matches[1][0];
Добавляем:
PHP:
if ($country !=""): $f_count = $country; else: $f_count = A1; endif;
И заменяем:
PHP:
Страна: ".$country."
На:
PHP:
Страна: <img src="'.$chat_url.'flags/'.$f_count .'.gif" height="12" width="18" alt="">
[/HIDE]
Всё. Готово. Вместо букв - у нас флажок.
 
Последнее редактирование:

Майор

Администратор
Команда форума
Регистрация
04.09.14
Сообщения
2.837
Реакции
1.942
Баллы
113
При вставке
PHP:
Страна: <img src="'.$chat_url.'flags/'.$country.'.gif" height="12" width="18" alt="">
в чате просто белый экран, чето тут не так написано)
 
Сверху Снизу