1) Название расширения: "loginredirect" редирект - "Войти Перенаправить"
Скачать: Версия 2.1.0 - RC2 github.com вроде даже как для 3.3.2 (страница расширения удалена автором)
Источник: Страница поддержки расширения phpbb.com
------------------------------------------------------------------------
Требуется помощь в параметрах групп. Данное расширение работает неадекватно для версии 3.3.0 именно с этими параметрами. Другие параметры были протестированы не в полной мере, но были успешными в работоспособности расширения. Поэтому обращаюсь за помощью наладить именно этот раздел. В идеале хотелось этот ext довести до ума, так как в нём есть возможность подключить сопутствующие функции, которые многим могут быть полезны. Такие как: (Перенаправить на конкретный форум, а не на отдельное сообщение); (Перенаправить на конкретную тему, а не на отдельное сообщение); (Перенаправить конкретного пользователя, участников выбранной группы); и т.д. чего нет именно в этой версии. Автор отказался продолжать разрабатывать данное расширение, хотя спрос на него имеется исходя из запросов на phpbb.com в обсуждении расширения.
То, что было заявлено от автора не совсем соответствует действительности, может быть это так, но у меня не совпало.
Особенности:
Выберите тему для перенаправления
Возможность автоматического перенаправления на последнее опубликованное объявление
Возможность перенаправить новых пользователей в тему
Возможность перенаправить выбранную группу (или все группы) на указанную тему
Возможность показать сообщение о перенаправлении


Привожу пример в скринах под спойлером, с чем хочется разобраться.
+скрины: параметры группы

Подправленную версию расширения loginredirect можно скачать:
здесь (версия 2) и здесь (версия 3).



2) Название расширения: "Linked Accounts" - "Связанные аккаунты"
Скачать: Версия 2.1.1 github.com для 3.3.0
Источник: Страница поддержки расширения phpbb.com
------------------------------------------------------------------------
В данном расширении хочется проработать связки, поскольку стоит задача знать кто именно к кому привязан.
В особенностях расширения - Двунаправленные ссылки: ссылки между двумя учетными записями действуют в обоих направлениях. Если была создана связь между учетной записью A и B, учетная запись B может переключиться на A так же, как A может переключиться обратно на B.
В этом и хочется поковыряться.
Дело в том, что когда просматриваешь профиль пользователя иногда может быть непонятным кто к кому привязан. На первый взгляд все выглядит идеальным, если брать в расчет то, что существует только одна связь. Если углубляться в положение дел, то в перспективе связанных аккаунтов может быть бесчисленное количество, что в принципе и требуется достичь, настройки к этому предрасполагают. В этом и есть прелесть этого расширения.
Но хочется добиться чтобы просматривалась глубина связок. От А к В и от В к С и.т.д.
Приведу пример на скриншотах в комментариях.
Последний раз редактировалось Начивик 18 ноя 2021, 01:27, всего редактировалось 1 раз.
Комментарии: 55

CabinetAdmin 26 ноя 2021, 17:23 Сообщение

Слишком уж оно технически сложное и чтобы его допилить под ваши нужды нужен скорее автор расширения, а не я.
Начивик писал(а): 25 ноя 2021, 18:39 Предлагаю взглянуть еще на одно расширение
Если честно я не совсем понял для чего это.... Это как обычный форум, но с возможностью голосования за/против. Плюс тут ещё ticket'ы завязаны....
Что-то узкоспециализированное для официального сайта phpbb.
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Начивик 29 ноя 2021, 15:41 Сообщение

