Версия: 1.01 beta Версия API: API2 Системные требования:
PtokaX 0.4.x.x, Lua 5.1 База данных IP-To-Country Библиотека Lua-GD ( http://mydc.ru/topic2356.html ) Веб-сервер (напр. Apache)
Автор: alex82
Описание: Скрипт представляет собой переделанный и дополненный StatPX. Основные отличия от оригинала:
* удалена база данных юзеров (со всеми вытекающими отсюда последствиями - топ хабберов и статистика посещаемости также пошли под нож) * добавлено отображение страны юзера в списках * добавлен топ стран * тобавлен топ юзеров по количеству сообщений в чате
Возможности скрипта:
Статистика хаба:
учёт рекордов по размеру шары и количеству пользователей * топ пользователей по размеру шары * топ стран * топ пользователей по количеству сообщений в главном чате
Web-статистика:
* топик хаба * общая статистика хаба - время непрерывной работы, количество пользователей, общий размер шары, рекорды по размеру шары и количеству пользователей, количество забаненных пользователей * ограничения хаба - минимальная шара, минимум слотов, и.т.д * лог главного чата с поддержкой смайлов * список пользователей онлайн * топ пользователей по размеру шары * топ пользователей по количеству сообщений в главном чате * список забаненных пользователей * список заглушек скрипта GagMe ( http://mydc.ru/topic1627.html ) * поддержка скинов
Вопрос: Зачем было удалять базу данных пользователей? Кому она мешала? Ответ: Это сделано для того, чтобы сделать возможной работу скрипта на крупных инет-хабах - из-за засорения БД динамическими IP-адресами, StatPX становился неработоспособным уже через несколько дней использования. Данный скрипт лишен этого недостатка.
Вопрос: В какую папку надо положить папки со смайлами и флагами чтобы они отображались на сайте? Ответ: В ту же папку, в которую сохраняются сгенерированные html-страницы
Вопрос: Как сделать так, чтобы страницы статистики могли видеть юзеры из сети? Ответ: Для этого необходимо установить веб-сервер (например Apache), и указать в качестве пути сохранения страниц корневую директорию веб-сервера
Вопрос: Как заставить работать пункт "Последний зарегистрировавшийся юзер" на главной странице? Ответ: Для этого необходимо добавить в скрипт регистрации код, записывающий ник зарегистрировавшегося юзера в файл lastreg.txt, находящийся в папке StatPX_Lite. Код должен выглядеть примерно так:
Код
local lastreg = io.open(Core.GetPtokaXPath().."scripts/StatPX_Lite/lastreg.txt","w") if lastreg then lastreg:write(user.sNick) lastreg:close() end
К примеру, в скрипт Registrator этот код нужно добавить сразу после строк:
Код
if tCfg.ShowToAll then ToAll("Поприветствуем нового зарегистрировавшегося участника - "..user.sNick.."!") end
Скины
pixabella green
Автор стиля: pixabella Адаптация для StatPX: alex82 http://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/a0024dd2c2959a6270144e9e23ece3ae.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/4e67b4b79b2caf9da62c8faa16c7d7be.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/ed678f8fd2783212f0fa505e233c99d0.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/727660daed7bd6e1a7c58766d25680f5.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/fb9f21efa7aaa85d3ea2d8f26e661779.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/fbdbecd96cf8c640258758a21a352f71.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/c908cdbebfa15efc5cfb1497ad21adf3.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/a58ae70f7218f98a33d378373f2ff88a.jpg.html pixabella_green.rar ( 672.34 килобайт )
: 166
pixabella pink
Автор стиля: pixabella Адаптация для StatPX: alex82 http://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/c8db2d7127af0c000aa1b3c1f2853a66.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/13718368d58a99d60676337e2f0629ae.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/21c3723ba346b4dcbf034777d93f4f6a.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/4eb5a1cbf9586d8067ea6a8613790fcf.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/9a1499e86fbc1c29239b044c660c4d7c.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/880af3490ef934d7d85e598537d25eb3.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/a6056e3fc83f4a7092651479a87c6ffe.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0909/27905ff3fa2aa9f14913c052a4312c5d.jpg.html pixabella_pink.rar ( 735.29 килобайт )
: 48
Автор: Saymon 8.9.2010, 13:47
alex82, ммм, а как всётаки дело с запилкой под рус хаб? Не решился ещё?
Автор: *FoxMalder* 8.9.2010, 14:33
из-за скрипта хаб лагает ужасно... хотя он и кушает всего 4мб но цп поднимается на 25% и сообщения доходят спустя 3-5 секунд
Автор: alex82 8.9.2010, 16:26
*FoxMalder*
Сколько юзеров на хабе?
Автор: Invisible 8.9.2010, 18:48
Уважаемый alex82. Огромное спасибо тебе за скрипт, но хотелось бы маленькую вещичку добавить. Рядом с Рангом чтобы отобразилось сколько сообщений отправленно. В данный момет выглядит вот так:
{"%[RANK%]",[[ result = result:gsub("%[RANK%]",tChatRank[user.sNick] and GetRank(tChatRank[user.sNick]) or "нет")]]},
После него добавь:
Код
{"%[MESSAGES%]",[[ result = result:gsub("%[MESSAGES%]",tChatRank[user.sNick] or 0)]]},
Теперь можно использовать переменную [MESSAGES] в сообщении дня
Автор: *FoxMalder* 8.9.2010, 21:09
Цитата(alex82 @ 8.9.2010, 17:26)
*FoxMalder*
Сколько юзеров на хабе?
на тот момент было где то 1600-1800 юзеров
Автор: alex82 8.9.2010, 21:54
*FoxMalder*
Покрути эти опции:
Код
ForceUpdate = 10, -- Количество отключений/подключений пользователей, после которого будет произведено внеочередное обновление статистики
Код
CountryStatsUpdate = 10, -- Число подключений, по достижении которого будет обновлен топ стран. Рекомендуется увеличить значение параметра на хабах с онлайном более 1000
Поставь около 50 в обеих.
Автор: alex82 9.9.2010, 17:18
Выложил 2 скина. Подробности во втором посте.
Автор: Error404 9.9.2010, 23:43
[00:42] Синтаксис C:\Server\HUBServer\scripts\config.lua:16: attempt to concatenate global 'path' (a nil value) как это исправить
Автор: mariner 10.9.2010, 0:15
А ты в config.lua задал переменную path?
Автор: alex82 10.9.2010, 4:18
Error404
Даже представляю, куда могла деться переменная, обьявленная в самом начале скрипта. Может ты сам ее удалил? Или пытаешься подсунуть птоке файл конфигурации отдельно от скрипта?
Цитата(mariner @ 10.9.2010, 0:15)
А ты в config.lua задал переменную path?
Она задается глобально в StatPX_Lite.lua
Доступна версия 1.00 beta2. Изменения:
* Исправлена ошибка в функции перезагрузки шаблонов * Добавлена возможность использовать в сообщении дня переменной [MESSAGES], отвечающей за количество сообщений текущего юзера. * Удален отладочный код, приводящий к периодическому получению сообщения об ошибке "Ошибка StatPX Lite: upd" * Удалены неиспользуемые настройки, оставшиеся от StatPX * Незначительные исправления скина Default * Добавлен скин Simple * Более оптимальные настройки по умолчанию
Автор: Ksan 10.9.2010, 10:16
Наверно, лучше было бы в строке 267 (StatPX_Lite.lua):
Код
tHubStat.Start = os.time(T)
вместо остайм (время включения скрипта) прописать время первого запуска хаба (это ведь обычно не сопадающие даты), у меня, например, хаб работает уже 5-й год, а при запуске скрипта и далее он будет как будто только-только родился. У меня эта строка выглядит так:
Код
tHubStat.Start = 1157432400
Но если ты согласен с моим предложением, то, наверно, стоит и подумать над механизмом ввода этого времени в удобоваримом для простого админа виде (либо внести в меню команду для калькуляции). Представляю себе и 2 варианта по выбору при запуске: считать время работы хаба с этого момента или внести (подсчитать) более корректное и древнЕе.
Автор: Error404 10.9.2010, 12:15
проста не так распаковал вот и не хватает файлов теперь мне нормально все рботает спасибо за скрипт
Автор: alex82 10.9.2010, 16:08
Ksan
Вообще-то время запуска хаба устанавливается в строке 36, и только при первом запуске:
Код
if not tHubStat.Start then tHubStat.Start = os.time() end
А 267 строка - это и есть та самая функция установки времени запуска в "удобоваримом" формате. http://mydc.ru/r/?http://fastpic.ru/view/9/2010/0910/d04b717b5b975dc5092c7fad2da60d1f.jpg.htmlhttp://mydc.ru/r/?http://fastpic.ru/view/9/2010/0910/e5d020cfd2db9c4fbfbe10d1398c0c79.jpg.html
В связи с этим у меня предложение: давайте будем хоть немного вникать в суть прежде чем писать сообщения.
И еще. Давайте не будем устанавливать километровые подписи.
Автор: Ksan 11.9.2010, 0:09
1. Уговорил, уже сделано, я не заметил. Но можно про это сказать и попроще, без тыкания в глаза. Я ведь всего лишь старался помочь улучшить и не трогал твои амбиции. 2. Что до подписи - что тебе там не нравится? текст или картинка? Текстовая часть маленькая, и ей уже сто лет в субботу, а картинку (хаб-бар) я добавил только за 5 минут до предыдущего сообщения, причем, она из набора, предложенного тобой в скрипте HubBanner. Если считаешь слишком большим, зачем было давать такую? И ещё - эту картинку сам не вижу в подписи, оценить её не могу в комплексе (сижу за натом, потому, может..картинка на моём компе). Ладно, сменил на узкую. Хотя все равно не вижу. Да и фиг с ней..
Автор: Alexey 11.9.2010, 1:15
Цитата(Ksan @ 11.9.2010, 1:09)
Если считаешь слишком большим, зачем было давать такую? И ещё - эту картинку сам не вижу в подписи, оценить её не могу в комплексе (сижу за натом, потому, может..картинка на моём компе).
А фоновую картинку с надписью "sample", которая была в образце, заменить нечем?
Цитата(Ksan @ 11.9.2010, 1:09)
Ладно, сменил на узкую. Хотя все равно не вижу. Да и фиг с ней..
По-прежнему широкую вижу.
Автор: Ksan 11.9.2010, 1:54
Я выбрал картинку, которая с названием моего хаба. Почему тут Сэмпл, не знаю. Да, там есть пара картинок с сэмплом, но была с названием хаба, которую я и выбирал. Фиг знает как, но второй раз я опять сунул предыдущую картинку, оказывается. Тем не менее, тема сэмпла меня удручает, ибо я вижу название хаба. Вот снова поставил уж точно другую. Узкая полоска. Название - ub_ft.png
Автор: Saymon 11.9.2010, 14:15
alex82, а как идея добавить статистику основное клиенты используемые пользователями? Так же интересно как добавить в вэб стату после Последний зарегистрировавшийся пользователь: ***.
Лидер рейтинга топа шары (ник, шара) Лидер рэйтинга чат ранга (ник, число сообщений)
И можно добавить в мотд тоже самое Последний зарегистрировавшийся пользователь: ***. Лидер рейтинга топа шары (ник, шара) Лидер рэйтинга чат ранга (ник, число сообщений)
Автор: alex82 11.9.2010, 18:42
Saymon Открываем Raw.lua, находим:
Код
local f = io.open (tWebFiles.TopShare , "w")
перед этим добавляем:
Код
if tCopy[1] then sTopShare = tCopy[1].Name.." ("..FormatSize(tCopy[1].Share)..")" end
Открываем Web.lua, находим:
Код
:gsub("%[BANNED%]",sBanned)
после чего добавляем
Код
:gsub("%[TOPSHARE%]",sTopShare or "?") :gsub("%[TOPCHAT%]",tCountryStats and tCountryStats[1] and tCountryStats[1][1].." ("..tCountryStats[1][1].." сообщ.)" or "?")
PS. Работоспособность не проверял. PPS. Для сообщения дня напишу чуть позже
Автор: Saymon 11.9.2010, 19:14
alex82, Спасибо. Пока ещё не добавил в код, то что ты написал, но при просмотре общей статистики через меню вышло
[20:12] Синтаксис ...r\ptokax0.4.1.1\scripts\StatPX_Lite.lua:226: attempt to call global 'UpdateUserStats' (a nil value)
Автор: Ksan 12.9.2010, 15:27
При отлюченной веб-статистике скрипт падает, когда запрашиваешь общую статистику через меню хаба. [19:07:09] <StatPX_Lite> Ошибка: /home/p2phub/PtokaX/scripts/StatPX_Lite.lua:226: attempt to call global 'UpdateUserStats' (a nil value)
Там обращение к несуществующей функции (возможно, она задумывалась, но не дописалась). Вот участок кода:
Код
tCmdFunc = { [tCmd.MainStat] = {"Stats",function(user,data) if not(tWebCfg.Enable) then UpdateUserStats() end
Закомментил строку с вызовом функции UpdateUserStats() - общую статистику в личку выдает и не падает, но не знаю, насколько она свежая. (Upd: свежую выдаёт, только что проверил) Веб-статистику отключил, так как пока нет связи с сисадмином удаленного сервера, чтоб обговорить насчет веба.
Автор: alex82 12.9.2010, 18:18
Saymon, Ksan
Это мусор, оставшийся от StatPX.
Правильным будет удалить эти строки:
Код
if not(tWebCfg.Enable) then UpdateUserStats() end
Автор: Saymon 13.9.2010, 2:20
Лидер рейтинга чат ранга: RU (RU сообщ.).
Код
:gsub("%[TOPCHAT%]",tCountryStats and tCountryStats[1] and tCountryStats[1][1].." ("..tCountryStats[1][1].." сообщ.)" or "?")
а лидер чата как?)
Автор: alex82 13.9.2010, 18:44
Мдя, и в самом деле, фигню сморозил.
Ладно, теперь серьезно. Находим в Raw.lua:
Код
local f = io.open (tWebFiles.ChatRank, "w")
перед этим добавляем:
Код
if tTemp[1] then sTopChat = tTemp[1][1].." ("..tTemp[1][2].." сообщ.)" end
Теперь вместо той фигни, что ты процитировал, пишем:
Код
:gsub("%[TOPCHAT%]",sTopChat or "?")
Автор: goncharov08 15.9.2010, 16:42
как и где добавлять страны? а то у меня Россию вообще не видет"пишит Местоположение Не известно "
Автор: Saymon 17.9.2010, 22:03
В какой-то из версий StatPX делал сохранение числа юзеров и шары хаба в текстовый файл, дабы потом вытянуть в пхп. Не подскажешь как тут сделать сохранение общего числа юзеров и шары в отдельный текстовик?
Автор: alex82 18.9.2010, 6:20
Saymon
Шаблон shortstat.tpl. Переменные те же, что и в mainstat.tpl, за исключением ограничений хаба. И не забудь включить его в настройках скина.
Автор: Saymon 18.9.2010, 10:05
alex82, так совсем не то что нужно.
Автор: alex82 18.9.2010, 13:04
Saymon
Ну так обьясни подробнее, что нужно.
Автор: Saymon 18.9.2010, 13:16
alex82, Вообщем, по таймеру, которому происходит обновление общей статистики нужно сделать сохранение в отдельный текстовый файл простого кода например
Ну соответственно показать число юзеров и шару. Причём, текстовый файл по идее должет быть в совсем другой дериктории, не в той, в которую сохраняются сгенерированные страницы. Потом как бы выводить информацию из этого текстовика средствами пхп на страничку другова сайта.
Вот это самое я помню ты говорил как делать в какой-то из версий StatPX. Сейчас не могу вспомнить.
Потом в настройках скина включи страницу краткой статистики:
Код
ShortStat = y, -- Генерировать страницу краткой статистики для размещения на главной странице сайта (шаблон shortstat.tpl)
Потом пропиши абсолютный путь и имя файла в переменной tWebFiles.ShortStat.
PS. Принцип работы краткой статистики был таким изначально, так что это актуально для любой версии.
Автор: Saymon 18.9.2010, 13:43
alex82, Спасибо, и так попробую. Помучавшись с фтп нашёл таки бекап StatPX в котором делали несколько по другому. Сейчас думал тоже сделать что-то подобное. Привожу пример костыля:
function BuildWebStat(user) WebstatUpdateTime=FormatDate(os.time(os.date("*t"))) if ScriptStopped then WebstatUpdateTime=WebstatUpdateTime.." (скрипт остановлен)" end BuildDailyUsers() BuildMainStat(user) -- --Добавление инфы Общий объем 494.322 GB и Пользователей: 6 на главную страничку сайта на сайт в нужное место вставляем <?php echo file_get_contents("D:/htdocs/dc/userbaza/dat.txt") ?> local f = io.open("D:/Direct Connect/DC Server/CooLHuB_Server/scripts/StatPX/dat.txt","w") if f then f:write("<div class=\"top_info\" style=\"margin-top:50px;\"><H3><font color=\"green\"><b>Сейчас на хабе около <span>"..Core.GetUsersCount().." пользователей онлайн</b></span> Из них операторов "..#Core.GetOnlineOps().."<br /> Общий обьём шары около <font color=\"green\">"..GetNormalShare(Core.GetCurrentSharedSize()).."</font></div>") f:close() end --- BuildOnline() BuildBans()
Исходя из этого думаю сам дальше разберусь Спасибо ещё раз.
Вообщем сделал себе
Раскрывающийся текст
Код
function BuildWebStat(user) WebstatUpdateTime=FormatDate2(os.time()) local f = io.open("D:/htdocs/magnet.portal/linkstat.txt","w") if f then f:write("Хаб <font color=\"red\">("..Core.GetUsersCount().." / "..GetNormalShare(Core.GetCurrentSharedSize())..")</font></a>") f:close() end local s = io.open("D:/htdocs/magnet.portal/linkstat_title.txt","w") if s then s:write("Сейчас на нашем хабе около "..Core.GetUsersCount().." пользователей онлайн. Общий размер шары хаба составляет около "..GetNormalShare(Core.GetCurrentSharedSize()).."") s:close() end BuildOnline() BuildMainStat(user) if tWebCfg.ChatRank then BuildChatRank() end
Автор: dka 20.9.2010, 9:41
Ребят помогите, короче не знаю в каком файле прописать чтобы на сервер сохранялись страницы статы. Спасибо, разобрался просто забыл что и где менять
Автор: dka 21.9.2010, 11:45
Уважаемый автор скрипта никак не могу понять что нужно изменить в настройках, чтобы на веб-странице отображалось больше пользователей которые пишут в чат(чатранг) подскажите пожалуйста
Автор: Saymon 21.9.2010, 11:49
очевидно config.lua
Код
ChatRank = y, -- Включить топ пользователей по числу сообщений в чате (чат-ранг)
Код
ChatRank = { -- Профили, участвующие в чат-ранге. [0] = y, -- Master [1] = y, -- Operator [2] = y, -- VIP [3] = y, -- Reg [4] = y, [5] = y, [-1] = y, -- Unreg },
Автор: dka 21.9.2010, 12:06
Спасибо помогло
Автор: TROJAN 27.9.2010, 18:28
123
Автор: alex82 27.9.2010, 18:51
Скины будут работать на любом вебсервере, способном раздавать файлы в сеть.
Автор: Ksan 29.9.2010, 20:57
У меня в странице общей статистики хаба пишется про последнего зарегенного юзера, но там всегда вместо юзера вопросительный знак. Поискал, откуда что берется, нашёл только в файле mainstat.tpl вот этот параметр, которым обозначается ник последнего зарегенного юзера - [TEXTFILE_lastreg] И всё. Откуда это берется, не смог найти. Похоже, это тоже остаток от урезания скрипта. Хотелось бы в таком случае как-то закомментить эту строку воообще, но не знаю, как в этом файле комментить (не знаю нужного символа)..
Автор: Saymon 29.9.2010, 21:12
Если оно не нужно - удали из mainstat.tpl Если же нужно - прочитай 2 пост
Автор: alex82 30.9.2010, 5:46
Это не остаток урезания, а результат добавления.
Прочитать FAQ гордость не позволяет?
Автор: Ksan 30.9.2010, 12:30
Я читал ФАК, но давно, тогда эта проблема (с последним регенным) не была актуальна, потому не запомнил. И не надо хамить, авторство и мастерство не дают тебе права так вести себя!
Автор: dka 7.10.2010, 10:09
у меня проблема с обновлением веб-странице лога главного чата. пробывал перезапустить как сервер так и скрипт в птоке но результата нет. в чем может быть проблема, остальные страницы нормально регенирируются.
Автор: Saymon 7.10.2010, 10:19
config.lua
Код
ChatLog = y, -- Включение лога чата (y - включено, n - отключено). ChatUpdate = 1, -- Время обновления лога главного чата, в минутах. ChatSize = 30, -- Число сообщений в веб-логе чата.
Автор: dka 7.10.2010, 10:31
В скрипте ничего не менял. так и стоит
Автор: Ksan 7.10.2010, 16:59
Лог главного чата обновляется только при появлении сообщений. Если что-то писали и не появилось в логе, значит, по каким-то условиям сообщение не попало туда...например, это была команда.
Автор: dka 8.10.2010, 7:07
Так раньше все нормально было, и в основном общение у меня идет, а не команды.
Автор: Saymon 8.10.2010, 16:53
dka, Ну тогда можно подумать, что ты что-то где-то ковырял и допустил ошибку. Рассказывай.
Автор: dka 12.10.2010, 16:18
Спасибо всем кто помог, решили мне проблему
Автор: TROJAN 12.10.2010, 20:35
123
Автор: Saymon 12.10.2010, 20:58
Второй пост или гугл, а далее нотепад.
Автор: alex82 13.10.2010, 4:39
Могу адаптировать для StatPX любой шаблон web-сайта. Но возьмусь за это только в том случае, если шаблон мне понравится, и будет валидно сверстан.
Автор: alex82 24.10.2010, 15:38
Доступна версия 1.01 beta
Изменения:
Исправлено отображение символов $ и | в веб-логе чата Добавлена возможность отправки сгенерированных страниц на удаленный FTP-сервер Переписаны некоторые функции (обработка команд, отправка меню) Исправлена ошибка, приводящая к увеличению числа сообщений в графиках главного чата при отправке команд В чат-лог добавлена фильтрация kick-сообщений Исправлена ошибка, не позволявшая просматривать статистику хаба при отключенной веб-статистике Исправлено определение адресов локальной сети при генерации некоторых страниц веб-статистики Добавлена возможность изменения стиля ссылки на текущую страницу Исправлено экранирование символов переноса строки в веб-логе чата И еще много-много мелких изменений
Автор: LOPD 28.10.2010, 21:08
Ошибка StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) не понел в чём проблема вроде работал норм и тут ошибка.
Автор: alex82 28.10.2010, 21:28
Цитата(LOPD @ 28.10.2010, 21:08)
Ошибка StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) не понел в чём проблема вроде работал норм и тут ошибка.
Заменяем в строке 206
Код
GetChatRank
на
Код
GetRank
Автор: b0g0m0l 6.11.2010, 20:13
а как можно эту статистику к dle прикрутить
Автор: DEN 007 25.11.2010, 15:18
Ручками, на уровне базы данных ни как( так как скрипт использует простые хтмл... если дле стоит на том же хосте что и хаб... то можно создать модуль (тобишь будет генерирвать луа скрипт) шаблончик немного проравить и переделать сохранение с хтмл в пхп. и будет тебе счастье.!
Автор: dka 29.11.2010, 12:46
Код
.../PtokaX/scripts/StatPX/Functions/Graph.lua:9: module 'gd' not found: no field package.preload['gd'] no file '/home/jackm/PtokaX/libs/gd.lua' no file '/home/jackm/PtokaX/scripts/gd.lua' no file '/home/jackm/PtokaX/scripts/libs/gd.lua' no file './gd.lua' no file '/usr/local/share/lua/5.1/gd.lua' no file '/usr/local/share/lua/5.1/gd/init.lua' no file '/usr/local/lib/lua/5.1/gd.lua' no file '/usr/local/lib/lua/5.1/gd/init.lua' no file '/usr/share/lua/5.1/gd.lua' no file '/usr/share/lua/5.1/gd/init.lua' no file '/home/jackm/PtokaX/libs/gd.so' no file '/home/jackm/PtokaX/scripts/gd.so' no file '/home/jackm/PtokaX/scripts/libs/gd.so' no file './gd.so' no file '/usr/local/lib/lua/5.1/gd.so' no file '/usr/lib/lua/5.1/gd.so' no file '/usr/local/lib/lua/5.1/loadall.so'
операционка Gentoo в чем трабла и как решить??
Автор: ustas 29.11.2010, 13:40
нужен модуль
Цитата
Библиотека Lua-GD ( http://mydc.ru/topic2356.html )
Автор: Saymon 29.11.2010, 13:42
ustas, для никса это не то...
Автор: Alexey 29.11.2010, 13:49
В StatPX/config.lua измени значение переменной Graph на n. Можно ещё коммент после объявления этой переменной почитать...
Автор: JackM 29.11.2010, 15:39
изменив "Graph на n" помогло, скрипт заработал, но хотелось бы полноценно может кто поделится информацией как проще скомпилить lua-gd?
нашел альтернативу, установил с оверлея, теперь проблема в другом
- error loading module 'gd' from file '/home/jackm/PtokaX/libs/gd.so': /home/jackm/PtokaX/libs/gd.so: неправильный класс ELF: ELFCLASS64
есть идеи?
Решение найдено. http://mydc.ru/topic4087.html?view=findpost&p=35228
Автор: ProGeTTo 30.12.2010, 14:04
Нашел глюку. В стате по "Топ-стран" показывает только локалку, останьное помечает как "Не известно", как исправить?
Автор: mariner 30.12.2010, 14:18
поставить iptocountry в директорию птоки. Это такая база данных в которой есть привязка ip-диапазона к стране
Автор: Saymon 30.12.2010, 14:18
наверно установить базу IP-to-Country и перезапустить хаб
Автор: ProGeTTo 30.12.2010, 14:46
Цитата(mariner @ 30.12.2010, 15:18)
поставить iptocountry в директорию птоки. Это такая база данных в которой есть привязка ip-диапазона к стране
а где её брать? ------------------------- уже не надо, нашел. Спасибо.
Автор: Saymon 30.12.2010, 14:51
http://mydc.ru/r/?http://ip-to-country.webhosting.info/ закинь в cfg и перезапусти птоку...
Автор: -slava- 3.1.2011, 5:22
Подскажите пожалуйста как вырезать пункт Ограничения???
Автор: alex82 5.1.2011, 18:54
-slava- Открыть mainstat.tpl, и убрать ненужное.
Автор: NoviX 21.1.2011, 18:37
а как его поставить?
Автор: viento 30.1.2011, 20:19
Цитата(alex82 @ 8.9.2010, 5:23)
Вопрос: Как заставить работать пункт "Последний зарегистрировавшийся юзер" на главной странице? Ответ: Для этого необходимо добавить в скрипт регистрации код, записывающий ник зарегистрировавшегося юзера в файл lastreg.txt, находящийся в папке StatPX_Lite. Код должен выглядеть примерно так:
Код
local lastreg = io.open(Core.GetPtokaXPath().."scripts/StatPX_Lite/lastreg.txt","w") if lastreg then lastreg:write(user.sNick) lastreg:close() end
К примеру, в скрипт Registrator этот код нужно добавить сразу после строк:
Код
if tCfg.ShowToAll then ToAll("Поприветствуем нового зарегистрировавшегося участника - "..user.sNick.."!") end
извините куда в этом вот скрипте это вставить?
Прячем большой код под спойлер или в codebox!
Код
--[[
RegMe 1.0f LUA 5.11 [Strict][API 2]
By Mutor 04/07/07
Саморегистрация\Смена пароля
RegMe Command Help
Команды Описание !rmhelp Помощь !regme Регистрация !passwd смена пароля
перевел и добавил функцию сообщения о новою юзере Mariner. Enjoy...
]]
--//-- -- Запретить поиск и передачу файлов для нерегистрированных юзеров? true = да/false = нет local RegOnly = false -- Запретить общий чат нерегистрированным юзерам? true = да/false = нет local RegChat = false -- Запретить приватные сообщения нерегистрированным юзерам? true = да/false = нет [приватные месэйджи операторам не блокируются] local RegPms = false -- Сообщать о входе нерегистрированных юзеров оператору? true = да/false = нет local Report = false -- Кто получает сообщения о нерегистрированных логинах и ошибках [только если report = true] local OpNick = "evoll" --//--
local Bot,Scp,Pfx = SetMan.GetString(21),"RegMe",SetMan.GetString(29):sub(1,1) local Menu,SubMenu = SetMan.GetString(0),"Регистрация" local BlockMsg = "\r\n\r\n\tUnregistered users may not chat, pm, search or transfer files in this hub.\r\n".. "\tYou may pm operators for assistance. You may also self-register by typing.\r\n".. "\t!regme <password> or use context menu commands [right click].\r\n\r\n"
UserConnected = function(user) SendCmds(user) if user.iProfile == -1 then if Report then OnError("Незарегестрированный юзер: "..user.sNick.." зашел на "..SetMan.GetString(0)) end if RegOnly then return Core.SendToUser(user,"<"..Bot.."> "..BlockMsg..RegCmds["rmhelp"](user,data,cmd)) end end end OpConnected,RegConnected = UserConnected,UserConnected
ChatArrival = function(user,data) local _,_,cmd = data:find("%b<> %p(%w+)") if cmd then cmd = cmd:lower() if cmd and RegCmds[cmd] then return Core.SendPmToUser(user,Bot,RegCmds[cmd](user,data,cmd)), true end else local _,_,to,from = string.find(data,"^$To: (%S+) From: (%S+)") if to and from then if RegPms and user.iProfile == -1 then local prof = Core.GetUser(to) if prof then if not Core.GetUserValue(prof,11) then return Core.SendPmToUser(user,to,"<"..Bot.."> "..BlockMsg),true end else return true end end else if RegChat and user.iProfile == -1 then return Core.SendToUser(user,"<"..Bot.."> "..BlockMsg),true end end end end ToArrival = ChatArrival
ConnectToMeArrival = function(user, data) if RegOnly and user.iProfile == -1 then local CtmMsg = "\t*Пожалуйста, удалите этот файл из очереди.*" return Core.SendToNick(user.sNick,"<"..Bot.."> "..BlockMsg.. CtmMsg:gsub(" ",string.char(160)).."\r\n\r\n|"),true end end RevConnectToMeArrival = ConnectToMeArrival
SearchArrival = function (user, data) if RegOnly and user.iProfile == -1 then local SrMsg = "\t*Пожалуйста, закроте окно поиска.*" local _,_,search = string.find(data,"([^%?]+)|$") search = search or "" local res = "Незарегистрированный юзер"..string.char(92)..user.sNick..", поиск ".. "отключен для тебя."..string.rep("\t",75)..search return Core.SendToUser(user,"$SR "..SetMan.GetString(21).." "..res.." 0 0/0".. SetMan.GetString(0).." ("..Core.GetHubIP()..":"..SetMan.GetString(4)..")"), Core.SendToUser(user,"<"..Bot.."> "..BlockMsg.. SrMsg:gsub(" ",string.char(160)).."\r\n\r\n|"),true end end
OnError = function(msg) local user = Core.GetUser(OpNick) if user then Core.SendToUser(user,"<"..Bot.."> "..msg) end end
SendCmds = function(user) local Prof = "Unregistered User" if user.iProfile > -1 then Prof = ProfMan.GetProfile(user.iProfile).sProfileName end for i,v in pairs(RegCmds) do local desc,arg1,arg2 = RegCmds[i]() Core.SendToNick(user.sNick,"$UserCommand 1 1 "..SubMenu.."\\".. desc.."$<%[mynick]> "..Pfx..i..arg1.."|") Core.SendToNick(user.sNick,"$UserCommand 1 2 "..SubMenu.."\\".. desc.."$<%[mynick]> "..Pfx..i..arg2.."|") end Core.SendToUser(user,"<"..Bot.."> "..Prof.."'s "..Scp.." команды ".. "включены. Для регистрации воспользуйтесь меню.") end
FormatSize = function(int) local i,u,x = tonumber(int) or 0,{"","K","M","G","T","P"},1 while i > 1024 do i,x = i/1024,x+1 end return string.format("%.2f %sB.",i,u[x]) end
RegCmds = { regme = function(user,data,cmd) if user then local nick = user.sNick if user.iProfile ~= -1 then return "Твой ник, "..nick..", уже зарегестрирован." elseif Core.GetUserAllData(user) then local _,_,pwd = data:find("%b<> %p%w+ (%S+)|$") if pwd then if nick:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Ник содержит запрещенные символы. ".. "Пожалуйсто, введите другой." end if pwd:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Пароль содержит запрещенные символы. ".. "Пожалуйсто, введите другой." end local hub = SetMan.GetString(0) local addy = SetMan.GetString(2)..":"..SetMan.GetString(3) local share,ip = FormatSize(user.iShareSize),user.sIP local slots = user.iSlots or 0 local mode = "Пассив" if user.bActive then mode = "Актив" end if user.sMode and user.sMode == "5" then mode = "Socks5" end local opmsg = "\r\n\r\n\tЗарегистрировался новый юзер\r\n".. "\tвот детали регистрации:\r\n".. "\t"..string.rep("=",22).."\r\n".. "\tНик:\t"..nick.."\r\n".. "\tПароль:\t"..pwd:gsub(".","x").."\r\n".. "\tШара:\t"..share.."\r\n".. "\tIP:\t"..ip.."\r\n".. "\tРежим работы:\t"..mode.."\r\n".. "\tОткрыто слотов:\t"..slots.."\r\n" RegMan.AddReg(nick, pwd, 3) Core.SendToOps("<"..Bot.."> "..opmsg) Core.SendToAll("<"..Bot.."> Поприветствуем нового зарегестрировавшегося пользователя "..nick.."!;)") return "\r\n\r\n\tПриветствую. Вы удачно ".. "зарегистрировались.\r\n\t"..string.rep("=",40).."\r\n".. "\tНазвание хаба:\t"..hub.."\r\n".. "\tАдрес хаба:\t"..addy.."\r\n".. "\tНик:\t"..nick.."\r\n".. "\tПароль:\t"..pwd.."\r\n\r\n".. "\t"..string.rep("=",40).."\r\n".. "\tПожалуйста обратите внимание на эту информацию.\r\n".. "\tПожалуйста перезайдите на хаб, чтобы активизировать ваш статус.\r\n" else return "Ошибка! Использовать: "..Pfx..cmd.." <пароль>" end end else return "Зарегистрироваться"," %[line:Пароль]"," %[line:Пароль]"," <password>>" end end, passwd = function(user,data,cmd) if user then if user.iProfile == -1 then return "Твой ник, "..user.sNick..", не зарегестрирован." elseif Core.GetUserAllData(user) then local _,_,oldpass,newpass = data:find("%b<> %p%w+ (%S+) (.+)|$") if oldpass and newpass then local pwd,prof = RegMan.GetReg(user.sNick).sPassword,user.iProfile if pwd and prof then if oldpass:lower() ~= pwd:lower() then return "Неверный пароль. ".. "Попробуйте снова. [case insensitive]" end if newpass:find("[%c\$\|\<\>\:\?\*\"\/\\]") then return "Пароль содержит запрещенные символы. ".. "Пожалуйста, введите другой." end if newpass:lower() == oldpass:lower() then return "Вы не можете поменять пароль на такой же! ".. "Пожалуйста, введите другой." end RegMan.ChangeReg(user.sNick, newpass, prof) return "Вы успешно сменили пароль с ".. oldpass.." на "..newpass end else return "Ошибка! Использовать: ."..Pfx..cmd.." <старый пароль> <новый пароль>" end end else return "Сменить пароль"," %[line:Текущий пароль] %[line:Новый пароль]", " %[line:Текущий пароль] %[line:Новый пароль]"," <old password> <new password>" end end, rmhelp = function(user,data,cmd) if user then local reply = "\r\n\r\n\t"..Scp.." Help\r\n\r\n\tКоманды\t\tОписание\r\n".. "\t"..string.rep("=",40).."\r\n" for i,v in pairs(RegCmds) do local desc = RegCmds[i]() reply = reply.."\t"..Pfx..string.format("%-15s",i).."\t"..desc.."\r\n" end return reply.."\n\t"..string.rep("=",40).."\r\n\r\n" else return "Справка","","" end end, }
Автор: DEN 007 30.1.2011, 20:23
viento, А зачем скрипт смены ника в статистеке?
Автор: viento 31.1.2011, 12:38
Цитата(DEN 007 @ 30.1.2011, 20:23)
viento, А зачем скрипт смены ника в статистеке?
какой есть. я в луа слабо секу) и свое чтото написать не могу а только лишь подправить и то не везде. да и лишние скрипты плодить тоже не охота. куда там вставить код чтобы это работало?
Автор: ProGeTTo 31.1.2011, 22:45
добавил новые звания в топ чатеров
звания
tRanks = { -- Звания чат-ранга. Звания должны добавляться от меньшего к большему {1, "Новичек"},{20,"Начинающий"},{100,"Участник"},{200,"Бывалый"},{500,"Писака"},{1000,"Житель чата"},{2500, "Наследник"},{5000,"Местная гопота"},{7500,"Мэр чата"},{10000,"Президент чата"},{15000,"Бог чата"}, }
теперь при получении кем либо нового звания админам в чат выдает ошибку:
Код
[**:**:**] <[K.o.S]> Ошибка StatPX Lite: ... ХАБ\PtoKax 0.4.1.1\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value)
вот кусок скрипта, где он нашел какуюто неисправность:
тык
if (tAccess.ChatRank[user.iProfile] and ((tWebCfg.Enable and tWebCfg.ChatRank) or tCfg.ChatRank)) then if tChatRank[user.sNick] then tChatRank[user.sNick] = tChatRank[user.sNick]+1 else tChatRank[user.sNick] = 1 end if tCfg.ShowRecords and tData.ChatRankNum[tChatRank[user.sNick]] then Core.SendToAll("<"..(SetMan.GetBool(18) and SetMan.GetString(21) or "Hub-Security").."> "..user.sNick.." набрал "..tChatRank[user.sNick].." сообщений и получает звание \""..GetChatRank(tChatRank[user.sNick]).."\".") end end
if (tWebCfg.Enable and tWebCfg.ChatLog) or MOTDChat then local save = true if #data > tCfg.ChatMax then save = false else local n = 1 for _ in data:gmatch("\n") do
возможно понял почему ({2500, "Наследник"} между 2500, и "Наследник" пробел, жду следующего получения звания для проверки нет, дело не в этом, жду помощи
Автор: Nickolya 31.1.2011, 23:08
По всей видимости случайно попутно снесли функцию GetChatRank, о чем и говорит ошибка (попытка вызвать глобальную GetChatRank (нулевое значение)). Попробуй вставь это в конец скрипта:
Код
function GetChatRank(num) for i = #tRanks, 1, -1 do if num >= tRanks[i][1] then return tRanks[i][2] end end return tRanks[1][2] end
Автор: ProGeTTo 31.1.2011, 23:13
Цитата(Nickolya @ 1.2.2011, 0:08)
По всей видимости случайно попутно снесли функцию GetChatRank, о чем и говорит ошибка (попытка вызвать глобальную GetChatRank (нулевое значение)).
непомогло, в сам скрипт в конец самый втыкнул, 0 результата
Код
[23:11:45] <[K.o.S]> Ошибка StatPX Lite: ... ХАБ\PtoKax 0.4.1.1\scripts\StatPX_Lite.lua:631: attempt to get length of global 'tChatRanks' (a nil value)
даже попробывал обновить скрипт, выдрав его из 1-го поста, ничего не поменялось
Код
[23:17:22] <[K.o.S]> Ошибка StatPX Lite: ... ХАБ\PtoKax 0.4.1.1\scripts\гStatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value)
Автор: viento 1.2.2011, 20:09
ну а мне кто подскажет куда тот кусок скрипта впихнуть?
Автор: Saymon 1.2.2011, 20:17
viento, а тему кто прочитает?
Автор: STIVAN 21.3.2011, 12:57
Со скином "pixabella green" где написать правила пишет что в TEXTFILE_rules а где этот файл лежит ненайду
все ненад
Автор: CrazyKiller 7.6.2011, 22:25
Цитата(STIVAN @ 21.3.2011, 13:57)
Со скином "pixabella green" где написать правила пишет что в TEXTFILE_rules а где этот файл лежит ненайду
все ненад
ну если нашол решение, подскажи другим !
Разобрался !
Спасибо Второй Пост, НАМЕК, смотрите на Код Последний Зарегистрированный !
Автор: CrazyKiller 9.6.2011, 18:34
Сделал Смайлы от FlyLinkDC++ для Лог главного чата ! Инструкция внутри ! Может кому пригодится !
:gsub("%[CLIENT%]","\")\n\t\t\t\tf:write(tClients[tCopy[i].Client] and tClients[tCopy[i].Client] or tCopy[i].Client,\" \",tCopy[i].Version)\n\t\t\t\tf:write(\"")
и перед ней добавляем строку
Код
:gsub("%[DCTAGS%]","\")\n\t\t\t\tf:write(tClients[tCopy[i].Client] and tClients[tCopy[i].Client] or tCopy[i].Client)\n\t\t\t\tf:write(\"")
:gsub("{ROWSTYLE}",even and "stat-row1" or "stat-row2")
После куска кода
Код
:gsub("{FLAG}",v.Country == "??" and "unknown" or v.Country:lower())
Добавляем 2 куска кода
Код
:gsub("{HUBICON}",(tSofticon[v.Info.HubSoft] or (v.Info.HubSoft and v.Info.HubSoft or "n/a"))) :gsub("{HUBSOFT}",(tSoftWare[v.Info.HubSoft] or (v.Info.HubSoft and v.Info.HubSoft or "n/a")))
Примерно должен быть так !
Примерный КОД
Код
:gsub("{ROWSTYLE}",even and "stat-row1" or "stat-row2") :gsub("{STATE}",v.Info.Online and "online" or "offline") :gsub("{STATE_STRING}",v.Info.Online and "Онлайн" or "Оффлайн") :gsub("{DESCRIPTION}",v.Info.Descr and v.Info.Descr:htmlescape():gsub("%%","%%%%") or "") :gsub("{NAME}",v.Info.Name and v.Info.Name:htmlescape():gsub("%%","%%%%") or v.Addr) :gsub("{ADDRESS}",v.Addr) :gsub("{USERS}",v.Info.Users or "?") :gsub("{SHARE}",v.Info.Share and FormatSize(tonumber(v.Info.Share),true) or "?") :gsub("{MAXUSERS}",v.Info.MaxUsers or "?") :gsub("{MINSHARE}",v.Info.MinShare and (v.Info.MinShare > 0 and FormatSize(tonumber(v.Info.MinShare)) or "не ограничено") or "?") :gsub("{MINSLOTS}",v.Info.MinSlots and (v.Info.MinSlots > 0 and v.Info.MinSlots or "не ограничено") or "?") :gsub("{MAXHUBS}",v.Info.MaxHubs and (v.Info.MaxHubs > 0 and v.Info.MaxHubs or "не ограничено") or "?") :gsub("{PINGDATE}",os.date("%H:%M:%S",v.Time)) :gsub("{PINGDATE_([^}]+)}",function(fstr) return os.date(fstr,v.Time) end) :gsub("{COUNTRY_CODE}",v.Country) :gsub("{COUNTRY}",tCountry[v.Country] or "Неизвестно") :gsub("{FLAG}",v.Country == "??" and "unknown" or v.Country:lower()) :gsub("{HUBICON}",(tSofticon[v.Info.HubSoft] or (v.Info.HubSoft and v.Info.HubSoft or "n/a"))) :gsub("{HUBSOFT}",(tSoftWare[v.Info.HubSoft] or (v.Info.HubSoft and v.Info.HubSoft or "n/a")))
Сохраняем скрипт tinyhublist.lua и качаем сам шаблон hublist папку soft_img в корень сайта файл hublist.tpl в папку шаблон TinyHublist DopHublist.rar ( 7.6 килобайт )
: 35
в конфиге TinyHublist Название Темы
Код
Theme = "hublist"
ну почти все, осталось добавить строку в шаблоне StatPX Lite, header.tpl
Код
<li><a href="hublist.html?#34;>hublist</a></li>
Прошу сильно не бить, и не кричать, если что не так, луче подскажите, исправим вместе !
Автор: Pank1 31.8.2011, 7:30
Что за ошибка? [2011-08-31 11:59:53]: C:\PtokaX\hub\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) Решение проблемы нашол в одном из постов...
Автор: laid18 18.9.2011, 23:45
Кто подскажет как в mainstat.tpl сделать вывод по типу вот такого онлайна
Ребят сразу два вопроса: 1 - У меня стоит бот Hubbabot. Можно ли как нить сделать что бы в списке банов были баны именно из базы HubbaBot ? 2 - Местоположение пользователей, у менЯ городская сеть около 1000 пользователей. есть подсети. как бы сдеоать что бы не было так Локальная сеть 192.168.0.0 - 192.168.255.255, а как пример например: 192.168.10.0 - 192.168.10.255 - Амурская д10,д12,д14 ?
Автор: Alexey 1.10.2011, 11:15
Этот функционал не предусмотрен, но самому реализовать никто не запрещает. Если очень захотеть — можно в космос полететь!
Сомневаюсь, что кто-то будет это делать за тебя. Особенно первый пункт и особенно бесплатно.
Автор: darkangel17 3.10.2011, 11:29
По второму пункту, опишу как сделал я.
1. Сначала нужно отредактировать ip-to-country.csv
Для примера имеем микрорайон с диапазоном ip-адресов 10.9.1.1 - 10.9.255.255
Очищаем ip-to-country.csv и делаем там запись вида
Цитата
"168362241","168427519","TH","THA","THAILAND"
Что такое 168362241 и 168427519?
Эти значения берутся из формулы: i1*16777216+i2*65536+i3*256+i4
Где i1.i2.i3.i4 начальный и конечный ип адрес диапазона
Огромное спасибо все получилось http://mydc.ru/ipb.html?act=attach&type=post&id=6081 Спасибо
Автор: Aleksions 17.10.2011, 0:59
А кто точно может сказать, куда точно и какой файл нужно совать ? Бо у меня что-то оно как-то не работает
Автор: Sergius` 27.1.2012, 14:06
Подскажите, как скрыть MOTD скрипта незарегистрированным пользователям и возможно ли это? Если возможно подскажите, пожалуйста, как это сделать!
Автор: Ksan 27.1.2012, 14:18
Sergius`, открываешь скрипт, находишь функцию UserConnected(user), там находишь строку
Код
SendMOTD(user)
и вместо этого вписываешь это:
Код
if user.iProfile ~= -1 then SendMOTD(user) end
Автор: DemonHunter614 17.2.2012, 22:35
Мне из всего нужна только веб статистика. Как убрать сообщение дня и менюшку?
Автор: Ksan 17.2.2012, 22:58
DemonHunter614, а если просто посмотреть конфиг скрипта? Это в файле config.lua из папки скрипта. 1. И там для отмены отсыла МОТД строку
Код
MOTD = y,
заменяешь на строку
Код
MOTD = n,
2. Для отмены отправки меню юзерам находишь в том же файле конфига таблицу tAccess.Stats и там все значения для всех профилей меняешь на "n". Если хочешь, чтоб и админы не получали меню (управляющие), то там же ниже в таблице Control делаешь так же.
Вопрос: В какую папку надо положить папки со смайлами и флагами чтобы они отображались на сайте? Ответ: В ту же папку, в которую сохраняются сгенерированные html-страницы
Вопрос: В какую папку надо положить папки со смайлами и флагами чтобы они отображались на сайте? Ответ: В ту же папку, в которую сохраняются сгенерированные html-страницы
Ну емае! Два часа назад закончил "синхронизацию" смайлов флайлинка и веб-статистики, а тут нате вам Во флайлинке есть названия смайлов на английском. Добавил.
Скачать, распаковать из архива, положить всё содержимое в scripts и запустить, ну и если надобно, поставить любой вебсервер и luagd.
Автор: jekasumy 27.10.2012, 22:50
Цитата(Saymon21 @ 27.10.2012, 14:54)
Скачать, распаковать из архива, положить всё содержимое в scripts и запустить, ну и если надобно, поставить любой вебсервер и luagd.
все это сделано. не запускается только.
pkg_info | grep lua lua-5.0.3 Small, compilable scripting language providing easy access lua-5.1.5_4 Small, compilable scripting language providing easy access lua50-compat-5.1.r5_1 Lua 5.1 package compatibility layer for Lua 5.0.x lua50-luasocket-2.0.2_1 IPv4 Sockets support for the Lua language lua51-luasocket-2.0.2_1 IPv4 Sockets support for the Lua language luasql-mysql-2.1.1_1 Lua interface to MySQL
Автор: Alexey 27.10.2012, 23:15
Цитата(jekasumy @ 27.10.2012, 22:50)
все это сделано. не запускается только.
Что в логах?
Автор: and_luk 15.11.2012, 15:19
Подскажите пожалуйста, как сделать вот так.
Правлю сам файл lua, ну не получается.
Я не хочу заниматься плагиатом, хочу сделать под себя. А вот как это сделать, пока не могу понять.
Автор: Артём 15.11.2012, 17:28
and_luk, StatPX_Lite\MOTD.txt пробовал? P.S.jekasumy, убери из подписи своей дурацкий юзербар, в темах где ты со своим дурацким юзербаром отписывался, у меня антивирусник ругается!!!
Автор: Маза 29.12.2012, 21:11
Пожалуйста можно уже взять готовый сайт у вас? а то я не могу сделать блин) пожалуйста
Автор: Артём 29.12.2012, 21:50
Маза, чо-чо? Какой сайт, ты о чём?) В Первом посту всё написано понятно. Читай и делай как там написано.
Автор: KCAHDEP 23.9.2013, 20:06
Заметил такую неприятную особенность при рестарте или выключении/включении скрипта данные в таблице data.tbl не сохраняются, все рекорды, возраст хаба, все сбрасывается, подскажите пожалуйста из-за чего это может был и как с этим бороться? os debian 7.1 lua 5.1 ptokax 4.1.2
Автор: Alexey 23.9.2013, 20:19
Возможно, у тебя не хватает прав на запись в файл data.tbl.
Автор: KCAHDEP 23.9.2013, 21:17
сейчас поставлю 777 )))
не помогло... :(
Кстати перестал сохранять результаты после того как последний раз упал хаб, а упал он почему то я так понял после того, как мне попытались перенаправить 500 юзеров, скомканно но вот как то так...
Если как то поможет то http://mydc.ru/index.html?showtopic=1329&view=findpost&p=35795 http://mydc.ru/r/?http://clip2net.com/s/5OhaFS
Автор: KCAHDEP 29.9.2013, 11:18
Идей я так понимаю больше нет? Жаль, хороший скрипт, но придется удалить ):
Автор: Alexey 30.9.2013, 19:34
Зачем придумывать новые версии, если предыдущая версия так и не опровергнута? Ты выложил мало информации о своей проблеме, видимо, не слишком заинтересован в её решении. А если тебе всё-равно, то другим и подавно. Никто не расстроится, если ты удалишь скрипт.
Автор: RoL 8.12.2013, 8:14
И как это устронить?
Цитата
[19:27:26] /var/ptokax/scripts/StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value)
Автор: RoL 8.12.2013, 22:53
Скажите как устронить эту проблему http://mydc.ru/r/?http://f3.s.qip.ru/17hKVg80N.png ?? Дело в том что ввеблоги магнет сылка отоброжаеться не правильно
Автор: and_luk 26.12.2013, 9:54
Ребят, подскажите пожалуйста... файлы для веб стата генеряца в cp1251 как сменить кодировку на utf-8 ?
ты поставил лишнюю запятую, может уберёшь и заработает
P.S. хотя, это и в моём скрипте да и в шапке так, запятая...
Автор: Nickel89 11.6.2014, 12:32
Цитата(Артём @ 11.6.2014, 0:54)
Nickel89, в твоём первом сообщение ошибка.
ты поставил лишнюю запятую, может уберёшь и заработает
P.S. хотя, это и в моём скрипте да и в шапке так, запятая...
Уберал не помогало
Автор: Артём 15.6.2014, 19:05
Nickel89, а с чего ты взял что должно писать в мотд Локалка?
Автор: Nickel89 17.6.2014, 17:25
Цитата(Артём @ 15.6.2014, 20:05)
Nickel89, а с чего ты взял что должно писать в мотд Локалка?
Все готова! в базе IP-To-Country - прописал - "167772160","184549375","ripencc","762480000","LN","RUS","Russian Federation"
IP-To-Country
# FILE FORMAT IPV4 # ================ # # -------------------------------------------------------------- # All lines beginning with either "#" or whitespace are comments # -------------------------------------------------------------- # # IP FROM IP TO REGISTRY ASSIGNED CTRY CNTRY COUNTRY # "1346797568","1346801663","ripencc","20010601","il","isr","Israel" # # IP FROM & : Numerical representation of IP address. # IP TO Example: (from Right to Left) # 1.2.3.4 = 4 + (3 * 256) + (2 * 256 * 256) + (1 * 256 * 256 * 256) # is 4 + 768 + 13,1072 + 16,777,216 = 16,909,060 # # REGISTRY : apcnic, arin, lacnic, ripencc and afrinic # Also included as of April 22, 2005 are the IANA IETF Reserved # address numbers. These are important since any source claiming # to be from one of these IPs must be spoofed. # # ASSIGNED : The date this IP or block was assigned. (In Epoch seconds) # NOTE: Where the allocation or assignment has been transferred from # one registry to another, the date represents the date of first # assignment or allocation as received in from the original RIR. #
но и до этого было чтото типа такого ,Но без падений. вот статистика падений.последний раз до cегодня было как видно 7 марта.
Код
[2013-07-09 00:31:51]: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) [2014-01-08 11:32:12]: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) [2014-02-25 03:43:36]: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) [2014-03-07 22:18:28]: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value) [2014-10-10 10:34:13]: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value)
вот сеня смотрю флай написал
Код
Ошибка StatPX Lite: C:\Program Files\PtokaX\scripts\StatPX_Lite.lua:206: attempt to call global 'GetChatRank' (a nil value)
вот тот кусок кода,больше фраза нигде не нашлась
Код
Core.SendToAll("<"..(SetMan.GetBool(18) and SetMan.GetString(21) or "Hub-Security").."> "..user.sNick.." набрал "..tChatRank[user.sNick].." сообщений и получает звание \""..GetChatRank(tChatRank[user.sNick]).."\".")
Автор: taylor 10.10.2014, 9:49
в которую папку флаги зикидать нужно ??
Автор: Артём 10.10.2014, 12:57
taylor, честно!?! начинаешь кумарить... Ты читаешь вообще темы со скриптами или тупо скачал, не понял, задал вопрос и ждёшь ответ!?!
Цитата
Вопрос: В какую папку надо положить папки со смайлами и флагами чтобы они отображались на сайте? Ответ: В ту же папку, в которую сохраняются сгенерированные html-страницы
Автор: fenrir 14.11.2014, 6:19
Поделитесь опытом установки сабжа на debian 7 lua 5.2 последняя птока. Не запускается скрипт нивкакую. Как праавильно указать путь к папке генерации страницы?
Автор: aleksei1122 23.11.2014, 11:25
скажите пожалст,что надо поправить-добавить,чтобы скрипт писал в логе чата не только время и дату,но и ip юзера,отправившего сообщение.
Код
ChatTime = "%ip:%D:%H:%M:%S", -- Формат времени в веб-логе чата.
все работает ,кроме ip )
Автор: Артём 24.11.2014, 1:30
aleksei1122, а ты внимательно читаешь? написано же ChatTime, с какого перепугу должен там работать показ IP?
Возможно здесь нужно править. строки 511 - 527 в самом скрипте StatPX_Lite.lua
Код
{"%[CHATLOG%]",MOTDChat and [[ if tData.ChatLogUpdate then tData.ChatLog = "" local maxn = #tChatLog local minn = maxn-tCfg.ChatLogSize if minn < 1 then minn = 1 end for i = minn,maxn do if tChatLog[i] then tData.ChatLog = tData.ChatLog.."]]..MOTDChat:gsub("%c",function(char) return "\\"..char:byte() end):gsub("\\\"","\\%1") :gsub("%[TIME%]","\"..os.date(tCfg.ChatTime,tChatLog[i][1])..\"") :gsub("%[NICK%]","\"..(tChatLog[i][2] and MOTDChatNick:gsub(\"%%[NICK%%]\",tChatLog[i][2]) or \"\")..\"") :gsub("%[MESSAGE%]","\"..tChatLog[i][3]..\"")..[[" end end tData.ChatLogUpdate = false end result = result:gsub("%[CHATLOG%]",tData.ChatLog:gsub("%%","%%%%"),1)]] or ""},
Автор: =Alexandr= 4.7.2015, 21:27
Ребят, как установить Tiny Hublist ?) Подскажите пожалуйста, я чайник :-(
Автор: Triks 24.8.2015, 15:54
Цитата(=Alexandr= @ 4.7.2015, 21:27)
Ребят, как установить Tiny Hublist ?) Подскажите пожалуйста, я чайник :-(
Интересует этот же вопрос, специально зарегистрировался, если кто знает стукните в аську 2343324
Автор: Dani_Filth 27.8.2015, 10:52
Ребят привет. Не сколько вопросов к вам по этому скрипту. 1. Как сделать что бы последние зарегестрированы пользователи отображались на статистике если у меня стоит хуба ? 2.Можно ли сделать так что бы статистика ещё была доступна и с телефона просмотреть ?
Автор: Артём 3.9.2015, 10:32
Dani_Filth, 1 - не понял, 2 - конечно можно, есть же Web-статистика, ставишь, настраиваешь, а потом просто открываешь с телефона браузер и вводишь ссылку на свой ресурс и смотришь
Автор: Ksan 9.1.2017, 1:32
Почему-то вдруг скрипт стал ошибаться на 1 час. Например, в графиках (в 24-часовых) время последней отметки кажет 04:00, а реальное время - 05:00. Эта ошибка появилась где-то между 5 и 8 января. Как-то не особо обращал внимание на время, но вот обнаружил и проверил отметки времени в чатлогах (последняя отмеченная запись с правильным временем - как раз 5 января, дальше не было сохранённых комментов). То есть, ошибка глобальная - и в логах и в графиках, везде. Вот, например, сейчас вижу в веб странице скрипта в главном окне строку:
Цитата
Статистика обновлена 9 янв в 4:24. Обновляется раз в 5 минут.
А должно быть время 5:24. Время на самом компьютере показывает правильно. Откуда берётся время минус 1 час (или в каком месте скрипта появляется ошибка), не смог понять с ходу при просмотре скрипта и его частей. Тем более, в чужом сложном скрипте трудно разбираться. ОС - Винда 10.
Автор: dimetro 10.1.2017, 2:40
Цитата(Ksan @ 9.1.2017, 1:32)
Почему-то вдруг скрипт стал ошибаться на 1 час. Например, в графиках (в 24-часовых) время последней отметки кажет 04:00, а реальное время - 05:00. Эта ошибка появилась где-то между 5 и 8 января. Как-то не особо обращал внимание на время, но вот обнаружил и проверил отметки времени в чатлогах (последняя отмеченная запись с правильным временем - как раз 5 января, дальше не было сохранённых комментов). То есть, ошибка глобальная - и в логах и в графиках, везде. Вот, например, сейчас вижу в веб странице скрипта в главном окне строку: А должно быть время 5:24. Время на самом компьютере показывает правильно. Откуда берётся время минус 1 час (или в каком месте скрипта появляется ошибка), не смог понять с ходу при просмотре скрипта и его частей. Тем более, в чужом сложном скрипте трудно разбираться. ОС - Винда 10.
Работает точно и правильно. Ось: Вин. Сервер 2012
Автор: alex82 10.1.2017, 22:17
Ksan, если вызвать os.date(), какой будет ответ?
Автор: Ksan 10.1.2017, 22:36
alex82, похоже, ответ будет аналогичный... Вот сообщение от другого скрипта, использующего эту команду ( os.date() ):
Цитата
[19:00:01] <-Bot-> Время хаба: 18:00:00, сегодня 10 января, вторник..
Похоже, дело не в вашем скрипте (StatPX Lite), а в Птоке (не хочется думать, что в системе). Нужно попробовать перезагрузить систему или Птоку для начала, может, исправится.. Попозже проверю, когда народу на хабе будет меньше.
P.S.: Пикантный нюанс в том, что до этого всё было без проблем.
UPD: Во, теперь всё нормально! Перезагрузил комп, тем более, как раз обновления к системе подошли и требовалась перезагрузка.. Хотя, возможно, для обсуждаемой проблемы было бы достаточно перезапустить Птоку.. но уже не узнать..
Цитата
[04:35:00] <-Bot-> Время хаба: 04:34:59, сегодня 11 января, среда..
Автор: Brains 15.6.2018, 0:56
Всех приветствую! Подскажите пожалуйста. С переходом с Win на Ubuntu 14.04 возникла проблема, в плане истории чата. Сам файл data.tbl читает и отображает информацию на хабе, но новые сообщения из чата не сохраняет. Права выставлены, хаб стартует из под root как служба. Были у кого похожие проблемы?