Files
web_django_template/site/social/templates/social/post_detail.html
T
westfarnandCursor 787f0e48fb Populate the client website template with catalog feature flags.
Extract always-on public/portal/UTM plus optional email_sms, directmail, blog, payments, social, and social_ai so new client sites can be bootstrapped from this seed.

Refs #1
Refs #2

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 07:55:26 -05:00

59 lines
2.3 KiB
HTML

{% extends "portal_base.html" %}
{% block title %}Post · Portal{% endblock %}
{% block topbar_title %}Social post{% endblock %}
{% block portal_content %}
<div class="toolbar">
<span class="badge badge-{{ post.status }}">{{ post.get_status_display }}</span>
<a class="btn btn-sm btn-ghost" href="{% url 'social:post_list' %}">← All posts</a>
</div>
<div class="split">
<div class="panel">
<div class="panel-h"><h2>Caption</h2></div>
<div class="panel-b">
{% if post.media %}
<div style="display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px">
{% for item in post.media %}
{% if item.type == "video" %}
<video src="{{ item.url }}" controls playsinline style="max-width:100%;max-height:280px;border-radius:8px"></video>
{% else %}
<img src="{{ item.url }}" alt="{{ item.filename|default:'Image' }}" style="max-width:100%;max-height:280px;border-radius:8px;object-fit:contain">
{% endif %}
{% endfor %}
</div>
{% endif %}
<div class="preview-pane" style="white-space:pre-wrap">{{ post.body }}</div>
{% if post.scheduled_for %}
<p class="hint-block">Scheduled {{ post.scheduled_for|date:"M j, Y g:i A" }}</p>
{% endif %}
{% if post.ollama_prompt %}
<p class="hint-block">AI prompt: {{ post.ollama_prompt }}</p>
{% endif %}
</div>
</div>
<div class="panel">
<div class="panel-h"><h2>Targets</h2></div>
<div class="panel-b" style="padding:0">
<table class="table">
<thead><tr><th>Account</th><th>Platform</th><th>Status</th></tr></thead>
<tbody>
{% for target in post.targets.all %}
<tr>
<td>
{{ target.account.display_name }}
{% if target.account.external_id %}
<br><span class="muted" style="overflow-wrap:anywhere">{{ target.account.external_id }}</span>
{% endif %}
</td>
<td>{{ target.get_platform_display }}</td>
<td><span class="badge badge-{{ target.status }}">{{ target.get_status_display }}</span></td>
</tr>
{% empty %}
<tr><td colspan="3" class="empty-state">No targets attached.</td></tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
{% endblock %}