Форум vBTorrents.org

Форум vBTorrents.org (https://vbtorrents.org/index.php)
-   Хаки, моды и скрипты для vBulletin (https://vbtorrents.org/forumdisplay.php?f=3)
-   -   Расширенная система повышений для vBulletin (https://vbtorrents.org/showthread.php?t=5)

banec 23.09.2009 18:22

Вопрос
Extended promotion check
что оно обозначает?
ратио?

Skald 23.09.2009 19:56

Цитата:

Сообщение от banec (Сообщение 1089)
Вопрос
Extended promotion check
что оно обозначает?
ратио?

Это расширенное условие. Для своих условий желательно знание ПХП
Если же знаний нет, то пишите именно так как на скрине (заменив значение ратио на свои цифры)

IVB 28.09.2009 17:35

Вложений: 1
Для тех, кому привычнее работать с утилитами diff и patch \m/ - вот файлик для patch (в аттаче).

В папке, в которую установлен форум, выполнить:

Код:

patch -p0 <patchfile.txt
Будут пропатчены оба файла: usergroup.php и promotion.php

[offtop]

Если кому-то интересно узнать, что это за волшебные утилиты - это Линуксовые утилиты. Первая (diff) создает вот такие файлики - в них содержатся различия между двумя файлами (до внесения исправлений и после). Вторая (patch) позволяет на основе файла различий из оригинального файла получить файл с нужными исправлениями.

Механизм создания файлов различий и внесения изменеий таков, что позволяет вносить изменения даже в тех случаях, когда оригинальные (неисправленные) файлы менялись (кроме тех случаев, когда менялись непосредственно те строки, которые нужно редактировать). Другими словами, файл различий, полученный для версии движка 3.7.3, подходит для версии 3.8.3 (хотя сами файлы usergroup.php и promotion.php в версии 3.8.3 отличаются от версии 3.7.3)

Те же самые diff и patch есть и под Windows

[/offtop]

IVB 29.09.2009 13:50

Вопрос: в какой момент времени выполняется проверка условий? Другими словами - когда срабатывает "повышение"?

Я хочу менять группу пользователя в зависимости от IP адреса, с которого он зашел, и хочу возложить эту задачу на обсуждаемый модуль. Но если "повышения" работают по крону - тогда они могут срабатывать ощутимо позже захода пользователя на форум (и тогда этот способ мне не подойдет)

Skald 29.09.2009 15:08

Цитата:

Сообщение от IVB (Сообщение 1169)
Я хочу менять группу пользователя в зависимости от IP адреса, с которого он зашел, и хочу возложить эту задачу на обсуждаемый модуль. Но если "повышения" работают по крону - тогда они могут срабатывать ощутимо позже захода пользователя на форум (и тогда этот способ мне не подойдет)

Такой способ точно не подойдет.
Повышения отрабатывают по крону, и совсем не часто (раз или 2 раза час)
Есть два варианта решения. Или на лету (в зависимости от ip) подменять права пользователя - это хук cache_permissions (но надо разбираться с системой прав булки)
Или на лету подменять основную группу если зашел с запрещенного ip на группу у которой нет никаких прав в нужных разделах - это хук fetch_userinfo. Для этого можно использовать предопределенные константы булки IPADDRESS и ALT_IP

IVB 29.09.2009 15:11

Цитата:

Сообщение от Skald (Сообщение 1174)
на лету подменять основную группу если зашел с запрещенного ip на группу у которой нет никаких прав в нужных разделах - это хук fetch_userinfo.

О! Спс за наводку. Попробую реализовать. Положительный результат (если, конечно, положительный получится) опубликую.

IVB 01.10.2009 17:56

Реализовал.

alik4277 23.12.2009 19:12

Собственно вопрос по системе повышения:
Хочу поставить данную модификацию на сайт не относящийся к трекеру (http://oblozhki.net) и сделать автоматическое повышение пользователей в группы по колличеству загруженых вложений (чтото типа ТОП100, ТОП1000 и т.д).
Как можено сделать это проще и правильнее

PS: Извиняюсь если не совсем в тему

Skald 24.12.2009 01:16

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

alik4277 24.12.2009 02:31

я уже тоже думал о модуле, только не знаю какое мостоположение ему выбрать
на чет повышений там ничего нету, или просто cron_start выбрать? Но тогда запросы будут идти при каждом старте крона а это тоже нежелательно.
Или же в ежедневные...


Текущее время: 06:32. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4 Patch Level 6
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot