UWAGA: W PHP wykryto krytyczne podatności, przez które Wasze strony/fora mogą zostać zhakowane! Dzisiaj mają być udostępnione poprawione wersje, warto monitorować i ustawić odpowiendie wersje PHP na swom serwerze.

Poprawki będę zawarte w wersjach PHP: 8.5.12, 8.4.27, 8.3.36 oraz 8.2.35! Jeśli używacie jeszcze wersje PHP 7.x lub 8.0.x lub 8.1.x, należy, jak najszybciej podnieść wersje PHP i/lub zaktualizować swoje fora!

Do momentu wdrożenia oficjalnej łatki, ryzyko ataku można drastycznie zmniejszyć poprzez zmianę konfiguracji w pliku php.ini:
Ustaw: session.upload_progress.enabled = Off

Albo np., można zrobić: https://ma.ttias.be/php-cve-2026-109618 ... itigation/

Dla serwera Apache ustaw w pliku .htaccess

Kod: Zaznacz cały

RewriteEngine On
RewriteCond %{HTTP:Content-Type} multipart/form-data [NC]
RewriteRule ^ - [F]
i/lub - nie testowałem

Kod: Zaznacz cały

<If "req('Content-Type') =~ /multipart/i">
    Require all denied
</If>

Dla nginx

Kod: Zaznacz cały

# http {} context, e.g. /etc/nginx/conf.d/block-multipart.conf
map $http_content_type $block_multipart {
    default       0;
    "~*multipart" 1;
}

# inside every server {} that passes requests to PHP, including default/catch-all servers
if ($block_multipart) {
    return 403;
}
_____________________________________________________

Pojawiła się nowa wersja systemu - phpBB 3.3.19. Ostatnie wydania (od wersji 3.3.17 do najnowszej) przynoszą kluczowe poprawki, które chronią Twoje forum przed zagrożeniami i dbają o spokój Twojej społeczności. Polecam nie odkładać tego na później, tyllko zaktualizować fora!

Polski pakiet językowy dla phpBB 3.3.19

Edycja paska nawigacyjnego

Pomoc przy instalacji oraz użytkowaniu phpBB 3.1.x. Forum nie służy do zgłaszania znalezionych błędów, innowacji lub problemów związanych ze stylami i modyfikacjami.
MarcPaw
Posty: 6
Rejestracja: 17 maja 2016, 23:11

Edycja paska nawigacyjnego

Post autor: MarcPaw » 17 maja 2016, 23:18

Witam.

Chciałbym się dowiedzieć w jaki sposób mogę edytować pasek nawigacyjny tak by wprowadzić zmiany jak na poniższym obrazku

Obrazek

Z góry dziękuję za pomoc.

Awatar użytkownika
Zyleta
Zasłużony
Posty: 196
Rejestracja: 03 marca 2014, 15:39

Re: Edycja paska nawigacyjnego

Post autor: Zyleta » 18 maja 2016, 15:51

w plikach stylu, którego używasz. Jak już napisałeś, jest to pasek nawigacyjny, czyli najprawdopodobniej będzie to plik navbar (skrót od navigation bar - z angielskiego, pasek nawigacyjny), a że jest u góry forum, więc dodano w nazwie _header (czyli navbar_header).

Dalej, jedyne co mogę poradzić, to zobacz jak jest zbudowany ten pasek i staraj się trzymać tego schematu (by zachować estetykę).

Jeśli w Twoim stylu, opcja "unread posts" nie występuje, to możesz otworzyć ów plik ze stylu prosilver (tam na pewno jest) i zobaczyć jak to wygląda tam i spróbować przenieść (nie dosłownie, lecz trzymając się tego co masz w swoim stylu) do siebie.

Gdy występuje, ale w innym miejscu, to usuń stamtąd i przenieś (z głową, czyli jw.) w odpowiednie miejsce.

MarcPaw
Posty: 6
Rejestracja: 17 maja 2016, 23:11

Re: Edycja paska nawigacyjnego

Post autor: MarcPaw » 18 maja 2016, 18:20

