Mercurial Hosting > lang
comparison src/chat.html.luan @ 46:cc20eebaa74a
use openai tts
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 14 Aug 2025 11:27:34 +0900 |
parents | 1d9d9786d76f |
children | 97b0d206cacd |
comparison
equal
deleted
inserted
replaced
45:fef7a5c65cfb | 46:cc20eebaa74a |
---|---|
14 local voices = Shared.voices or error() | 14 local voices = Shared.voices or error() |
15 local User = require "site:/lib/User.luan" | 15 local User = require "site:/lib/User.luan" |
16 local current_user = User.current or error() | 16 local current_user = User.current or error() |
17 local Chat = require "site:/lib/Chat.luan" | 17 local Chat = require "site:/lib/Chat.luan" |
18 local get_chat_by_id = Chat.get_by_id or error() | 18 local get_chat_by_id = Chat.get_by_id or error() |
19 local languages = require "site:/lib/languages.luan" | 19 local Utils = require "site:/lib/Utils.luan" |
20 local capitalize = Utils.capitalize or error() | |
20 | 21 |
21 | 22 |
22 return function() | 23 return function() |
23 local chat_id = Http.request.parameters.chat or error() | 24 local chat_id = Http.request.parameters.chat or error() |
24 local chat = get_chat_by_id(chat_id) or error() | 25 local chat = get_chat_by_id(chat_id) or error() |
77 <input type=text name=name required><br> | 78 <input type=text name=name required><br> |
78 <span error></span> | 79 <span error></span> |
79 </p> | 80 </p> |
80 <p><%= chat.language_name() %></p> | 81 <p><%= chat.language_name() %></p> |
81 <p> | 82 <p> |
82 <label>Region</label><br> | |
83 <select name=language_region> | |
84 <% for _, region in ipairs(languages[chat.language].regions) do %> | |
85 <option value="<%=region.code%>"><%=region.name%></option> | |
86 <% end %> | |
87 <select> | |
88 </p> | |
89 <p> | |
90 <label>Voice</label><br> | 83 <label>Voice</label><br> |
91 <select name=voice> | 84 <select name=voice> |
92 <% for _, voice in ipairs(voices) do %> | 85 <% for _, voice in ipairs(voices) do %> |
93 <option value="<%=voice.code%>"><%=voice.name%></option> | 86 <option value="<%=voice%>"><%=capitalize(voice)%></option> |
94 <% end %> | 87 <% end %> |
95 <select> | 88 <select> |
96 </p> | 89 </p> |
97 <p> | 90 <p> |
98 <label clickable><input type=checkbox name=autoplay>Autoplay</label> | 91 <label clickable><input type=checkbox name=autoplay>Autoplay</label> |