3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-12 04:55:01 +00:00

Add time_and_date plugin. Use it for timezones and date formats around the bot.

This commit is contained in:
Dragory 2020-08-19 00:19:12 +03:00
parent cffb0dbd6b
commit 4ae8cf85a3
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1
67 changed files with 543 additions and 177 deletions

View file

@ -1,9 +1,15 @@
import { postCmd } from "../types";
import { trimLines, sorter, disableCodeBlocks, deactivateMentions, createChunkedMessage } from "src/utils";
import {
trimLines,
sorter,
disableCodeBlocks,
deactivateMentions,
createChunkedMessage,
DBDateFormat,
} from "src/utils";
import humanizeDuration from "humanize-duration";
import moment from "moment-timezone";
import { inGuildTz } from "../../../utils/timezones";
import { DBDateFormat, getDateFormat } from "../../../utils/dateFormats";
import { TimeAndDatePlugin } from "../../TimeAndDate/TimeAndDatePlugin";
const SCHEDULED_POST_PREVIEW_TEXT_LENGTH = 50;
@ -31,9 +37,10 @@ export const ScheduledPostsListCmd = postCmd({
.replace(/\s+/g, " ")
.slice(0, SCHEDULED_POST_PREVIEW_TEXT_LENGTH);
const prettyPostAt = inGuildTz(pluginData, moment.utc(p.post_at, DBDateFormat)).format(
getDateFormat(pluginData, "pretty_datetime"),
);
const timeAndDate = pluginData.getPlugin(TimeAndDatePlugin);
const prettyPostAt = timeAndDate
.inGuildTz(moment.utc(p.post_at, DBDateFormat))
.format(timeAndDate.getDateFormat("pretty_datetime"));
const parts = [`\`#${i++}\` \`[${prettyPostAt}]\` ${previewText}${isTruncated ? "..." : ""}`];
if (p.attachments.length) parts.push("*(with attachment)*");
if (p.content.embed) parts.push("*(embed)*");