CabinetAdmin, приветствую, рабочие выхи были...
CabinetAdmin писал(а): 26 ноя 2021, 17:23а не я.
Инфу принял.
CabinetAdmin писал(а): 26 ноя 2021, 17:23 Если честно я не совсем понял для чего это....
Это у них как журнал заметок, где пользователи предлагают рассмотреть какие либо изменения. Они публикуют свои идеи по поводу каких-то доработок для досок. Предлагают ввести новые функции, исправит и проработать уже имеющиеся. После чего модератор делает тикет на трекер в Арию_51 где уже спецы дополняют пробелы (это какбы гидхаб) только месный для пхпбб, как я это понял. Потом когда идея была осуществлена, модератор меняет маркеры к примеру с "на рассмотрении" на " реализованную идею". Голосующие своими за/против показывают на сколько актуально или бессмысленна идея. Чем больше резонанс, тем вероятнее что идея к поправкам или дополнениям будет учтена. Я думаю очень нужная прилажуха, для сообщества.
CabinetAdmin писал(а): 26 ноя 2021, 17:23 Это как обычный форум, но с возможностью голосования
Ну да, так и есть, здесь нет ни чего навороченного. Единственный плюс экста в том, что есть кнопки за/против и возможность маркировок тем.
+Вот как бы я хотел его использовать
  • 0

CabinetAdmin 30 ноя 2021, 20:11 Сообщение

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

Начивик 30 ноя 2021, 22:21 Сообщение

Ок, посмотрите еще можно ли сделать внешние ссылки вместо этих тикетов, мне кажется это возможно как-то изменить, чтобы к примеру ссылаться на источник статьи или просто можно было бы добавлять по усмотрению и по необходимости доп. Ссылку. Я уже пробовал в те поля которые есть вводить стороннию ссылку, но не дает ария, там в каком то файле видел что ссылается именно на трекер, устроено как-то с завязкой на это дело.
  • 0

CabinetAdmin 04 дек 2021, 17:45 Сообщение

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

Открываете файл controller/index_controller.php и находите в нём:

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

$this->assign_template_block_vars('implemented_ideas', $ideas);
после найденного добавляем:

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

		// Add
		// Generate duplicate
		$ideas = $this->entity->get_ideas(ext::NUM_IDEAS, ext::SORT_DATE, 'DESC', ext::$statuses['DUPLICATE']);
		$this->assign_template_block_vars('duplicate_ideas', $ideas);

		// Generate in progress
		$ideas = $this->entity->get_ideas(ext::NUM_IDEAS, ext::SORT_DATE, 'DESC', ext::$statuses['IN_PROGRESS']);
		$this->assign_template_block_vars('in_progress_ideas', $ideas);

		// Generate invalid
		$ideas = $this->entity->get_ideas(ext::NUM_IDEAS, ext::SORT_DATE, 'DESC', ext::$statuses['INVALID']);
		$this->assign_template_block_vars('invalid_ideas', $ideas);
Открываете файл шаблона index_body.html и тут уже вам решать куда именно и в каком порядке, главное чтобы не выше {% include 'action_bar_top.html' %} и не ниже {% include 'overall_footer.html' %}. Сами блоки:

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

