diff --git a/database/socialbot.db b/database/socialbot.db index 6c5902b..c74d782 100644 Binary files a/database/socialbot.db and b/database/socialbot.db differ diff --git a/lib/index.js b/lib/index.js new file mode 100644 index 0000000..7fb7b3e --- /dev/null +++ b/lib/index.js @@ -0,0 +1,28 @@ +var db = require('../models'); +var User = db.User; +var Session = db.Session; + +async function getAuthUser(sessionId) { + var session; + var user; + if(sessionId != undefined) { + session = await Session.findOne({ + include: User, + where: { + sessionid: sessionId + } + }); + if(session) { + user = session.User; + return user; + } else { + return; + } + } else { + return; + } +} + +module.exports = { + getAuthUser, +}; \ No newline at end of file diff --git a/public/stylesheets/style.css b/public/stylesheets/style.css index 6668550..ac469cc 100644 --- a/public/stylesheets/style.css +++ b/public/stylesheets/style.css @@ -823,6 +823,11 @@ Ensure the default browser behavior of the `hidden` attribute. line-height: 2rem; } +.text-xs { + font-size: 0.75rem; + line-height: 1rem; +} + .font-bold { font-weight: 700; } @@ -847,6 +852,21 @@ Ensure the default browser behavior of the `hidden` attribute. color: rgb(37 99 235 / var(--tw-text-opacity)); } +.text-gray-300 { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); +} + +.text-gray-800 { + --tw-text-opacity: 1; + color: rgb(31 41 55 / var(--tw-text-opacity)); +} + +.text-gray-500 { + --tw-text-opacity: 1; + color: rgb(107 114 128 / var(--tw-text-opacity)); +} + .shadow { --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color); diff --git a/routes/index.js b/routes/index.js index 4c06968..43ae4d6 100644 --- a/routes/index.js +++ b/routes/index.js @@ -3,29 +3,20 @@ var router = express.Router(); var db = require('../models'); var User = db.User; var Session = db.Session; +var lib = require('../lib'); /* GET home page. */ router.get('/', async function(req, res, next) { console.log(req.cookies.sessionid); var sessionId = req.cookies.sessionid; - var session; - var user; - if(sessionId != undefined) { - session = await Session.findOne({ - include: User, - where: { - sessionid: sessionId - } - }); - if(session) { - user = session.User; - res.render('index', { auth: user }); - } else { - res.redirect('/login'); - } + var user = await lib.getAuthUser(sessionId); + if(user) { + var messages = await user.getMessages(); + res.render('index', { auth:user, messages:messages }); } else { res.redirect('/login'); } + }); module.exports = router; diff --git a/routes/message.js b/routes/message.js index c6721a6..f4c4b73 100644 --- a/routes/message.js +++ b/routes/message.js @@ -3,6 +3,8 @@ const db = require('../models'); var router = express.Router(); var Message = db.Message; var User = db.User; +var lib = require('../lib'); + /* GET users listing. */ router.get('/get', async function(req, res, next) { var messages = await Message.findAll(); @@ -55,4 +57,15 @@ router.get('/new2', async function(req, res, next) { res.send(message); }); +router.post('/add', async function(req, res, next) { + var sessionId = req.cookies.sessionid; + var user = await lib.getAuthUser(sessionId); + if(user) { + user.createMessage({ body: req.body.body }); + res.redirect('/'); + } else { + res.redirect('/login'); + } +}); + module.exports = router; diff --git a/views/index.ejs b/views/index.ejs index 428fa16..b847a32 100644 --- a/views/index.ejs +++ b/views/index.ejs @@ -32,7 +32,7 @@
- John Doe + <%= auth.name %>
<%= auth.name %>
<%= auth.email %>
@@ -67,10 +67,10 @@
-
+ + name="body" id="body" cols="20" placeholder="What's on your mind?">
- <% for(var i=0; i < 8; i++) {%> - <%- include('partials/_toot') %> - <% } %> + <%- include('partials/_toot', {auth:auth, messages:messages}) %>
diff --git a/views/partials/_toot.ejs b/views/partials/_toot.ejs index 8df4ace..4c1abae 100644 --- a/views/partials/_toot.ejs +++ b/views/partials/_toot.ejs @@ -1,18 +1,22 @@ -
+<% for(var i=messages.length - 1; i>= 0; i--) {%> + +
- John Doe + <%= auth.name %>
-
John Doe
+
+
+ <%= auth.name %> +
-

There are so many programs configurable in #Lua. I am making a list.

- -

I revisited the tiling window manager topic. #awesomewm is configurable in Lua, but for now I think I will rewrite my #bspwm config in Lua and learn how to do more advanced customization with conditionals.

- -

Found out that #conky's visualizations are done in Lua with the Cairo graphics library. That looks really cool and I hope to do some with that soon.

- -

Set terminal text and bspwm to #gruvbox colors.

- -

#RetroEdgeTechStack

+

+ <%= messages[i].body%> +

+
+
Posted on: <%= messages[i].createdAt %> +
-
\ No newline at end of file +
+ + <% } %> \ No newline at end of file