diff options
author | Minteck <contact@minteck.org> | 2022-01-21 14:39:46 +0100 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-01-21 14:39:46 +0100 |
commit | 3a04cb197f152f171fba679663a91a9bb61d710e (patch) | |
tree | 825d8f9b0daab3e434d85704144ca87492da9b92 /modules | |
parent | c2aa7bf38fb30de2d04f87f8e7780e4c768ae6b1 (diff) | |
download | cobalt-3a04cb197f152f171fba679663a91a9bb61d710e.tar.gz cobalt-3a04cb197f152f171fba679663a91a9bb61d710e.tar.bz2 cobalt-3a04cb197f152f171fba679663a91a9bb61d710e.zip |
Add config management
Diffstat (limited to 'modules')
-rw-r--r-- | modules/publishtag.js | 16 | ||||
-rw-r--r-- | modules/removesm.js | 9 | ||||
-rw-r--r-- | modules/removesubsm.js | 9 | ||||
-rw-r--r-- | modules/uniqueid.js | 12 |
4 files changed, 45 insertions, 1 deletions
diff --git a/modules/publishtag.js b/modules/publishtag.js new file mode 100644 index 0000000..9828443 --- /dev/null +++ b/modules/publishtag.js @@ -0,0 +1,16 @@ +const fs = require('fs'); + +module.exports = (file) => { + file = fs.readFileSync(file).toString(); + try { + frontmatter = file.split("---")[1].trim() + lines = frontmatter.replaceAll("\r\n", "\n").split("\n"); + if (lines.map(i => i.trim()).includes("publish: true") || lines.map(i => i.trim()).includes("publish : true") || lines.map(i => i.trim()).includes("publish :true")) { + return true; + } else { + return false; + } + } catch (e) { + return false; + } +}
\ No newline at end of file diff --git a/modules/removesm.js b/modules/removesm.js new file mode 100644 index 0000000..1f83c02 --- /dev/null +++ b/modules/removesm.js @@ -0,0 +1,9 @@ +module.exports = (id) => { + lines = sitemap.split("\n"); + for (let index in lines) { + if (lines[index].includes(id)) { + delete lines[index]; + } + } + global.sitemap = lines.filter(i => i).join("\n"); +}
\ No newline at end of file diff --git a/modules/removesubsm.js b/modules/removesubsm.js new file mode 100644 index 0000000..0fd7eef --- /dev/null +++ b/modules/removesubsm.js @@ -0,0 +1,9 @@ +module.exports = (rid, sid) => { + lines = sitemaps[sid].split("\n"); + for (let index in lines) { + if (lines[index].includes(id)) { + delete lines[index]; + } + } + global.sitemaps[sid] = lines.filter(i => i).join("\n"); +}
\ No newline at end of file diff --git a/modules/uniqueid.js b/modules/uniqueid.js index cbf4965..f0494e9 100644 --- a/modules/uniqueid.js +++ b/modules/uniqueid.js @@ -6,6 +6,16 @@ module.exports = function DocCMSUniqueID(file) { } else { salt = crypto.randomBytes(64).toString("hex"); } + + switch (config.pages_id_generator) { + case "snowflake": + default: + return parseInt(crypto.createHash("sha512").update(salt, "utf-8").digest("hex").substring(0, 16), 16).toString().substring(0, 18); + + case "md5": + return crypto.createHash("md5").update(salt, "utf-8").digest("hex"); - return parseInt(crypto.createHash("sha512").update(salt, "utf-8").digest("hex").substring(0, 16), 16).toString().substring(0, 18); + case "sha256": + return crypto.createHash("sha256").update(salt, "utf-8").digest("hex"); + } }
\ No newline at end of file |