Make url_construct a function instead of a filter.

This commit is contained in:
flash 2018-12-01 12:57:23 +01:00
parent 486e5c9e77
commit b9c8a967fa
10 changed files with 18 additions and 18 deletions

View file

@ -15,7 +15,6 @@ final class TwigMisuzu extends Twig_Extension
new Twig_Filter('first_paragraph', 'first_paragraph'), new Twig_Filter('first_paragraph', 'first_paragraph'),
new Twig_Filter('byte_symbol', 'byte_symbol'), new Twig_Filter('byte_symbol', 'byte_symbol'),
new Twig_Filter('html_link', 'html_link'), new Twig_Filter('html_link', 'html_link'),
new Twig_Filter('url_construct', 'url_construct'),
new Twig_Filter('parse_line', 'parse_line'), new Twig_Filter('parse_line', 'parse_line'),
new Twig_Filter('parse_text', 'parse_text'), new Twig_Filter('parse_text', 'parse_text'),
new Twig_Filter('asset_url', 'asset_url'), new Twig_Filter('asset_url', 'asset_url'),
@ -35,6 +34,7 @@ final class TwigMisuzu extends Twig_Extension
new Twig_Function('csrf_token', 'csrf_token'), new Twig_Function('csrf_token', 'csrf_token'),
new Twig_Function('csrf_input', 'csrf_html'), new Twig_Function('csrf_input', 'csrf_html'),
new Twig_Function('sql_query_count', 'db_query_count'), new Twig_Function('sql_query_count', 'db_query_count'),
new Twig_Function('url_construct', 'url_construct'),
new Twig_Function('startup_time', function (float $time = MSZ_STARTUP) { new Twig_Function('startup_time', function (float $time = MSZ_STARTUP) {
return microtime(true) - $time; return microtime(true) - $time;
}), }),

View file