{# ADD :: DUPLICATE #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('DUPLICATE') }}</h2>
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = duplicate_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>

{# ADD :: IN_PROGRESS #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('IN_PROGRESS') }}</h2>
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = in_progress_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>

{# ADD :: INVALID #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('INVALID') }}</h2>
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = invalid_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>
Так же можно изменить названия блоков добавив _IDEAS, например:

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

{{ lang('DUPLICATE_IDEAS') }}
и уже в языковом файле common.php добавить эти переменные со своим значением:

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

	'DUPLICATE_IDEAS'		=> 'Своё название',
	'IN_PROGRESS_IDEAS'		=> 'Своё название',
	'INVALID_IDEAS'			=> 'Своё название',

Всё собственно.
Ах да, ещё тиккет и версия phpbb, если хочется их удалить, чтобы глаза не мозолило, то открываете шаблон idea_body.html и удаляете:

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

				{% if IDEA_TICKET or S_CAN_EDIT %}
					<div class="status-item flex-box flex-align-end">
						{{ lang('TICKET') ~ lang('COLON') }}
						<a id="ticketlink" {% if IDEA_TICKET %}href="https://tracker.phpbb.com/browse/PHPBB3-{{ IDEA_TICKET }}">PHPBB3-{{ IDEA_TICKET }}{% else %}style="display:none">{% endif %}</a>
						{% if S_CAN_EDIT %}
							<a href="{{ U_EDIT_TICKET }}" id="ticketedit" data-l-add="{{ lang('ADD') }}" data-l-edit="{{ lang('EDIT') }}">{% if IDEA_TICKET %}<i class="icon fa-fw fa-pencil"></i>{{ lang('EDIT') }}{% else %}<i class="icon fa-fw fa-plus-circle"></i>{{ lang('ADD') }}{% endif %}</a>
							<input type="text" id="ticketeditinput" class="ideainput"{% if IDEA_TICKET %} value="PHPBB3-{{ IDEA_TICKET }}"{% endif %} placeholder="PHPBB3-#####" data-l-err="{{ lang('ERROR') }}" data-l-msg="{{ lang('TICKET_ERROR') }}" />
						{% endif %}
					</div>
				{% endif %}
и:

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

				{% if IDEA_IMPLEMENTED or S_IS_MOD %}
					<div class="status-item flex-box flex-align-end implementedtoggle" {% if IDEA_STATUS_ID != STATUS_ARY.IMPLEMENTED %}style="display:none"{% endif %}>
						{{ lang('IMPLEMENTED_VERSION') ~ lang('COLON') }}
						<span id="implementedversion"{% if not IDEA_IMPLEMENTED %} style="display:none;"{% endif %}>{{ IDEA_IMPLEMENTED }}</span>
						{% if S_IS_MOD %}
							<a href="{{ U_EDIT_IMPLEMENTED }}" id="implementededit" data-l-add="{{ lang('ADD') }}" data-l-edit="{{ lang('EDIT') }}">{% if IDEA_IMPLEMENTED %}<i class="icon fa-fw fa-pencil"></i>{{ lang('EDIT') }}{% else %}<i class="icon fa-fw fa-plus-circle"></i>{{ lang('ADD') }}{% endif %}</a>
							<input type="text" id="implementededitinput" class="ideainput"{% if IDEA_IMPLEMENTED %} value="{{ IDEA_IMPLEMENTED }}"{% endif %} placeholder="3.x.x" data-l-err="{{ lang('ERROR') }}" data-l-msg="{{ lang('IMPLEMENTED_ERROR') }}" />
						{% endif %}
					</div>
				{% endif %}
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Начивик 05 дек 2021, 12:08 Сообщение

CabinetAdmin, Приветствую!
Блоки на главную поставил, в связи с этим следующие вопросы:
В исходном варианте, на главной стр. идеи, справа отображаются кнопки для перехода (посмотреть все)
они находятся там же в index_body.html и выглядят так:

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

		<a class="button view-all" href="{{ U_VIEW_TOP }}"><i class="icon fa-fw fa-line-chart"></i> <span>{{ lang('VIEW_TOP') }}</span></a>
		<a class="button view-all" href="{{ U_VIEW_LATEST }}"><i class="icon fa-fw fa-lightbulb-o"></i> <span>{{ lang('VIEW_LATEST') }}</span></a>
		<a class="button view-all" href="{{ U_VIEW_IMPLEMENTED }}"><i class="icon fa-fw fa-code-fork fa-flip-vertical"></i> <span>{{ lang('VIEW_IMPLEMENTED') }}</span></a>
Как мне правильно добавить такие же кнопки для своих разделов, по примеру как мы начали без переименований (дупликаты и т.д.)
Если я добавлю по аналогии с исходником, то сработает ли?
аналогия топ идей:

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

	{% if top_ideas %}
		<a class="button view-all" href="{{ U_VIEW_TOP }}"><i class="icon fa-fw fa-line-chart"></i> <span>{{ lang('VIEW_TOP') }}</span></a>
	{% endif %}

вот этот класс <a class="button view-all" для своих блоков применю, правильно? или не совсем?
Почему я хочу добавить эти кнопки, потому, что на главной отображается всего по пять тем в блоках как анонс, а если их будет больше, то как к ним переходить чтобы посмотреть остальные (кроме функции поиска).

отредактировано: Нет, так не получилось, попробовал, так нельзя похоже...надо как-то по другому
CabinetAdmin писал(а): 04 дек 2021, 17:45 Ах да, ещё тиккет и версия phpbb, если хочется их удалить, чтобы глаза не мозолило
Нее)) я хотел использовать эти поля в своих целях, чтобы поля ввода остались а информация своя была))
ну если это проблема, то ладно...
Спасибо)))
  • 0

