added random article btn
This commit is contained in:
parent
73d98c0ac1
commit
3799357a3e
@ -3,6 +3,13 @@
|
|||||||
const { session } = stores();
|
const { session } = stores();
|
||||||
|
|
||||||
let query = '';
|
let query = '';
|
||||||
|
|
||||||
|
async function findRandomArticle()
|
||||||
|
{
|
||||||
|
var res = await fetch('/a/random');
|
||||||
|
var randArticle = await res.json();
|
||||||
|
goto(`/a/${randArticle.slug}`);
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
@ -108,6 +115,7 @@
|
|||||||
</div>
|
</div>
|
||||||
{#if !$session.user}
|
{#if !$session.user}
|
||||||
<div class="link"><a href="/contact">Contact Us</a></div>
|
<div class="link"><a href="/contact">Contact Us</a></div>
|
||||||
|
<div class="link"><a href="#" on:click={findRandomArticle}>Random</a></div>
|
||||||
{:else}
|
{:else}
|
||||||
<div class="link"><a href="/cms">Dashboard</a></div>
|
<div class="link"><a href="/cms">Dashboard</a></div>
|
||||||
<div class="link"><a href="/cms/logout">Logout</a></div>
|
<div class="link"><a href="/cms/logout">Logout</a></div>
|
||||||
|
@ -1,8 +1,19 @@
|
|||||||
import express from 'express';
|
import express from 'express';
|
||||||
|
import Article from '../models/article.js';
|
||||||
|
|
||||||
const app = express.Router();
|
const app = express.Router();
|
||||||
|
|
||||||
app.get('*', function (req, res) {
|
app.get('/', async function (req, res) {
|
||||||
res.render('index');
|
let page = Number.isInteger(req.query.page) && req.query.page > 0 ? req.query.page : 1;
|
||||||
|
let offset = (page - 1) * 4;
|
||||||
|
let articles = await Article.find().sort('-created_at').limit(4).skip(offset);
|
||||||
|
res.render('index', { articles, offset });
|
||||||
|
});
|
||||||
|
|
||||||
|
app.use(function (req, res) {
|
||||||
|
// if you actually send HTTP 404, IE will render its own 404 page,
|
||||||
|
// so don't do that.
|
||||||
|
res.render('404');
|
||||||
});
|
});
|
||||||
|
|
||||||
export default app;
|
export default app;
|
||||||
|
10
src/legacy/views/404.ejs
Normal file
10
src/legacy/views/404.ejs
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>HOWFEED.biz</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<h1>Error 404</h1>
|
||||||
|
<p>Looks like you're barking up the wrong tree!</p>
|
||||||
|
</body>
|
||||||
|
</html>
|
10
src/legacy/views/footer.ejs
Normal file
10
src/legacy/views/footer.ejs
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
<tr bgcolor="black" height="1"><td colspan="6"></td></tr>
|
||||||
|
<tr height="18">
|
||||||
|
<td colspan="6">
|
||||||
|
<p style="font-size: 14px; font-family: Tahoma; line-height: 18px; text-align: center; margin: 0;">Copyright © <%= new Date().getFullYear() %> FemboyFinancial Holdings Co., Ltd. (USA LLC). All rights reserved.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</body>
|
||||||
|
</html>
|
47
src/legacy/views/header.ejs
Normal file
47
src/legacy/views/header.ejs
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>HOWFEED.biz - Optimized for Internet Explorer</title>
|
||||||
|
<script language="JavaScript">
|
||||||
|
<!--
|
||||||
|
function hidePlaceholder(txt) {
|
||||||
|
if (txt.value === "Search") {
|
||||||
|
txt.value = "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function showPlaceholder(txt) {
|
||||||
|
if (txt.value === "") {
|
||||||
|
txt.value = "Search";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-->
|
||||||
|
</script>
|
||||||
|
<style type="text/css">
|
||||||
|
<!--
|
||||||
|
body {
|
||||||
|
width: 640px;
|
||||||
|
margin: 0;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 24px;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #000;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
-->
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body style="width: 640px;">
|
||||||
|
<table width="640" cellspacing="0" cellpadding="0" border="0">
|
||||||
|
<tbody>
|
||||||
|
<tr align="center" height="36">
|
||||||
|
<td colspan="2"><img src="/logo.png" height="26" width="150"></td>
|
||||||
|
<td colspan="2">
|
||||||
|
<form method="GET" action="/search" style="display: inline;">
|
||||||
|
<input style="border: 4px solid #000;font-family: Tahoma;" type="text" name="query" value="Search" onclick="hidePlaceholder(this);" onblur="showPlaceholder(this);">
|
||||||
|
</form>
|
||||||
|
</td>
|
||||||
|
<td colspan="2"><a href="/contact">CONTACT US</a></td>
|
||||||
|
</tr>
|
||||||
|
<tr bgcolor="black" height="1"><td colspan="6"></td></tr>
|
@ -1,9 +1,14 @@
|
|||||||
<!DOCTYPE HTML>
|
<%- include('header') -%>
|
||||||
<html>
|
<tr height="64" style="background: url('/background.png');" align="center">
|
||||||
<head>
|
<td colspan="6"><h1 style="line-height: 64px;font-size: 48px; margin:0;">WELCOME</h1></td>
|
||||||
<title>HOWFEED.biz</title>
|
</tr>
|
||||||
</head>
|
<% for (var article of articles) { %>
|
||||||
<body>
|
<tr height="85" bgcolor="#96C8EA" style="overflow: scroll">
|
||||||
<h1>Hello world</h1>
|
<td></td>
|
||||||
</body>
|
<td bgcolor="white" align="center">
|
||||||
</html>
|
<img src="http://howfeed.biz/a/<%= article.image %>" height="75" alt="<%= article.title %>">
|
||||||
|
</td>
|
||||||
|
<td colspan="4"><%= article.title %></td>
|
||||||
|
</tr>
|
||||||
|
<% } %>
|
||||||
|
<%- include('footer') -%>
|
||||||
|
@ -320,6 +320,17 @@ mainRouter
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
.get('/a/random',
|
||||||
|
async function(req, res, next) {
|
||||||
|
var articleCount = await Article.countDocuments();
|
||||||
|
var random = Math.floor(Math.random() * articleCount);
|
||||||
|
var randomArticle = await Article.findOne().skip(random).select('slug');
|
||||||
|
res.writeHead(200, {
|
||||||
|
'Content-Type': 'application/json'
|
||||||
|
});
|
||||||
|
res.end(JSON.stringify(randomArticle));
|
||||||
|
}
|
||||||
|
)
|
||||||
.post('/me/avatar',
|
.post('/me/avatar',
|
||||||
async function(req, res, next) {
|
async function(req, res, next) {
|
||||||
if (!req.user) {
|
if (!req.user) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user