From 1991fd8f02179e7fe80a2f55fa60fca7de335285 Mon Sep 17 00:00:00 2001 From: BinarySandia04 Date: Sat, 3 Aug 2024 22:54:58 +0200 Subject: [PATCH] More thinngeijidjioashdisa --- client/index.html | 2 +- client/public/sounds/click.wav | Bin 0 -> 18344 bytes client/public/sounds/close.wav | Bin 0 -> 89348 bytes client/public/sounds/roll1.wav | Bin 0 -> 89364 bytes client/public/sounds/roll2.wav | Bin 0 -> 89356 bytes client/public/sounds/snap.wav | Bin 0 -> 59018 bytes client/src/assets/main.css | 18 ++- client/src/services/Dragonroll.js | 12 ++ client/src/services/Windows.js | 103 +++++++++++-- client/src/views/HomeView.vue | 12 +- client/src/views/RegisterView.vue | 83 ----------- client/src/views/managers/WindowManager.vue | 12 ++ client/src/views/partials/CampaignEntry.vue | 75 ++++++++++ client/src/views/partials/EditUserPartial.vue | 30 ++-- client/src/views/partials/WindowHandle.vue | 22 ++- client/src/views/windows/LoginWindow.vue | 39 +++-- client/src/views/windows/MainMenuWindow.vue | 21 ++- client/src/views/windows/RegisterWindow.vue | 25 ++-- .../windows/campaigns/CampaignListWindow.vue | 135 ++++++++++++++++++ .../campaigns/CampaignPreviewWindow.vue | 58 ++++++++ .../windows/campaigns/JoinCampaignWindow.vue | 73 ++++++++++ .../windows/campaigns/NewCampaignWindow.vue | 84 +++++++++++ server/models/Campaign.js | 23 +++ server/models/CampaignUser.js | 10 ++ server/routes/campaign.js | 56 ++++++++ server/server.js | 1 + 26 files changed, 714 insertions(+), 180 deletions(-) create mode 100644 client/public/sounds/click.wav create mode 100644 client/public/sounds/close.wav create mode 100644 client/public/sounds/roll1.wav create mode 100644 client/public/sounds/roll2.wav create mode 100644 client/public/sounds/snap.wav create mode 100644 client/src/services/Dragonroll.js delete mode 100644 client/src/views/RegisterView.vue create mode 100644 client/src/views/partials/CampaignEntry.vue create mode 100644 client/src/views/windows/campaigns/CampaignListWindow.vue create mode 100644 client/src/views/windows/campaigns/CampaignPreviewWindow.vue create mode 100644 client/src/views/windows/campaigns/JoinCampaignWindow.vue create mode 100644 client/src/views/windows/campaigns/NewCampaignWindow.vue create mode 100644 server/models/Campaign.js create mode 100644 server/models/CampaignUser.js create mode 100644 server/routes/campaign.js diff --git a/client/index.html b/client/index.html index b1f87157..b32ef146 100644 --- a/client/index.html +++ b/client/index.html @@ -10,7 +10,7 @@ - Aran blog + Dragonroll
diff --git a/client/public/sounds/click.wav b/client/public/sounds/click.wav new file mode 100644 index 0000000000000000000000000000000000000000..8eaf3561d2937ff443a9b08f761ddad3a9ff0a81 GIT binary patch literal 18344 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 literal 0 HcmV?d00001 diff --git a/client/public/sounds/close.wav b/client/public/sounds/close.wav new file mode 100644 index 0000000000000000000000000000000000000000..85601bb33c1d50941441899801370567dae8b4ed GIT binary patch literal 89348 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

