diff options
| author | Tusooa Zhu <tusooa@kazv.moe> | 2022-03-17 14:54:52 -0400 |
|---|---|---|
| committer | tusooa <tusooa@kazv.moe> | 2022-11-24 18:27:13 -0500 |
| commit | e494e746439e3e622c5b12a182b6c6a9de540821 (patch) | |
| tree | 8e38d8a56bcd65b75ba2a299c1894474049cbaf3 /src/services/api/api.service.js | |
| parent | e5b49ae34b0c750b7b3259044104ebb7e4b872c7 (diff) | |
Implement posting announcements
Diffstat (limited to 'src/services/api/api.service.js')
| -rw-r--r-- | src/services/api/api.service.js | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/src/services/api/api.service.js b/src/services/api/api.service.js index 10d43632..5206602d 100644 --- a/src/services/api/api.service.js +++ b/src/services/api/api.service.js @@ -102,6 +102,7 @@ const PLEROMA_CHAT_READ_URL = id => `/api/v1/pleroma/chats/${id}/read` const PLEROMA_DELETE_CHAT_MESSAGE_URL = (chatId, messageId) => `/api/v1/pleroma/chats/${chatId}/messages/${messageId}` const PLEROMA_ADMIN_REPORTS = '/api/pleroma/admin/reports' const PLEROMA_BACKUP_URL = '/api/v1/pleroma/backups' +const PLEROMA_POST_ANNOUNCEMENT_URL = '/api/v1/pleroma/admin/announcements' const oldfetch = window.fetch @@ -1375,6 +1376,29 @@ const dismissAnnouncement = ({ id, credentials }) => { }) } +const postAnnouncement = ({ credentials, content, startsAt, endsAt, allDay }) => { + const payload = { content } + + if (typeof startsAt !== 'undefined') { + payload['starts_at'] = startsAt + } + + if (typeof endsAt !== 'undefined') { + payload['ends_at'] = endsAt + } + + if (typeof allDay !== 'undefined') { + payload['all_day'] = allDay + } + + return promisedRequest({ + url: PLEROMA_POST_ANNOUNCEMENT_URL, + credentials, + method: 'POST', + payload + }) +} + export const getMastodonSocketURI = ({ credentials, stream, args = {} }) => { return Object.entries({ ...(credentials @@ -1703,7 +1727,8 @@ const apiService = { setReportState, fetchUserInLists, fetchAnnouncements, - dismissAnnouncement + dismissAnnouncement, + postAnnouncement } export default apiService |
