Перейти к контенту

[2.3.x]eXTended Reputation ReBirth


Arhar

Рекомендуемые сообщения

Уважаемые гуру, подскажите пожалуйста.

Месяца 2 назад установил модификацию. Все отлично пашет, юзерам нравится. Сейчас сделал новый стиль.

Как добавить скин из репутации в новый стиль? а то репа не робит :D

Ссылка на комментарий
Поделиться на других сайтах

В инструкции об этом было написано раньше.
Ссылка на комментарий
Поделиться на других сайтах

Когда то хотел адаптировать под ЮМИ.

Скачал посмарел - там итак у Архара уже инстал есть.

Кароче забил в итоге :D

 

Хотя под ЮМИ было бы очень не плохо.

Изменено пользователем idTails
Ссылка на комментарий
Поделиться на других сайтах

Блин, сначала не там запостил...

короч вот так вот:

 

hallo^^

 

Поставил данный мод, и сразу после завершения установки, заметил косяк...

в профиле юзверя есть репа (+ число -), рабочая, но на форуме, в темах(точнее в сообщениях), там где и положено быть +\- и числу вообще нет ничего. Уже пару раз проверял все файлы, все сделал как нужно - все равно не работает. Форум 2.3.5 версии...

Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...

Блин... всё конечно круто, но есть пару вопросов:

Как делать пересчет репутации? (Если сообщение удалено-то + или - удаляется, ну как пересчет сообщений)

И второй вопрос : ведь реально сделать "ответ" на репутацию, только как?

Ссылка на комментарий
Поделиться на других сайтах

Здраствуйте.

 

Поставил мод на 2.3.5

 

Делал все по инструкции, что в архиве.

 

 

Не работает в браузере Safari:

 

Клик на + или - ни к чему ни приводит. Explorer, Opera - все ок.

 

Что можно сделать?

Ссылка на комментарий
Поделиться на других сайтах

Помогите! Поставил мод, вроде все нормально , попробовал дать в репу жму "+" - все нормально, выскакивает окошко, как и положено, ввожу текст жму "изменить" и ошибка :

 

"Parse error: parse error, unexpected '/', expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /forum/sources/action_public/xmlout.php on line 2232"

 

Вот код , вторая сверху строка кода - строка 2232

	}
