Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Advanced Posts Merging

Все моды, созданные нашим сообществом для phpBB 2.0.x, анонсированы тут.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 17 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

Код: Выделить всё

#
#-----[ OPEN ]------------------------------------------
#
language/lang_russian/lang_merge.php
#
#-----[ FIND ]------------------------------------------
#
?>
#
#-----[ BEFORE, ADD ]------------------------------------------
#
function month_st($nm)
{
	switch ( $nm )
	{
		case 1:
			$st = 'месяц';
		break;

		case 2:
		case 3:
		case 4:
			$st = 'месяца';
		break;

		default:
			$st = 'месяцев';
		break;
	}
	return ' ' . $nm . ' ' . $st;
}
#
#-----[ OPEN ]------------------------------------------
#
includes/functions_post.php
#
#-----[ FIND ]------------------------------------------
#
  $merged_days = ($merged_after/86400) % 31;
#
#-----[ AFTER, ADD ]------------------------------------------
#
  $merged_month = ($merged_after/2678400) % 12;
#
#-----[ FIND ]------------------------------------------
#
  $d_st = ($merged_days) ? days_st($merged_days) : '';
#
#-----[ AFTER, ADD ]------------------------------------------
#
  $mn_st = ($merged_days) ? month_st($merged_month) : '';
#
#-----[ FIND ]------------------------------------------
#
  $separator = sprintf($lang['Merge_separator'],$d_st,$h_st,$m_st,$s_st);
#
#-----[ IN-LINE FIND ]------------------------------------------
#
['Merge_separator'],
#
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
#
$mn_st,
#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
Добавлено спустя 1 минуту 25 секунд:
Палыч писал(а):Сорри, еще кое-что добавить надо... щас...
уже добавил :wink:
Последний раз редактировалось Палыч 14.10.2006 15:58, всего редактировалось 1 раз.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Extremator
phpBB 1.4.3
Сообщения: 81
Стаж: 18 лет 3 месяца

Сообщение Extremator »

Палыч спасибо большое, работает.
Хотя мог и сам додуматься как сделать, тормоз что поделаешь или думать лень было. :D
Аватара пользователя
incubus
phpBB 2.0.1
Сообщения: 255
Стаж: 17 лет 6 месяцев

Сообщение incubus »

Здраствуйте! Мне очень нужна ваша помощь...
У меня сайт недавно..Решил начать установку модов... Долго читал под гостем как это делать и вот решился. Первый мод прошол успешно(мод быстрого ответа), а вот с Advanced Posts Merging появились проблемы.
Расскажу по порядку:
Я, как и положено, сделал запрос через генератор, все получилось. Дальше прописал во всех 7 файлах мод и добавил lang_merge в language/lang_english/lang_merge.php. В общем все сделал... Зашел в админку, чтобы изменить время прописки постов - там была ошибка(точно сказать не могу, т.к. форум сейчас не пашет). Писалось что-то про линию 30 в файле admin_board и еще написан в скобках путь файла, который я вставил(lang_merge), только вместо lang_english было написано lang_russian. И я решил вставить этот файл (lang_merge) в папку lang_russian на своем сервере. После зашел в админку, и увидел что появились строчки для изменения времени на англ. языке. Изменил, протестировал - все работало, только писалось "добавлено спустя..." на, опять же, англ. языке. После я сделал еще несколько вариантов по замене фалов(русский в англ., англ. в русский и т.д.). И после этого все поломалось.
Решил вернуть все на место - поменял обратно файлы, удалил из папки lang_english и lang_russian файлы lang_merge в общем вернул все на место. Зашел на форум, а он отобразился в кодировке....и при следующей перезагрузки вообще перестал работать, пишет - phpBB : Critical Error Could not locate valid language pack

Очень прошу, помогите разобраться в ситуации... Что мне теперь нужно сделать, чтобы форум заработал?

Написал все подробно, чтобы легче было понять...
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 17 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

incubus писал(а):Что мне теперь нужно сделать, чтобы форум заработал?
Успокоиться и включить мозг. Поскольку накосячили вы там, судя по всему, изрядно, то оптимально (и быстро) - залить поверх форума все файлы (кроме config.php) инсталяционной версии (обратите внимание на то, какой номер версии у вас).
Потом начать все сначала по установке МОДов (не выполняя инструкции SQL, так как изменения в базу у вас уже сделаны).
И запомните, Lang_***, так же как и стилей может быть много, модифицировать нужно все, которые вы используете.

