active topics list on index (like glance)

Здесь авторы могут постить бета-версии своих модификаций для phpBB 3.0.x. Внимание! Не устанавливайте бета-версии модов на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
dumay
phpBB 1.2.1
Сообщения: 21
Стаж: 12 лет 9 месяцев
Благодарил (а): 11 раз

Re: active topics list on index (like glance)

Сообщение dumay »

Мод поставил. Но было бы интереснее, если выглядело вот, как на картинке.
Может уже есть такое решение. Как сделать?

Изображение
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: active topics list on index (like glance)

Сообщение nissin »

Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 16 лет 10 месяцев
Благодарил (а): 42 раза
Поблагодарили: 506 раз

Re: active topics list on index (like glance)

Сообщение Pazh »

Belui писал(а):Подскажите, а как сделать, что бы количество выводимых объявлений было фиксированно (например 5 и точка), а вот ответы в темах так же и остались регулируемые через админку (например 10 будут выводится, но 5 будет объявлений)???
в файле includes/recent_topics.php в строках $result = $db->sql_query_limit($sql, $config['recent_max_topics']); параметр $config['recent_max_topics'] ограничивает количество выводимых тем. Ищешь блок с указанной строкой (их там много), который отвечает за вывод именно нужного тебе типа тем и заменяешь параметр на нужное тебе число
Ищи по ключевику POST_ANNOUNCE
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
dumay
phpBB 1.2.1
Сообщения: 21
Стаж: 12 лет 9 месяцев
Благодарил (а): 11 раз

Re: active topics list on index (like glance)

Сообщение dumay »

Все поставил, работает. Добавил NV Recent Topics, работает. Но.
Когда поставил NV Recent Topics, темы выводит, но вид получился вот такой,
как это поправить, чтобы было одним цветом, темнозеленым. Весь форум выглядит одинаково, а вот где выводится последние темы как на картинке получается.
001.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: active topics list on index (like glance)

Сообщение Татьяна5 »

dumay, на картинке кода не видно, дайте ссылку на форум с этим модом
Аватара пользователя
dumay
phpBB 1.2.1
Сообщения: 21
Стаж: 12 лет 9 месяцев
Благодарил (а): 11 раз

Re: active topics list on index (like glance)

Сообщение dumay »

форума пока в онлайн нет
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 16 лет 4 месяца
Откуда: Сергиев Посад
Благодарил (а): 373 раза
Поблагодарили: 727 раз

Re: active topics list on index (like glance)

Сообщение владимир1983 »

dumay
Смотри класс .forumbg что у тебя в background-color и background-image.
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Аватара пользователя
dumay
phpBB 1.2.1
Сообщения: 21
Стаж: 12 лет 9 месяцев
Благодарил (а): 11 раз

Re: active topics list on index (like glance)

Сообщение dumay »

так я там не менял ни чего, откуда он берет это. с active topics все нормально выглядит. буду пробовать ковырять. А может такое денвер творит.
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: active topics list on index (like glance)

Сообщение Shredder »

А что это за версия 1.0.4, кто её сделал и что там собственно нового? Кроме MODX.
В истории изменений нашёл только это:
2013-02-28 - Version1.0.4
New MODX instuction and fix small bag
Однако, какую там "небольшую сумку" исправили, мой разум понять затрудняется.
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: active topics list on index (like glance)

Сообщение HAMMER663 »

Кто-нибудь пробовал сделать так, чтобы в одной колонке были непрочитанные сообщения из определенных форумов, а в другой - из всех остальных форумов?

Проблему у меня вызывает сам sql запрос.
Мудрил-мудрил я что-то)))
Все правки вносил в файл recent_topics.php

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

$sql_where_sp = '';
$sql_where_no_sp = '';
if ($config['recent_include_sp'])
{
	$include_forums_sp = explode(',', $config['recent_include_sp']);
	foreach ($include_forums_sp as $i_sp => $id_sp)
	{
		if ($id_sp > 0)
		{
			$sql_where_sp .= ' OR t.forum_id = ' . trim($id_sp);
			$sql_where_no_sp .= ' AND t.forum_id <> ' . trim($id_sp);
		}
	}
}

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

$forum_ary = array_unique(array_keys($auth->acl_getf('!f_read', true)));

