Колесо фортуны

Nikolay90

Пользователь
#1
##############################################################
## Название: Колесо Удачи (Фортуны)
## Автор: IEx0
## Адаптировал для TorrentPier II (R482): Gemini_13, PheRum, gerhanovn.
##
## Один раз в день случайный пользователь получает определенное количество аплоада
## и оно добавляется в его статистику. Ник пользователя окрашивается в зависимости от его принадлежности группе.
##
## Cложность установки: Средняя
##
## Время, необходимое для установки: ~ 10 минут
##
## Редактируемые файлы:
## /config.php
## /includes/cron/jobs/fortune_wheel.php (новый)
## /index.php
## /language/lang_russian/lang_main.php
## /language/lang_english/lang_main.php
## /templates/default/index.tpl
##############################################################
Описание:
1. Выполнить SQL-запрос:
Код:
INSERT INTO `bb_config` (`config_name`, `config_value`) VALUES ('current_lucker', '');
INSERT INTO `bb_cron` (`cron_id`, `cron_active`, `cron_title`, `cron_script`, `schedule`, `run_day`, `run_time`, `run_order`, `last_run`, `next_run`, `run_interval`, `log_enabled`, `log_file`, `log_sql_queries`, `disable_board`, `run_counter`) VALUES
(23, 1, 'Fortune Wheel', 'fortune_wheel.php', 'daily', '', '00:00:05', 255, '2011-01-06 16:47:52', '2011-01-07 00:00:05', '00:00:00', 0, '', 0, 0, 12);
2. Открыть .../config.php
В конце добавить:
PHP:
//тут укажите сколько дать юзеру в байтах (сейчас 10 Гб)
$bb_cfg['lucker_upload'] = 10737418240;
3. Создать файл: /includes/cron/jobs/fortune_wheel.php
PHP:
<?php
if (!defined('BB_ROOT')) die(basename(__FILE__));
$user = DB()->fetch_row("
SELECT
user_id
FROM
".BB_BT_USERS."
ORDER BY
RAND()
LIMIT 1
");
DB()->query("
UPDATE
".BB_BT_USERS."
SET
u_up_total = u_up_total + {$bb_cfg['lucker_upload']}
WHERE
user_id = {$user['user_id']}
");
DB()->query("
UPDATE
".BB_CONFIG."
SET
config_value = {$user['user_id']}
WHERE
config_name = 'current_lucker'
");
bb_get_config(BB_CONFIG, true, true);
// В следующих строчках отправляется сообщение в ЛС пользователю. Закоментируйте или удалите их, если уведомление юзеру в ЛС Вам не нужно.
$user_id = $user['user_id'];
$subject = 'Колесо Фортуны'; //Укажите тут название темы ЛС
$message = 'Поздравляем! Сегодня на нашем сайте Вам улыбнулось Колесо Фортуны и подарило 10 ГБ аплоада.'; //Укажите тут текст сообщения
$poster_id = BOT_UID; // id юзера от имени которого отправляется ЛС. BOT_UID - бот
send_pm($user_id, $subject, $message, $poster_id);
(Не забудьте сохранить этот файл в кодировке UTF-8 без BOM!)
4. Открыть .../index.php
Найти:
PHP:
'NEWEST_USER'          => sprintf($lang['NEWEST_USER'], profile_url($stats['newestuser'])),
После вставить:
PHP:
 'CURRENT_LUCKER' => (!empty($bb_cfg['current_lucker'])) ? sprintf($lang['LUCKER_CURRENT'], '<a href="'. PROFILE_URL . $bb_cfg['current_lucker'] .'">' . profile_url(get_userdata($bb_cfg['current_lucker'])) . '</a>', humn_size($bb_cfg['lucker_upload'])): false,
5. Открыть: lang_main.php (в папке /language/lang_russian)
В конце добавить:
PHP:
$lang['LUCKER_CURRENT'] = 'Сегодня колесо Удачи улыбнулось: <b>%s</b>. Поздравляем! Ему добавлено: %s.';
6. Открыть: lang_main.php (в папке /language/lang_english)
В конце добавить:
PHP:
$lang['LUCKER_CURRENT'] = 'Today the Fortune Wheel smiled: <b>%s</b>. Congratulations! To him is added: %s.';
7. Открыть: .../templates/default/index.tpl
Найти:
PHP:
<p id="online_time">{L_ONLINE_EXPLAIN}</p>
Вставить до:
PHP:
<!-- IF CURRENT_LUCKER --><p>{CURRENT_LUCKER}</p><!-- ENDIF -->
8. Сохранить все файлы и запихнуть на сервер.
9. В админке создать (активную) крон-задачу:
- Название задачи: Fortune Wheel
- Скрипт (название в папке "includes/cron/jobs/"): fortune_wheel.php
- Запуск: ежедневно.
##############################################################
Работоспособность мода проверена на TorrentPier II (R446).
##############################################################
На скриншоте показан итоговый результат:

##############################################################
Описание установки в виде текстового файла ниже:
 

Вложения

Nikolay90

Пользователь
#3
BT_USERS_TABLE замени на BB_BT_USERS
Заменено.
Были и другие нотисы - все ошибки тоже исправил. Закончил адаптацию и проверил работоспособность.
Откорректировал описание установки и перезалил доработанный текстовый файл.
 
G

Gemini_13

Гость
#8
Lange, в таком виде оно и не будет работать, ибо не передается на фуньку rank.Не уверен, но попробуй через get_userdata взять инфо. Мод не ставил, не люблю в слепую, но попробуй.
PHP:
profile_url(get_userdata($bb_cfg['current_lucker']))
 
Сверху