{% extends "base.html" %}
{% block title %}{{ 'Edit post' if post else 'New post' }}{% endblock %}
{% block head %}
<link rel="stylesheet" href="{{ url_for('static', filename='css/admin_page.css') }}">
{% endblock %}
{% block content %}
<div class="admin-wrap">
<div class="admin-top">
<h1 class="admin-title">{{ 'Edit post' if post else 'New post' }}</h1>
<div class="admin-row">
<a class="btn" href="{{ url_for('admin_posts') }}">Back</a>
{% if post and post.is_published %}
<a class="btn" href="{{ url_for('blog_post', slug=post.slug) }}" target="_blank" rel="noopener">View</a>
{% endif %}
</div>
</div>
{% with messages = get_flashed_messages() %}
{% if messages %}
{% for m in messages %}
<div class="flash">{{ m }}</div>
{% endfor %}
{% endif %}
{% endwith %}
<form class="form-grid" method="post" enctype="multipart/form-data">
<label>Title</label>
<input name="title" value="{{ post.title if post else '' }}" required>
<label>Slug (optional)</label>
<input name="slug" value="{{ post.slug if post else '' }}" placeholder="auto-from-title">
<label>Excerpt (optional)</label>
<input name="excerpt" value="{{ post.excerpt if post else '' }}" maxlength="240" placeholder="Short summary shown on the blog list">
<label>Tags (optional)</label>
<input name="tags" value="{{ (post.tags|join(', ')) if post and post.tags else '' }}" placeholder="e.g. Python, Flask, Systems">
<label>Cover image (optional)</label>
{% if post and post.cover_image %}
<div class="admin-thumb-row">
<img class="admin-thumb" src="{{ url_for('static', filename='uploads/' + post.cover_image) }}" alt="Cover">
<label class="admin-inline"><input type="checkbox" name="remove_cover"> Remove cover</label>
</div>
{% endif %}
<input type="file" name="cover_image" accept="image/*">
<label>Post images (optional)</label>
{% if post and post.images and post.images|length > 0 %}
<div class="admin-gallery">
{% for im in post.images %}
<img class="admin-thumb" src="{{ url_for('static', filename='uploads/' + im) }}" alt="Image {{ loop.index }}">
{% endfor %}
</div>
<label class="admin-inline"><input type="checkbox" name="remove_gallery"> Remove all gallery images</label>
{% endif %}
<input type="file" name="post_images" accept="image/*" multiple>
<div class="admin-row">
<label style="display:flex; gap:10px; align-items:center; margin:0;">
<input type="checkbox" name="is_published" {% if post and post.is_published %}checked{% endif %}>
Published
</label>
</div>
<label>Content (Markdown)</label>
<textarea name="content_md" required>{{ post.content_md if post else '' }}</textarea>
<div class="admin-row">
<button class="btn" type="submit">Save</button>
<span class="page-desc" style="margin:0; font-size:13px;">Markdown supported. Code fences and tables are enabled.</span>
</div>
</form>
</div>
{% endblock %}