if (sizeof($forum_ary))
{
	$sql_where .= ' AND ' . $db->sql_in_set('t.forum_id', $forum_ary, true);
	$sql_where_sp .= ' AND ' . $db->sql_in_set('t.forum_id', $forum_ary);
	$sql_where_no_sp .= ' AND ' . $db->sql_in_set('t.forum_id', $forum_ary, true);
}

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

// Recent topic (only show normal topic) for sp
//
$sql = 'SELECT ' . $sql_select . '
	FROM ' . $sql_from . '
	WHERE t.topic_status <> ' . ITEM_MOVED . '
		AND t.topic_approved = 1
		AND ( t.topic_type = ' . POST_NORMAL . ' OR t.topic_type = ' . POST_STICKY . ' )
		AND t.topic_moved_id = 0
		' . $sql_where_sp . '
	ORDER BY t.topic_last_post_time DESC';

$result = $db->sql_query_limit($sql, $config['recent_max_topics']);

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

// Recent topic (only show normal topic) for no_sp
//
$sql = 'SELECT ' . $sql_select . '
	FROM ' . $sql_from . '
	WHERE t.topic_status <> ' . ITEM_MOVED . '
		AND t.topic_approved = 1
		AND ( t.topic_type = ' . POST_NORMAL . ' OR t.topic_type = ' . POST_STICKY . ' )
		AND t.topic_moved_id = 0
		' . $sql_where_no_sp . '
	ORDER BY t.topic_last_post_time DESC';

$result = $db->sql_query_limit($sql, $config['recent_max_topics']);
Мне кажется, что где-то тут я не правильно делаю запрос

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

			$sql_where_sp .= ' OR t.forum_id = ' . trim($id_sp);
			$sql_where_no_sp .= ' AND t.forum_id <> ' . trim($id_sp);
и тут

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

	$sql_where_sp .= ' AND ' . $db->sql_in_set('t.forum_id', $forum_ary);
	$sql_where_no_sp .= ' AND ' . $db->sql_in_set('t.forum_id', $forum_ary, true);
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: active topics list on index (like glance)

Сообщение Татьяна5 »

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

$sql_where_sp .= ' OR t.forum_id = ' . trim($id_sp);
Выходит

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

OR t.forum_id = 1 OR t.forum_id = 2 OR t.forum_id = 3
, а должно быть

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

AND (t.forum_id = 1 OR t.forum_id = 2 OR t.forum_id = 3)
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: active topics list on index (like glance)

Сообщение HAMMER663 »

Татьяна5 да. точно. а как тогда сделать цикл, чтоб не было OR вначале?
OR t.forum_id = 1 OR t.forum_id = 2 OR t.forum_id = 3
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: active topics list on index (like glance)

Сообщение Татьяна5 »

Как вариант - собрать $id_sp в массив и через $db->sql_in_set
Аватара пользователя
HAMMER663
Former team member
Сообщения: 2032
Стаж: 16 лет 5 месяцев
Откуда: Зеленоград
Благодарил (а): 77 раз
Поблагодарили: 249 раз

Re: active topics list on index (like glance)

Сообщение HAMMER663 »

Татьяна5 а как это сделать?
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 13159
Стаж: 15 лет 1 месяц
Благодарил (а): 236 раз
Поблагодарили: 3750 раз

Re: active topics list on index (like glance)

Сообщение Татьяна5 »

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

$sql_where_sp = '';
$sql_where_no_sp = '';
if ($config['recent_include_sp'])
{
	$forums_sp = array();
	
	$include_forums_sp = explode(',', $config['recent_include_sp']);
	foreach ($include_forums_sp as $i_sp => $id_sp)
	{
		if ($id_sp > 0)
		{
			$forums_sp[] = trim($id_sp);
		}
	}
	
	if(sizeof($forums_sp))
	{
		$sql_where_sp .= ' AND ' . $db->sql_in_set('t.forum_id', $forums_sp);
		$sql_where_no_sp .= ' AND ' . !$db->sql_in_set('t.forum_id', $forums_sp);
	}
	
	unset($include_forums_sp, $forums_sp);
}

Вернуться в «Бета-версии модов для phpBB 3.0.x»