Добавлено спустя 2 минуты 26 секунд:
Палыч писал(а):залить поверх форума все файлы (кроме config.php) инсталяционной версии (обратите внимание на то, какой номер версии у вас).
Попробуйте, для начала с папок lang_***, возможно (скорее всего) вы какой-то файл в них грохнули.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
incubus
phpBB 2.0.1
Сообщения: 255
Стаж: 17 лет 6 месяцев

Сообщение incubus »

Разобрался, все работает. По видимому, я по неосторожности, закинул русский файл мода (lang_merge) в англ. папку... Теперь просто скачал русификатор к форуму и поменял его на старый. После установил этот мод, только теперь залил русский (lang_merge) в русскую папку на сервере, как и положено. Мод и форум работают.

Спасибо Вам за внимание!

З.Ы. Очень нравится ваш форум, я начинающий админ, буду и дальше учиться у местных спецов!
Аватара пользователя
Гога
phpBB 2.0.0
Сообщения: 220
Стаж: 18 лет 11 месяцев
Откуда: Архангельск

Сообщение Гога »

Сообщение о склеивании ("Добавлено спустя...") можно сделать более "гуманным". То есть, если склеивание произошло спустя 5 дней, то знать о часах, и тем более о минутах и секундах, не обязательно.

Файл includes/functions_post.php, функция submit_merged_post()

Заменить

Код: Выделить всё

       $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) : '';
На

Код: Выделить всё

	$d_st = ($merged_days) ? days_st($merged_days) : '';
	if ($merged_after < 172800)
	{
		$h_st = ($merged_hours) ? hours_st($merged_hours) : '';
		if ($merged_after < 7200)
		{
			$m_st = ($merged_min) ? minutes_st($merged_min) : '';
			if ($merged_after < 120)
			{
				$s_st = ($merged_sec) ? seconds_st($merged_sec) : '';
			}
		}
	}
Гугл рулит. Я люблю ЛОР.
Интересно, они пришли с миром или им таки нужен наш моск?
Знания принадлежат всему человечеству.
Аватара пользователя
oktaw
phpBB 1.4.4
Сообщения: 145
Стаж: 17 лет 8 месяцев
Откуда: Italy

Сообщение oktaw »

У меня вопрос в инструкции есть такой момент

Код: Выделить всё

# 
#-----[ OPEN ]------------------------------------------ 
# 
includes/functions_post.php
#
#-----[ IN-LINE FIND ]------------------------------------------
# 
, $current_time

# 
#-----[ IN-LINE AFTER, ADD ]------------------------------------------
# 
, $current_time

т.е. должно быть два идущих под ряд , $current_time ?

Добавлено спустя 2 часа 11 минут 14 секунд:
zeeman писал(а):Установил мод
Выдаёт вот такую фичу
Could not obtain topic information

DEBUG MODE

SQL Error : 1109 Unknown table 'p2' in order clause

SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_time, p.post_username FROM phpbb_topics t, phpbb_users u, phpbb_posts p, phpbb_users u2 WHERE t.forum_id = 1 AND t.topic_poster = u.user_id AND p.post_id = t.topic_last_post_id AND p.poster_id = u2.user_id AND t.topic_type = 2 ORDER BY p2.post_time DESC

Line : 297
File : viewforum.php

Добавлено спустя 10 минут 45 секунд:

Чуваки прошу прошения мод работает так ошибся кое где.
А можно сделать так, чтобы он слеивал сообщения до установки мода.

