🎉 able to send markdown message now

This commit is contained in:
Song
2021-01-31 16:00:01 +08:00
parent 63e8bd8744
commit 25f120d197
4 changed files with 41 additions and 38 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
const { pushWeChatMessage } = require('./wechat');
const { pushEmailMessage } = require('./email');
const Message = require('../models/message').Message;
const { Message } = require('../models');
async function processMessage(userPrefix, message) {
if (message.email) {
+2 -1
View File
@@ -45,7 +45,8 @@ async function pushWeChatMessage(userPrefix, message) {
template_id: user.wechatTemplateId,
};
if (message.content) {
request_data.url = `${config.href}${userPrefix}/${message.id}`;
request_data.url = `${config.href}message/${message.id}`;
console.debug(`http://localhost:3000/message/${message.id}`);
}
request_data.data = { text: { value: message.description } };
let requestUrl = `https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=${access_token}`;
+18 -4
View File
@@ -1,4 +1,6 @@
const express = require('express');
const { Message } = require('../models');
const { md2html } = require('../common/utils');
const router = express.Router();
@@ -10,11 +12,23 @@ router.get('/delete/:id', (req, res, next) => {
});
});
router.get('/:id', (req, res, next) => {
router.get('/:id', async (req, res, next) => {
const id = req.params.id;
// TODO: show article
req.query.description = req.params.description;
res.render('article');
try {
let message = await Message.findOne({
where: {
id: id,
},
});
if (message) {
message.content = md2html(message.content);
res.render('article', {
message,
});
}
} catch (e) {
res.status(404);
}
});
module.exports = router;
+20 -32
View File
@@ -1,34 +1,22 @@
<%- include('./partials/header') %>
<div class="normal-container">
<div class="columns is-desktop">
<div class="column">
<article id="article">
<%- include('./partials/page-info') %>
<%-page.converted_content%>
<p class="copyright"><strong>Links: <a href="<%-page.link%>"><%-page.link%></a></strong></p>
<%- config.copyright %>
<%- config.ad %>
</article>
</div>
<div class="column is-one-fifth-fullhd">
<aside class="menu toc">
<p class="menu-label">
Table of Content
</p>
<ul class="menu-list" id="toc">
</ul>
</aside>
</div>
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title><%= message.title %></title>
<meta name="theme-color" content="#ffffff"/>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.1/css/bulma.min.css">
<link rel="stylesheet" href="/public/main.css">
</head>
<body>
<div class="container" style="max-width: 960px">
<div style="margin: 16px 16px">
<h1 class="title"><%= message.title %></h1>
<h2 class="subtitle"><%- message.description %></h2>
<article id="article">
<%- message.content %>
</article>
</div>
<%- include('./partials/prev-next') %>
<%- include('./partials/comment') %>
</div>
<script>
(function() {
generateTOC();
})();
</script>
<%- include('./partials/footer') %>
</body>
</html>