Add a format dropdown that pins the set, framing and brief
This commit is contained in:
parent
6fccc3eb3b
commit
c4491ac8f1
1 changed files with 29 additions and 5 deletions
34
create.html
34
create.html
|
|
@ -39,11 +39,17 @@
|
|||
<textarea id="notes" placeholder="Astro has hated our robot vacuum since day one and barks at it every time it docks. Play it like he is filing a formal grievance with management."></textarea>
|
||||
</div>
|
||||
|
||||
<h2 class="sec" style="margin-top:34px">3 · Where it happens</h2>
|
||||
<h2 class="sec" style="margin-top:34px">3 · What kind of video</h2>
|
||||
<div class="field">
|
||||
<label for="scene">The setting <span style="color:var(--muted);font-weight:400">(optional)</span></label>
|
||||
<span class="hint">A starting point for every shot, which you can change shot by shot later. Real or not: a podcast booth, a field of tall grass, floating on a surfboard.</span>
|
||||
<input type="text" id="scene" placeholder="a podcast booth with warm lamps behind">
|
||||
<label for="format">Format</label>
|
||||
<span class="hint">This decides the set, the framing and how it is written, before a word exists.</span>
|
||||
<select id="format"><option value="podcast">Podcast episode</option></select>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label for="scene">Override the setting <span style="color:var(--muted);font-weight:400">(optional)</span></label>
|
||||
<span class="hint">Leave blank to use the format's own set. Real or not: a field of tall grass, floating on a surfboard.</span>
|
||||
<input type="text" id="scene" placeholder="">
|
||||
<p class="foot" id="fmtscene" style="margin:8px 0 0;color:var(--muted)"></p>
|
||||
</div>
|
||||
<div class="field">
|
||||
<label>Do they agree or disagree?</label>
|
||||
|
|
@ -87,7 +93,24 @@
|
|||
<script>
|
||||
navBar("create");
|
||||
var email = requireSession();
|
||||
var stance = "auto", segments = 4, havePets = false;
|
||||
var stance = "auto", segments = 4, havePets = false, FORMATS = [];
|
||||
|
||||
(async function loadFormats() {
|
||||
var r = await api("camera_presets", {});
|
||||
if (!r.ok || !r.formats) return;
|
||||
FORMATS = r.formats;
|
||||
var sel = document.getElementById("format");
|
||||
sel.innerHTML = FORMATS.map(function (f) {
|
||||
return '<option value="' + esc(f.id) + '">' + esc(f.label) + '</option>';
|
||||
}).join("");
|
||||
function showScene() {
|
||||
var f = FORMATS.filter(function (x) { return x.id === sel.value; })[0];
|
||||
document.getElementById("fmtscene").textContent =
|
||||
f ? "Uses: " + f.scene : "";
|
||||
}
|
||||
sel.addEventListener("change", showScene);
|
||||
showScene();
|
||||
})();
|
||||
|
||||
function chipGroup(id, cb) {
|
||||
var g = document.getElementById(id);
|
||||
|
|
@ -148,6 +171,7 @@ document.getElementById("form").addEventListener("submit", async function (e) {
|
|||
email: email, pet_id: petSel.value,
|
||||
pet_name: opt ? opt.getAttribute("data-name") : "",
|
||||
source_url: url, owner_notes: notes, scene: scene,
|
||||
format: document.getElementById("format").value,
|
||||
stance: stance, segments: segments
|
||||
});
|
||||
btn.disabled = false; btn.textContent = "Write the script";
|
||||
|
|
|
|||
Loading…
Reference in a new issue