Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
Online v0.2 Final
Модуль Online позволяет выводить на вашем сайте блок с информацией о пользователях сайта, гостях, роботах. В данном блоке вы сможете увидеть IP адрес, Proxy, страну, город, ОС, браузер, группу пользователя, последний визит на сайт, местонахождение на сайте. Данный модуль гораздо лучше чем другие подобные модули, убедиться в этом вы можете опробовав его в работе. В модуле присутствует админ панель для более удобного управления модулем, языковой пакет для перевода модуля на другие языки, шаблоны с огромным количеством тегов с помощью которых вы сможете настраивать модуль практически как вам угодно.
Возможности модуля: - Вывод общего количества посетителей на сайте - Вывод количества пользователей на сайте - Вывод количества гостей на сайте - Вывод количества роботов на сайте - Вывод списка пользователей на сайте - Вывод списка гостей на сайте - Вывод списка роботов на сайте - Вывод списка последних посетителей сайта - Показ IP адреса - Показ Proxy - Показ страны к которой относится IP адрес - Показ города к которому относится IP адрес - Показ ОС пользователя - Показ браузера - Показ группы пользователя - Показ последнего визита пользователя - Показ местонахождения пользователя или робота на сайте - Показ иконки страны к которому относится IP адрес - Показ иконки браузера - Показ AJAX-карточки пользователя при клике по его нику - Функция "Статус пользователя" которая выводит статус пользователя на сайте (Online/Offline) и местоположение пользователя в профиле/карточке пользователя/персональных сообщениях/комментариях/краткой новости (если кеширование отключено)/полной новости.
Возможности админ панели модуля: - Изменение настроек модуля - Просмотр общей статистики - Просмотр детальной статистики - Очистка БД модуля
Нагрузка: - Используется БД mySQL, но структура модуля подразумевает гибкую настройку, и как следствие вы можете ограничится минимальной нагрузкой на mySQL сервер - Добавляет от 1 до 3-x запросов к БД
Отличия этого модуля от подобных: - БД mySQL (менее ресурсоемко и более надёжно по сравнению с файловой БД) - Админ панель модуля - Множество настроек - Языковой пакет (Мультиязычность) - Модуль полностью шаблонизирован - Модуль дополнительно настраивается с помощью тегов-условий в шаблонах - Очистка БД модуля через админ панель модуля (снижает нагрузку когда ID строк доходит до миллионных значений) - Модуль регулярно обновляется (добавляются новые функции, устраняются ошибки)
Обновление осуществляется путем полного удаления предыдущих версий модуля (если модуль был установлен), и установкой текущей версии. При установке utf-8 версии модуля замените везде cp1251 на utf-8. 1. Распакуйте все файлы из скаченного архива. 2. В папке "templates" переименуйте папку "ВАШ_ШАБЛОН" в название вашего шаблона. 3. Загрузите все распакованные файлы из архива в корневую папку вашего сайта. 4. Выполните SQL запрос (что бы создать БД модуля):
Код
DROP TABLE IF EXISTS `dle_online`; CREATE TABLE IF NOT EXISTS `dle_online` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `user_id` mediumint(8) NOT NULL, `login` varchar(40) NOT NULL, `user_group` smallint(5) NOT NULL, `ip` varchar(16) NOT NULL, `proxy` varchar(16) NOT NULL, `time` varchar(20) NOT NULL, `user_agent` varchar(255) NOT NULL, `operating_system` varchar(255) NOT NULL, `location` varchar(255) NOT NULL, `foto` varchar(30) NOT NULL, `key` varchar(32) NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `key` (`key`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
5. Выполните SQL запрос (что бы добавить модуль в список сторонних модулей):
Код
INSERT INTO `dle_admin_sections` (`name`, `title`, `descr`, `icon`, `allow_groups`) VALUES ('online', 'Online v0.2 Final', 'Панель управления модулем', 'online.png', '1');
6. В нужном месте в шаблоне main.tpl пропишите: {include file="engine/modules/online/online.php"} 7. В нужном месте в шаблоне shortstory.tpl пропишите: {include file="engine/modules/online/status.php?module=news_short&user_login={login}"} 8. В нужном месте в шаблоне fullstory.tpl пропишите: {include file="engine/modules/online/status.php?module=news_full&user_login={login}"} 9. В нужном месте в шаблоне comments.tpl пропишите: {include file="engine/modules/online/status.php?module=comments&user_login={login}"} 10. В нужном месте в шаблоне userinfo.tpl пропишите: {include file="engine/modules/online/status.php?module=profile&user_login={usertitle}"} 11. В нужном месте в шаблоне profile_popup.tpl пропишите: {include file="engine/modules/online/status.php?module=profile_ajax&user_login={login}"} (Смотрите FAQ) 12. В нужном месте в шаблоне pm.tpl пропишите: {include file="engine/modules/online/status.php?module=pm&user_login={author}"}
Переменные доступные во всех шаблонах модуля: {THEME} - Путь до папки с шаблонами модуля.
main.tpl - Главный шаблон модуля, выводит основной контент. Переменные: {all_number} - Выводит общее количество посетителей на сайте. {users_list_number} - Выводит количество пользователей на сайте. {guests_list_number} - Выводит количество гостей на сайте. {robots_list_number} - Выводит количество роботов на сайте. [users_list]{users_list}[/users_list] - Выводит список пользователей, только если в списке есть хотя бы один пользователь. [not_users_list] текст [/not_users_list] - Выводит какой-либо текст, только если в списке нет ни одного пользователя. [guests_list]{guests_list}[/guests_list] - Выводит список гостей, только если в списке есть хотя бы один гость. [not_guests_list] текст [/not_guests_list] - Выводит какой-либо текст, только если в списке нет ни одного гостя. [robots_list]{robots_list}[/robots_list] - Выводит список роботов, только если в списке есть хотя бы один робот. [not_robots_list] текст [/not_robots_list] - Выводит какой-либо текст, только если в списке нет ни одного робота.
link.tpl - Шаблон ссылки. Переменные: {profile_link} - Выводит ссылку на профиль пользователя и его AJAX-карточку пользователя, для гостей и роботов вырезается из шаблона. {hint} - Выводит код всплывающего окна информации о пользователе, госте, роботе. {user_login} - Выводит логин пользователя, IP адрес гостя, название робота. [user_group=X] текст [/user_group] - Выводит какой-либо текст в списке пользователей, где "X" это ID группы показываемого пользователя, выводиться только если ID группы показываемого пользователя соответствует указанному. [not_user_group=X] текст [/not_user_group] - Выводит какой-либо текст в списке пользователей, где "X" это ID группы пользователей которым НЕ нужно показывать текст.
hint.tpl - Шаблон всплывающего окна информации о пользователе, госте, роботе. Переменные: [foto]{foto_url}[/foto] - Выводит url фото пользователя. [not_foto] текст [/not_foto] - Выводит какой-либо текст в случае если у пользователя нет фото. [ip]{ip}[/ip] - Выводит IP адрес. [proxy]{proxy}[/proxy] - Выводит прокси адрес. [country]{country}[/country] - Выводит страну. [city]{city}[/city] - Выводит город. [user_operating_system]{user_operating_system}[/user_operating_system] - Выводит операционную систему. [user_agent]{user_agent}[/user_agent] - Выводит браузер. [user_group]{user_group}[/user_group] - Выводит группу пользователя на сайте. [last_visit]{last_visit}[/last_visit] - Выводит дату и время последнего посещения сайта. [user_location]{user_location}[/user_location] - Выводит местонахождение на сайте. [countries_icon]{countries_icon}[/countries_icon] - Выводит иконку флага страны. [browser_icon]{browser_icon}[/browser_icon] - Выводит иконку браузера. [user_group=X] текст [/user_group] - Выводит какой-либо текст, где "X" это ID группы для которой выводить текст. [not_user_group=X] текст [/not_user_group] - Выводит какой-либо текст, где "X" это ID группы для которой НЕ выводить текст. [user_group_view=X] текст [/user_group_view] - Выводит какой-либо текст, где "X" это ID группы к которой относится показываемый пользователь. [not_user_group_view=X] текст [/not_user_group_view] - Выводит какой-либо текст, где "X" это ID группы к которой НЕ относится показываемый пользователь.
news_short.tpl, news_full.tpl, comments.tpl, profile.tpl, pm.tpl - Шаблоны для функции "Статус пользователя". Переменные: [online]текст[/online] - Выводит какой-либо текст, если пользователь Online. [offline]текст[/offline] - Выводит какой-либо текст, если пользователь Offline. [location]{location}[location] - Выводит текущее местоположение пользователя, только если он Online. [not_location] текст [/not_location] - Выводит какой-либо текст, если у пользователя не определено местоположение.
Online v0.2 Final: [@] Множество незначительных ошибок. [@] Несколько потенциальных критических уязвимостей (Рекомендуется обновиться со старых версий модуля). [+] В админ панели модуля в списках пользователей/гостей/роботов показывается их количество (раньше только на главной странице админ-панели модуля). [+] В настройки модуля добавлена возможность отключать префиксы и суффиксы групп (они указываются в настройках групп). [+] В настройки модуля добавлена возможность отключать всплывающее AJAX окно (карточку пользователя) при клике по его нику (Будет обычная ссылка на профиль). [+] В настройки модуля добавлена возможность указывать до 15 сторонних модулей которые будут определятся модулем и для которых будет работать функция "Местоположение" (вместо страницы 404). [+] В настройки модуля добавлена возможность изменения типа вывода списка пользователей/гостей/роботов (В строку с разделителем и в 1-5 столбиков). [+] В настройки модуля добавлена возможность изменения типа вывода названия гостей (В виде IP адресов и в виде заданного текста и порядкового номера, например: Гость 1). [+] В настройки модуля добавлена возможность выбора типа времени и даты выводимых в хинте (Точное время последнего посещения сайта, либо время отсутствия на сайте). [о] Обновлен хинт на более красивый, удобный и современный вариант. [о] Изменена логика определения пользователей/гостей/роботов (теперь алгоритм более отлажен, ну будет кучи одинаковых ботов в списке). [о] Была произведена оптимизация кода (теперь модуль потребляет еще меньше ресурсов и работает быстрее). [о] Обновлена GeoIP база на более актуальную.
Online v0.1 Final: [@] Исправлено несколько ошибок в определении местоположения. [@] Множество незначительных ошибок. [+] Добавлена функция "Статус пользователя", которая выводит статус пользователя на сайте (Online/Offline) и местоположение пользователя в профиле/карточке пользователя/персональных сообщениях/комментариях/краткой новости (если кеширование отключено)/полной новости. [+] Добавлены префикс и суффикс имени группы для пользователей/гостей/роботов. [+] В шаблоне hint.tpl добавлены теги: [user_group=X] текст [/user_group], [not_user_group=X] текст [/not_user_group], [user_group_view=X] текст [/user_group_view], [not_user_group_view=X] текст [/not_user_group_view], [foto]текст[/foto] , [not_foto] текст [/not_foto], {foto_url}. [+] В админ панели модуля появилась возможность отключать показ фото пользователя. [+] Добавлено определение ОС Windows 8, а так же скорректирован список ОС для более точного определения. [-] В шаблоне hint.tpl удалён тег {foto}. [о] GeoIP база обновлена на актуальную версию. [о] Изменен алгоритм определения уникальности гостей (теперь уникальность определяется по IP + Proxy + ОС + User Agent), это позволило выводить всех гостей на сайте, даже если большая их часть "сидит" на одном IP адресе. [о] Изменен алгоритм определения уникальности роботов (теперь уникальность определяется по IP + Proxy + User Agent). [о] Теперь пользователям/гостям/роботам можно показывать блок, но они не будут учитываться в статистике модуля если лимит стоит 0 (Убирает 1 запрос добавления строки в БД, на крупных сайтах которые например показывают модуль для гостей, но не выводят их список, это даст приличное снижение нагрузки. В счетчиках посетителей гости тогда тоже учитываться не будут.), раньше все кто видел блок учитывались в статистике. [о] Теперь Proxy пользователя заносится в БД только если он отличается от IP адреса пользователя, раньше заносился в БД даже когда был идентичен IP адресу (Показываться он будет теперь только в том случае если отличается от IP адреса). [о] В админ панели модуля списки пользователей/гостей/роботов теперь формируются по дате последнего посещения. [о] Обновлен стандартный шаблон, теперь он стал более универсальным, появились дополнительные возможности. [о] Множество мелких улучшений, оптимизаций.
Online v0.1 Beta: [@] Многочисленные ошибки в определении местоположения (Постоянные "Страница 404"). [@] Ошибка "Пользователь не найден" при просмотре AJAX-карточки пользователя, если ник пользователя содержит кириллицу. [@] Множество незначительных ошибок. [+] Языковой пакет. [+] Очистка БД модуля через админ панель. [+] Фильтрация названия материалов на одинарные и двойные кавычки (из-за которых не отображалось всплывающее окно). [+] Фильтрация названия статических страниц на одинарные и двойные кавычки (из-за которых не отображалось всплывающее окно). [+] Выбор типа даты и времени последнего посещения (Текущий день выводить как "Сегодня"). [+] Установка своего типа даты. [о] Изменен принцип обработки данных пользователей, теперь привязка идет по ID пользователя, а не по ID + IP адрес (Не будет двух одинаковых пользователей в списке, если находиться под одним аккаунтом с разных IP адресов). [о] Теперь счётчик пользователей, гостей, роботов считает сколько их всего на сайте, а не сколько их выводится в списке (актуально для тех кто выводит в списке только их часть). [о] Множество мелких улучшений, оптимизаций.
Чем ваш модуль отличается от подобных? Список огромный, читайте документацию.
Видят ли пользователи приватные данные администрации? Это вы сами решаете кто и что видит, с помощью шаблона и тегов-условий, в стандартном шаблоне модуля у групп с ID 1, 2 (административные группы) скрыт IP адресс, Proxy, страна, город, ОС, браузер, однако эти группы видят приватные данные всех остальных групп, включая свои же (Один администратор видит данные другого администратора).
Насколько сильно модуль нагружает хостинг? Насколько сильно он будет нагружать хостинг зависит от ваших настроек модуля, т.к. модуль очень гибко настраивается. Например отключив показ страны, города, и флага страны, можно сэкономить на каждом показе немного RAM за счет отключения GeoIP базы. Отключив последнее посещение и местонахождение можно сэкономить 1 запрос к БД, на очень посещаемых сайтах это будет существенное снижение нагрузки. Так же можно поставить лимит на гостей равным нулю, это уберет еще один запрос к БД при просмотре страницы гостем.
Что такое функция "Статус пользователя"? Это новая функция в модуле Online, которую многие просили реализовать у разработчика DLE. Она позволяет выводить статус пользователя (Online/Offline), а так же его текущее местоположение (только если пользователь Online) в профиле/карточке пользователя/персональных сообщениях/комментариях/краткой новости (если кеширование отключено)/полной новости.
Насколько сильно функция "Статус пользователя" нагружает хостинг? Вывод одного статуса/местоположения добавляет 1 запрос к БД, т.е. если у вас на странице с материалом выводится 10 комментариев, то это добавит 10 запросов к БД. Но хочу заметить что запросы "легкие" (проверяется есть ли в базе такой логин) и выполняются по базе с небольшим количеством строк. Так же вы можете существенно снизить нагрузку путем вывода статуса пользователя в комментариях только для пользователей (с помощью тегов-условий). Вы можете особо не беспокоится про нагрузку, но рекомендую использовать функцию рационально.
Как сделать вывод статуса пользователя в карточке пользователя? Без изменений в файле движка этого не получится сделать (Спасибо разработчику DLE). Если вам нужно сделать вывод статуса пользователя в карточке пользователя, то в файле /engine/ajax/profile.php найдите $tpl->set( '{lastdate}', langdate("j.m.Y G:i", $row['lastdate'])); и ниже добавьте $tpl->set( '{login}', stripslashes($row['name']));, после этого функция заработает.
Для полноценной работы модуля необходимо следующее установленное на сервер программное обеспечение: - Все то что требует CMS DLE - PHP 5.3 и выше - IonCube Loader (актуальная версия)
sevport.com - Помощь с обфускацией кода модуля и кодированием в IonCube. Хостинг провайдер предоставляющий услуги хостинга и услуги по кодированию ваших php файлов в IonCube.
Лицензия: Доступна бесплатная версия с копирайтом разработчика. Сокрытие копирайта влечет за собой правовую и уголовную ответственность за нарушение авторских прав. Использование кода модуля в сторонних проектах без разрешения автора - ЗАПРЕЩЕНО!
От автора: Продолжение модуля Online v0.1 Final. Модуль поставляется "как есть", без каких либо гарантий и/или обязательств. Скачивая модуль со сторонних сайтов вы сами несете полную ответственность за возможное содержание вредоносного кода. Любые изменения оригинального архива дистрибутива без согласования с разработчиком ЗАПРЕЩЕНЫ (В том числе и при копировании материала.)! При копировании материала обязательно указывайте кликабельную индексируемую ссылку на данную тему (http://www.softolab.com/forum/55-332-1)! Для получения UTF-8 версии модуля, нужно все его файлы (кроме файла GeoIP базы) пересохранить в UTF-8 кодировке (из-за отсутствия времени и малой потребности в UTF-8 версии, вам придется сделать это самим).
Индивидуальные условия: Для сайтов с большой посещаемостью и СДЛ - есть возможность снять копирайт.
Поддерживаемые версии CMS DLE: v9.0, v9.2, v9.3, v9.4, v9.5, v9.6, v9.7, v10.0 (С версиями ниже 9 линейки тестирование не производилось, но возможно модуль будет работать.) Кодировка модуля: windows-1251, utf-8 (самостоятельное конвертирование из windows-1251) Тип распространения: Бесплатно, с копирайтом разработчика.
В данной теме пишем об ошибках в модуле, пожелания к будущим версиям, предложения и т.п.
Ключевые слова: модуль онлайн для dle, модуль онлайн, онлайн для dle, модуль онлайн для дле, онлайн для дле, статус пользователя для dle. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
ВНИМАНИЕ!!!
Поскольку многие спрашивают почему у них не работает новая версия модуля, хотя старая работала.
Для работы модуля необходимо что бы у вас на сервере был установлен IonCube Loader, если его нет то установить его можно самостоятельно или обратиться к хостинг провайдеру.
Как правило, на обычном хостинге IonCube Loader уже установлен. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
Архив с модулем обновлен, исправлена ошибка которая заключалась в том что некоторые файлы модуля, лежали не там где положено. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Привет админ! Помоги пожалуйста,модуль не работает после обновления,вернее не могу попасть в панель управления модулем,пишет "Доступ отклонен" и хинт не работает. Нашел одну ошибку,в шаблоне "main.tpl" в первой строке надо исправить путь <script type="text/javascript" src="{THEME}/online/js/hint.js"></script> исправил все равно не работает
Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
kandr_aleksej1, для более детального изучения проблемы нужно предоставить тестового пользователя с правами администратора в ЛС. Никакой ошибки в пути подключения js файла модуля нет, переменная {THEME} в шаблонах модуля Online выводит путь до папки с шаблонами модуля, а не до папки с шаблонами сайта. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
dmBOROV, это планировалось, но не было реализовано, я сейчас занят работой над CMS, так что врятли уже будет реализовано. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Зарегистрирован:05.10.10 Сообщений: 383
Откуда: Российская Федерация
roman48, данный вопрос нужно задавать в ЛС. Это обсуждается только там. Потомственный системный администратор Admin. Очное и заочное (по IP-адресу) лечение компьютеров. Гадание по портам (COM, LPT, USB). Верну утраченную ОС, сниму вирусную порчу и венец безИнтернетия. Снимаю с программ сглаз правообладателей, выполню отворот RIAA, поиск потерянных файлов по имиджу жесткого диска!
Информационно - развлекательный портал softolab.com.
При копировании материалов с сайта активная индексируемая ссылка на сайт softolab.com ОБЯЗАТЕЛЬНА.
Сайт оптимизирован для просмотра в браузерах Mozilla Firefox и Opera при разрешении экрана 1280x1024
Copyright SOFTOLAB 2010-2024