CollectorMagnets |
Здравствуйте, гость ( Вход | Регистрация )
CollectorMagnets |
18.2.2010, 17:08
Сообщение
#21
|
|
Developer Группа: Модераторы Сообщений: 541 Регистрация: 11.11.2008 Пользователь №: 1 075 Спасибо сказали: 244 раза |
Название: CollectorMagnets
Автор: Serx Перевод под RusHub: STRELOK Описание: Сохраняет магнет ссылки. Выводит их по категориям, от ника, за дату. Для работы скрипта необходимо скачать модуль files здесь
Прикрепленные файлы
Спасибо сказали: |
|
|
20.3.2013, 17:16
Сообщение
#22
|
|
Активный участник Группа: Пользователи Сообщений: 65 Регистрация: 16.7.2010 Пользователь №: 7 288 Спасибо сказали: 0 раз |
Ещеб дать возможность самому юзеру включать отображение последних магнет при входе, при настройке "local ShowConnected = nil "
|
|
|
9.11.2013, 18:47
Сообщение
#23
|
|
Начинающий Группа: Пользователи Сообщений: 16 Регистрация: 18.7.2012 Пользователь №: 10 726 Спасибо сказали: 0 раз |
Ребята у меня проблема . Может кто знает как решить
Если юзер скидывает несколько магнитов в одном сообщении то это сообщение вноситься в базу токое количество раз сколько там магнитов. Вот парсящий кусок. Код function OnChat(UID, sData) local sCmd = sData:match"%b<>%s+[!+*](%S+)" local tUser = Core.GetUser(UID, 8) for Magnet in sData:gmatch"(magnet:%S+)" do if Magnet then local Hash = Magnet:match"urn:tree:tiger:(%w+)&xl=" local bRepeat = true local sMsg = sData:match"%b<>%s+(.*)" local form = Magnet:match"&dn=(%S+)" if form then local bType = true form = string.lower(form:sub(-3)) for i,v in pairs(TypeFile) do for j,k in ipairs(v) do if k == form then bType = nil form = i end end end if bType then form = other end end for i,v in ipairs(tMagnet) do if v[2] == Hash then bRepeat = nil break end end if bRepeat then table.insert(tMagnet,{Time*86400+os.time(), Hash, form, os.date("%d.%m.%Y @ %H:%M:%S"), tUser.sNick, sMsg}) end Files.SaveTable(MagnetFile, tMagnet, "tMagnet") Files.SaveTable(NicksFile, tNicks, "tNicks") end end вот пример глючащего магнита Код magnet:?xt=urn:tree:tiger:PG3OP5MHIMSJKJGVNHXMSELQWVKDPGQP6B2T6OA&xl=247819&dn=nastroyka_6str.rar magnet:?xt=urn:tree:tiger:CF7C3SOYIZ5CXJXDKGBNGYVRMX7JBG7OBH6OHSQ&xl=157911&dn=PitchPerfect_Tuner_setup.rar а вот как это выводит программа Код №926 : [ [3c]_server ] : [ Архивы: ap_guitar.rar (829,70 кБ)
AP_Guitar_Tuner_v1_02.rar (735,64 кБ) ] добавлено: [ 09.11.2013 @ 19:13:14 ] №927 : [ [3c]_server ] : [ Архивы: ap_guitar.rar (829,70 кБ) AP_Guitar_Tuner_v1_02.rar (735,64 кБ) ] добавлено: [ 09.11.2013 @ 19:13:14 ] |
|
|
19.11.2013, 4:28
Сообщение
#24
|
|
Начинающий Группа: Пользователи Сообщений: 16 Регистрация: 18.7.2012 Пользователь №: 10 726 Спасибо сказали: 0 раз |
Кому надо криволапое решение проблемы не учитывающее все нюансы вот оно )
Код function OnChat(UID, sData)
local sCmd = sData:match"%b<>%s+[!+*](%S+)" local tUser = Core.GetUser(UID, 8) for Magnet in sData:gmatch"(magnet:%S+)" do if Magnet then local Hash = Magnet:match"urn:tree:tiger:(%w+)&xl=" local bRepeat = true local sMsg = sData:match"%b<>%s+(.*)" local form = Magnet:match"&dn=(%S+)" if form then local bType = true form = string.lower(form:sub(-3)) for i,v in pairs(TypeFile) do for j,k in ipairs(v) do if k == form then bType = nil form = i end end end if bType then form = other end end for i,v in ipairs(tMagnet) do if v[2] == Hash then bRepeat = nil break end end if bRepeat then table.insert(tMagnet,{Time*86400+os.time(), Hash, form, os.date("%d.%m.%Y @ %H:%M:%S"), tUser.sNick, sMsg}) end Files.SaveTable(MagnetFile, tMagnet, "tMagnet") Files.SaveTable(NicksFile, tNicks, "tNicks") break end end |
|
|
|
Сейчас: 23.11.2024, 1:51 |