function ajax_change_reputation()
{
	$mid = intval($_REQUEST['mid']);
	if($mid==0)
	{
		$this->return_string('error1');
	}
	if($this->ipsclass->member['id'] == $mid)
	{
		$this->return_string('error2');
	}
	if(!$this->ipsclass->member['rep_allow'])
	{
		$this->return_string('error5');
	}
	if($this->ipsclass->member['posts'] < $this->ipsclass->vars['rep_posts'])
	{
		$this->return_string('error6');
	}

	$_POST['message'] = $this->convert_unicode( $_POST['message'] );

	if( strtolower($this->ipsclass->vars['gb_char_set']) != 'iso-8859-1' &&
		strtolower($this->ipsclass->vars['gb_char_set']) != 'utf-8' )
	{
		if ( array_key_exists( strtolower($this->ipsclass->vars['gb_char_set']), $this->decode_charsets ) )
		{
			$this->ipsclass->vars['gb_char_set'] = $this->decode_charsets[strtolower($this->ipsclass->vars['gb_char_set'])];
			$_POST['message'] = html_entity_decode( $_POST['message'], ENT_NOQUOTES, $this->ipsclass->vars['gb_char_set'] );
		}
	}

	$message = $this->ipsclass->parse_clean_value($_POST['message']);

	if(trim($message)=="")
	{
		$this->return_string('error3');		
	}				

	$post = intval($_REQUEST['p']);
	$anonym = intval($_REQUEST['anonym']);
	$type = $_REQUEST['type'];		
	$num=0;
	switch($type)
	{
		case 'minus':
		$num=-1;
		break;
		case 'add':
		$num=1;
		break;
	}
	if($num==0)
	{
		$this->return_string('error4');
	}
	if($this->ipsclass->vars['rep_bad'])
	{
		//Cannot change reputation with baaad reputation (rep < -20)
		$this->ipsclass->DB->simple_construct(array('select' => 'reputation',
													'from'   => 'members',
													'where'  => "id=".$this->ipsclass->member['id']
												));
		$this->ipsclass->DB->simple_exec();
		$row = $this->ipsclass->DB->fetch_row();
		if(intval($row['reputation']) < $this->ipsclass->vars['rep_bad'])
		{
			$this->return_string('error7');
		}
	}

	if($this->ipsclass->vars['rep_maxperday'])
	{
		//Cannot vote more than X times every 24 hours
		$ctime = time();
		$timezero = $ctime - (24*60*60);

		$this->ipsclass->DB->simple_construct(array('select' => 'id',
													'from'   => 'reputation',
													'where'  => 'from_user='.$this->ipsclass->member['id'].' AND created > '.$timezero
												));

		$this->ipsclass->DB->simple_exec();
		if($this->ipsclass->DB->get_num_rows() >= $this->ipsclass->vars['rep_maxperday'])
		{
			$this->return_string('error8');
		}
	}

	//Cannot vote more 1 member more then 1 time in a X days
	if ($this->ipsclass->vars['rep_time'])
	{
		$ctime = time();
		$timezero = $ctime - ($this->ipsclass->vars['rep_time']*24*3600);

		$this->ipsclass->DB->simple_construct(array('select' => 'id',
													'from'   => 'reputation',
													'where'  => 'from_user='.$this->ipsclass->member['id'].' AND to_user='.$mid.' AND created > '.$timezero
												));

		$this->ipsclass->DB->simple_exec();
		if($this->ipsclass->DB->get_num_rows())
		{
			$this->return_string('error9');
		}
	}

	if (!$this->ipsclass->vars['rep_onepost'] and $post)
	{
		//Cannot change reputation a few times for one and the same post
		$this->ipsclass->DB->simple_construct(array('select' => 'id',
													'from'   => 'reputation',
													'where'  => 'post = '.$post.' AND from_user = '.$this->ipsclass->member['id']
												));

		$this->ipsclass->DB->simple_exec();
		if ($this->ipsclass->DB->get_num_rows())
		{
			$this->return_string('error10');
		}
	}

	$message = strip_tags($message);

	$this->ipsclass->DB->simple_construct(array('select' => 'members_display_name,rep_notify,reputation,rep_off',
												'from'   => 'members',
												'where'  => "id=".$mid
											));
	$this->ipsclass->DB->simple_exec();

	$member = $this->ipsclass->DB->fetch_row();
	if($member['rep_off'])
	{
		$this->return_string('error13');
	}


	if($this->ipsclass->vars['rep_maxlen'] and (strlen($message) > $this->ipsclass->vars['rep_maxlen']))
	{
		$this->return_string('error11');
	}

	if($anonym and !$this->ipsclass->vars['rep_anonym'])
	{
		$this->return_string('error12');
	}

//Get the Topic ID
	if($post)
	{
		$this->ipsclass->DB->simple_construct(array('select' => 'topic_id',
													'from'   => 'posts',
													'where'  => 'pid = '.$post,
												));
		$this->ipsclass->DB->simple_exec();
		$row = $this->ipsclass->DB->fetch_row();
		$topic_id = $row['topic_id'];
	}
	else $topic_id = 0;

	$this->ipsclass->DB->do_insert('reputation',array('from_user' => $this->ipsclass->member['id'],
														'to_user'   => $mid,
														'post'      => $post,
														'topic'     => $topic_id,
														'message'   => $message,
														'rating'    => $num,
														//'anonym'    => $anonym,
														'created'   => time()));

	$this->ipsclass->DB->simple_update('members',
										"reputation=reputation+$num",
										'id='.$mid
										);
	$this->ipsclass->DB->simple_exec();

	$member['reputation'] = $member['reputation'] + $num;

	if ($member['rep_notify'])
	{
		$this->ipsclass->load_language('lang_reputation');

		require_once( ROOT_PATH."sources/handlers/han_parse_bbcode.php" );
		$parser                      = new parse_bbcode();
		$parser->ipsclass            = $this->ipsclass;

		$parser->bypass_badwords = intval($this->ipsclass->member['g_bypass_badwords']);
		$parser->parse_smilies   = 1;
		$parser->parse_nl2br     = 1;
		$parser->parse_html      = 0;
		$parser->parse_bbcode    = 1;

		$rep_from = $anonym ? $this->ipsclass->vars['rep_anon_title'] : "[url="http://{$this->ipsclass->base_url}showuser={$this->ipsclass->member%5b'id'"]}][b]{$this->ipsclass->member['members_display_name']}[/b][/url]";
		$change = ($num > 0) ? $this->ipsclass->lang['rep_plus'] : $this->ipsclass->lang['rep_minus'];

		$pmpost = sprintf($this->ipsclass->lang['rep_notify_text'], $member['members_display_name'], $rep_from, $change, $message);
		$pmpost = $parser->pre_db_parse( $pmpost );
		$pmpost = $parser->pre_display_parse( $pmpost );

		require_once( ROOT_PATH.'sources/lib/func_msg.php' );

		$this->lib = new func_msg();
		$this->lib->ipsclass =& $this->ipsclass;

		$this->lib->init();

		$this->lib->to_by_id    = $mid;
		$this->lib->from_member['id'] = $this->ipsclass->vars['rep_pmid'];
		$this->lib->msg_title   = $this->ipsclass->lang['rep_notify_title'];
		$this->lib->msg_post    = $pmpost;//sprintf($this->ipsclass->lang['rep_notify_text'], $member['members_display_name'], $rep_from, $change, $message);
		$this->lib->force_pm    = 0;

		$this->lib->send_pm();

		if ( $this->lib->error )
		{
			//do nothing iniipet
		}
	}		
	$this->return_string("<a href='{$this->ipsclass->base_url}act=rep&type=history&mid={$mid}' title='Просмотреть репутацию'>{$member['reputation']}</a>");	
}

	/*-------------------------------------------------------------------------*/
	// make string XML safe
	/*-------------------------------------------------------------------------*/