Мне тож выдаёт такую ошибку :(

Код: Выделить всё

SQL Error : 1109 Unknown table 'p2' in where clause

SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_time, p.post_username FROM phpbb_topics t, phpbb_users u, phpbb_posts p, phpbb_users u2 WHERE t.forum_id = 1 AND t.topic_poster = u.user_id AND p.post_id = t.topic_first_post_id AND p2.post_id = t.topic_last_post_id AND u2.user_id = p2.poster_id AND t.topic_type <> 2 ORDER BY t.topic_type DESC, t.topic_last_post_id DESC LIMIT 0, 30

Line : 301
File : viewforum.php

Ставил и p2.post_time DESC и просто p2.post_time но всё не помогает ... непонятная проблема ..пжлст помогите а ?
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Поиск по теме помогает...
http://www.phpbbguru.net/community/view ... 237#100237

Добавлено спустя 1 минуту 42 секунды:

И по второму - код где-то не там заменили. Как вы видите, в этом запросе вообще нет таблицы p2.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
oktaw
phpBB 1.4.4
Сообщения: 145
Стаж: 17 лет 8 месяцев
Откуда: Italy

Сообщение oktaw »

Xpert писал(а):Поиск по теме помогает...
http://www.phpbbguru.net/community/view ... 237#100237

Добавлено спустя 1 минуту 42 секунды:

И по второму - код где-то не там заменили. Как вы видите, в этом запросе вообще нет таблицы p2.
Сделал , всё работает на ура , большое спасибо !

Хотя я не понял что я сделал :) ..уже наверное раз 10 пытался этот мод поставить и никак ...а тут случайно получилось :)
Аватара пользователя
Marinego
phpBB 1.2.1
Сообщения: 23
Стаж: 17 лет 9 месяцев
Откуда: Donetsk

Сообщение Marinego »

Я установила этот мод на локальном сервере, но он почему-то не работатет.
Не ругается об ошибке, а просто не работает. Серьезно.....
Почему? Скажите, пожалуйста.
Аватара пользователя
Палыч
Former team member
Сообщения: 9683
Стаж: 17 лет 11 месяцев
Откуда: Питер
Благодарил (а): 1 раз
Поблагодарили: 27 раз

Сообщение Палыч »

Marinego
Может в админке интервалы не выставили? Если поле пустое - то функция отключена.
Не все то WINDOWS, что висит... phpBB только учусь.
ICQ, email, ЛС - только для личных сообщений. Вопросы по phpbb только на форумах. По найму не работаю.
Аватара пользователя
Marinego
phpBB 1.2.1
Сообщения: 23
Стаж: 17 лет 9 месяцев
Откуда: Donetsk

Сообщение Marinego »

Ага, спасибо.
Я просто не думала, что это в конфигурации :)
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 20 лет 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

Marinego
А не надо было вообще думать, за вас давно подумал автор, написав руководство по установке, в котором есть следующие строки:
## Put "advanced_posts_merging_db_ins.php" into your phpBB root directory
## and run it after mod installation, then delete it. Don't forget
## to configure mod after installation, feature is disabled by default.
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
Marinego
phpBB 1.2.1
Сообщения: 23
Стаж: 17 лет 9 месяцев
Откуда: Donetsk

Сообщение Marinego »

Ну да, :) я даже внимание на это не обратила.
Спасибо :wink:
svnet
phpBB 1.0.0
Сообщения: 2
Стаж: 17 лет 5 месяцев

Сообщение svnet »

почитал... нашел, что народ уже с таким сталкивался, но никто ничего толком и не сказал как делать...

Код: Выделить всё

Error in posting

DEBUG MODE

SQL Error : 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE forum_id = 28' at line 1

UPDATE phpbb_forums SET forum_posts = forum_posts + 1, forum_last_post_id = WHERE forum_id = 28

Line : 552
File : /home/s/severodv/public_html/forum/includes/functions_post.php
лог экшн мод не ставил... где дальше копать - без понятия.
мессаги склеивает нормально, но при постинге вылезает эта ошибка.

Добавлено спустя 46 минут 34 секунды:

перечитал ещё раз всю тему....

нашёл способ один
if ($post_id=="")
{$post_id="0";}
вроде с ним глюка не стало, посмотри, что будет дальше...

Добавлено спустя 1 минуту 44 секунды:

хотя нет...не нормально :(

теперь в столбце где пишется послединй ответ пишет "Нет сообщений"
хотя на самом деле их там туева куча...

Добавлено спустя 24 минуты 13 секунд:

Усе... трабла решена тупым добавлением запроса
else if ($mode != 'poll_delete')
{
$sql = "SELECT MAX(post_id) AS forum_last_post_id FROM " . POSTS_TABLE . " WHERE forum_id = $forum_id";
$result = $db->sql_query($sql);
$post_id=mysql_result($result,0);

$forum_update_sql .= ", forum_last_post_id = $post_id" . (($mode == 'newtopic') ? ", forum_topics = forum_topics $sign" : "");
$topic_update_sql = "topic_last_post_id = $post_id" . (($mode == 'reply') ? ", topic_replies = topic_replies $sign" : ", topic_first_post_id = $post_id");
}

Вернуться в «Анонсы и поддержка модов для phpBB 2.0.x»