diff --git a/README.md b/README.md
index 3f3b450..5b4c203 100644
--- a/README.md
+++ b/README.md
@@ -8,10 +8,11 @@ Colubrina is a simple chatting platform written in Vue, and Vuetify for the fron
- [x] Messaging
- [x] Authentication
- [x] Admin panel
-- [x] CLI (cli)
+- [x] CLI
- [ ] Message history
- [x] User profile cards
- [x] Group creation and modification
+- [x] Direct message groups
- [x] Friending
- [x] Searching
@@ -46,11 +47,10 @@ Failed to check for updates, ensure you are connected to the internet, and servi
Build frontend for production
Exit
```
-Select setup, and go through the steps. After completing the initial setup, you may run `yarn build` in the frontend folder, or select "Build frontend for production" in the CLI.
-The CLI will populate the database with some default data which are essential for operation.
+Select setup, and go through the steps.
After completing the initial setup, you may run `yarn build` in the frontend folder, or select "Build frontend for production" in the CLI.
The backend service can now be started with `node .` in the `backend` folder which will run on port `23998`.
-A systemd service example config file can be found at `colubrina.service`
+A systemd service example config file can be found at `colubrina.service`, and an `nginx.conf` example.
## Frontend setup
Rename .env.example to .env and fill it out with your own information.
diff --git a/backend/routes/communications.js b/backend/routes/communications.js
index f6ab2d4..da59021 100644
--- a/backend/routes/communications.js
+++ b/backend/routes/communications.js
@@ -762,7 +762,10 @@ router.get("/users", auth, async (req, res, next) => {
"updatedAt",
"status",
"admin"
- ]
+ ],
+ where: {
+ banned: false
+ }
})
res.json(users)
} catch (err) {
diff --git a/backend/seeders/20220403061544-themes.js b/backend/seeders/20220403061544-themes.js
index bc69560..f7b8a59 100644
--- a/backend/seeders/20220403061544-themes.js
+++ b/backend/seeders/20220403061544-themes.js
@@ -27,12 +27,7 @@ module.exports = {
sheet: "#181818",
text: "#000000",
dark: "#151515",
- bg: "#151515",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ bg: "#151515"
},
light: {
primary: "#0190ea",
@@ -47,12 +42,7 @@ module.exports = {
sheet: "#f8f8f8",
text: "#000000",
dark: "#f8f8f8",
- bg: "#f8f8f8",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ bg: "#f8f8f8"
}
},
createdAt: "2022-03-26 23:23:29",
@@ -83,12 +73,7 @@ module.exports = {
sheet: "#262626",
text: "#000000",
dark: "#262626",
- bg: "#191919",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ bg: "#191919"
},
light: {
primary: "#0190ea",
@@ -103,12 +88,7 @@ module.exports = {
sheet: "#dedede",
text: "#000000",
dark: "#dedede",
- bg: "#e7e7e7",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ bg: "#e7e7e7"
}
},
createdAt: "2022-03-26 23:25:12",
@@ -136,12 +116,7 @@ module.exports = {
sheet: "#000000",
text: "#000000",
dark: "#000000",
- bg: "#000000",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ bg: "#000000"
},
light: {
primary: "#0190ea",
@@ -155,12 +130,7 @@ module.exports = {
toolbar: "#f8f8f8",
sheet: "#f8f8f8",
text: "#000000",
- dark: "#f8f8f8",
- calendarNormalActivity: "#3f51b5",
- calendarActivityType7: "#f44336",
- calendarActivityType8: "#4caf50",
- calendarActivityType10: "#ff9800",
- calendarExternalActivity: "#2196f3"
+ dark: "#f8f8f8"
}
},
createdAt: "2022-03-26 23:25:12",
@@ -188,12 +158,7 @@ module.exports = {
sheet: "#181818",
text: "#000000",
dark: "#151515",
- bg: "#151515",
- calendarNormalActivity: "#565656",
- calendarActivityType7: "#767676",
- calendarActivityType8: "#868686",
- calendarActivityType10: "#A6A6A6",
- calendarExternalActivity: "#7D7D7D"
+ bg: "#151515"
},
light: {
primary: "#6E6E6E",
@@ -208,12 +173,7 @@ module.exports = {
sheet: "#f8f8f8",
text: "#000000",
dark: "#f8f8f8",
- bg: "#f8f8f8",
- calendarNormalActivity: "#565656",
- calendarActivityType7: "#767676",
- calendarActivityType8: "#868686",
- calendarActivityType10: "#A6A6A6",
- calendarExternalActivity: "#7D7D7D"
+ bg: "#f8f8f8"
}
},
createdAt: "2022-03-26 23:25:12",
@@ -241,12 +201,7 @@ module.exports = {
sheet: "#181818",
text: "#000000",
dark: "#151515",
- bg: "#151515",
- calendarNormalActivity: "#0057E9",
- calendarActivityType7: "#E11845",
- calendarActivityType8: "#87E911",
- calendarActivityType10: "#F2CA19",
- calendarExternalActivity: "#0057E9"
+ bg: "#151515"
},
light: {
primary: "#0057E9",
@@ -261,12 +216,7 @@ module.exports = {
sheet: "#f8f8f8",
text: "#000000",
dark: "#f8f8f8",
- bg: "#f8f8f8",
- calendarNormalActivity: "#0057E9",
- calendarActivityType7: "#E11845",
- calendarActivityType8: "#87E911",
- calendarActivityType10: "#F2CA19",
- calendarExternalActivity: "#0057E9"
+ bg: "#f8f8f8"
}
},
createdAt: "2022-03-26 23:25:12",
diff --git a/frontend/public/favicon.ico b/frontend/public/favicon.ico
index 09ab22d..df36fcf 100644
Binary files a/frontend/public/favicon.ico and b/frontend/public/favicon.ico differ
diff --git a/frontend/public/img/icons/android-chrome-192x192.png b/frontend/public/img/icons/android-chrome-192x192.png
index eafed75..b02aa64 100644
Binary files a/frontend/public/img/icons/android-chrome-192x192.png and b/frontend/public/img/icons/android-chrome-192x192.png differ
diff --git a/frontend/public/img/icons/android-chrome-512x512.png b/frontend/public/img/icons/android-chrome-512x512.png
new file mode 100644
index 0000000..06088b0
Binary files /dev/null and b/frontend/public/img/icons/android-chrome-512x512.png differ
diff --git a/frontend/public/img/icons/android-chrome-maskable-192x192.png b/frontend/public/img/icons/android-chrome-maskable-192x192.png
index eafed75..791e9c8 100644
Binary files a/frontend/public/img/icons/android-chrome-maskable-192x192.png and b/frontend/public/img/icons/android-chrome-maskable-192x192.png differ
diff --git a/frontend/public/img/icons/android-chrome-maskable-512x512.png b/frontend/public/img/icons/android-chrome-maskable-512x512.png
index 1bd23f3..5f2098e 100644
Binary files a/frontend/public/img/icons/android-chrome-maskable-512x512.png and b/frontend/public/img/icons/android-chrome-maskable-512x512.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon-120x120.png b/frontend/public/img/icons/apple-touch-icon-120x120.png
index a277192..1427cf6 100644
Binary files a/frontend/public/img/icons/apple-touch-icon-120x120.png and b/frontend/public/img/icons/apple-touch-icon-120x120.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon-152x152.png b/frontend/public/img/icons/apple-touch-icon-152x152.png
index d932d28..f24d454 100644
Binary files a/frontend/public/img/icons/apple-touch-icon-152x152.png and b/frontend/public/img/icons/apple-touch-icon-152x152.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon-180x180.png b/frontend/public/img/icons/apple-touch-icon-180x180.png
index 9d53c61..404e192 100644
Binary files a/frontend/public/img/icons/apple-touch-icon-180x180.png and b/frontend/public/img/icons/apple-touch-icon-180x180.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon-60x60.png b/frontend/public/img/icons/apple-touch-icon-60x60.png
index 9a4ab6b..cf10a56 100644
Binary files a/frontend/public/img/icons/apple-touch-icon-60x60.png and b/frontend/public/img/icons/apple-touch-icon-60x60.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon-76x76.png b/frontend/public/img/icons/apple-touch-icon-76x76.png
index ad614d7..c500769 100644
Binary files a/frontend/public/img/icons/apple-touch-icon-76x76.png and b/frontend/public/img/icons/apple-touch-icon-76x76.png differ
diff --git a/frontend/public/img/icons/apple-touch-icon.png b/frontend/public/img/icons/apple-touch-icon.png
index 9d53c61..03c0c5d 100644
Binary files a/frontend/public/img/icons/apple-touch-icon.png and b/frontend/public/img/icons/apple-touch-icon.png differ
diff --git a/frontend/public/img/icons/favicon-16x16.png b/frontend/public/img/icons/favicon-16x16.png
index 9511941..42af009 100644
Binary files a/frontend/public/img/icons/favicon-16x16.png and b/frontend/public/img/icons/favicon-16x16.png differ
diff --git a/frontend/public/img/icons/favicon-32x32.png b/frontend/public/img/icons/favicon-32x32.png
index a7b0cba..46ca04d 100644
Binary files a/frontend/public/img/icons/favicon-32x32.png and b/frontend/public/img/icons/favicon-32x32.png differ
diff --git a/frontend/public/img/icons/msapplication-icon-144x144.png b/frontend/public/img/icons/msapplication-icon-144x144.png
index bdde0bb..7808237 100644
Binary files a/frontend/public/img/icons/msapplication-icon-144x144.png and b/frontend/public/img/icons/msapplication-icon-144x144.png differ
diff --git a/frontend/public/img/icons/mstile-150x150.png b/frontend/public/img/icons/mstile-150x150.png
index f90d503..3b37a43 100644
Binary files a/frontend/public/img/icons/mstile-150x150.png and b/frontend/public/img/icons/mstile-150x150.png differ
diff --git a/frontend/public/img/icons/safari-pinned-tab.svg b/frontend/public/img/icons/safari-pinned-tab.svg
index eef4036..e44c0d5 100644
--- a/frontend/public/img/icons/safari-pinned-tab.svg
+++ b/frontend/public/img/icons/safari-pinned-tab.svg
@@ -1,3 +1,3 @@
-
\ No newline at end of file
+
diff --git a/frontend/src/components/NicknameDialog.vue b/frontend/src/components/NicknameDialog.vue
index 8f825b5..a173cbc 100644
--- a/frontend/src/components/NicknameDialog.vue
+++ b/frontend/src/components/NicknameDialog.vue
@@ -8,7 +8,7 @@
Friend nicknames only show to you.
diff --git a/frontend/src/components/UserDialog.vue b/frontend/src/components/UserDialog.vue
index 9b83f19..2740cc8 100644
--- a/frontend/src/components/UserDialog.vue
+++ b/frontend/src/components/UserDialog.vue
@@ -156,40 +156,42 @@ export default {
}
},
mounted() {
- this.mutualGroups = []
- this.mutualFriends = []
- this.loading = {
- mutualGroups: true,
- mutualFriends: true
+ if(this.user?.item?.id) {
+ this.mutualGroups = []
+ this.mutualFriends = []
+ this.loading = {
+ mutualGroups: true,
+ mutualFriends: true
+ }
+ this.axios
+ .get(
+ process.env.VUE_APP_BASE_URL +
+ "/api/v1/communications/mutual/" +
+ this.user.item.id +
+ "/groups"
+ )
+ .then((res) => {
+ this.mutualGroups = res.data
+ this.loading.mutualGroups = false
+ })
+ .catch((e) => {
+ AjaxErrorHandler(this.$store)(e)
+ })
+ this.axios
+ .get(
+ process.env.VUE_APP_BASE_URL +
+ "/api/v1/communications/mutual/" +
+ this.user.item.id +
+ "/friends"
+ )
+ .then((res) => {
+ this.mutualFriends = res.data
+ this.loading.mutualFriends = false
+ })
+ .catch((e) => {
+ AjaxErrorHandler(this.$store)(e)
+ })
}
- this.axios
- .get(
- process.env.VUE_APP_BASE_URL +
- "/api/v1/communications/mutual/" +
- this.user.item.id +
- "/groups"
- )
- .then((res) => {
- this.mutualGroups = res.data
- this.loading.mutualGroups = false
- })
- .catch((e) => {
- AjaxErrorHandler(this.$store)(e)
- })
- this.axios
- .get(
- process.env.VUE_APP_BASE_URL +
- "/api/v1/communications/mutual/" +
- this.user.item.id +
- "/friends"
- )
- .then((res) => {
- this.mutualFriends = res.data
- this.loading.mutualFriends = false
- })
- .catch((e) => {
- AjaxErrorHandler(this.$store)(e)
- })
}
}
diff --git a/frontend/src/main.js b/frontend/src/main.js
index d689135..6c1df4c 100644
--- a/frontend/src/main.js
+++ b/frontend/src/main.js
@@ -74,7 +74,8 @@ Vue.use(VueNativeNotification, {
Vue.use({
install(Vue) {
- Vue.prototype.$socket = SocketIO(process.env.VUE_APP_SOCKET_URL, {
+ Vue.prototype.$socket = SocketIO("", {
+ transports: ["websocket", "polling"],
headers: {
Authorization: localStorage.getItem("session")
}
diff --git a/frontend/src/views/Communications/CommunicationsChat.vue b/frontend/src/views/Communications/CommunicationsChat.vue
index 4c330a3..eb63a55 100644
--- a/frontend/src/views/Communications/CommunicationsChat.vue
+++ b/frontend/src/views/Communications/CommunicationsChat.vue
@@ -37,7 +37,7 @@
:user="context.userPopout"
:key="context.userPopout.item?.id || 0"
>
-
+