Mercurial Hosting > freedit
view src/new_thread.html.luan @ 43:298c71e0c854
caching
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Wed, 09 Nov 2022 23:05:01 -0700 |
parents | 0c1b820fff34 |
children | 289718f121e4 |
line wrap: on
line source
local Luan = require "luan:Luan.luan" local error = Luan.error local Io = require "luan:Io.luan" local Http = require "luan:http/Http.luan" local Shared = require "site:/lib/Shared.luan" local head = Shared.head or error() local header = Shared.header or error() local footer = Shared.footer or error() local Forum = require "site:/lib/Forum.luan" local forum_title = Forum.title or error() local Post = require "site:/lib/Post.luan" local User = require "site:/lib/User.luan" return function() local user = User.current_required() if user==nil then return end if Http.request.method == "POST" then local subject = Http.request.parameters.subject or error() local content = Http.request.parameters.content or error() local post = Post.new_thread(user,subject,content) Http.response.send_redirect("/thread.html?root="..post.id) return end Io.stdout = Http.response.text_writer() %> <!doctype html> <html> <head> <% head() %> <title><%=forum_title%>: new thread</title> <style> textarea { width: 100%; } </style> <script> function uploaded(input,url,filename) { let textarea = document.querySelector('textarea'); textarea.focus(); textarea.setRangeText(url,textarea.selectionStart,textarea.selectionEnd,'select'); } </script> </head> <body> <% header() %> <div content> <h1>New Thread</h1> <form method=post> <p> <label>Subject</label> <input name=subject required> </p> <p><textarea name=content oninput="fixTextarea(this)"></textarea></p> <p> <input type=file onchange="upload(this,uploaded)"> <button type=button onclick="fileButtonClick(this)">Upload File</button> </p> <p><input type=submit></p> </form> </div> <% footer() %> </body> </html> <% end