fix: modal-share liens de partage fonctionnels

- URLs de partage réelles (intent/tweet, sharer, share-offsite, etc.)
- rawurlencode() + ->value() pour éviter la double-échappement HTML
- Mastodon via toot.kytta.dev
- URL copy-link dynamique via $page->url()

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
isUnknown 2026-02-27 16:20:39 +01:00
parent 59c5396184
commit 76add8b87f

View file

@ -1,39 +1,41 @@
<?php
$shareUrl = $page->url();
$shareTitle = $page->title()->value();
if ($page->subtitle()->isNotEmpty()) {
$shareTitle .= ' — ' . $page->subtitle()->value();
}
$shareText = $shareTitle . ' — ' . $shareUrl;
?>
<div class="modal--share">
<p class="title"><?= $page->title()->esc() ?>
<?php if ($page->subtitle()->isNotEmpty()): ?>
<?= $page->subtitle()->esc() ?>
<?php endif ?>
</p>
<p class="title"><?= htmlspecialchars($shareTitle) ?></p>
<ul class="socials">
<li class="socials__x">
<a href="https://x.com/index_ngo" target="_blank" rel="noopener noreferrer">
<a href="https://x.com/intent/tweet?url=<?= rawurlencode($shareUrl) ?>&text=<?= rawurlencode($shareTitle) ?>&via=index_ngo" target="_blank" rel="noopener noreferrer">
<span class="icon"><?= svg('assets/icons/socials/x-social.svg') ?></span>
<span class="text">X</span>
</a>
</li>
<li class="socials__facebook">
<a href="https://www.facebook.com/index.ngo/" target="_blank" rel="noopener noreferrer">
<a href="https://www.facebook.com/sharer/sharer.php?u=<?= rawurlencode($shareUrl) ?>" target="_blank" rel="noopener noreferrer">
<span class="icon"><?= svg('assets/icons/socials/facebook.svg') ?></span>
<span class="text">Facebook</span>
</a>
</li>
<li class="socials__linkedin">
<a href="https://fr.linkedin.com/company/index-ngo" target="_blank" rel="noopener noreferrer">
<a href="https://www.linkedin.com/sharing/share-offsite/?url=<?= rawurlencode($shareUrl) ?>" target="_blank" rel="noopener noreferrer">
<span class="icon"><?= svg('assets/icons/socials/linkedin.svg') ?></span>
<span class="text">LinkedIn</span>
</a>
</li>
<li class="socials__bsk">
<a href="https://bsky.app/profile/index-ngo.bsky.social" target="_blank" rel="noopener noreferrer">
<a href="https://bsky.app/intent/compose?text=<?= rawurlencode($shareText) ?>" target="_blank" rel="noopener noreferrer">
<span class="icon"><?= svg('assets/icons/socials/bluesky.svg') ?></span>
<span class="text">Bluesky</span>
</a>
</li>
<li class="socials__mastodon">
<a href="https://mastodon.design/@index_ngo@mastodon.social" target="_blank" rel="noopener noreferrer">
<a href="https://toot.kytta.dev/?text=<?= rawurlencode($shareText) ?>" target="_blank" rel="noopener noreferrer">
<span class="icon"><?= svg('assets/icons/socials/mastodon.svg') ?></span>
<span class="text">Mastodon</span>
</a>
@ -43,7 +45,7 @@
<div class="copy-link">
<div class="copy-link__field">
<span class="icon"><?= svg('assets/icons/link.svg') ?></span>
<input type="text" readonly="" value="http://localhost:8000/enquetes/l-execution-de-nidal-et-khaled-amirah-a-naplouse">
<input type="text" readonly="" value="<?= $shareUrl ?>">
</div>
<button class="copy-link__btn">Copier</button>
</div>