aboutsummaryrefslogtreecommitdiff
path: root/src/components/announcement/announcement.vue
diff options
context:
space:
mode:
authorTusooa Zhu <tusooa@kazv.moe>2022-03-17 17:11:53 -0400
committertusooa <tusooa@kazv.moe>2022-11-24 18:27:14 -0500
commit89c49b6fb46e607aee07afd5bc436e8f2f605bfe (patch)
tree264b78477fa6aeaf4776d959dc1f6f39831ef9f5 /src/components/announcement/announcement.vue
parent0e51e824a29204bb193e2707d6f65b6caaee719d (diff)
Allow editing announcements
Diffstat (limited to 'src/components/announcement/announcement.vue')
-rw-r--r--src/components/announcement/announcement.vue50
1 files changed, 48 insertions, 2 deletions
diff --git a/src/components/announcement/announcement.vue b/src/components/announcement/announcement.vue
index 5ddeebf5..1e4edcca 100644
--- a/src/components/announcement/announcement.vue
+++ b/src/components/announcement/announcement.vue
@@ -16,7 +16,10 @@
/>
</div>
<div class="footer">
- <div class="times">
+ <div
+ v-if="!editing"
+ class="times"
+ >
<span v-if="startsAt">
{{ $t('announcements.start_time_display', { time: startsAt }) }}
</span>
@@ -24,7 +27,10 @@
{{ $t('announcements.end_time_display', { time: endsAt }) }}
</span>
</div>
- <div class="actions">
+ <div
+ v-if="!editing"
+ class="actions"
+ >
<button
v-if="currentUser"
class="btn button-default"
@@ -36,11 +42,51 @@
<button
v-if="currentUser && currentUser.role === 'admin'"
class="btn button-default"
+ @click="enterEditMode"
+ >
+ {{ $t('announcements.edit_action') }}
+ </button>
+ <button
+ v-if="currentUser && currentUser.role === 'admin'"
+ class="btn button-default"
@click="deleteAnnouncement"
>
{{ $t('announcements.delete_action') }}
</button>
</div>
+ <div
+ v-else
+ class="actions"
+ >
+ <button
+ class="btn button-default"
+ @click="submitEdit"
+ >
+ {{ $t('announcements.submit_edit_action') }}
+ </button>
+ <button
+ class="btn button-default"
+ @click="cancelEdit"
+ >
+ {{ $t('announcements.cancel_edit_action') }}
+ </button>
+ <div
+ v-if="editing && editError"
+ class="alert error"
+ >
+ {{ $t('announcements.edit_error', { error }) }}
+ <button
+ class="button-unstyled"
+ @click="clearError"
+ >
+ <FAIcon
+ class="fa-scale-110 fa-old-padding"
+ icon="times"
+ :title="$t('announcements.close_error')"
+ />
+ </button>
+ </div>
+ </div>
</div>
</div>
</template>