diff --git a/assets/qzine_default.jpg b/assets/qzine_default.jpg new file mode 100755 index 0000000..8963d28 Binary files /dev/null and b/assets/qzine_default.jpg differ diff --git a/helpers/postQzine.js b/helpers/postQzine.js index 177b52d..b97d2c8 100644 --- a/helpers/postQzine.js +++ b/helpers/postQzine.js @@ -1,11 +1,49 @@ -var sqlite3 = require('sqlite3'); -var Masto = require('mastodon'); +import fs from "fs"; +import path from 'path'; +import {sendPostMastodon} from './utils.js' -// masto.post('statuses', { -// status: status, -// media_ids: [id], -// account_id, -// visibility, -// language, -// sensitive -// } \ No newline at end of file +const __dirname = path.resolve(); +const list_posts_json = JSON.parse(fs.readFileSync(__dirname + "/assets/documents/tykayn_qzinewp_posts.json", 'utf-8')) +// const reallySendPost = false; +const reallySendPost = true; + + +export function getRandomElementOfArray(listItems) { + return listItems[Math.floor(Math.random() * listItems.length)] +} + + +function getRandomLink() { + let filteredLinks = list_posts_json.filter(elem => elem.post_status === 'publish') + return getRandomElementOfArray(filteredLinks) +} + +function postLink() { + + let postObject = getRandomLink() + console.log("envoi de post par le compte Qzine") + + let filteredExcerpt = postObject.post_content.replace(/<[^>]+>/g, '') + let counterLength = filteredExcerpt.length; + + let limitExcerpt = 250 + filteredExcerpt = filteredExcerpt.substring(0, limitExcerpt) + if (filteredExcerpt && counterLength > limitExcerpt) { + filteredExcerpt = '> ' + filteredExcerpt + '… ' + } + + let configPost = { + author: 'qzine', + image: 'qzine_default.jpg', + message: `# [ !Qzine - ${postObject.post_title}](${postObject.guid}) + +* ${postObject.post_date} - ${postObject.guid} +${filteredExcerpt} +* #qzine #qzineblog #blog #sexe #relations #éducation #plaisir #sociologie`, + reallySendPost + } + console.log("configPost.message", configPost.message) + sendPostMastodon(configPost) +} + +postLink(); \ No newline at end of file