CabinetAdmin 05 дек 2021, 15:03 Сообщение

Кнопки, точно, я про них совсем забыл.
Вот тот же код, но с кнопками:

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

{# ADD :: DUPLICATE #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('DUPLICATE') }}</h2>
	{% if duplicate_ideas %}
		<a class="button view-all" href="{{ U_VIEW_DUPLICATE }}"><i class="icon fa-fw fa-code-fork fa-flip-vertical"></i> <span>{{ lang('VIEW_DUPLICATE') }}</span></a>
	{% endif %}
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = duplicate_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>

{# ADD :: IN_PROGRESS #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('IN_PROGRESS') }}</h2>
	{% if in_progress_ideas %}
		<a class="button view-all" href="{{ U_VIEW_IN_PROGRESS }}"><i class="icon fa-fw fa-code-fork fa-flip-vertical"></i> <span>{{ lang('VIEW_IN_PROGRESS') }}</span></a>
	{% endif %}
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = in_progress_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>

{# ADD :: INVALID #}
<div class="flex-box flex-align-end flex-justify">
	<h2>{{ lang('INVALID') }}</h2>
	{% if invalid_ideas %}
		<a class="button view-all" href="{{ U_VIEW_INVALID }}"><i class="icon fa-fw fa-code-fork fa-flip-vertical"></i> <span>{{ lang('VIEW_INVALID') }}</span></a>
	{% endif %}
</div>
<div class="forumbg">
	<div class="inner">
		<ul class="topiclist">
			<li class="header">
				<dl class="row-item">
					<dt><div class="list-inner">{{ lang('IDEAS') }}</div></dt>
					<dd class="posts">{{ lang('VOTES') }}</dd>
				</dl>
			</li>
		</ul>
		{% set ideas = invalid_ideas %}
		{% include 'index_list.html' %}
	</div>
</div>
В файле controller/index_controller.php найти:

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

			'U_VIEW_IMPLEMENTED'=> $this->helper->route('phpbb_ideas_list_controller', ['sort' => ext::SORT_DATE, 'status' => ext::$statuses['IMPLEMENTED']]),
после найденного добавить:

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

			// Add
			'U_VIEW_DUPLICATE'=> $this->helper->route('phpbb_ideas_list_controller', ['sort' => ext::SORT_DATE, 'status' => ext::$statuses['DUPLICATE']]),
			'U_VIEW_IN_PROGRESS'=> $this->helper->route('phpbb_ideas_list_controller', ['sort' => ext::SORT_DATE, 'status' => ext::$statuses['IN_PROGRESS']]),
			'U_VIEW_INVALID'=> $this->helper->route('phpbb_ideas_list_controller', ['sort' => ext::SORT_DATE, 'status' => ext::$statuses['INVALID']]),
В языковом файле common.php добавить переменные для кнопок, так же как и в предыдущий раз:

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

	'VIEW_DUPLICATE'		=> 'Своё название',
	'VIEW_IN_PROGRESS'		=> 'Своё название',
	'VIEW_INVALID'			=> 'Своё название',
Либо не добавлять, но тогда надо удалить из кнопок VIEW_.


По поводу тиккета, я если честно не понял как это дело сохраняется...
Сама ссылка формируется прямо там же в шаблоне:

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

<a id="ticketlink" {% if IDEA_TICKET %}href="https://tracker.phpbb.com/browse/PHPBB3-{{ IDEA_TICKET }}">PHPBB3-{{ IDEA_TICKET }}{% else %}style="display:none">{% endif %}</a>
Я мыслю так, удалить отсюда:

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

https://tracker.phpbb.com/browse/PHPBB3-
и вообще все PHPBB3-, что-то вроде такого:

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

				{% if IDEA_TICKET or S_CAN_EDIT %}
					<div class="status-item flex-box flex-align-end">
						{{ lang('TICKET') ~ lang('COLON') }}
						<a id="ticketlink" {% if IDEA_TICKET %}href="{{ IDEA_TICKET }}">{{ IDEA_TICKET }}{% else %}style="display:none">{% endif %}</a>
						{% if S_CAN_EDIT %}
							<a href="{{ U_EDIT_TICKET }}" id="ticketedit" data-l-add="{{ lang('ADD') }}" data-l-edit="{{ lang('EDIT') }}">{% if IDEA_TICKET %}<i class="icon fa-fw fa-pencil"></i>{{ lang('EDIT') }}{% else %}<i class="icon fa-fw fa-plus-circle"></i>{{ lang('ADD') }}{% endif %}</a>
							<input type="text" id="ticketeditinput" class="ideainput"{% if IDEA_TICKET %} value="{{ IDEA_TICKET }}"{% endif %} data-l-err="{{ lang('ERROR') }}" data-l-msg="{{ lang('TICKET_ERROR') }}" />
						{% endif %}
					</div>
				{% endif %}
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Начивик 05 дек 2021, 18:51 Сообщение

CabinetAdmin, ))Еще немного вашего внимания.
Обнаружилось что пользователь не может отдавать свой голос (за/против) в разделах со статусом:
1) Duplicate
2) Implemented

