-
Notifications
You must be signed in to change notification settings - Fork 1
/
post.js
70 lines (66 loc) · 1.89 KB
/
post.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
const fs = require("fs");
let discord = {};
module.exports = (paragraphs, images, id, msg) => {
unshift(paragraphs);
let members = fs.readdirSync("data/discord-" + vest);
console.log(members, vest);
for (let member of members) {
if (!members[member]) {
const memid = fs.readFileSync("data/discord-" + vest + "/" + member);
members[member] = memid;
discord[memid] = member;
}
}
let name = discord[id];
console.log(name, id, discord);
if (!name) {
return false;
}
const title = paragraphs.shift();
const body = [];
function findHashtags(searchText) {
var regexp = /\B\#\w\w+\b/g;
result = searchText.match(regexp);
if (result)
return result.map((a) => a.replace("#", "")).filter((a) => a.length);
else return [];
}
const taglist = [];
for (let paragraph of paragraphs) {
for (let tag of findHashtags(paragraph)) taglist.push(tag);
const image = images.shift();
console.log(image);
if (image) body.push(`![](${image})`);
body.push(paragraph);
}
if (!taglist.length) msg.reply("must include at least one #hashtag");
const json_metadata = JSON.stringify({ tags: taglist });
const permlink = "post" + Math.random().toString(36).substring(2);
const op = [
"comment",
{
author: name,
body: body.join("\n\n"),
json_metadata: json_metadata,
parent_author: "",
parent_permlink: taglist[0],
permlink: permlink.toString("hex"),
title: title,
},
"comment_options",
{
author: name,
permlink: permlink.toString("hex"),
max_accepted_payout: "1000000000 "+global.dollar.toUpperCase(),
allow_votes: true,
allow_curation_rewards: true,
extensions: [],
}
];
op[3][`percent_${global.dollar.toUpperCase()}`]=100
fs.writeFileSync(
"created-" + vest + "/" + permlink.toString("hex"),
JSON.stringify(op)
);
return true;
};