Рейтинг из админки для версии InstantCMS 1.9

+21
2.02K
For Darik5.
Рейтинг из админки для версии 1.9
Для предыдущих версий (1.7 — 1.8 )прошу сюда:
Вот вам грязный хак:

Вот как это выглядит на тестовом сайте :
Иллюстрация

Номера строк указаны после некоторых правок и могут не совпадать!
Заходим в admin\applets\users.php ищем строку этак 245
и видим примерно такое:

  1. $id = (int)$_REQUEST['id'];
  2.  
  3. $login = htmlspecialchars($_REQUEST['login'], ENT_QUOTES);
  4. $nickname = htmlspecialchars($_REQUEST['nickname'], ENT_QUOTES, 'cp1251');
  5. $email = $inCore->request('email', 'str');
После этого вставляем ещё одну похожую строку:
  1. $rat = $inCore->request('rat','int'); //получение рейтинга из формы
Ещё ниже после такого вот запроса (строка 269):

$sql = "UPDATE cms_users
SET login = '$login',
nickname = '$nickname',
email = '$email',
group_id = $group_id,
is_locked = $is_locked $pass_sql
WHERE id = $id
LIMIT 1";
dbQuery($sql) ;

Перед закрывающейся скобкой ("}")
Вставляем следующий код:
  1. // проверяем был ли изменнён рейтинг
  2. if (isset($rat) AND ($rat != 0)){
  3.  
  4. // Отправляем сообщение
  5.  
  6. cmsUser::sendMessage(USER_UPDATER, $id, '<b>Ваш рейтинг был изменён на '.$rat.' пунктов</b>');
  7.  
  8. $sql_hp ="UPDATE cms_users
  9. SET rating = rating + ({$rat})
  10. WHERE id = '$id'
  11. LIMIT 1";
  12. dbQuery($sql_hp) ;
  13.  
  14. }
Осталось лишь добавить необходимые поля в форму редактирования пользователя.
Скролим дальше, к форме, находим что-то подобное — строка 424 :
  1. <tr>
  2. <td valign="middle"><strong>Заблокировать аккаунт?</strong></td>
  3. <td valign="middle"><input name="is_locked" type="radio" value="1" <?php if ($mod['is_locked']) { echo 'checked="checked"'; } ?> />
  4. Да
  5. <label>
  6. <input name="is_locked" type="radio" value="0" <?php if (!$mod['is_locked']) { echo 'checked="checked"'; } ?> />
  7. Нет</label></td>
  8. <td> </td>
  9. </tr>
и после него, но до закрывающегося тега таблицы вставляем :
  1. <tr>
  2. <td><strong>Изменить рейтинг на : </strong></td>
  3. <td> <input name="rat" type="text" id="rat" style="width:50px"/> <b> пунктов</b> <td>
  4. </tr>
Сохраняем, проверяем.

P.S. Исправлено за 5 минут, могут быть глюки.
Ах да, возможны и отрицательные значения ))
+2
Darik Darik 13 лет назад #
спасибо, быстро у меня все отлично работает! +1
+3
MrJenika MrJenika 13 лет назад #
на здоровье)
0
fact fact 13 лет назад #
Работает!
0
Митяй Митяй 11 лет назад #
1.10.1 Полет нормальный.
0
maia maia 11 лет назад #
Что-то я не поняла - эта штука только прибавляет рейтинг? А как убавить?
0
MrJenika MrJenika 11 лет назад #
там написано, возможны и отрицательные значения... То есть ставите -5 и рейтинг убывает на 5 пуктов
0
maia maia 11 лет назад #
А, ой, спасибо! Что-то последнюю строчку я не осилила ))

Еще от автора

Карма из админки для версии InstantCMS 1.9
Меняем карму пользователю из админки. Для предыдущих версий - на этой странице.
Рейтинг из админки
Допилено по просьбе одного из посетитлей этого сайта. Рейтинг из админки для версии 1.
Карма из админки (Дополнено 13.01.11)
(Исправлено одно из условий , вместо OR надо было написать AND ) Привет, на досуге помогал знакомому, столкнулся с InstantCms впервые.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.