Mercurial Hosting > lang
comparison src/lib/Course.luan @ 46:cc20eebaa74a
use openai tts
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 14 Aug 2025 11:27:34 +0900 |
parents | 3a80ddafe5a4 |
children | 27758f3b2d69 |
comparison
equal
deleted
inserted
replaced
45:fef7a5c65cfb | 46:cc20eebaa74a |
---|---|
4 local Number = require "luan:Number.luan" | 4 local Number = require "luan:Number.luan" |
5 local long = Number.long or error() | 5 local long = Number.long or error() |
6 local Html = require "luan:Html.luan" | 6 local Html = require "luan:Html.luan" |
7 local html_encode = Html.encode or error() | 7 local html_encode = Html.encode or error() |
8 local Db = require "site:/lib/Db.luan" | 8 local Db = require "site:/lib/Db.luan" |
9 local languages = require "site:/lib/languages.luan" | 9 local Shared = require "site:/lib/Shared.luan" |
10 local languages = Shared.languages or error() | |
10 | 11 |
11 | 12 |
12 local Course = {} | 13 local Course = {} |
13 | 14 |
14 local function from_doc(doc) | 15 local function from_doc(doc) |
19 language = doc.course_language | 20 language = doc.course_language |
20 updated = doc.course_updated | 21 updated = doc.course_updated |
21 name = doc.name | 22 name = doc.name |
22 ai_system_prompt = doc.ai_system_prompt | 23 ai_system_prompt = doc.ai_system_prompt |
23 ai_first_message = doc.ai_first_message | 24 ai_first_message = doc.ai_first_message |
25 tts_instructions = doc.tts_instructions | |
24 } | 26 } |
25 end | 27 end |
26 | 28 |
27 local function to_doc(course) | 29 local function to_doc(course) |
28 return { | 30 return { |
32 course_language = course.language or error() | 34 course_language = course.language or error() |
33 course_updated = long(course.updated) | 35 course_updated = long(course.updated) |
34 name = course.name or error() | 36 name = course.name or error() |
35 ai_system_prompt = course.ai_system_prompt or error() | 37 ai_system_prompt = course.ai_system_prompt or error() |
36 ai_first_message = course.ai_first_message | 38 ai_first_message = course.ai_first_message |
39 tts_instructions = course.tts_instructions | |
37 } | 40 } |
38 end | 41 end |
39 | 42 |
40 function Course.new(course) | 43 function Course.new(course) |
41 | 44 |
48 function course.name_html() | 51 function course.name_html() |
49 return html_encode(course.name) | 52 return html_encode(course.name) |
50 end | 53 end |
51 | 54 |
52 function course.language_name() | 55 function course.language_name() |
53 return languages[course.language].name | 56 return languages[course.language] |
54 end | 57 end |
55 | 58 |
56 return course | 59 return course |
57 end | 60 end |
58 | 61 |