iJRo 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 literal 0 HcmV?d00001 diff --git a/client/public/sounds/roll1.wav b/client/public/sounds/roll1.wav new file mode 100644 index 0000000000000000000000000000000000000000..5be8aa46617ae68e99383427fc71ab80283d872f GIT binary patch literal 89364 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 literal 0 HcmV?d00001 diff --git a/client/public/sounds/roll2.wav b/client/public/sounds/roll2.wav new file mode 100644 index 0000000000000000000000000000000000000000..3acdee83e7d82bde0ff286158b48788f1bbcaf11 GIT binary patch literal 89356 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 J+Ygfe{{i6$ZKnVL literal 0 HcmV?d00001 diff --git a/client/public/sounds/snap.wav b/client/public/sounds/snap.wav new file mode 100644 index 0000000000000000000000000000000000000000..0739c573f52a14669f13fe9f544ef20f1bf5e2d4 GIT binary patch literal 59018 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 It1WH+FB_wDzyJUM literal 0 HcmV?d00001 diff --git a/client/src/assets/main.css b/client/src/assets/main.css index f28f8d1c..67762030 100644 --- a/client/src/assets/main.css +++ b/client/src/assets/main.css @@ -45,6 +45,21 @@ a { margin: 4.25px; } +.buttons-row { + width: 100%; + padding-right: 10px; + padding-left: 10px; + display: flex; + flex-direction: row; + justify-content: center; +} + +.button-row { + margin-left: 5px; + margin-right: 5px; + flex-grow: 1; +} + hr { border: 0; height: 1px; @@ -89,7 +104,8 @@ input[type=text]:focus, input[type=password]:focus, input[type=email]:focus { button { margin-top: 5px; margin-bottom: 5px; - padding: 18px; + + padding: 14px; font-size: 15px; border-radius: 6px; outline: none; diff --git a/client/src/services/Dragonroll.js b/client/src/services/Dragonroll.js new file mode 100644 index 00000000..0522fe68 --- /dev/null +++ b/client/src/services/Dragonroll.js @@ -0,0 +1,12 @@ +import { ClearAll, ClearWindow, CreateWindow } from './Windows'; + +function DisplayCampaign(data){ + ClearAll(); + CreateWindow('campaign_preview', { + title: data.name + }); +} + +export { + DisplayCampaign +}; \ No newline at end of file diff --git a/client/src/services/Windows.js b/client/src/services/Windows.js index ee7fd2ae..061b903d 100644 --- a/client/src/services/Windows.js +++ b/client/src/services/Windows.js @@ -7,9 +7,66 @@ const windows = { main_menu: ref([]), edit_profile: ref([]), account_settings: ref([]), - db_window: ref([]) + db_window: ref([]), + campaign_list: ref([]), + new_campaign: ref([]), + join_campaign: ref([]), + campaign_preview: ref([]) }; +const defValues = { + 'login': { + id: 'login', + title: 'Login' + }, + 'register': { + id: 'register', + title: 'Register' + }, + 'main_menu': { + id: 'main_menu', + title: "DragonRoll" + }, + 'edit_profile': { + id: 'edit_profile', + title: "Edit Profile", + close: true + }, + 'account_settings': { + id: 'account_settings', + title: "Dragonroll settings", + close: true + }, + 'campaign_list': { + id: 'campaign_list', + title: 'Campaigns', + back: () => { + ClearWindow('campaign_list'); + CreateWindow('main_menu'); + } + }, + 'new_campaign': { + id: 'new_campaign', + title: 'Create campaign', + parent: 'campaign_list', + close: true + }, + 'join_campaign': { + id: 'join_campaign', + title: 'Join campaign', + parent: 'campaign_list', + close: true + }, + 'campaign_preview': { + id: 'campaign_preview', + title: "Campaign Preview", + back: () => { + ClearWindow('campaign_preview'); + CreateWindow('campaign_list') + } + } +} + const reload = ref(0); let ReloadRef = () => { return reload }; @@ -107,35 +164,57 @@ function ResetPosition(id, pos){ } -function CreateWindow(data){ - if(windows[data.type] === undefined){ - console.error("Window type " + data.type + " is not defined!"); +function CreateWindow(type, data = {}){ + let finalData = {...{type}, ...defValues[type], ...data} + + console.log(finalData); + + if(windows[finalData.type] === undefined){ + console.error("Window type " + finalData.type + " is not defined!"); return; } let contains = false; - for (let i = 0; i < windows[data.type].length; i++) { - if(windows[data.type][i].id == data.id){ + for (let i = 0; i < windows[finalData.type].value.length; i++) { + if(windows[finalData.type].value[i].id == finalData.id){ contains = true; break; } } - if(!contains) { - windows[data.type].value.push(data); + windows[finalData.type].value.push(finalData); // reload.value += 1; - setTimeout(() => SetOnTop(data.id), 0); + setTimeout(() => SetOnTop(finalData.id), 0); } } +function CreateChildWindow(parentId, type, data = {}){ + let finalData = {...{type}, ...defValues[type], ...data} + + let parent = GetWindowWithId(parentId); + if(parent.children) parent.children.push(finalData.id); + else parent.children = [finalData.id]; + CreateWindow(type, data); +} + +function ClearAll(){ + Object.keys(windows).forEach((key) => { + windows[key].value = []; + }); +} + function ClearWindows(data){ - windows[data.type].value = []; + for (let i = 0; i < windows[data.type].value.length; i++) { + ClearWindow(windows[data.type].value[i].id); + } // reload.value += 1; } function ClearWindow(id){ let win = GetWindowWithId(id); + if(!win) return; + if(win.children) for(let i = 0; i < win.children.length; i++) ClearWindow(win.children[i]); windows[win.type].value = windows[win.type].value.filter((e) => {return e.id !== id}); // reload.value += 1; } @@ -174,7 +253,9 @@ export { ReloadRef, ClearWindows, CreateWindow, + CreateChildWindow, GetWindowWithId, SaveWindowPos, - ClearWindow + ClearWindow, + ClearAll } \ No newline at end of file diff --git a/client/src/views/HomeView.vue b/client/src/views/HomeView.vue index 25fff0d7..99e710de 100644 --- a/client/src/views/HomeView.vue +++ b/client/src/views/HomeView.vue @@ -9,18 +9,10 @@ import { CreateWindow } from '@/services/Windows' onMounted(() => { if(GetUser()){ - CreateWindow({ - type: "main_menu", - id: "main_menu", - title: "Dragonroll" - }) + CreateWindow('main_menu') return; } - CreateWindow({ - type: "login", - id: "login", - title: "Login" - }); + CreateWindow('login'); } ); diff --git a/client/src/views/RegisterView.vue b/client/src/views/RegisterView.vue deleted file mode 100644 index 4f54763f..00000000 --- a/client/src/views/RegisterView.vue +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - diff --git a/client/src/views/managers/WindowManager.vue b/client/src/views/managers/WindowManager.vue index 7c7832e2..5896dc50 100644 --- a/client/src/views/managers/WindowManager.vue +++ b/client/src/views/managers/WindowManager.vue @@ -11,6 +11,10 @@ import AccountSettingsWindow from '../windows/AccountSettingsWindow.vue' import { Windows, ReloadRef } from '@/services/Windows'; import DbWindow from '../windows/database/DbWindow.vue' +import CampaignListWindow from '../windows/campaigns/CampaignListWindow.vue' +import NewCampaignWindow from '../windows/campaigns/NewCampaignWindow.vue' +import JoinCampaignWindow from '../windows/campaigns/JoinCampaignWindow.vue' +import CampaignPreviewWindow from '@/views/windows/campaigns/CampaignPreviewWindow.vue' // Gestionem ventanas const reload = ReloadRef(); @@ -24,6 +28,10 @@ const main_menu = windows.main_menu; const edit_profile = windows.edit_profile; const account_settings = windows.account_settings; const db_window = windows.db_window; +const campaign_list = windows.campaign_list; +const new_campaign = windows.new_campaign; +const join_campaign = windows.join_campaign; +const campaign_preview = windows.campaign_preview; @@ -36,6 +44,10 @@ const db_window = windows.db_window; + + + + diff --git a/client/src/views/partials/CampaignEntry.vue b/client/src/views/partials/CampaignEntry.vue new file mode 100644 index 00000000..dc33ad87 --- /dev/null +++ b/client/src/views/partials/CampaignEntry.vue @@ -0,0 +1,75 @@ + + + + + + diff --git a/client/src/views/partials/EditUserPartial.vue b/client/src/views/partials/EditUserPartial.vue index 707caf8b..861daae0 100644 --- a/client/src/views/partials/EditUserPartial.vue +++ b/client/src/views/partials/EditUserPartial.vue @@ -10,7 +10,7 @@ import Api from '@/services/Api' import url from '@/services/BackendURL' import useEmitter from '@/services/Emitter'; -import { ClearWindows, CreateWindow } from '../../services/Windows'; +import { ClearWindows, CreateWindow, CreateChildWindow } from '../../services/Windows'; const emitter = useEmitter(); const username = ref(""); @@ -26,30 +26,16 @@ function retrieveAvatar(){ function LogOut(){ LogoutUser(); - ClearWindows({type: "main_menu", title: "Dragonroll"}); - CreateWindow({ - type: "login", - id: "login", - title: "Login" - }); + ClearWindows({type: "main_menu"}); + CreateWindow('login'); } function EditProfile(){ - CreateWindow({ - type: "edit_profile", - id: "edit_profile", - title: "Edit Profile", - close: true - }); + CreateChildWindow('main_menu', 'edit_profile'); } function EditSettings(){ - CreateWindow({ - type: "account_settings", - id: "account_settings", - title: "Dragonroll settings", - close: true - }); + CreateChildWindow('main_menu', 'account_settings'); } onMounted(() => { @@ -92,9 +78,9 @@ onMounted(() => {

diff --git a/client/src/views/partials/WindowHandle.vue b/client/src/views/partials/WindowHandle.vue index 3fe96664..3e8223f3 100644 --- a/client/src/views/partials/WindowHandle.vue +++ b/client/src/views/partials/WindowHandle.vue @@ -1,5 +1,5 @@ diff --git a/client/src/views/windows/LoginWindow.vue b/client/src/views/windows/LoginWindow.vue index 3b6ff225..eb6c73ed 100644 --- a/client/src/views/windows/LoginWindow.vue +++ b/client/src/views/windows/LoginWindow.vue @@ -32,7 +32,7 @@ onMounted(() => { successMessage.value = success; SetupHandle(id, handle); - SetSize(id, {x: 700, y: 630}); + SetSize(id, {x: 450, y: 480}); ResetPosition(id, "center"); }); @@ -62,20 +62,12 @@ function login(){ function ShowRegister(){ ClearWindows({type: "login"}); - CreateWindow({ - type: "register", - id: "register", - title: "Register" - }); + CreateWindow('register'); } function ShowMainMenu(){ ClearWindows({type: "login"}); - CreateWindow({ - type: "main_menu", - id: "main_menu", - title: "Dragonroll" - }); + CreateWindow('main_menu'); } @@ -97,7 +89,7 @@ function ShowMainMenu(){
- +
@@ -116,8 +108,6 @@ p { } .window-wrapper { - min-width: 700px; - min-height: 630px; user-select: none; display: flex; @@ -125,17 +115,22 @@ p { } .splash-image { - width: 600px; - height: 250px; + width: 400px; +} + +form { + padding-left: 30px; + padding-right: 30px; + width: 100%; } .form-field { - padding: 10px; - display: flex; - align-items: left; - flex-direction: column; - justify-content: left; - width: 600px; + width: 100%; + display: flex; + align-items: left; + flex-direction: column; + justify-content: left; + padding-top: 10px; } label { diff --git a/client/src/views/windows/MainMenuWindow.vue b/client/src/views/windows/MainMenuWindow.vue index 4e807942..ec5fed94 100644 --- a/client/src/views/windows/MainMenuWindow.vue +++ b/client/src/views/windows/MainMenuWindow.vue @@ -24,10 +24,12 @@ let title = data.title; onMounted(() => { SetupHandle(id, handle); - SetSize(id, {x: 500, y: 600}); + SetSize(id, {x: 500, y: 540}); ResetPosition(id, "center", emitter); }); +// ??? +/* function OpenDatabase(){ ClearWindow(id); CreateWindow({ @@ -44,13 +46,11 @@ function OpenDatabase(){ } }); } + */ -function OpenJoinCampaign(){ - ClearWindow(id); -} - -function OpenMyCampaigns(){ +function OpenCampaigns(){ ClearWindow(id); + CreateWindow('campaign_list'); } @@ -65,12 +65,11 @@ function OpenMyCampaigns(){

Main Menu

- - +
- - - + + +
diff --git a/client/src/views/windows/RegisterWindow.vue b/client/src/views/windows/RegisterWindow.vue index c963ce40..ca179529 100644 --- a/client/src/views/windows/RegisterWindow.vue +++ b/client/src/views/windows/RegisterWindow.vue @@ -29,7 +29,7 @@ let title = data.title; onMounted(() => { SetupHandle(id, handle); - SetSize(id, {x: 700, y: 630}); + SetSize(id, {x: 450, y: 780}); ResetPosition(id, "center"); }); @@ -65,12 +65,7 @@ function register(){ function ShowLogin(msg){ ClearWindows({type: "register"}); - CreateWindow({ - type: "login", - id: "login", - title: "Login", - success: msg - }); + CreateWindow('login', {success: msg}); } @@ -106,7 +101,7 @@ function ShowLogin(msg){
- +
@@ -126,17 +121,11 @@ p { } .window-wrapper { - min-width: 700px; - min-height: 630px; - display: flex; align-items: center; } .window-content { - overflow: auto; - min-width: 700px; - flex-direction: column; display: flex; align-items: center; @@ -144,8 +133,7 @@ p { } .splash-image { - width: 600px; - height: 250px; + width: 400px; user-select: none; } @@ -155,7 +143,10 @@ p { align-items: left; flex-direction: column; justify-content: left; - width: 600px; +} + +form { + width: 100%; } label { diff --git a/client/src/views/windows/campaigns/CampaignListWindow.vue b/client/src/views/windows/campaigns/CampaignListWindow.vue new file mode 100644 index 00000000..af6287ed --- /dev/null +++ b/client/src/views/windows/campaigns/CampaignListWindow.vue @@ -0,0 +1,135 @@ + + + + + + + \ No newline at end of file diff --git a/client/src/views/windows/campaigns/CampaignPreviewWindow.vue b/client/src/views/windows/campaigns/CampaignPreviewWindow.vue new file mode 100644 index 00000000..c9f10d38 --- /dev/null +++ b/client/src/views/windows/campaigns/CampaignPreviewWindow.vue @@ -0,0 +1,58 @@ + + + + + + + diff --git a/client/src/views/windows/campaigns/JoinCampaignWindow.vue b/client/src/views/windows/campaigns/JoinCampaignWindow.vue new file mode 100644 index 00000000..6b3b982d --- /dev/null +++ b/client/src/views/windows/campaigns/JoinCampaignWindow.vue @@ -0,0 +1,73 @@ + + + + + + + \ No newline at end of file diff --git a/client/src/views/windows/campaigns/NewCampaignWindow.vue b/client/src/views/windows/campaigns/NewCampaignWindow.vue new file mode 100644 index 00000000..3bd68a28 --- /dev/null +++ b/client/src/views/windows/campaigns/NewCampaignWindow.vue @@ -0,0 +1,84 @@ + + + + + + + \ No newline at end of file diff --git a/server/models/Campaign.js b/server/models/Campaign.js new file mode 100644 index 00000000..179feb26 --- /dev/null +++ b/server/models/Campaign.js @@ -0,0 +1,23 @@ +const mongoose = require("mongoose"); +const Schema = mongoose.Schema; + +const CampaignSchema = new Schema({ + name: {type: String, required: true}, + creation_date: { type: Date, default: Date.now}, + last_opened: { type: Date, default: Date.now}, + invite_code: { type: String, unique: true }, + image: { type: String } +}); + +CampaignSchema.statics.generateInvite = function() { + let possible = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ0123456789"; + let cod = ''; + + for (let i = 0; i < 32; i++) { + cod += possible.charAt(Math.floor(Math.random() * possible.length)); + } + + return cod; +} + +module.exports = mongoose.model('Campaign', CampaignSchema); \ No newline at end of file diff --git a/server/models/CampaignUser.js b/server/models/CampaignUser.js new file mode 100644 index 00000000..5d2319cb --- /dev/null +++ b/server/models/CampaignUser.js @@ -0,0 +1,10 @@ +const mongoose = require("mongoose") +const Schema = mongoose.Schema; + +const CampaignUserSchema = new Schema({ + user: {type: mongoose.Types.ObjectId, ref: "User"}, + campaign: {type: mongoose.Types.ObjectId, ref: "Campaign"}, + is_dm: {type: Boolean, default: false} +}); + +module.exports = mongoose.model('CampaignUser', CampaignUserSchema); \ No newline at end of file diff --git a/server/routes/campaign.js b/server/routes/campaign.js new file mode 100644 index 00000000..cc720497 --- /dev/null +++ b/server/routes/campaign.js @@ -0,0 +1,56 @@ +const express = require('express'); +const router = express.Router(); + +const passport = require('passport'); +const rateLimitMiddleware = require("../config/rate-limiter"); + +const Campaign = require("../models/Campaign"); +const CampaignUser = require("../models/CampaignUser"); + +const upload = require("../config/storage"); + +/* +router.post('/register', passport.authenticate('jwt', {session: false}), rateLimitMiddleware, (req, res) => { +}); +*/ + +router.post('/create', passport.authenticate('jwt', {session: false}), rateLimitMiddleware, (req, res) => { + let { + name + } = req.body; + + if(!(name)){ + res.json({ + status: "error", + msg: "params" + }); + return; + } + + // Create the campaign + let campaign = new Campaign({name}); + campaign.invite_code = Campaign.generateInvite(); + + campaign.save().then(campaign => { + // Create relation with our user and set him as dm + let campaignUser = new CampaignUser({ + user: req.user, + campaign, + is_dm: true + }); + + campaignUser.save().then(campaignUser => { + res.json(campaign); + return + }).catch((err) => {res.json({status: "error", msg: "internal"})}); + }).catch((err) => {res.json({status: "error", msg: "internal"})}); +}); + +router.get('/list', passport.authenticate('jwt', {session: false}), (req, res) => { + CampaignUser.find({user: req.user}).populate("campaign").then((data) => { + res.json(data); + return; + }).catch((err) => res.json({status: "error", msg: "internal"})); +}); + +module.exports = router; \ No newline at end of file diff --git a/server/server.js b/server/server.js index b53d74ec..2f09c920 100755 --- a/server/server.js +++ b/server/server.js @@ -54,6 +54,7 @@ app.use(cors()); // Routes (/ només) app.use('/user', require('./routes/user')); +app.use('/campaign', require('./routes/campaign')); // app.use('/users', require('./routes/users')); app.listen(PORT, () => {