Styl to elegance

Tak wygląda plik navbar_header

Kod: Zaznacz cały

<div class="navbar tabbed not-static" role="navigation">
	<div class="inner page-width">
		<div class="nav-tabs" data-current-page="<!-- IF $NAV_SECTION -->{$NAV_SECTION}<!-- ELSE -->{SCRIPT_NAME}<!-- ENDIF -->">
			<ul class="leftside">
				<!-- EVENT navtabs_left_before -->
				<!-- IF U_SITE_HOME -->
					<li class="tab home" data-responsive-class="small-icon icon-home">
						<a class="nav-link" href="{U_SITE_HOME}" data-navbar-reference="home">{L_SITE_HOME}</a>
					</li>
				<!-- ENDIF -->
				<li id="quick-links" class="tab responsive-menu dropdown-container">
					<a href="#" class="nav-link dropdown-trigger">{L_QUICK_LINKS}</a>
					<div class="dropdown hidden">
						<div class="pointer"><div class="pointer-inner"></div></div>
						<ul class="dropdown-contents" role="menu">
							<!-- EVENT navbar_header_quick_links_before -->

							<!-- IF S_DISPLAY_SEARCH -->
								<li class="separator"></li>
								<!-- IF S_REGISTERED_USER -->
									<li class="small-icon icon-search-self"><a href="{U_SEARCH_SELF}" role="menuitem">{L_SEARCH_SELF}</a></li>
								<!-- ENDIF -->
								<!-- IF S_USER_LOGGED_IN -->
									<li class="small-icon icon-search-new"><a href="{U_SEARCH_NEW}" role="menuitem">{L_SEARCH_NEW}</a></li>
								<!-- ENDIF -->
								<!-- IF S_LOAD_UNREADS --> 
									<li class="small-icon icon-search-unread"><a href="{U_SEARCH_UNREAD}" role="menuitem">{L_SEARCH_UNREAD}</a></li>
								<!-- ENDIF -->
								<li class="small-icon icon-search-unanswered"><a href="{U_SEARCH_UNANSWERED}" role="menuitem">{L_SEARCH_UNANSWERED}</a></li>
								<li class="small-icon icon-search-active"><a href="{U_SEARCH_ACTIVE_TOPICS}" role="menuitem">{L_SEARCH_ACTIVE_TOPICS}</a></li>
								<li class="separator"></li>
								<li class="small-icon icon-search"><a href="{U_SEARCH}" role="menuitem">{L_SEARCH}</a></li>
							<!-- ENDIF -->

							<li class="separator"></li>

							<!-- EVENT navbar_header_quick_links_after -->
						</ul>
					</div>
				</li>
				<li class="tab forums selected" data-responsive-class="small-icon icon-forums">
					<a class="nav-link" href="{U_INDEX}">{L_FORUMS}</a>
				</li>
				<!-- IF not S_IS_BOT and (S_DISPLAY_MEMBERLIST or U_TEAM) -->
					<li class="tab members dropdown-container" data-select-match="member" data-responsive-class="small-icon icon-members">
						<a class="nav-link dropdown-trigger" href="{U_MEMBERLIST}">{L_MEMBERLIST}</a>
						<div class="dropdown hidden">
							<div class="pointer"><div class="pointer-inner"></div></div>
							<ul class="dropdown-contents" role="menu">
								<!-- IF S_DISPLAY_MEMBERLIST --><li class="small-icon icon-members"><a href="{U_MEMBERLIST}" role="menuitem">{L_MEMBERLIST}</a></li><!-- ENDIF -->
								<!-- IF U_TEAM --><li class="small-icon icon-team"><a href="{U_TEAM}" role="menuitem">{L_THE_TEAM}</a></li><!-- ENDIF -->
							</ul>
						</div>
					</li>
				<!-- ENDIF -->
				<!-- EVENT navtabs_left_after -->
			</ul>
			<ul class="rightside">
				<!-- EVENT overall_header_navigation_prepend -->
				<li class="tab faq" data-select-match="faq" data-responsive-class="small-icon icon-faq">
					<a class="nav-link" href="{U_FAQ}" rel="help" title="{L_FAQ_EXPLAIN}" role="menuitem">{L_FAQ}</a>
				</li>
				<!-- EVENT overall_header_navigation_append -->
				<!-- IF U_ACP --><li class="tab acp" data-last-responsive="true" data-responsive-class="small-icon icon-acp"><a class="nav-link" href="{U_ACP}" title="{L_ACP}" role="menuitem">{L_ACP_SHORT}</a></li><!-- ENDIF -->
				<!-- IF U_MCP -->
					<li class="tab mcp" data-last-responsive="true" data-select-match="mcp" data-responsive-class="small-icon icon-mcp">
						<a class="nav-link" href="{U_MCP}" title="{L_MCP}" role="menuitem">{L_MCP_SHORT}</a>
					</li>
				<!-- ENDIF -->
				<!-- IF S_REGISTERED_USER -->
					<li id="username_logged_in" class="tab account dropdown-container" data-skip-responsive="true" data-select-match="ucp">
						<a href="{U_PROFILE}" class="nav-link dropdown-trigger">{CURRENT_USERNAME_SIMPLE}</a>
						<div class="dropdown hidden">
							<div class="pointer"><div class="pointer-inner"></div></div>
							<ul class="dropdown-contents" role="menu">
								<!-- IF U_RESTORE_PERMISSIONS --><li class="small-icon icon-restore-permissions"><a href="{U_RESTORE_PERMISSIONS}">{L_RESTORE_PERMISSIONS}</a></li><!-- ENDIF -->
			
								<!-- EVENT navbar_header_profile_list_before -->
			
								<li class="small-icon icon-ucp"><a href="{U_PROFILE}" title="{L_PROFILE}" role="menuitem">{L_PROFILE}</a></li>
								<li class="small-icon icon-profile"><a href="{U_USER_PROFILE}" title="{L_READ_PROFILE}" role="menuitem">{L_READ_PROFILE}</a></li>
			
								<!-- EVENT navbar_header_profile_list_after -->
			
								<li class="separator"></li>
								<li class="small-icon icon-logout"><a href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="x" role="menuitem">{L_LOGIN_LOGOUT}</a></li>
							</ul>
						</div>
					</li>
					<!-- IF S_DISPLAY_PM -->
						<li class="tab pm<!-- IF PRIVATE_MESSAGE_COUNT > 0 --> non-zero<!-- ENDIF -->" data-skip-responsive="true" data-select-match="pm">
							<a class="nav-link" href="{U_PRIVATEMSGS}" role="menuitem">{L_PRIVATE_MESSAGES}</a>
							<strong>
								<span class="counter">{PRIVATE_MESSAGE_COUNT}</span>
								<span class="arrow"></span>
							</strong>
						</li>
					<!-- ENDIF -->
					<!-- IF S_NOTIFICATIONS_DISPLAY -->
						<li class="tab notifications dropdown-container<!-- IF NOTIFICATIONS_COUNT > 0 --> non-zero<!-- ENDIF -->" data-skip-responsive="true" data-select-match="notifications">
							<a href="{U_VIEW_ALL_NOTIFICATIONS}" id="notification_list_button" class="nav-link dropdown-trigger">{L_NOTIFICATIONS}</a>
							<strong>
								<span class="counter">{NOTIFICATIONS_COUNT}</span>
								<span class="arrow"></span>
							</strong>
							<!-- INCLUDE notification_dropdown.html -->
						</li>
					<!-- ENDIF -->
				<!-- ENDIF -->
				<!-- IF S_REGISTERED_USER -->
					<li class="tab logout"  data-skip-responsive="true"><a class="nav-link" href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="x" role="menuitem">{L_LOGIN_LOGOUT}</a></li>
				<!-- ELSE -->
					<li class="tab login"  data-skip-responsive="true" data-select-match="login"><a class="nav-link" href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}" accesskey="x" role="menuitem">{L_LOGIN_LOGOUT}</a></li>
					<!-- IF S_REGISTER_ENABLED -->
						<li class="tab register" data-skip-responsive="true" data-select-match="register"><a class="nav-link" href="{U_REGISTER}" role="menuitem">{L_REGISTER}</a></li>
					<!-- ENDIF -->
					<!-- EVENT navbar_header_logged_out_content -->
				<!-- ENDIF -->
			</ul>
		</div>
	</div>
