На форуме имеется блок объявлений, то есть тем которые таковыми являются. И он закреплен перед темами. Отсюда вопрос, как его можно сделать сворачиваемым? Или еще лучше сделать объявление сворачиваемым этим расширением https://www.phpbbguru.net/community/vie ... hp?t=42461
Комментарии: 16

southklad 01 ноя 2017, 22:23 Сообщение

Тоже не получится?
  • 0
Изображение

romaamor 03 ноя 2017, 06:40 Сообщение

igorbond писал(а): Тоже не получится?
У меня схожая проблема. :) Пока решения нету. Или не хотят решать. В падло разробам. :D
И тема аж за 05.11.2014 . Прочёл все страницы - решения не нашёл. Форумы сворачивает, последние темы - нет
  • 0

romaamor 03 ноя 2017, 06:55 Сообщение

igorbond писал(а): то есть тем которые таковыми являются. И он закреплен перед темами.
Последние темы ?
  • 0

southklad 03 ноя 2017, 15:43 Сообщение

romaamor, Причем тут последние темы? Их можно заставить сворачиваться на старых версиях расширения. А вот я писал об объявлениях которые в форумах. Это темы которые выделены как "Объявления"
  • 0
Изображение

CabinetAdmin 03 ноя 2017, 16:38 Сообщение

Какое расширение установлено для сворачивания?

зы. Вроде помню был как-то разговор про сворачивания каких-то блоков, но я уже не помню что... где...
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

southklad 03 ноя 2017, 16:52 Сообщение

CabinetAdmin писал(а): Какое расширение установлено для сворачивания?

зы. Вроде помню был как-то разговор про сворачивания каких-то блоков, но я уже не помню что... где...
Да, сворачивали Похожие темы расширение, по сворачиванию у меня стоит Collapse Categories Light
  • 0
Изображение

romaamor 05 ноя 2017, 01:11 Сообщение

Attached PNG Image Convert
  • 0

romaamor 05 ноя 2017, 01:12 Сообщение

Сведения об авторе

Имя:
Vlad
Домашняя страница:
http://www.phpbbguru.net
Роль:
Developer
  • 0

romaamor 05 ноя 2017, 01:14 Сообщение

Гуру - прикольно. :lol:
  • 0

CabinetAdmin 05 ноя 2017, 08:55 Сообщение

igorbond писал(а): Тоже не получится?
Сейчас поигрался со скриптом. Итог такой:
  1. если на форуме свёрнут 1ый в списке форум:
    • при попадании в любой форум с "объявлениями" и с подфорумом - последний будет свёрнут;
    • при попадании в любой форум где нет подфорумов, но есть одни "объявления" - они будут свёрнуты;
  2. на форуме свёрнуто пара первых форумов:
    • при попадании в любой форум с "объявлениями" и с подфорумом - будут свёрнуты оба;
Если такой вариант устроит - могу дать код.
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

southklad 05 ноя 2017, 10:15 Сообщение

CabinetAdmin, Привет честно ничего не понял как это работает. Давайте опробуем скрипт и тогда поймем
  • 0
Изображение

CabinetAdmin 05 ноя 2017, 15:51 Сообщение

Файл overall_footer_after:

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

<!-- IF S_INDEX or S_VIEWFORUM or .similar -->

	<!-- INCLUDEJS http://code.jquery.com/ui/1.10.3/jquery-ui.js -->


<script type="text/javascript">
// <![CDATA[


	var sh_i = -1;		// позиция в массиве
	var showhidden_triger = [];	// массив состояний категорий


	// создаем кнопки, загружам и устанавливаем состояния категорий
	$(".topiclist.forums, .bstyle-similar .bstyle-similar-list, .announcement .topiclist.topics").each(function () {
	    $(this).before(function () {
 		if ($(this).hasClass('forums') || $(this).hasClass('bstyle-similar-list') || $(this).hasClass('topics')) {

			sh_i = sh_i + 1;
			var cat_id = 'cat_' + sh_i;	// формируем имя категории

			showhidden_triger[sh_i] = localStorage.getItem(cat_id); // загружаем состояние из локалхоста
			if (showhidden_triger[sh_i] == null) { showhidden_triger[sh_i] = 'true' };
                	if (showhidden_triger[sh_i] == 'false') {
				return '<div class="trigger inactive" cat="' + cat_id +'"></div>';
				} else {
				return '<div class="trigger active" cat="' + cat_id +'"></div>';
			}
		}
	    }).wrap('<div class="collapsethis" aria-hidden="false" />');
	});

	sh_i = 0;	// обнуляем позиции массива


	// создаем атрибуты, показываем/скрываем категории
	$(".collapsethis").each(function () {
		if (showhidden_triger[sh_i] == 'false') {
			$(this).attr('aria-hidden', 'true').hide();
			$(this).parents('div.forabg, .bstyle-similar, div.forumbg').css('opacity', '0.3');
		}
		sh_i = sh_i + 1;
	});


	// отрабатываем клики показать/скрыть категорию
	$('.trigger').click(function () {
		var showhidden_triger_this = $(this).next().attr('aria-hidden');
		if (showhidden_triger_this == "false") {
			$(this).next().attr('aria-hidden', 'true').slideUp(500, 'easeInQuart', function() {
				$(this).parents('div.forabg, .bstyle-similar, div.forumbg').animate({
					opacity: '0.3'
					}, 1000)
				});
			$(this).removeClass('active').addClass('inactive');
		} else {
            		$(this).parents('div.forabg, .bstyle-similar, div.forumbg').animate({
               			 	opacity: '1.0'
            			}, 50, function() {
                			$('.trigger', this).next().attr('aria-hidden', 'false').slideDown(250, 'easeOutQuad')
            		});
 
			$(this).removeClass('inactive').addClass('active');
        	}
		localStorage.setItem($(this).attr('cat'), showhidden_triger_this);	// сохраняем
	});


	$('div.forabg, .bstyle-similar, div.forumbg').on('mouseenter mouseleave', '.trigger.inactive', function(event) {
		var time = 200, opacity = event.type == 'mouseenter' ?  '1.0' : (time = 0,'0.3');
		$(event.delegateTarget).stop(true).delay(time).animate({ opacity: opacity }, 300)
	})


// ]]>
</script>

<!-- ENDIF -->
файл overall_header_head_append:

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

<!-- IF S_INDEX or S_VIEWFORUM or .similar -->
	<!-- INCLUDECSS @alecto_CollapseCategoriesLight/collapse.css -->
<!-- ENDIF -->
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

southklad 07 ноя 2017, 22:27 Сообщение

Спасибо, попробую завтра и отпишу
  • 0
Изображение

southklad 09 ноя 2017, 20:02 Сообщение

Проверил. работает, только сворачивает не только объявления, но и если есть подфоруму их тоже можно свернуть, что не нужно
  • 0
Изображение