Ссылка на комментарий
Поделиться на других сайтах

Сегодня поставил на форум новый скин - и теперь при просмотре рейтинга юзеров по репутации выдает следующую ошибку:

Fatal error: Call to undefined method skin_reputation_11::top_start() in /domains/spore-evolution.ru/forum/sources/action_public/reputation.php on line 493

Попробовал вернуть скин на старый - там всё нормально. В чем проблема?

Ссылка на комментарий
Поделиться на других сайтах

Вроде бы все поставил, все сделано по инструкции, или что-то упустил, но никак не могу найти..Не отображаются "плюс" и "минус" для изменения репутации, зато появился "нолик", на который нажимаем и ничего не видим. Подскажет кто-нибудь в чем загвоздка?
Ссылка на комментарий
Поделиться на других сайтах

Вроде бы все поставил, все сделано по инструкции, или что-то упустил, но никак не могу найти..Не отображаются "плюс" и "минус" для изменения репутации, зато появился "нолик", на который нажимаем и ничего не видим. Подскажет кто-нибудь в чем загвоздка?

проверь

// cache/lang_cache/*/lang_topic.php

// cache/lang_cache/*/lang_profile.php

 

И ты скопировал 6 картинок .gif во все папки с изображениями ./style_images/*/ (например ./style_images/1/ ) ?

Ссылка на комментарий
Поделиться на других сайтах

Все-таки в этом сыграла роль невнимательности) Да забыл добавить туда строки. Все появилось, но нажимая на иконки повышения/понижения не работает, да и на цифру самой репутации жму, открывается белая страничка.
Ссылка на комментарий
Поделиться на других сайтах

После установки наблюдается проблема в недоступности кнопок "+" и "-".

 

Ответ на вопрос был дан:

Права в настройках раздать.

Но я никак не могу понять где это настраивается. В разделе настроек "Reputation System", где доступно 15 настроек, раздачи прав нету. Больше идей нет :D.

Ссылка на комментарий
Поделиться на других сайтах

После установки наблюдается проблема в недоступности кнопок "+" и "-".

 

Ответ на вопрос был дан:

Права в настройках раздать.

Но я никак не могу понять где это настраивается. В разделе настроек "Reputation System", где доступно 15 настроек, раздачи прав нету. Больше идей нет :D.

ну например, у тебя 10 сообщений, а в настройках

Минимальное количество сообщений-150 сообщений(например)

Минимальное количество сообщения для получения права изменять репутацию другим пользователям

Ссылка на комментарий
Поделиться на других сайтах

в мозилле не открывается для изменения репутации окно...((( хотя гугл хром и эксплорер срабатывают

в профиле пользователя...

Ссылка на комментарий
Поделиться на других сайтах

Блин... всё конечно круто, но есть пару вопросов:

Как делать пересчет репутации? (Если сообщение удалено-то + или - удаляется, ну как пересчет сообщений)

И второй вопрос : ведь реально сделать "ответ" на репутацию, только как?

help me ....

 

update...

короче, я сдела вот так (показано на рис)

Теперь мне надо,чтобы при нажатии "Ответить" у меня выскакивало окно для ответа...

post-74759-1225139610_thumb.jpg

Изменено пользователем p1oneer
Ссылка на комментарий
Поделиться на других сайтах

как нету??

В настройках - Реп систем - Минимальное количество сообщений -этого нет?

это есть, я поставил минимальное количество 1 но все ровто выдаёт -> Вам запрещено изменять репутацию, а просмотре темы не возможно нажать не + не -

 

Версия форума 2.3.3

Ссылка на комментарий
Поделиться на других сайтах

Вечер добрый... поставил репу на 2,3,5, но есть одна проблема.. При просмотре репутации пользователя, вместо причины повышения/понижения - выскакивают "???????????" это если причину вводить в русс раскладке, при англ раскладке - все в порядке... Собственно вопрос, где у меня руки скривили?)

P.S мб ранее тут о такой проблеме писалось.. но 30+ страниц читать не осилил, увы с временем напряги)

Ссылка на комментарий
Поделиться на других сайтах

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.