в разделах со статусом:
3) New
4) In Progress
5) Invalid
работает вроде бы для всех, только администратор не может голосовать в некоторых случаях, не знаю почему. Может из-за того что просто файлы обновлял без отключения расширения, просто замена и чистка кеша. Но глюки есть. А может из-за того что переключаюсь между аккаунтами и происходит сбой в системе)).

------
отредактировано:
Админ не мог голосовать потому, что не было форумных прав, нужно иметь разрешение чтобы мог участвовать в голосовании, оказывается это связано напрямую с этими лайками, во как... стандартная голосовалка я имею ввиду.
-------

Возможно это дело допилить?, иначе фигня получается)) по поводу трекера таким методом выше, просто удалились надписи про пхпбб, вставить свои ссылки не получается, не сохраняются они, сбрасывается на исходное чистое поле...Если получится что-то придумать, хорошо, нет, так и бог с ними.
Поправить бы голосование для всех статусов, тогда можно будет использовать под рубрики. Кнопки работают, я когда сам делал, в принципе правильно первое добавлял, сам конечно не додумался бы добавить кусок второй части в controller/index_controller.php сейчас все переходы срабатывают верно, всё хорошо.
  • 0

CabinetAdmin 06 дек 2021, 17:43 Сообщение

Открыть event/listener.php, найти:

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

		$can_vote = (bool) ($idea['idea_status'] != ext::$statuses['IMPLEMENTED'] &&
			$idea['idea_status'] != ext::$statuses['DUPLICATE'] &&
			$this->auth->acl_get('f_vote', (int) $this->config['ideas_forum_id']) &&
			$event['topic_data']['topic_status'] != ITEM_LOCKED);
заменить на:

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

		$can_vote = (bool) ($this->auth->acl_get('f_vote', (int) $this->config['ideas_forum_id']) && $event['topic_data']['topic_status'] != ITEM_LOCKED);
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Начивик 07 дек 2021, 14:28 Сообщение

Вроде всё получилось.
Спасибо))
---------------
Вот такой вопрос еще существует:
Можно ли это расширение переименовать для того чтобы использовать его дублирующим образом, то есть чтобы было установлено два или более ext(а) на доске, так как в настройках указывается только один форум. Чтобы можно было указать в настройках для каждого свой форум1; форум2; или подфорум чтобы размещать в нескольких местах форумы с идеями? К тому же появится возможность сделать больше разделов и рубрик со своими названиями исходя из того, что их всего пять штук.
Например если сейчас так, ext/phpbb/ideas то для наглядности так:
ext/phpbb/ideas_2 - в настройках форум2
ext/phpbb/ideas_3 - в настройках форум3
ext/phpbb/ideas_4 - в настройках подфорум4
и соответственно давать для каждого свои права.
  • 0

CabinetAdmin 07 дек 2021, 17:26 Сообщение

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

Начивик 08 дек 2021, 17:43 Сообщение

Начивик писал(а): 07 дек 2021, 14:28 Очень много геморроя...
понятно(
И похоже тоже самое касается добавление (дублирование) разделов, чтобы увеличить их кол-во. К примеру тот же самый Duplicate везде придется прописывать добавление, так? Если его брать за основу. Двумя файлами не обойтись.
У вас тут случайно ббкода таймера обратного отсчета ни где не обсуждалось, я не видел но может уже поднимали вопрос.
  • 0

CabinetAdmin 09 дек 2021, 16:47 Сообщение

Начивик писал(а): 08 дек 2021, 17:43не обойтись
Не обойтись.

Был скрипт, но не в виде ббкода, вот - viewtopic.php?p=64088#p64088
Добавить всё это безобразие в замену ббкода, должно работать. Но возможно есть и полноценные ббкоды с возможностью задавать дату, я не знаю.
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Начивик 12 дек 2021, 19:02 Сообщение

CabinetAdmin писал(а): 09 дек 2021, 16:47 ббкоды с возможностью задавать дату
У меня давно валяется вот этот ббкод таймера, но как его привести в действие я не знаю, что то в нём не то по моему, где его концы я не помню, поэтому выяснить как он должен работать не представляется возможным. Если вы сможете его понять, то он ваш))
Использование BBCode

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

[Taimer]{SIMPLETEXT}[/Taimer]
Замена HTML

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

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
 
<meta name="distribution" content="global">
<meta name='revisit' content='1'>
<meta name='revisit' content='1 day'>
<meta name='revisit' content='1 days'>
<meta name='revisit-after' content='1 day'>
<meta name='revisit-after' content='1 days'>
<meta name="robots" content="index,all">
<meta name='revisit-after' content='1'>
<meta name='document-state' content='Dynamic'>
<DIV align="center" ID="countdown"></DIV>
 
<SCRIPT type="text/javascript" language="javascript">//Скрипт обратного отсчета времени CountDown
var eventstr="Конкурс закончился!"; //Эта строка выводиться по окончанию отсчета
var countdownid=document.getElementById("countdown"); //ID элемента в который выводится время
var montharray=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"); function CountDowndmn(yr,m,d){cdyear=yr; cdmonth=m; cdday=d; var today=new Date(); var todayy=today.getYear(); if (todayy<1000)
todayy+=1900; var todaym=today.getMonth(); var todayd=today.getDate(); var todayh=today.getHours(); var todaymin=today.getMinutes(); var todaysec=today.getSeconds(); var todaystring=montharray[todaym]+" "+todayd+", "+todayy+" "+todayh+":"+todaymin+":"+todaysec; futurestring=montharray[m-1]+" "+d+", "+yr
dd=Date.parse(futurestring)-Date.parse(todaystring); dday=Math.floor(dd/(60*60*1000*24)*1); dhour=Math.floor((dd%(60*60*1000*24))/(60*60*1000)*1); dmin=Math.floor(((dd%(60*60*1000*24))%(60*60*1000))/(60*1000)*1); dsec=Math.floor((((dd%(60*60*1000*24))%(60*60*1000))%(60*1000))/1000*1); if(dday<=0&&dhour<=0&&dmin<=0&&dsec<=1){countdownid.innerHTML=eventstr; return} else {var lastchar=""+dsec;	lastchar=lastchar.substring(lastchar.length-1,lastchar.length);
var dsecstr="секунд"; if (lastchar=="1"){dsecstr="секунда";} if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")){dsecstr="секунды";}
lastchar=""+dmin; lastchar = lastchar.substring(lastchar.length-1,lastchar.length); var dminstr="минут"; if (lastchar=="1"){dminstr="минута";} if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")){dminstr="минуты";}
lastchar=""+dhour; lastchar=lastchar.substring(lastchar.length-1,lastchar.length); var dhourstr="часов"; if (lastchar=="1"){dhourstr="час";} if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")){dhourstr="часа";}
lastchar=""+dday; lastchar=lastchar.substring(lastchar.length-1,lastchar.length); var ddaystr="дней"; if (lastchar=="1"){ddaystr="день";} if ((lastchar=="2")||(lastchar=="3")||(lastchar=="4")){ddaystr="дня";}
countdownid.innerHTML="До окончания конкурса осталось: <br> "+dday+ " " +ddaystr+", "+dhour+" "+dhourstr+", "+dmin+" "+dminstr+" и "+dsec+" "+dsecstr;}
setTimeout("CountDowndmn(cdyear,cdmonth,cdday)",1000);} CountDowndmn(2011,06,01); //Дата отсчета: год, месяц, число
</SCRIPT>
Подсказка

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

Таймер
По идее должно наверно при использовании выглядеть так:
[Taimer]12-12-2021 20:40:00[/ Taimer]
но на деле, увы :unknown

-------

Я опять к вам за помощью с екстом идеи.
Пытаюсь удалить ТОП из индекс_боди, но он не удаляется. И еще нужно ковырнуть чтобы
'status_id' => 2,
'status_name' => 'IN_PROGRESS',

не дублировался в топе ideas/list/top а также в "новых" ideas/list
Собственно я из-за этого и пытаюсь удалить топ, так ка не знаю как убрать дубляж. Получается темы из одной рубрики указываются в трех разделах, что считаю абсурдом.
В идеале хочется сохранить раздел "Топ" но в него НЕ попадают три категории - это 3'status_name'=> 'IMPLEMENTED', 4'status_name'=> 'DUPLICATE', 5'status_name'=> 'INVALID', и получается несуразится какая-то. Поэтому с этим нужно что-то сделать либо как минимум удалить ТОП вообще, чтобы свести к минимуму дублирующий раздел, чтобы только один из пяти показывался в двух местах (это дело можно обыграть и скрестить пару рубрик в одну, и тогда IN_PROGRESS будет только в NEW ), либо с помощью вашего гения уничтожить сам принцип попадания в топ, а сам топ сделать самостоятельной отдельной рубрикой, как IMPLEMENTED, DUPLICATE, INVALID которые с топом не связаны и не отображаются на главной стр. идей.
  • 0

CabinetAdmin 13 дек 2021, 17:14 Сообщение

Чтобы убрать из топа то что в "In Progress" надо в файле factory/ideas.php найти:

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

'i.idea_status', [ext::$statuses['IMPLEMENTED'], ext::$statuses['DUPLICATE'], ext::$statuses['INVALID'],
и заменить на:

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

'i.idea_status', [ext::$statuses['IMPLEMENTED'], ext::$statuses['DUPLICATE'], ext::$statuses['INVALID'], ext::$statuses['IN_PROGRESS'],
  • 0
Хочешь поблагодарить? Есть способы: заходи на форум, создавай темы, делись опытом и наработками, общайся!

Похожие темы