Mercurial Hosting > lang
diff src/save_chat.js.luan @ 29:505185272dd7
edit chat
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sat, 02 Aug 2025 22:39:48 -0600 |
parents | src/save_rename_chat.js.luan@b1adec083e44 |
children | 1e7d855afde3 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/save_chat.js.luan Sat Aug 02 22:39:48 2025 -0600 @@ -0,0 +1,28 @@ +local Luan = require "luan:Luan.luan" +local error = Luan.error +local Parsers = require "luan:Parsers.luan" +local json_string = Parsers.json_string or error() +local Io = require "luan:Io.luan" +local Http = require "luan:http/Http.luan" +local Chat = require "site:/lib/Chat.luan" +local get_chat_by_id = Chat.get_by_id or error() +local User = require "site:/lib/User.luan" +local current_user = User.current or error() +local Db = require "site:/lib/Db.luan" +local run_in_transaction = Db.run_in_transaction or error() + + +return function() + local chat = Http.request.parameters.chat or error() + local name = Http.request.parameters.name or error() + run_in_transaction( function() + chat = get_chat_by_id(chat) or error() + chat.user_id == current_user().id or error() + chat.name = name + chat.save() + end ) + Io.stdout = Http.response.text_writer() +%> + setChat(<%= json_string(chat.info()) %>); +<% +end