</div>

<div class="navbar secondary{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %} with-search{% endif %}">
	<ul role="menubar">
		{% set secondary_links %}
		<!-- EVENT secondary_navlinks_before -->
		{% if definition.NAVLINKS|trim %}
			{{ definition.NAVLINKS }}
		{% endif %}
		{% if !definition.NAVLINKS|trim || definition.NAVLINKS_SHOW_DEFAULT == 1 %}
			<!-- IF U_WATCH_FORUM_LINK and not S_IS_BOT --><li class="small-icon icon-<!-- IF S_WATCHING_FORUM -->unsubscribe<!-- ELSE -->subscribe<!-- ENDIF -->" data-last-responsive="true"><a href="{U_WATCH_FORUM_LINK}" title="{S_WATCH_FORUM_TITLE}" data-ajax="toggle_link" data-toggle-class="small-icon icon-<!-- IF not S_WATCHING_FORUM -->unsubscribe<!-- ELSE -->subscribe<!-- ENDIF -->" data-toggle-text="{S_WATCH_FORUM_TOGGLE}" data-toggle-url="{U_WATCH_FORUM_TOGGLE}">{S_WATCH_FORUM_TITLE}</a></li><!-- ENDIF -->
		{% endif %}
		<!-- EVENT secondary_navlinks_after -->
		{% endset %}
		{% if secondary_links|trim %}
			{{ secondary_links }}
			<!-- IF $NAVLINKS_SHOW_DEFAULT && S_DISPLAY_SEARCH -->
				<li class="small-icon icon-search{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %} responsive-hide{% endif %}"><a href="{U_SEARCH}">{L_SEARCH}</a></li>
				<!-- IF S_USER_LOGGED_IN -->
					<li class="small-icon icon-new-posts"><a href="{U_SEARCH_NEW}" role="menuitem">{L_SEARCH_NEW}</a></li>
				<!-- ENDIF -->
			<!-- ENDIF -->
		{% else %}
			<!-- IF S_DISPLAY_SEARCH -->
				<li class="small-icon icon-search{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %} responsive-hide{% endif %}"><a href="{U_SEARCH}">{L_SEARCH}</a></li>
				<!-- IF S_USER_LOGGED_IN -->
					<li class="small-icon icon-new-posts"><a href="{U_SEARCH_NEW}" role="menuitem">{L_SEARCH_NEW}</a></li>
				<!-- ENDIF -->
			<!-- ENDIF -->
			<!-- IF not S_REGISTERED_USER -->
				<li class="small-icon icon-login"><a href="{U_LOGIN_LOGOUT}" title="{L_LOGIN_LOGOUT}">{L_LOGIN_LOGOUT}</a></li>
				<!-- IF S_REGISTER_ENABLED -->
					<li class="small-icon icon-register"><a href="{U_REGISTER}">{L_REGISTER}</a></li>
				<!-- ENDIF -->
			<!-- ELSEIF not S_DISPLAY_SEARCH -->
				<li><a href="{U_PROFILE}" class="small-icon icon-profile">{CURRENT_USERNAME_SIMPLE}</a></li>
			<!-- ENDIF -->
		{% endif %}

		{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %}
			<li class="search-box not-responsive">{$SEARCH_BOX}</li>
		{% endif %}
	</ul>
