Общий цифровой рейтинг - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

Теги не найдены

Страница 1 из 1

Общий цифровой рейтинг

#1 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 611
  • Регистрация: 14-Июнь 09
  • Репутация: 14
  • IPB version:3.1.x
 

Отправлено 19 Ноябрь 2015 - 14:10

Хотелось бы создать так сказать общий цифровой рейтинг пользователя на основании количества сообщений, тем, репутации, очков рейтинга в профиле, и других цифровых показателей пользователя. Скажем 100 сообщений это 1 балл рейтинга, 10 тем - тоже 1 балл, и так далее, и что бы общий показатель выводить в тему.
Возможно ли такое реализовать?
0

#2 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 813
  • IPB version:I have no IPB
 

Отправлено 20 Ноябрь 2015 - 08:16

Просмотреть сообщениеHaktar сказал(а):

Возможно ли такое реализовать?

Возможно.
Но не все перечисленные данные есть по умолчанию. Например, нет деления на посты и темы. В этом случае можно посмотреть в сторону хука "Number Of Topics Started".
А так - это чистая математика.
0

#3 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 271
  • Регистрация: 20-Март 09
  • Репутация: 2 077
  • IPB version:3.1.x
 

Отправлено 20 Ноябрь 2015 - 19:55

А в чем проблема? Все данные есть (за исключения тем), вычисляйте рейтингу по формуле floor( общее количество / за какое количество ) + n.
0

#4 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 611
  • Регистрация: 14-Июнь 09
  • Репутация: 14
  • IPB version:3.1.x
 

Отправлено 21 Ноябрь 2015 - 03:40

Просмотреть сообщениеsiv1987 сказал(а):

А в чем проблема? Все данные есть (за исключения тем), вычисляйте рейтингу по формуле floor( общее количество / за какое количество ) + n.

А не напишите как это реализовать подробно?

Просмотреть сообщениеsiv1987 сказал(а):

(за исключения тем)

Темы тоже есть. Стоит хук Количество созданных тем
Вывожу информацию о них посредством {$author['topics_started']}


Просмотреть сообщениеnewbie сказал(а):

В этом случае можно посмотреть в сторону хука "Number Of Topics Started".

Да, давно стоит.
0

#5 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 813
  • IPB version:I have no IPB
 

Отправлено 21 Ноябрь 2015 - 15:53

Просмотреть сообщениеHaktar сказал(а):

А не напишите как это реализовать подробно?
Что Вам не понятно? :)

Просмотреть сообщениеsiv1987 сказал(а):

вычисляйте рейтингу по формуле floor( общее количество / за какое количество ) + n

"общее количество" - $author['topics_started'], $author['posts'] и т.д.
"за какое количество" - 100 сообщений, 10 тем и т.д.
"n" - та же самая формула floor( общее количество / за какое количество ).
Если давать не по 1 баллу, то формула будет выглядеть floor( общее количество / за какое количество ) * X. X - количество баллов.

Пример для тем и сообщений.
{parse expression="floor( $author['topics_started'] / 10 ) + floor( $author['posts'] / 100 )"}


Не знаю, после установки вышеуказанного хука $author['posts'] - чисто сообщения или как и по дефолту вместе с темами.
Если последнее, то $author['posts'] / 100 замените на ($author['posts'] - $author['topics_started']) / 100
1

#6 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 611
  • Регистрация: 14-Июнь 09
  • Репутация: 14
  • IPB version:3.1.x
 

Отправлено 21 Ноябрь 2015 - 17:40

newbie,
Ух ты - отлично, работает на ура! Большое спасибо.

Просмотреть сообщениеnewbie сказал(а):

Не знаю, после установки вышеуказанного хука $author['posts'] - чисто сообщения или как и по дефолту вместе с темами.

Нет, работает отдельно, не зависит от сообщений.
0

#7 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 611
  • Регистрация: 14-Июнь 09
  • Репутация: 14
  • IPB version:3.1.x
 

Отправлено 21 Ноябрь 2015 - 19:40

И ещё. Как добавить выборку по рейтингу в Список пользователей - http://ipbskins.ru/f...php?app=members (колонку с количеством рейтинга я уже туда добавил)? То есть кнопку вроде Имя пользователя, Количество сообщений, Дата регистрации.
0

#8 Пользователь не на сайте   newbie ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins.ru Team
  • Сообщений: 2 166
  • Регистрация: 26-Октябрь 11
  • Репутация: 813
  • IPB version:I have no IPB
 

Отправлено 22 Ноябрь 2015 - 09:46

Просмотреть сообщениеHaktar сказал(а):

То есть кнопку вроде Имя пользователя, Количество сообщений, Дата регистрации.

Кнопку добавляйте в шаблон member_list_show.
			<li <if test="$this->request['sort_key'] == 'grating'">class='active'</if>>
				<a href='{parse url="app=members&amp;module=list&amp;{$url}&amp;sort_key=grating&amp;sort_order=desc" template="members_list" base="public" seotitle="false"}' title='Сортировка по рейтингу'>По рейтингу</a>
			</li>


Также нужно будет отредактировать файл admin/applications/members/modules_public/list/view.php
1. Ниже
										'members_profile_views'		=> 'm_dd_views',

Добавляете
										'grating'					=> 'sort_by_grating',

2. Выше
			$this->DB->build( array( 'select'	 =>' m.member_id',

Добавляете
			$grating = "(FLOOR(m.posts/100) + FLOOR(pp.pp_reputation_points/10)) AS grating";
Тут сами определите, что Вам надо.
3.
			$this->DB->build( array( 'select'	 =>' m.member_id',
заменяете на
			$this->DB->build( array( 'select'	 => "m.member_id, {$grating}",

4. Ниже находите
									 'order'	 => 'm.' . $this->sort_key . ' ' . $this->sort_order,
и заменяете на
									 'order'	 => $this->sort_key . ' ' . $this->sort_order,

5. Добавляете языковую фразу для выпадающего меню.
Приложение - Пользователи
Набор слов - public_list
Ключ - sort_by_grating
Текст по умолчанию - по рейтингу
2

#9 Пользователь не на сайте   Haktar ответил: »

 
 
  • Advanced
  • ***
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 611
  • Регистрация: 14-Июнь 09
  • Репутация: 14
  • IPB version:3.1.x
 

Отправлено 22 Ноябрь 2015 - 16:07

newbie,
Большое спасибо. Всё получилось!
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна