52 lines
2 KiB
Django/Jinja
52 lines
2 KiB
Django/Jinja
<!-- upload_media.html.j2 -->
|
|
{% extends 'base.html.j2' %}
|
|
|
|
{% block title %}Upload Media{% endblock %}
|
|
|
|
{% block content %}
|
|
<h1>Upload Media to Namespace '{{ namespace.name }}'</h1>
|
|
<form method="POST" enctype="multipart/form-data">
|
|
<input type="hidden" name="csrf_token" value="{{ request.session.get_csrf_token() }}">
|
|
|
|
<label for="media_file">Media File:</label>
|
|
<input type="file" name="media_file" accept="image/*,audio/*,video/*,text/*,application/pdf,application/json,application/zip" required><br><br>
|
|
|
|
<label for="title">Title (optional):</label>
|
|
<input type="text" name="title"><br><br>
|
|
|
|
<fieldset>
|
|
<legend>Visibility</legend>
|
|
<label>
|
|
<input type="radio" name="visibility" value="public" checked>
|
|
Public - Visible in listings and accessible to all
|
|
</label><br>
|
|
<label>
|
|
<input type="radio" name="visibility" value="private">
|
|
Private - Only accessible to namespace members
|
|
</label><br>
|
|
<label>
|
|
<input type="radio" name="visibility" value="unlisted">
|
|
Unlisted - Accessible via direct link but hidden from listings
|
|
</label>
|
|
</fieldset><br>
|
|
|
|
<details>
|
|
<summary>Scheduled Actions (Optional)</summary>
|
|
<fieldset>
|
|
<label for="scheduled_public">Schedule to become Public:</label>
|
|
<input type="datetime-local" name="scheduled_public"><br><br>
|
|
|
|
<label for="scheduled_private">Schedule to become Private:</label>
|
|
<input type="datetime-local" name="scheduled_private"><br><br>
|
|
|
|
<label for="scheduled_unlisted">Schedule to become Unlisted:</label>
|
|
<input type="datetime-local" name="scheduled_unlisted"><br><br>
|
|
|
|
<label for="scheduled_delete">Schedule for Deletion:</label>
|
|
<input type="datetime-local" name="scheduled_delete"><br><br>
|
|
</fieldset>
|
|
</details>
|
|
|
|
<button type="submit">Upload</button>
|
|
</form>
|
|
{% endblock %}
|