</div>

<!-- DEFINE $BREADCRUMBS -->
<div class="navbar nav-breadcrumbs">
	<ul id="nav-breadcrumbs" class="linklist navlinks" role="menubar">
		<!-- DEFINE $MICRODATA = ' itemtype="http://data-vocabulary.org/Breadcrumb" itemscope=""' -->
		<!-- EVENT overall_header_breadcrumbs_before -->
		<li class="small-icon icon-home breadcrumbs">
			<!-- IF U_SITE_HOME --><span class="crumb" style="display: none;"><a href="{U_SITE_HOME}"{$MICRODATA} data-navbar-reference="home">{L_SITE_HOME}</a></span><!-- ENDIF -->
			<!-- EVENT overall_header_breadcrumb_prepend -->
			<span class="crumb"><a href="{U_INDEX}" accesskey="h"{$MICRODATA} data-navbar-reference="index">{L_INDEX}</a></span>
			<!-- BEGIN navlinks -->
				<!-- EVENT overall_header_navlink_prepend -->
				<span class="crumb"><a href="{navlinks.U_VIEW_FORUM}"{$MICRODATA}<!-- IF navlinks.MICRODATA --> {navlinks.MICRODATA}<!-- ENDIF -->>{navlinks.FORUM_NAME}</a></span>
				<!-- EVENT overall_header_navlink_append -->
			<!-- END navlinks -->
			<!-- EVENT overall_header_breadcrumb_append -->
		</li>
		<!-- EVENT overall_header_breadcrumbs_after -->

		<!-- IF S_DISPLAY_SEARCH and not S_IN_SEARCH -->
			<li class="rightside responsive-search" style="display: none;"><a href="{U_SEARCH}" title="{L_SEARCH_ADV_EXPLAIN}" role="menuitem">{L_SEARCH}</a></li>
		<!-- ENDIF -->
		<li class="rightside dropdown-container icon-only">
			<a href="#" class="dropdown-trigger time" title="{CURRENT_TIME}"><i class="fa fa-clock-o"></i></a>
			<div class="dropdown hidden">
				<div class="pointer"><div class="pointer-inner"></div></div>
				<ul class="dropdown-contents">
					<li>{CURRENT_TIME}</li>
					<li>{S_TIMEZONE}</li>
				</ul>
			</div>
		</li>
	</ul>
