Mercurial Hosting > lang
view src/edit_course.html.luan @ 24:87fe70201aa8
courses work
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 31 Jul 2025 22:30:26 -0600 |
parents | |
children | 3a80ddafe5a4 |
line wrap: on
line source
local Luan = require "luan:Luan.luan" local error = Luan.error local Html = require "luan:Html.luan" local html_encode = Html.encode or 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 User = require "site:/lib/User.luan" local current_user = User.current_required or error() local Course = require "site:/lib/Course.luan" local get_course_by_id = Course.get_by_id or error() return function() local user = current_user() if user == nil then return end local course_id = Http.request.parameters.course local course if course_id ~= nil then course = get_course_by_id(course_id) or error() course.user_id == user.id or error() else course = Course.new{ language = Http.request.parameters.language or error() name = "" ai_system_prompt = "" } end Io.stdout = Http.response.text_writer() %> <!doctype html> <html lang="en"> <head> <% head() %> <style> label, input, textarea { display: block; } </style> </head> <body> <% header() %> <form content onsubmit="ajaxForm('/save_course.js',this)" action="javascript:"> <h1>Edit Course</h1> <p> Language: <%= course.language_name() %> <input type=hidden name=language value="<%=course.language%>"> <% if course_id ~= nil then %> <input type=hidden name=course value="<%=course_id%>"> <% end %> </p> <p> <label prompt>Course name</label> <input required name=name value="<%=html_encode(course.name)%>"> </p> <p> <label prompt>AI system prompt</label> <textarea required name=ai_system_prompt><%=html_encode(course.ai_system_prompt)%></textarea> </p> <p> <input type=submit> </p> </form> </body> </html> <% end