feat: group privacy editing

This commit is contained in:
Spectralitree
2021-12-19 19:10:39 +01:00
parent 63ae9eaa1d
commit 535966560c
3 changed files with 117 additions and 3 deletions

View File

@@ -1,15 +1,17 @@
<script lang="ts">
import { Row, Col, Modal, Image, Button, CardBody } from 'sveltestrap';
import { Row, Col, Modal, Image, Button, CardBody, ModalHeader, ModalBody, ModalFooter, Spinner } from 'sveltestrap';
import moment from 'moment';
import { toHTML } from 'discord-markdown';
import type Group from '../../api/group';
import Edit from './Edit.svelte';
import twemoji from 'twemoji';
import Privacy from './Privacy.svelte';
export let group: Group;
let editMode: boolean;
export let isPublic: boolean;
export let loading: boolean = false;
let privacyLoading = false;
let htmlDescription: string;
$: if (group.description) {
@@ -34,6 +36,9 @@
let bannerOpen = false;
const toggleBannerModal = () => (bannerOpen = !bannerOpen);
let privacyOpen = false;
const togglePrivacyModal = () => (privacyOpen = !privacyOpen);
</script>
<CardBody style="border-left: 4px solid #{group.color}; margin: -1rem -1.25rem">
@@ -74,6 +79,19 @@
</Modal>
</Col>
{/if}
{#if group.privacy}
<Col xs={12} lg={4} class="mb-2">
<b>Privacy:</b> <Button size="sm" color="secondary" on:click={togglePrivacyModal}>Edit</Button>
<Modal size="lg" isOpen={privacyOpen} toggle={togglePrivacyModal}>
<ModalHeader toggle={togglePrivacyModal}>
{#if privacyLoading}<div style="float: left; width: 3rem;"><Spinner color="primary" /></div>{/if} Edit privacy
</ModalHeader>
<ModalBody>
<Privacy on:update bind:group bind:privacyOpen={privacyOpen} bind:loading={privacyLoading} />
</ModalBody>
</Modal>
</Col>
{/if}
</Row>
<div class="my-2 description" bind:this={descriptionElement}>
<b>Description:</b><br />