</div>
<!-- ENDDEFINE -->
<!-- IF $WRAP_HEADER != 0 -->
	{$BREADCRUMBS}
	<!-- DEFINE $BREADCRUMBS = '' -->
<!-- ENDIF -->
Rozumiem, że ten dolny pasek to "navbar secondary" i wystarczy zmienić w tych wpisach:
<!-- IF $NAVLINKS_SHOW_DEFAULT && S_DISPLAY_SEARCH -->
<li class="small-icon icon-search{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %} responsive-hide{% endif %}"><a href="{U_SEARCH}">{L_SEARCH}</a></li>
<!-- IF S_USER_LOGGED_IN -->
<li class="small-icon icon-new-posts"><a href="{U_SEARCH_NEW}" role="menuitem">{L_SEARCH_NEW}</a></li>
<!-- ENDIF -->
<!-- ENDIF -->
{% else %}
<!-- IF S_DISPLAY_SEARCH -->
<li class="small-icon icon-search{% if definition.SEARCH_IN_NAVBAR == 1 && definition.SEARCH_BOX %} responsive-hide{% endif %}"><a href="{U_SEARCH}">{L_SEARCH}</a></li>
<!-- IF S_USER_LOGGED_IN -->
<li class="small-icon icon-new-posts"><a href="{U_SEARCH_NEW}" role="menuitem">{L_SEARCH_NEW}</a></li>
<!-- ENDIF -->

Kod: Zaznacz cały

{U_SEARCH_NEW}  {L_SEARCH_NEW}
na

Kod: Zaznacz cały

{U_SEARCH_UNREAD}  {L_SEARCH_UNREAD}
by wyszukiwało nieprzeczytane?

MarcPaw
Posty: 6
Rejestracja: 17 maja 2016, 23:11

Re: Edycja paska nawigacyjnego

Post autor: MarcPaw » 18 maja 2016, 22:04

Już sprawdziłem, DZIAŁA.

ODPOWIEDZ

Wróć do „Użytkowanie”