Uploading of articles.
This commit is contained in:
2
index.js
2
index.js
@ -11,6 +11,6 @@ const gemini = new uplinkGemini.Gemini();
|
|||||||
gemini.router.use('/', index);
|
gemini.router.use('/', index);
|
||||||
gemini.router.use('/articles/', articles);
|
gemini.router.use('/articles/', articles);
|
||||||
gemini.router.use('/articles/:item', articles_item);
|
gemini.router.use('/articles/:item', articles_item);
|
||||||
gemini.router.use('/admin', admin);
|
gemini.router.use('/admin/', admin);
|
||||||
|
|
||||||
gemini.listen();
|
gemini.listen();
|
||||||
|
@ -1,6 +1,26 @@
|
|||||||
|
var fs = require('fs');
|
||||||
|
|
||||||
/* GET home page. */
|
/* GET home page. */
|
||||||
function admin(req, res) {
|
function admin(req, res) {
|
||||||
res.send(`20 text/gemini\r\n\r\nHello Admin\r\n\r\n=> /articles/ 📓Articles\r\n=> / 🏡Home\r\n`)
|
if(req.protocol == 'titan:') {
|
||||||
|
console.log(req.content.toString());
|
||||||
|
var title = '';
|
||||||
|
var lines = req.content.toString().split('\n');
|
||||||
|
for(var i = 0; i < lines.length; i++) {
|
||||||
|
if(lines[i].startsWith('# ')) {
|
||||||
|
title = lines[i].replace('# ', '').trim().replace(/ /g, '-').toLowerCase().replace(/č/g,'c').replace(/š/g, 's').replace(/ž/g, 'z') + '.gmi';
|
||||||
|
console.log(title);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
fs.writeFileSync('articles/' + title, req.content.toString());
|
||||||
|
} catch (error) {
|
||||||
|
res.error(51);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
res.send(`20 text/gemini\r\n\r\nHello Admin\r\n\r\n=> titan://localhost/admin/ Upload new article\r\n\r\n=> /articles/ 📓Articles\r\n=> / 🏡Home\r\n`)
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = admin;
|
module.exports = admin;
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
function index(request, response) {
|
function index(request, response) {
|
||||||
var adminBlock = "";
|
var adminBlock = "";
|
||||||
if(request.clientCert.fingerprint == '96:19:A6:91:57:AF:E2:D3:E0:80:FC:35:4E:BD:2A:46:C9:2D:CB:53') {
|
if(request.clientCert.fingerprint == '96:19:A6:91:57:AF:E2:D3:E0:80:FC:35:4E:BD:2A:46:C9:2D:CB:53') {
|
||||||
adminBlock = '## Administration\r\n=> /admin Administration';
|
adminBlock = '## Administration\r\n=> /admin/ Administration';
|
||||||
}
|
}
|
||||||
response.send(`20 text/gemini\r\n
|
response.send(`20 text/gemini\r\n
|
||||||
\`\`\` Uplink:SI Logo
|
\`\`\` Uplink:SI Logo
|
||||||
|
Reference in New Issue
Block a user