mirror of
https://github.com/kvazar-network/webapp.git
synced 2025-02-09 13:44:18 +00:00
implement namespace titles filter
This commit is contained in:
parent
48339a1076
commit
b0d36b203d
@ -104,9 +104,6 @@ class MainController extends AbstractController
|
|||||||
],
|
],
|
||||||
$request->get('part') > 1 ? ((int) $request->get('part') - 1) * (int) $this->getParameter('app.main.index.limit') : 0,
|
$request->get('part') > 1 ? ((int) $request->get('part') - 1) * (int) $this->getParameter('app.main.index.limit') : 0,
|
||||||
$this->getParameter('app.main.index.limit')
|
$this->getParameter('app.main.index.limit')
|
||||||
),
|
|
||||||
'title' => $this->_title(
|
|
||||||
$request->get('namespace')
|
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
$response
|
$response
|
||||||
@ -153,40 +150,8 @@ class MainController extends AbstractController
|
|||||||
'default/main/transaction.html.twig',
|
'default/main/transaction.html.twig',
|
||||||
[
|
[
|
||||||
'request' => $request,
|
'request' => $request,
|
||||||
'record' => $record,
|
'record' => $record
|
||||||
'title' => $this->_title(
|
|
||||||
$record['namespace']
|
|
||||||
)
|
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function _title(string $namespace): ?string
|
|
||||||
{
|
|
||||||
$index = new \Kvazar\Index\Manticore();
|
|
||||||
|
|
||||||
$results = $index->get(
|
|
||||||
'_KEVA_NS_',
|
|
||||||
[
|
|
||||||
'crc32_namespace' => crc32(
|
|
||||||
$namespace
|
|
||||||
)
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
if ($results)
|
|
||||||
{
|
|
||||||
foreach ($results as $result)
|
|
||||||
{
|
|
||||||
if ($result['key'] == '_KEVA_NS_')
|
|
||||||
{
|
|
||||||
return trim(
|
|
||||||
$result['value']
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -24,6 +24,13 @@ class AppExtension extends AbstractExtension
|
|||||||
$this,
|
$this,
|
||||||
'formatType'
|
'formatType'
|
||||||
]
|
]
|
||||||
|
),
|
||||||
|
new TwigFilter(
|
||||||
|
'namespace_title',
|
||||||
|
[
|
||||||
|
$this,
|
||||||
|
'namespaceTitle'
|
||||||
|
]
|
||||||
)
|
)
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@ -122,4 +129,35 @@ class AppExtension extends AbstractExtension
|
|||||||
return '[undefined]';
|
return '[undefined]';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function namespaceTitle(
|
||||||
|
string $namespace
|
||||||
|
): string
|
||||||
|
{
|
||||||
|
$index = new \Kvazar\Index\Manticore();
|
||||||
|
|
||||||
|
$results = $index->get(
|
||||||
|
'_KEVA_NS_',
|
||||||
|
[
|
||||||
|
'crc32_namespace' => crc32(
|
||||||
|
$namespace
|
||||||
|
)
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
if ($results)
|
||||||
|
{
|
||||||
|
foreach ($results as $result)
|
||||||
|
{
|
||||||
|
if ($result['key'] == '_KEVA_NS_')
|
||||||
|
{
|
||||||
|
return trim(
|
||||||
|
$result['value']
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $namespace;
|
||||||
|
}
|
||||||
}
|
}
|
@ -1,5 +1,5 @@
|
|||||||
{% extends 'default/layout.html.twig' %}
|
{% extends 'default/layout.html.twig' %}
|
||||||
{% block title %}{% if title %}{{ title }} - {% endif %}{% if request.get('part') > 1 %}{{ 'Part' | trans | upper }} {{ request.get('part') }} - {% endif %}{{ app.name }}{% endblock %}
|
{% block title %}{{ request.get('namespace') | namespace_title }} - {% if request.get('part') > 1 %}{{ 'Part' | trans | upper }} {{ request.get('part') }} - {% endif %}{{ app.name }}{% endblock %}
|
||||||
{% block favicon %}<link rel="icon" href="{{ request.get('namespace') | jIdenticon }}" />{% endblock %}
|
{% block favicon %}<link rel="icon" href="{{ request.get('namespace') | jIdenticon }}" />{% endblock %}
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="t-center px-16 pt-54">
|
<div class="t-center px-16 pt-54">
|
||||||
@ -10,11 +10,9 @@
|
|||||||
<div class="mx-a mw-560 px-16 pb-16">
|
<div class="mx-a mw-560 px-16 pb-16">
|
||||||
<img class="br-50 shine" src="{{ request.get('namespace') | jIdenticon }}" alt="{{ request.get('namespace') }}" />
|
<img class="br-50 shine" src="{{ request.get('namespace') | jIdenticon }}" alt="{{ request.get('namespace') }}" />
|
||||||
</div>
|
</div>
|
||||||
{% if title %}
|
<div class="mb-36 c-1">
|
||||||
<div class="mb-36 c-1">
|
{{ request.get('namespace') | namespace_title }}
|
||||||
{{ title }}
|
</div>
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="t-center px-16 pb-36">
|
<div class="t-center px-16 pb-36">
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||||
<channel>
|
<channel>
|
||||||
<atom:link href="{{ url('main_namespace',{'namespace':request.get('namespace')}) }}" rel="self" type="application/rss+xml"></atom:link>
|
<atom:link href="{{ url('main_namespace',{'namespace':request.get('namespace')}) }}" rel="self" type="application/rss+xml"></atom:link>
|
||||||
<title>{{ app.name }}</title>
|
<title>{{ request.get('namespace') | namespace_title }} - {{ app.name }}</title>
|
||||||
<link>{{ url('main_namespace',{'namespace':request.get('namespace')}) }}</link>
|
<link>{{ url('main_namespace',{'namespace':request.get('namespace')}) }}</link>
|
||||||
{% for record in records %}
|
{% for record in records %}
|
||||||
<item>
|
<item>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
{% extends 'default/layout.html.twig' %}
|
{% extends 'default/layout.html.twig' %}
|
||||||
{% block title %}{% if title %}{{ title }} - {% endif %}{{ app.name }}{% endblock %}
|
{% block title %}{{ record.key | format_type(record.type.key) }} - {{ record.namespace | namespace_title }} - {{ app.name }}{% endblock %}
|
||||||
{% block favicon %}<link rel="icon" href="{{ record.namespace | jIdenticon }}" />{% endblock %}
|
{% block favicon %}<link rel="icon" href="{{ record.namespace | jIdenticon }}" />{% endblock %}
|
||||||
{% block body %}
|
{% block body %}
|
||||||
<div class="t-center px-16 pt-54">
|
<div class="t-center px-16 pt-54">
|
||||||
@ -12,11 +12,9 @@
|
|||||||
<img class="br-50 shine" src="{{ record.namespace | jIdenticon }}" alt="{{ record.namespace }}" />
|
<img class="br-50 shine" src="{{ record.namespace | jIdenticon }}" alt="{{ record.namespace }}" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{% if title %}
|
<div class="mb-36 c-1">
|
||||||
<div class="mb-36 c-1">
|
{{ record.namespace | namespace_title }}
|
||||||
{{ title }}
|
</div>
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="t-center px-16 pb-36">
|
<div class="t-center px-16 pb-36">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user