[MODDB] Advanced Posts Merging
- 
				Xpert
- phpBB Guru 
- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
- 
				Siava  
- Поддержка 
- Сообщения: 5473
- Стаж: 20 лет 9 месяцев
- Откуда: Питер
- Благодарил (а): 182 раза
- Поблагодарили: 759 раз
Ptenez
В некоторых разделах??? Ну это, по моему, извращение
			
			
									
						В некоторых разделах??? Ну это, по моему, извращение

Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
			
						Ты очистил кеш? © Sheer
https://siava.ru (phpbb
- 
				Ptenez  
- phpBB 1.4.3
- Сообщения: 75
- Стаж: 20 лет 9 месяцев
Есть раздел, там выкладывает фотки один юзарь. И когда он выкладывает 3-ий 4-ый 5-ый раз появляется вообщения вида 
			
			
									
						xxxuser писал(а)::grin:
Добавлено спустя 27 секунд:
:grin:
Добавлено спустя 22 секунды:
Добавлено спустя 39 секунд:
:grin::grin:
Добавлено спустя 27 секунд:
:grin:
Добавлено спустя 8 минут 36 секунд:
:grin:
Добавлено спустя 2 часа 45 минут 57 секунд:
:-D
Добавлено спустя 1 минуту 5 секунд:
:grin:
- 
				Xpert
- phpBB Guru 
- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
Код: Выделить всё
#
#-----[ OPEN ]------------------------------------------
#
functions_post.php
#
#-----[ FIND ]------------------------------------------
#
	// Preparing separator
	$merged_after = ($current_time - $last_post_time);
	$merged_sec = $merged_after % 60;
	$merged_min = ($merged_after/60) % 60;
	$merged_hours = ($merged_after/3600) % 24 ;
	$merged_days = ($merged_after/86400) % 31;
	$s_st = ($merged_sec) ? seconds_st($merged_sec) : '';
	$m_st = ($merged_min) ? minutes_st($merged_min) : '';
	$h_st = ($merged_hours) ? hours_st($merged_hours) : '';
	$d_st = ($merged_days) ? days_st($merged_days) : '';
	$separator = sprintf($lang['Merge_separator'],$d_st,$h_st,$m_st,$s_st);
	$separator .= ( !empty($subject) && ($subject != $last_subject) ) ? sprintf($lang['Merge_post_subject'], $subject) : '';
	$separator = str_replace("'", "''", $separator);
#
#-----[ REPLACE WITH ]------------------------------------------
#
	if ( $forum_id != 5)
	{
		// Preparing separator
		$merged_after = ($current_time - $last_post_time);
		$merged_sec = $merged_after % 60;
		$merged_min = ($merged_after/60) % 60;
		$merged_hours = ($merged_after/3600) % 24 ;
		$merged_days = ($merged_after/86400) % 31;
		$s_st = ($merged_sec) ? seconds_st($merged_sec) : '';
		$m_st = ($merged_min) ? minutes_st($merged_min) : '';
		$h_st = ($merged_hours) ? hours_st($merged_hours) : '';
		$d_st = ($merged_days) ? days_st($merged_days) : '';
		$separator = sprintf($lang['Merge_separator'],$d_st,$h_st,$m_st,$s_st);
		$separator .= ( !empty($subject) && ($subject != $last_subject) ) ? sprintf($lang['Merge_post_subject'], $subject) : '';
		$separator = str_replace("'", "''", $separator);
	}
	else
	{
		$separator = '';
	}Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
			
						Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
- 
				Олег
- phpBB 1.4.2
- Сообщения: 62
- Стаж: 20 лет 10 месяцев
- Откуда: Москва
Я попробовал сделать файл update`a базы, чтоб не вносить изменения в базу в ручном режиме.
Кто что думает?
А вот то, что было в readme.txt
Наверное, я как всегда ошибся..
			
			
									
						Кто что думает?
Код: Выделить всё
<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = './'; 
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 
$userdata = session_pagestart($user_ip, PAGE_FAQ); 
init_userprefs($userdata); 
$sql = "INSERT INTO" . CONFIG_TABLE . " (config_name, config_value) VALUES('time_to_merge', 0); 
$result = $db->sql_query ($sql) or message_die(GENERAL_ERROR, 'failed1.'); 
$sql = "INSERT INTO" . CONFIG_TABLE . " (config_name, config_value) VALUES('merge_flood_interval', 0); 
$result = $db->sql_query ($sql) or message_die(GENERAL_ERROR, 'failed2.'); 
$sql = "ALTER TABLE" . CONFIG_TABLE . " ADD post_created INT(11) DEFAULT '0' NOT NULL AFTER post_time; 
$result = $db->sql_query ($sql) or message_die(GENERAL_ERROR, 'failed3.'); 
$sql = "ALTER TABLE" . CONFIG_TABLE . " UPDATE phpbb_posts SET post_created = post_time;
$result = $db->sql_query ($sql) or message_die(GENERAL_ERROR, 'failed4.'); 
message_die(GENERAL_MESSAGE, 'Complited.'); 
?> 
Код: Выделить всё
#-----[ SQL ]------------------------------------------ 
INSERT INTO phpbb_config (config_name, config_value) VALUES('time_to_merge', 0); 
INSERT INTO phpbb_config (config_name, config_value) VALUES('merge_flood_interval', 0); 
ALTER TABLE phpbb_posts ADD post_created INT(11) DEFAULT '0' NOT NULL AFTER post_time; 
UPDATE phpbb_posts SET post_created = phpbb_posts.post_time;
- 
				Xpert
- phpBB Guru 
- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
Думаю, что вы зря потратили время. Скрипт для обновления базы есть в дистрибутиве мода. Называется advanced_posts_merging_db_ins.php. Закачать в корневой каталог форума, запустить через браузер и удалить.
			
			
									
						Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
			
						Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
- 
				Олег
- phpBB 1.4.2
- Сообщения: 62
- Стаж: 20 лет 10 месяцев
- Откуда: Москва
- 
				Ptenez  
- phpBB 1.4.3
- Сообщения: 75
- Стаж: 20 лет 9 месяцев
- 
				Xpert
- phpBB Guru 
- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза
- 
				Ptenez  
- phpBB 1.4.3
- Сообщения: 75
- Стаж: 20 лет 9 месяцев
- 
				DerSturmer  
- phpBB 1.4.1
- Сообщения: 46
- Стаж: 20 лет 10 месяцев
- Откуда: Из Маминького животика
- 
				Slimmy  
- phpBB 1.4.0
- Сообщения: 34
- Стаж: 20 лет 11 месяцев
- Откуда: Солнечный Баку
- 
				Xpert
- phpBB Guru 
- Сообщения: 5484
- Стаж: 21 год 7 месяцев
- Поблагодарили: 2 раза


