diff blog/src/edit.luan @ 596:6bb0c83116e9

add blog sample app
author Franklin Schmidt <fschmidt@gmail.com>
date Tue, 15 Sep 2015 21:30:33 -0600
parents
children ca169567ce07
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/blog/src/edit.luan	Tue Sep 15 21:30:33 2015 -0600
@@ -0,0 +1,43 @@
+local Luan = require "luan:Luan"
+local error = Luan.error
+local String = require "luan:String"
+local to_number = String.to_number or error()
+local Io = require "luan:Io"
+local Http = require "luan:http/Http"
+local Post = require "site:/lib/Post"
+
+
+return function()
+	local post_id = to_number(Http.request.parameter.post) or error()
+	local post = Post.get_by_id(post_id) or error()
+	if Http.request.parameter.save ~= nil then
+		post.subject = Http.request.parameter.subject
+		post.content = Http.request.parameter.content
+		post.save()
+		Http.response.send_redirect("/#p"..post.id)
+		return
+	end
+
+	Io.stdout = Http.response.text_writer()
+%>
+<html>
+	<head>
+		<style>
+			@import "/site.css";
+		</style>
+	</head>
+	<body>
+		<h1>Make New Post</h1>
+
+		<form method=post>
+			<p>Subject: <input name=subject size=50 type=text value="<%= post.subject %>"></p>
+			<p><textarea name=content rows=20 cols=90><%= post.content %></textarea></p>
+			<p>
+				<input type=submit name=save value=Submit>
+			</p>
+		</form>
+
+	</body>
+</html>
+<%
+end