new announcements page, adding searchbar and message input.

This commit is contained in:
metacryst
2026-03-23 05:26:55 -05:00
parent 35f0fe3654
commit 881c9408b6
22 changed files with 809 additions and 423 deletions

View File

@@ -1,143 +0,0 @@
const handlers = {
async getStripeProfile(networkId) {
return global.payments.getProfile(networkId)
},
async addEvent(newEvent, networkId, creatorId) {
try {
return await global.db.events.add(newEvent, networkId, creatorId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editEvent(id, updatedEvent, networkId, userId) {
try {
return await global.db.events.edit(id, updatedEvent, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteEvent(id, networkId, userId) {
try {
return await global.db.events.delete(id, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getEvent(id) {
try {
return global.db.events.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getEvents(networkId) {
try {
return global.db.events.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async addJob(newJob, networkId, creatorId) {
try {
return await global.db.jobs.add(newJob, networkId, creatorId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editJob(id, updatedJob, networkId, userId) {
try {
return await global.db.jobs.edit(id, updatedJob, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteJob(id, networkId, userId) {
try {
return await global.db.jobs.delete(id, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getJob(id) {
try {
return await global.db.jobs.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getJobs(networkId) {
try {
return global.db.jobs.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async addAnnouncement(text, networkId, userId) {
try {
return await global.db.announcements.add(text, networkId, userId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editAnnouncement(newAnnouncement, userId) {
try {
return await global.db.announcements.edit(newAnnouncement, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteAnnouncement(id, userId) {
try {
return await global.db.announcements.delete(id, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getAnnouncement(id) {
try {
return global.db.announcements.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getAnnouncements(networkId) {
try {
return global.db.announcements.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getUserAnnouncements(userId) {
try {
return global.db.announcements.getByCreator(userId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editBio(newBio, userId) {
try {
return global.db.members.editBio(newBio, userId)
} catch (e) {
return { status: e.status, error: e.message }
}
}
}
export default handlers

View File

@@ -0,0 +1,10 @@
import { createBridge, IS_NODE } from "./bridge.js"
let handlers = {}
if (IS_NODE) {
const mod = await import("./serverFunctions.js")
handlers = mod.default
}
export default createBridge(handlers)

View File

@@ -1,10 +1,143 @@
import { createBridge, IS_NODE } from "./bridge.js"
const handlers = {
async getStripeProfile(networkId) {
return global.payments.getProfile(networkId)
},
let handlers = {}
async addEvent(newEvent, networkId, creatorId) {
try {
return await global.db.events.add(newEvent, networkId, creatorId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
if (IS_NODE) {
const mod = await import("./handlers.js")
handlers = mod.default
async editEvent(id, updatedEvent, networkId, userId) {
try {
return await global.db.events.edit(id, updatedEvent, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteEvent(id, networkId, userId) {
try {
return await global.db.events.delete(id, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getEvent(id) {
try {
return global.db.events.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getEvents(networkId) {
try {
return global.db.events.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async addJob(newJob, networkId, creatorId) {
try {
return await global.db.jobs.add(newJob, networkId, creatorId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editJob(id, updatedJob, networkId, userId) {
try {
return await global.db.jobs.edit(id, updatedJob, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteJob(id, networkId, userId) {
try {
return await global.db.jobs.delete(id, networkId, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getJob(id) {
try {
return await global.db.jobs.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getJobs(networkId) {
try {
return global.db.jobs.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async addAnnouncement(text, networkId, userId) {
try {
return await global.db.announcements.add(text, networkId, userId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editAnnouncement(newAnnouncement, userId) {
try {
return await global.db.announcements.edit(newAnnouncement, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async deleteAnnouncement(id, userId) {
try {
return await global.db.announcements.delete(id, userId);
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getAnnouncement(id) {
try {
return global.db.announcements.getById(id)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getAnnouncements(networkId) {
try {
return global.db.announcements.getByNetwork(networkId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async getUserAnnouncements(userId) {
try {
return global.db.announcements.getByCreator(userId)
} catch (e) {
return { status: e.status, error: e.message }
}
},
async editBio(newBio, userId) {
try {
return global.db.members.editBio(newBio, userId)
} catch (e) {
return { status: e.status, error: e.message }
}
}
}
export default createBridge(handlers)
export default handlers

View File

@@ -18,7 +18,7 @@
--darkgrey: #5c4646;
--headertext: #433c36e2;
--searchbackground: #dfc9ac;
--searchbackground: #ffeed8;
--loginButton: var(--main);
--loginBackground: #d96b6b;
@@ -83,21 +83,27 @@
}
}
input {
outline: none;
caret-color: var(--text); /* hide real caret */
}
input::placeholder {
font-family: Arial;
color: #5C504D;
}
html,
body {
padding: 0;
margin: 0;
font-family: Arial;
padding: 0;
margin: 0;
font-family: Arial;
}
body {
background-color: var(--main);
padding-top: env(safe-area-inset-top);
padding-bottom: env(safe-area-inset-bottom);
padding-left: env(safe-area-inset-left);
padding-right: env(safe-area-inset-right);
background-color: var(--main);
padding-top: env(safe-area-inset-top);
padding-bottom: env(safe-area-inset-bottom);
padding-left: env(safe-area-inset-left);
padding-right: env(safe-area-inset-right);
}