Идеи для расширения функциональности phpBB 2.0.x
		
	
				
	
			
		
	
		
		
		
			
				
								TjRadenot  
						phpBB 1.4.3 			
		Сообщения:  92Стаж:  19 лет 3 месяца Откуда:  Москва 
		
						
					
								
						
									Сообщение  TjRadenot  31.07.2006 22:09 
			
			
			
			
			
			Вот файл (reputation_mod_install_users_v100.php) - это из мода Users Reputations System v.1.0.0.:
Код: Выделить всё 
<?php
//copyright © 2004 IdleVoid & brustverein
//copyright © 2003 Volodymy (CLowN) Skoryk
//this update template copyright © 2006 Anton Granik
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'reputation_common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
if( !$userdata['session_logged_in'] )
{
   $header_location = ( @preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')) ) ? 'Refresh: 0; URL=' : 'Location: ';
   header($header_location . append_sid("login.$phpEx?redirect=reputation_mod_install_users_v100.$phpEx", true));
   exit;
}
if( $userdata['user_level'] != ADMIN )
{
   message_die(GENERAL_MESSAGE, 'You are not authorised to access this page');
}
$page_title = 'Setting the users reputations for Reputation Mod v.1.0.0 by Anton Granik';
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
echo '<table width="100%" cellspacing="1" cellpadding="2" border="0" class="forumline">';
echo '<tr><th>Setting the users reputations for Reputation Mod v.1.0.0 by Anton Granik</th></tr><tr><td><span class="genmed"><ul type="circle">';
$sql = "SELECT * FROM " . USERS_TABLE . "
		ORDER BY user_id";
if ( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, "Could not obtain reputation data for this user", '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($result))
{
	echo "<strong>" . $row['username'] . "</strong>";
	$dif = time() - $row['user_regdate'];
	$a = ($dif/60/60/24) / $rep_config['days_to_earn'];
	$b = $row['user_posts'] / $rep_config['posts_to_earn'];
	$c = $a + $b;
	echo " (" . round($c,4) . "), ";
	$sql = "UPDATE " . USERS_TABLE . "
			SET user_reputation = $c, user_rep_last_time = " . time() . "
			WHERE user_id = " . $row['user_id'];
	if ( !$db->sql_query($sql) )
	{
		message_die(GENERAL_ERROR, "Could not update reputation for the user", '', __LINE__, __FILE__, $sql);
	}
}
if ($errors == 0)
echo '<tr><th>Finish</th></tr><tr><td><span class="med">Installation is now finished. Please be sure to <strong>delete these files</strong> now: <ul><li>reputation_mod_db_install_v100.php,</li><li>reputation_mod_users_install_v100.php</li></ul></span></td></tr></table>';
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>
										
						 
		 
				
		
		 
	 
	TjRadenot 
 
	
		
		
		
			
				
								avm  
						Former team member 			
		Сообщения:  582Стаж:  20 лет 9 месяцев Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  avm  31.07.2006 22:12 
			
			
			
			
			
			и что?
			
			
									
						
										
						 
		 
				
		
		 
	 
	avm 
 
	
		
		
		
			
				
								AlexWB  
						phpBB 1.4.4 			
		Сообщения:  199Стаж:  20 лет 9 месяцев Откуда:  Kiev.UA 
		
						
					
						 
								
						
									Сообщение  AlexWB  31.07.2006 22:28 
			
			
			
			
			
			- Петка, прибор!?TjRadenot 
			
			
									
						
										
						 
		 
				
		
		 
	 
	AlexWB 
 
	
		
		
		
			
				
								TjRadenot  
						phpBB 1.4.3 			
		Сообщения:  92Стаж:  19 лет 3 месяца Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  TjRadenot  31.07.2006 22:39 
			
			
			
			
			
			Вот вроде они:
Код: Выделить всё 
$sql = "SELECT * FROM " . USERS_TABLE . " 
      ORDER BY user_id"; Код: Выделить всё 
  $sql = "UPDATE " . USERS_TABLE . " 
         SET user_reputation = $c, user_rep_last_time = " . time() . " 
         WHERE user_id = " . $row['user_id']; 
Вопрос: Как им придать такой вид чтобы можно было поместить /root/install/schemas/*.sql ?
										
						 
		 
				
		
		 
	 
	TjRadenot 
 
	
		
		
		
			
				
								avm  
						Former team member 			
		Сообщения:  582Стаж:  20 лет 9 месяцев Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  avm  01.08.2006 2:01 
			
			
			
			
			
			ну насмешили...
зачем вам тот SELECT в schemas ?  
вы хоть понимаете назначение этих sql файлов?
										
						 
		 
				
		
		 
	 
	avm 
 
	
		
		
		
			
				
																			
								Xpert  
						phpBB Guru 			
		Сообщения:  5484Стаж:  21 год 7 месяцев Поблагодарили:  2 раза  
		
						
					
						 
								
						
									Сообщение  Xpert  01.08.2006 13:08 
			
			
			
			
			
			Имхо все решаемо, надо только понять алгоритм расчета репутации. Подозреваю что на этапе установки мода на чистый форум она у всех будет 0...
			
			
									
						
							Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
			
						 
		 
				
		
		 
	 
	Xpert 
 
	
		
		
		
			
				
								TjRadenot  
						phpBB 1.4.3 			
		Сообщения:  92Стаж:  19 лет 3 месяца Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  TjRadenot  01.08.2006 19:27 
			
			
			
			
			
			avm писал(а): зачем вам тот SELECT в schemas ?
А куда тогда? Без запуска этого файла мод не работает к сожалению! Что можете посоветовать по этому поводу?
Добавлено спустя 11 минут 49 секунд: 
To 
Xpert 
Подозреваю что на этапе установки мода на чистый форум она у всех будет 0...
Да так и есть. Необходимо создать несколько сообщений на форуме (количество сообщений устанавливается в админ. разделе) и только после этого можно раздавать "репуты"  
И по-моему 
количество отданной "репутации"  вычитается из количества 
ВАШИХ сообщений . Вроде бы так....  
										
						 
		 
				
		
		 
	 
	TjRadenot 
 
	
		
		
		
			
				
								avm  
						Former team member 			
		Сообщения:  582Стаж:  20 лет 9 месяцев Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  avm  01.08.2006 20:00 
			
			
			
			
			
			TjRadenot писал(а): А куда тогда? Без запуска этого файла мод не работает к сожалению! Что можете посоветовать по этому поводу?
попробуйте так:
Код: Выделить всё 
UPDATE phpbb_users SET user_reputation = 0, user_rep_last_time = NOW()
										
						 
		 
				
		
		 
	 
	avm 
 
	
		
		
		
			
				
								TjRadenot  
						phpBB 1.4.3 			
		Сообщения:  92Стаж:  19 лет 3 месяца Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  TjRadenot  01.08.2006 23:13 
			
			
			
			
			
			avm писал(а): попробуйте так:
Код: Выделить всё 
UPDATE phpbb_users SET user_reputation = 0, user_rep_last_time = NOW()
Спасибо! все получилось...  
Добавлено спустя 1 час 37 минут 34 секунды: И по-моему количество отданной "репутации" вычитается из количества ВАШИХ сообщений.
Я ошибся  
 Система "репутации" не влияет на кол-во сообщений!  
										
						 
		 
				
		
		 
	 
	TjRadenot 
 
	
		
		
		
			
				
																			
								Xpert  
						phpBB Guru 			
		Сообщения:  5484Стаж:  21 год 7 месяцев Поблагодарили:  2 раза  
		
						
					
						 
								
						
									Сообщение  Xpert  02.08.2006 9:10 
			
			
			
			
			
			avm 
			
			
									
						
							Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
			
						 
		 
				
		
		 
	 
	Xpert 
 
	
		
		
		
			
				
								avm  
						Former team member 			
		Сообщения:  582Стаж:  20 лет 9 месяцев Откуда:  Москва 
		
						
					
						 
								
						
									Сообщение  avm  02.08.2006 18:53 
			
			
			
			
			
			Xpert , не помню уже... 
			
			
									
						
										
						 
		 
				
		
		 
	 
	avm