Browse Source

Editor: user's relays

imwald
Nuša Pukšič 2 weeks ago
parent
commit
9733c1a455
  1. 8
      src/Security/UserDTOProvider.php
  2. 17
      templates/editor/layout.html.twig
  3. 17
      templates/editor/panels/_relays.html.twig

8
src/Security/UserDTOProvider.php

@ -52,6 +52,10 @@ readonly class UserDTOProvider implements UserProviderInterface @@ -52,6 +52,10 @@ readonly class UserDTOProvider implements UserProviderInterface
$metadata = $this->redisCacheService->getMetadata($pubkey);
$freshUser->setMetadata($metadata);
// Fetch relays from RedisCacheService and set on user
$relays = $this->redisCacheService->getRelays($pubkey);
$freshUser->setRelays($relays);
// Sync metadata to database fields (will also trigger Elasticsearch indexing via listener)
$this->metadataSyncService->syncUser($freshUser);
@ -98,6 +102,10 @@ readonly class UserDTOProvider implements UserProviderInterface @@ -98,6 +102,10 @@ readonly class UserDTOProvider implements UserProviderInterface
$user->setMetadata($metadata);
$this->logger->debug('User metadata set.', ['metadata' => json_encode($user->getMetadata())]);
// Fetch relays from RedisCacheService and set on user
$relays = $this->redisCacheService->getRelays($pubkey);
$user->setRelays($relays);
// Sync metadata to database fields (will also trigger Elasticsearch indexing via listener)
$this->metadataSyncService->syncUser($user);

17
templates/editor/layout.html.twig

@ -291,6 +291,15 @@ @@ -291,6 +291,15 @@
>
Advanced
</button>
<button
type="button"
class="editor-sidebar-tab"
data-editor--panels-target="tab"
data-panel="relays"
data-action="editor--panels#switch"
>
Relays
</button>
{# Media tab temporarily hidden - will be redesigned later
<button
type="button"
@ -321,6 +330,14 @@ @@ -321,6 +330,14 @@
{% include 'editor/panels/_advanced.html.twig' with { form: form } %}
</div>
<div
class="editor-panel"
data-editor--panels-target="panel"
data-panel="relays"
>
{% include 'editor/panels/_relays.html.twig' with { form: form } %}
</div>
{# Media panel temporarily hidden - will be redesigned later
<div
class="editor-panel is-hidden"

17
templates/editor/panels/_relays.html.twig

@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
{% if app.user %}
<div class="panel-section">
<h3>Relays</h3>
<p>Your article will be published to the following relays.</p>
<small>You'll be able to select a subset in the future.</small>
{% set relays = app.user.relays %}
{% if relays and relays|length > 0 %}
<ul>
{% for relay in relays %}
<li>{{ relay }}</li>
{% endfor %}
</ul>
{% else %}
<p>No relays found.</p>
{% endif %}
</div>
{% endif %}
Loading…
Cancel
Save