@ -9,7 +9,7 @@
{% if is_valid %} {% if is_valid %}
{% {%
set canonical_url = '/changelog.php'|url_construct({ set canonical_url = url_construct('/changelog.php', {
'd': changelog_date, 'd': changelog_date,
'u': changelog_user ? changelog_user : '', 'u': changelog_user ? changelog_user : '',
'o': changelog_offset 'o': changelog_offset
@ -30,7 +30,7 @@
{% if not is_date %} {% if not is_date %}
<div class="changelog__pagination"> <div class="changelog__pagination">
{{ pagination(changelog_count, changelog_take, changelog_offset, '/changelog.php'|url_construct({ {{ pagination(changelog_count, changelog_take, changelog_offset, url_construct('/changelog.php', {
'd': changelog_date, 'd': changelog_date,
'u': changelog_user ? changelog_user : '' 'u': changelog_user ? changelog_user : ''
})) }} })) }}

View file

@ -2,7 +2,7 @@
{% from 'forum/macros.twig' import forum_category_listing, forum_topic_listing, forum_category_buttons, forum_header, forum_category_tools %} {% from 'forum/macros.twig' import forum_category_listing, forum_topic_listing, forum_category_buttons, forum_header, forum_category_tools %}
{% set title = forum_info.forum_name %} {% set title = forum_info.forum_name %}
{% set canonical_url = '/forum/forum.php'|url_construct({ {% set canonical_url = url_construct('/forum/forum.php', {
'f': forum_info.forum_id, 'f': forum_info.forum_id,
'o': forum_offset, 'o': forum_offset,
}) %} }) %}

View file

@ -51,7 +51,7 @@
<div class="container forum__actions"> <div class="container forum__actions">
<div class="forum__actions__buttons"> <div class="forum__actions__buttons">
{% if perms|perms_check(constant('MSZ_FORUM_PERM_CREATE_TOPIC')) %} {% if perms|perms_check(constant('MSZ_FORUM_PERM_CREATE_TOPIC')) %}
<a href="{{ '/forum/posting.php'|url_construct({'f':info.forum_id}) }}" class="input__button">New Topic</a> <a href="{{ url_construct('/forum/posting.php', {'f':info.forum_id}) }}" class="input__button">New Topic</a>
{% endif %} {% endif %}
</div> </div>
@ -60,7 +60,7 @@
info.forum_topic_count, info.forum_topic_count,
take, take,
offset, offset,
'/forum/forum.php'|url_construct({'f':info.forum_id}), url_construct('/forum/forum.php', {'f':info.forum_id}),
false, false,
null, null,
5 5
@ -84,7 +84,7 @@
info.topic_post_count, info.topic_post_count,
take, take,
offset, offset,
'/forum/topic.php'|url_construct({'t':info.topic_id}), url_construct('/forum/topic.php', {'t':info.topic_id}),
false, false,
null, null,
5 5

View file

@ -12,7 +12,7 @@
%} %}
{% set title = topic_info.topic_title %} {% set title = topic_info.topic_title %}
{% set canonical_url = '/forum/topic.php'|url_construct({ {% set canonical_url = url_construct('/forum/topic.php', {
't': topic_info.topic_id, 't': topic_info.topic_id,
'o': topic_offset, 'o': topic_offset,
}) %} }) %}

View file

@ -3,8 +3,8 @@
{% from 'news/macros.twig' import news_preview %} {% from 'news/macros.twig' import news_preview %}
{% set title = category.category_name ~ ' :: News' %} {% set title = category.category_name ~ ' :: News' %}
{% set manage_link = '/manage/news.php?v=category&c=' ~ category.category_id %} {% set manage_link = url_construct('/manage/news.php', {'v':'category','c':category.category_id}) %}
{% set canonical_url = '/news.php'|url_construct({ {% set canonical_url = url_construct('/news.php', {
'c': category.category_id, 'c': category.category_id,
'o': posts_offset, 'o': posts_offset,
}) %} }) %}
@ -17,7 +17,7 @@
{% endfor %} {% endfor %}
<div class="container" style="padding: 5px;"> <div class="container" style="padding: 5px;">
{{ pagination(category.posts_count, posts_take, posts_offset, '/news.php'|url_construct({'c':category.category_id}), true) }} {{ pagination(category.posts_count, posts_take, posts_offset, url_construct('/news.php', {'c':category.category_id}), true) }}
</div> </div>
</div> </div>

View file

@ -3,7 +3,7 @@
{% from 'news/macros.twig' import news_preview %} {% from 'news/macros.twig' import news_preview %}
{% set title = 'News' %} {% set title = 'News' %}
{% set canonical_url = '/news.php'|url_construct({'o':posts_offset}) %} {% set canonical_url = url_construct('/news.php', {'o':posts_offset}) %}
{% set manage_link = '/manage/news.php?v=index' %} {% set manage_link = '/manage/news.php?v=index' %}
{% block content %} {% block content %}

View file

@ -3,14 +3,14 @@
{% from '_layout/input.twig' import input_select %} {% from '_layout/input.twig' import input_select %}
{% from 'user/macros.twig' import user_card %} {% from 'user/macros.twig' import user_card %}
{% set canonical_url = '/members.php'|url_construct({ {% set canonical_url = url_construct('/members.php', {
'r': role.role_id != 1 ? role.role_id : 0, 'r': role.role_id != 1 ? role.role_id : 0,
'ss': order_field == order_default ? '' : order_field, 'ss': order_field == order_default ? '' : order_field,
'sd': order_fields[order_field]['default-dir'] == order_direction ? '' : order_direction, 'sd': order_fields[order_field]['default-dir'] == order_direction ? '' : order_direction,
'o': users_offset, 'o': users_offset,
't': users_take == 15 ? 0 : users_take, 't': users_take == 15 ? 0 : users_take,
}) %} }) %}
{% set full_url = '/members.php'|url_construct({ {% set full_url = url_construct('/members.php', {
'r': role.role_id != 1 ? role.role_id : 0, 'r': role.role_id != 1 ? role.role_id : 0,
'ss': order_field == order_default ? '' : order_field, 'ss': order_field == order_default ? '' : order_field,
'sd': order_fields[order_field]['default-dir'] == order_direction ? '' : order_direction, 'sd': order_fields[order_field]['default-dir'] == order_direction ? '' : order_direction,

View file

@ -158,7 +158,7 @@
sessions.amount, sessions.amount,
sessions.take, sessions.take,
sessions.offset, sessions.offset,
''|url_construct({ url_construct('', {
'logins[offset]': logins.offset, 'logins[offset]': logins.offset,
'logins[take]': logins.take == 15 ? 0 : logins.take, 'logins[take]': logins.take == 15 ? 0 : logins.take,
'logs[offset]': logs.offset, 'logs[offset]': logs.offset,
@ -205,7 +205,7 @@
logins.amount, logins.amount,
logins.take, logins.take,
logins.offset, logins.offset,
''|url_construct({ url_construct('', {
'logins[take]': logins.take == 15 ? 0 : logins.take, 'logins[take]': logins.take == 15 ? 0 : logins.take,
'logs[offset]': logs.offset, 'logs[offset]': logs.offset,
'logs[take]': logs.take == 15 ? 0 : logs.take, 'logs[take]': logs.take == 15 ? 0 : logs.take,
@ -241,7 +241,7 @@
logs.amount, logs.amount,
logs.take, logs.take,
logs.offset, logs.offset,
''|url_construct({ url_construct('', {
'logins[offset]': logins.offset, 'logins[offset]': logins.offset,
'logins[take]': logins.take == 15 ? 0 : logins.take, 'logins[take]': logins.take == 15 ? 0 : logins.take,
'logs[take]': logs.take == 15 ? 0 : logs.take, 'logs[take]': logs.take == 15 ? 0 : logs.take,

View file

@ -330,7 +330,7 @@ function url_construct(string $path, array $query = [], string $host = ''): stri
foreach ($query as $key => $value) { foreach ($query as $key => $value) {
if ($value) { if ($value) {
$url .= urlencode($key) . '=' . urlencode($value) . '&'; $url .= rawurlencode($key) . '=' . rawurlencode($value) . '&';
} }
} }
} }