Mercurial Hosting > lang
view src/your_courses.html.luan @ 67:1793510fa36a
course description
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 22 Aug 2025 10:28:13 -0600 |
parents | 2ff1f78bb13e |
children |
line wrap: on
line source
local Luan = require "luan:Luan.luan" local error = Luan.error local ipairs = Luan.ipairs or error() local pairs = Luan.pairs 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 languages = Shared.languages 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 course_search = Course.search or error() local Logging = require "luan:logging/Logging.luan" local logger = Logging.logger "your_courses.html" return function() local user = current_user() if user == nil then return end local courses = course_search( "course_user_id:"..user.id, "course_updated desc" ) local select_language = #courses > 0 and courses[1].language or nil Io.stdout = Http.response.text_writer() %> <!doctype html> <html lang="en"> <head> <% head() %> <style> form { margin-bottom: 20px; } td { padding: 8px 8px; } </style> </head> <body> <% header() %> <div content> <h1>Your Courses</h1> <form action="edit_course.html"> <select name=language> <% for code, name in pairs(languages) do local selected = code==select_language and "selected" or "" %> <option value="<%=code%>" <%=selected%> ><%=name%></option> <% end %> </select> <input type=submit value="New course"> </form> <table> <% for _, course in ipairs(courses) do %> <tr> <td><%= course.language_name() %></td> <td><a href="view_course.html?course=<%=course.id%>"><%= course.name_html() %></a></td> </tr> <% end %> </table> </div> </body> </html> <% end