Награды для пользователей [Medal System]
-
- phpBB 1.0.0
- Сообщения: 1
- Стаж: 19 лет 4 месяца
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
При установке этого мода во viewtopic.php добавляется кучка sql-запросов.. 
Можно ли их как-нибудь свести в один или упростить?

Можно ли их как-нибудь свести в один или упростить?

Код: Выделить всё
#
#-----[ OPEN ]------------------------------------------
#
viewtopic.php
#
#-----[ FIND ]------------------------------------------
#
//
// Again this will be handled by the templating
// code at some point
//
#
#-----[ BEFORE, ADD ]------------------------------------------
#
// Medal MOD
$medal ='';
$sql = "SELECT m.medal_id, m.medal_name, m.medal_image
FROM " . MEDAL_TABLE . " m, " . MEDAL_USER_TABLE . " mu
WHERE mu.user_id = '" . $postrow[$i]['user_id'] . "'
AND m.medal_id = mu.medal_id
ORDER BY m.medal_name";
if(!$result = $db->sql_query($sql))
message_die(GENERAL_ERROR, "Error getting medal information", "", __LINE__, __FILE__, $sql);
$medal_list = $db->sql_fetchrowset($result);
$medal_count = count($medal_list);
if ( $postrow[$i]['user_id'] == ANONYMOUS )
{
$medal_count = '';
}
else
{
$medal_count = ($medal_count) ? $lang['Medals'] . ': <a href="profile.php?mode=viewprofile&u=' . $postrow[$i]['user_id'] .'#medal" class="gensmall">' . $medal_count . '</a>' . ' (<a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $postrow[$i]['user_id']) .'#medal" class="gensmall">' . $lang['View_More'] . '</a>)' : $lang['Medals'] . ': ' . $lang['None'];
}
#
#-----[ FIND ]------------------------------------------
#
'POSTER_AVATAR' => $poster_avatar,
#
#-----[ AFTER, ADD ]------------------------------------------
#
'POSTER_MEDAL_COUNT' => $medal_count, // Medal MOD
#
#-----[ FIND ]------------------------------------------
#
'U_POST_ID' => $postrow[$i]['post_id'])
);
#
#-----[ AFTER, ADD ]------------------------------------------
#
//Medal MOD
if ( $board_config['allow_medal_dispaly'] )
{
$order = ( $board_config['medal_display_order'] ) ? "RAND()" : "m.medal_name";
$template->assign_block_vars('postrow.medal', array());
$sql = "SELECT m.medal_id, m.medal_name, m.medal_image
FROM " . MEDAL_TABLE . " m, " . MEDAL_USER_TABLE . " mu
WHERE mu.user_id = '" . $poster_id . "'
AND m.medal_id = mu.medal_id
ORDER BY " . $order;
if ($result = $db->sql_query($sql))
{
$rowset = array();
while ($row = $db->sql_fetchrow($result))
{
$rowset[$row['medal_image']]['medal_name'] = $row['medal_name'];
if ($rowset[$row['medal_image']]['medal_name'] == $row['medal_name'])
$rowset[$row['medal_image']]['medal_count'] += 1;
}
// Check Medal config in ACP
$medal_rows = $board_config['medal_display_row'];
$medal_cols = $board_config['medal_display_col'];
$medal_width = ( $board_config['medal_display_width'] ) ? 'width="'.$board_config['medal_display_width'].'"' : '';
$medal_height = ( $board_config['medal_display_height'] ) ? 'height="'.$board_config['medal_display_height'].'"' : '';
if ($medal_list)
{
$split_row = $medal_cols - 1;
$s_colspan = 0;
$row = 0;
$col = 0;
while (list($medal_image, $medal) = @each($rowset))
{
if (!$col)
{
$template->assign_block_vars('postrow.medal.medal_row', array());
}
$template->assign_block_vars('postrow.medal.medal_row.medal_col', array(
'MEDAL_IMAGE' => $phpbb_root_path . $medal_image,
'MEDAL_WIDTH' => $medal_width,
'MEDAL_HEIGHT' => $medal_height,
'MEDAL_NAME' => $medal['medal_name'],
'MEDAL_COUNT' => '('. $lang['Medal_amount'] . $medal['medal_count']. ')')
);
$s_colspan = max($s_colspan, $col + 1);
if ($col == $split_row)
{
if ($row == $medal_rows - 1) { break; }
$col = 0;
$row++;
}
else { $col++; }
}
}
}
}
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 1.0.0
- Сообщения: 4
- Стаж: 19 лет 3 месяца
- Откуда: Украина, Кривой Рог
-
- phpBB 1.4.4
- Сообщения: 114
- Стаж: 19 лет 2 месяца
Ребят, в общем при установке мода левая часть админки не отображается. Стоит лишь убрать файлы admin_medal.php и admin_medal_cfg.php как вс показывается.
Значит проблема в них.
Где, не подскажите?
Добавлено спустя 9 часов 13 минут 31 секунду:
Проблема в файле admin_medal.php Только при его загрузке левая часть админки не отображается.
Если нужно - приведу код файла.
Значит проблема в них.
Где, не подскажите?
Добавлено спустя 9 часов 13 минут 31 секунду:
Проблема в файле admin_medal.php Только при его загрузке левая часть админки не отображается.
Если нужно - приведу код файла.
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Neonaft
PHP пятый?
PHP пятый?
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 1.4.4
- Сообщения: 114
- Стаж: 19 лет 2 месяца
-
- Поддержка
- Сообщения: 5426
- Стаж: 20 лет 3 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Neonaft
У меня то же самое было, когда пытался протестить форум с пятым PHP. Надо рыться в коде файла и искать несоответствия с пятым PHP - это равносильно тому, что застрелиться, если в php н силён (например как я)
У меня то же самое было, когда пытался протестить форум с пятым PHP. Надо рыться в коде файла и искать несоответствия с пятым PHP - это равносильно тому, что застрелиться, если в php н силён (например как я)

Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 1.4.4
- Сообщения: 114
- Стаж: 19 лет 2 месяца
-
- phpBB 1.4.1
- Сообщения: 47
- Стаж: 20 лет 5 месяцев
Ребят, хочу поделиться наблюдениями и некоторым опытом...
Во первых автор мода сменил нумерацию версий мода!
У меня была установлена 2.2.2, по новой нумерации это версия 0.4.2
На данный момент самая свежая версия 0.4.5
Чтобы обновить нужно скачать моды версий 0.4.3; 0.4.4; 0.4.5
В версии 0.4.3 есть папка update, там все понятно и обновление выполнено в виде мода.
В версии 0.4.4 папка update отсутствует.
Пришлось сравнивать все изменения и размеры закачиваемых файлов.
Так вот, изменений не было, кроме закачиваемых нескольких файлов и команды SQL.
В версии 0.4.5 папка upgrade есть, изменения там минимальные!
Скачать все версии можно ОТСЮДА!
Шикарный, Русский перевод мода, последней версии от Xpert - ЗДЕСЬ!
Всем удачи!
Во первых автор мода сменил нумерацию версий мода!
У меня была установлена 2.2.2, по новой нумерации это версия 0.4.2
На данный момент самая свежая версия 0.4.5
Чтобы обновить нужно скачать моды версий 0.4.3; 0.4.4; 0.4.5
В версии 0.4.3 есть папка update, там все понятно и обновление выполнено в виде мода.
В версии 0.4.4 папка update отсутствует.
Пришлось сравнивать все изменения и размеры закачиваемых файлов.
Так вот, изменений не было, кроме закачиваемых нескольких файлов и команды SQL.
В версии 0.4.5 папка upgrade есть, изменения там минимальные!
Скачать все версии можно ОТСЮДА!
Шикарный, Русский перевод мода, последней версии от Xpert - ЗДЕСЬ!
Всем удачи!
http://passat-b5.ru
Всё о машинах VW Passat B5
Всё о машинах VW Passat B5
-
- phpBB 1.0.0
- Сообщения: 6
- Стаж: 19 лет 1 месяц
-
- phpBB 1.4.0
- Сообщения: 32
- Стаж: 19 лет 8 месяцев
поставила мод. есть пара вопросов.
1. не отображаются рисунки медальки на странице madals.php - вместо них пишется текст названия (в постах и профиле картинка есть)
все остальное работает. неужели все таки я накосячила? подскажите где искать ошибку.
2. вопрос к Siava
выше вы предлагали решения как сделать чтобы не сливались одинаковые медали. но на последней версии а она уже 0.4.6 таких строчек нет. есть ли вариант решения здесь?
хотелось бы чтобы если дали 2 одинаковые медали они бы так и рисовались две, а не одна и количество 2.
Добавлено спустя 14 минут 58 секунд:
заметила. на medals.php корнем считается сайта а не форум соответственно ищет рисунок он в images сайта а не форума.
закинула картинку в сайт. НО мне же так не надо. вдруг наград будет много.
1. не отображаются рисунки медальки на странице madals.php - вместо них пишется текст названия (в постах и профиле картинка есть)
все остальное работает. неужели все таки я накосячила? подскажите где искать ошибку.
2. вопрос к Siava
выше вы предлагали решения как сделать чтобы не сливались одинаковые медали. но на последней версии а она уже 0.4.6 таких строчек нет. есть ли вариант решения здесь?
хотелось бы чтобы если дали 2 одинаковые медали они бы так и рисовались две, а не одна и количество 2.
Добавлено спустя 14 минут 58 секунд:
заметила. на medals.php корнем считается сайта а не форум соответственно ищет рисунок он в images сайта а не форума.
закинула картинку в сайт. НО мне же так не надо. вдруг наград будет много.
http://www.deti-pogodki.ru -мой проект. Информационный, полезный, о детях-погодках.
-
- phpBB 1.0.0
- Сообщения: 8
- Стаж: 18 лет 10 месяцев
-
- phpBB 1.4.2
- Сообщения: 52
- Стаж: 19 лет
- Откуда: Москва
Блин….. не знаю и что сказать, мучился с этим модом всю ночь! В итоге все красиво работает в отношении админки и показа медалей (как в на скриншотах в мануале), красивый показ медалей всплывает в профиле и т.п. Плюс шикарный перевод Хреrta ! Но, вот незадача!! когда начинаешь смотреть сам форум. Кошмар! То все сообщения растягиваются в разные стороны и накладываются друг на друга, то в одной части экрана фон, где-то наверху медаль, а в середине приблудный текст и сделать с этим безобразием ничего не получается 10, а может больше, раз уже ставил, даа и что там в принципе ставить … все просто Ставил по инструкции версия мода Medal_System_0.4.6 Помогите , посмотрите.
Я прикрепил все измененные файлы которые нужно было редактировать.
Естественно таблички в SQL прописал и другие файлики скопировал.
P.S. Да еще это откуда-то вылезло
Добавлено спустя 3 часа 20 минут 22 секунды:
Странно файл я medal_added.tpl в русской папке создал приблизительно с таким текстом:
плюс еще скажем, награждаешь разными наградами синей там красной зеленой и т.п. а в профиль посмотришь вниз в ряду всего одна только...
И еще а админке странная реакция системы на администратора наград когда на него нажимаешь выдается сообщение о невозможности отобразить страницу.
Я прикрепил все измененные файлы которые нужно было редактировать.
Естественно таблички в SQL прописал и другие файлики скопировал.
P.S. Да еще это откуда-то вылезло
, вообще такого никогда не было, стоят же у меня скажем «Репутация» все высылается….Could not find email template file :: medal_added Line : 111 File : emailer.php
Добавлено спустя 3 часа 20 минут 22 секунды:
Странно файл я medal_added.tpl в русской папке создал приблизительно с таким текстом:
письмо все равно не приходит. (в личку я имею ввиду, на емайл не всегда, только если он правильный иначе ошибка)Subject: Вам была присвоена Медаль!!!
Charset: windows-1251
Поздравляем!
Вы удостоены медали "{MEDAL_NAME}" на {SITENAME}.
Это с радостью и почтением было сделано ведущими Модераторами форума или администратором сайта, Вы всегда можете войти в контакт с ними для получения дополнительной информации.
Вы можете рассмотреть информацию медалей здесь:
{U_MEDAL}
{EMAIL_SIG}.
плюс еще скажем, награждаешь разными наградами синей там красной зеленой и т.п. а в профиль посмотришь вниз в ряду всего одна только...
И еще а админке странная реакция системы на администратора наград когда на него нажимаешь выдается сообщение о невозможности отобразить страницу.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Я конечно еще "чайник", но я учусь!
-
- phpBB 1.4.2
- Сообщения: 52
- Стаж: 19 лет
- Откуда: Москва
-
- phpBB 2.0.3
- Сообщения: 384
- Стаж: 19 лет 9 месяцев
- Откуда: Москва, Fortuna-net