From 2e1b75d654998b80d111e1f64ae43056d9e47142 Mon Sep 17 00:00:00 2001 From: supertiger1234 Date: Sun, 14 Jul 2019 13:32:18 +0100 Subject: [PATCH] added developer badge, added general tab. --- src/components/ProfilePictureTemplate.vue | 15 +++ src/components/app/MessageTemplate.vue | 4 + .../ServerSettingsPanels/DropDownMenu.vue | 97 ++++++++++++++ .../Popouts/ServerSettingsPanels/General.vue | 126 ++++++++++++++++-- .../ServerSettingsPanels/ManageChannels.vue | 19 ++- .../ServerSettingsPanels/ServerSettings.vue | 26 +++- .../app/Popouts/Popouts/Settings.vue | 2 +- src/views/App.vue | 5 +- 8 files changed, 277 insertions(+), 17 deletions(-) create mode 100644 src/components/app/Popouts/Popouts/ServerSettingsPanels/DropDownMenu.vue diff --git a/src/components/ProfilePictureTemplate.vue b/src/components/ProfilePictureTemplate.vue index 6cd14e8..8578de9 100644 --- a/src/components/ProfilePictureTemplate.vue +++ b/src/components/ProfilePictureTemplate.vue @@ -27,6 +27,7 @@ export default { crown: require("twemoji/2/svg/1f451.svg"), flower: require("twemoji/2/svg/1f33a.svg"), heart: require("twemoji/2/svg/2764.svg"), + developer: require("twemoji/2/svg/2728.svg"), }; }, computed: { @@ -46,6 +47,11 @@ export default { name: "supporter", emotePath: this.heart }; + if (this.$props.admin == 6) + return { + name: "developer", + emotePath: this.developer + }; return "" }, statusColor() { @@ -126,6 +132,15 @@ export default { left: -3px; } +.developer { + background: linear-gradient(30deg, #6853b9, rgba(254, 94, 189, .8)); +} +.developer .emote { + z-index: 999; + top: -3px; + left: -3px; +} + .emote { position: absolute; height: 20px; diff --git a/src/components/app/MessageTemplate.vue b/src/components/app/MessageTemplate.vue index fba5ffc..3c8667f 100644 --- a/src/components/app/MessageTemplate.vue +++ b/src/components/app/MessageTemplate.vue @@ -184,6 +184,10 @@ export default { + diff --git a/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue b/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue index b3d01e0..7b2efd9 100644 --- a/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue +++ b/src/components/app/Popouts/Popouts/ServerSettingsPanels/General.vue @@ -1,10 +1,30 @@ diff --git a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue index 364300c..fd08ffb 100644 --- a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue +++ b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ManageChannels.vue @@ -10,7 +10,7 @@
Save Changes
-
{{deleteButtonConfirmed ? 'ARE YOU SURE?' : 'Delete Channel' }}
+
{{deleteButtonConfirmed ? 'ARE YOU SURE?' : 'Delete Channel' }}
@@ -27,6 +27,7 @@ export default { data() { return { deleteButtonConfirmed: false, + deleteClicked: false, selectedChannelIndex: 0, update: { name: null @@ -47,11 +48,15 @@ export default { } }, async deleteChannel() { + if (this.deleteClicked) return; if (!this.deleteButtonConfirmed) { return this.deleteButtonConfirmed = true; } + this.deleteClicked = true; const {ok, error, result} = await ServerService.deleteChannel(this.server.server_id, this.channels[this.selectedChannelIndex].channelID) - console.log({ok, error, result}) + this.deleteButtonConfirmed = false; + this.selectedChannelIndex = null; + this.deleteClicked = false; }, inputEvent(name, event) { this.update.name = event.target.value @@ -109,10 +114,12 @@ export default { display: flex; overflow: hidden; text-overflow: ellipsis; + white-space: nowrap; } .channel .name { overflow: hidden; text-overflow: ellipsis; + white-space: nowrap; } .channel div { align-self: center; @@ -134,6 +141,7 @@ export default { display: flex; flex-direction: column; width: 100%; + overflow: hidden; } .button { background: rgba(17, 148, 255, 0.692); @@ -154,6 +162,13 @@ export default { .button.warn:hover { background: rgb(255, 17, 17); } +.button.disabled { + background: grey; +} +.button.disabled:hover { + background: grey; +} + .delete-server{ margin: auto; margin-bottom: 0; diff --git a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ServerSettings.vue b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ServerSettings.vue index 07adb62..205a253 100644 --- a/src/components/app/Popouts/Popouts/ServerSettingsPanels/ServerSettings.vue +++ b/src/components/app/Popouts/Popouts/ServerSettingsPanels/ServerSettings.vue @@ -6,9 +6,9 @@
{{tabs[index].icon}}
{{tabs[index].title}}
- - - + + +
@@ -32,7 +32,7 @@ export default { return { index: 0, tabs: [ - // {title: "General", icon: "info"}, + {title: "General", icon: "info"}, {title: "Manage Channels", icon: "storage"}, // {title: "Manage Invites", icon: "local_post_office"}, {title: "Delete Server", icon: "warning", critical: true}, @@ -92,6 +92,8 @@ export default { flex-direction: column; } .tabs { + display: flex; + flex-direction: column; background: rgba(26, 26, 26, 0.897); height: 100%; width: 180px; @@ -106,6 +108,7 @@ export default { user-select: none; display: flex; align-content: center; + flex-shrink: 0; } .tab .material-icons { margin-right: 3px; @@ -135,4 +138,19 @@ export default { align-self: center; margin-left: 10px; } + +@media (max-width: 614px) { + .inner { + flex-direction: column; + } + .tabs { + width: 100%; + height: 50px; + flex-direction: row; + overflow: auto; + } + .tabs::-webkit-scrollbar { + height: 5px; + } +} diff --git a/src/components/app/Popouts/Popouts/Settings.vue b/src/components/app/Popouts/Popouts/Settings.vue index ddd48ac..5f5f1b2 100644 --- a/src/components/app/Popouts/Popouts/Settings.vue +++ b/src/components/app/Popouts/Popouts/Settings.vue @@ -84,7 +84,7 @@ export default { bottom: 0; left: 0; right: 0; - z-index: 99; + z-index: 99999999; display: flex; color: white; } diff --git a/src/views/App.vue b/src/views/App.vue index af01749..9ce9886 100644 --- a/src/views/App.vue +++ b/src/views/App.vue @@ -194,7 +194,6 @@ export default { height: 100%; } - .notifyAnimation{ animation: notifyAnime; animation-duration: 1s; @@ -266,6 +265,9 @@ export default { .tabs::-webkit-scrollbar { height: 5px; } +.tabs { + scrollbar-width: thin; +} .tab { flex-shrink: 0; @@ -326,6 +328,7 @@ export default {