diff --git a/api/src/middleware/auth.ts b/api/src/middleware/auth.ts index 395c200..e908b3e 100644 --- a/api/src/middleware/auth.ts +++ b/api/src/middleware/auth.ts @@ -1,5 +1,5 @@ +import { MemberState } from "@app/shared/types/member"; import { NextFunction, Request, Response } from "express"; -import { MemberState } from "../services/memberService"; import { stat } from "fs"; export const requireLogin = function (req: Request, res: Response, next: NextFunction) { diff --git a/api/src/routes/auth.ts b/api/src/routes/auth.ts index dafc2e0..ca8eeba 100644 --- a/api/src/routes/auth.ts +++ b/api/src/routes/auth.ts @@ -10,7 +10,8 @@ import { Role } from '@app/shared/types/roles'; import pool from '../db'; import { requireLogin } from '../middleware/auth'; import { getUserRoles } from '../services/rolesService'; -import { getUserState, MemberState } from '../services/memberService'; +import { getUserState } from '../services/memberService'; +import { MemberState } from '@app/shared/types/member'; const querystring = require('querystring'); diff --git a/api/src/routes/calendar.ts b/api/src/routes/calendar.ts index d3f91d8..82225ef 100644 --- a/api/src/routes/calendar.ts +++ b/api/src/routes/calendar.ts @@ -2,7 +2,7 @@ import { Request, Response } from "express"; import { createEvent, getEventAttendance, getEventDetails, getShortEventsInRange, setAttendanceStatus, setEventCancelled, updateEvent } from "../services/calendarService"; import { CalendarAttendance, CalendarEvent } from "@app/shared/types/calendar"; import { requireLogin, requireMemberState, requireRole } from "../middleware/auth"; -import { MemberState } from "../services/memberService"; +import { MemberState } from "@app/shared/types/member"; const express = require('express'); const r = express.Router(); diff --git a/api/src/routes/course.ts b/api/src/routes/course.ts index 6e86c23..35bf916 100644 --- a/api/src/routes/course.ts +++ b/api/src/routes/course.ts @@ -2,7 +2,7 @@ import { CourseAttendee, CourseEventDetails } from "@app/shared/types/course"; import { getAllCourses, getCourseEventAttendees, getCourseEventDetails, getCourseEventRoles, getCourseEvents, insertCourseEvent } from "../services/CourseSerivce"; import { Request, Response, Router } from "express"; import { requireLogin, requireMemberState } from "../middleware/auth"; -import { MemberState } from "../services/memberService"; +import { MemberState } from "@app/shared/types/member"; const courseRouter = Router(); const eventRouter = Router(); diff --git a/api/src/routes/members.ts b/api/src/routes/members.ts index a8aec37..f0f06db 100644 --- a/api/src/routes/members.ts +++ b/api/src/routes/members.ts @@ -7,7 +7,7 @@ import { requireLogin, requireMemberState, requireRole } from '../middleware/aut import { getUserActiveLOA } from '../services/loaService'; import { getMemberSettings, getMembersFull, getMembersLite, getUserData, setUserSettings } from '../services/memberService'; import { getUserRoles } from '../services/rolesService'; -import { MemberState } from '@app/shared/types/member'; +import { memberSettings, MemberState } from '@app/shared/types/member'; router.use(requireLogin); diff --git a/api/src/routes/ranks.js b/api/src/routes/ranks.ts similarity index 67% rename from api/src/routes/ranks.js rename to api/src/routes/ranks.ts index 81ca611..ee16d13 100644 --- a/api/src/routes/ranks.js +++ b/api/src/routes/ranks.ts @@ -1,15 +1,17 @@ -const express = require('express'); +import { MemberState } from "@app/shared/types/member"; +import { requireLogin, requireMemberState, requireRole } from "../middleware/auth"; +import { getAllRanks, insertMemberRank } from "../services/rankService"; + +import express = require('express'); const r = express.Router(); const ur = express.Router(); -const { getAllRanks, insertMemberRank } = require('../services/rankService'); -const { requireLogin, requireMemberState, requireRole } = require('../middleware/auth'); -const { MemberState } = require('../services/memberService'); + r.use(requireLogin) ur.use(requireLogin) //insert a new latest rank for a user -ur.post('/', [requireRole(["17th Command", "17th Administrator", "17th HQ"]),requireMemberState(MemberState.Member)], async (req, res) => { +ur.post('/', [requireRole(["17th Command", "17th Administrator", "17th HQ"]), requireMemberState(MemberState.Member)], async (req, res) => { 3 try { const change = req.body?.change; diff --git a/api/src/routes/roles.js b/api/src/routes/roles.ts similarity index 89% rename from api/src/routes/roles.js rename to api/src/routes/roles.ts index 283c707..e5429a8 100644 --- a/api/src/routes/roles.js +++ b/api/src/routes/roles.ts @@ -2,16 +2,16 @@ const express = require('express'); const r = express.Router(); const ur = express.Router(); +import { MemberState } from '@app/shared/types/member'; import pool from '../db'; import { requireLogin, requireMemberState, requireRole } from '../middleware/auth'; -import { MemberState } from '../services/memberService'; import { assignUserGroup, createGroup } from '../services/rolesService'; r.use(requireLogin) ur.use(requireLogin) //manually assign a member to a group -ur.post('/', [requireMemberState(MemberState.member), requireRole("17th Administrator")], async (req, res) => { +ur.post('/', [requireMemberState(MemberState.Member), requireRole("17th Administrator")], async (req, res) => { try { const body = req.body; @@ -25,7 +25,7 @@ ur.post('/', [requireMemberState(MemberState.member), requireRole("17th Administ }); //manually remove member from group -ur.delete('/', [requireMemberState(MemberState.member), requireRole("17th Administrator")], async (req, res) => { +ur.delete('/', [requireMemberState(MemberState.Member), requireRole("17th Administrator")], async (req, res) => { try { const body = req.body; console.log(body); @@ -43,7 +43,7 @@ ur.delete('/', [requireMemberState(MemberState.member), requireRole("17th Admini }) //get all roles -r.get('/', [requireMemberState(MemberState.member)], async (req, res) => { +r.get('/', [requireMemberState(MemberState.Member)], async (req, res) => { try { const con = await pool.getConnection(); @@ -82,7 +82,7 @@ r.get('/', [requireMemberState(MemberState.member)], async (req, res) => { }); //create a new role -r.post('/', [requireMemberState(MemberState.member), requireRole("17th Administrator")], async (req, res) => { +r.post('/', [requireMemberState(MemberState.Member), requireRole("17th Administrator")], async (req, res) => { try { const { name, color, description } = req.body; console.log('Creating role:', { name, color, description }); @@ -104,7 +104,7 @@ r.post('/', [requireMemberState(MemberState.member), requireRole("17th Administr } }) -r.delete('/:id', [requireMemberState(MemberState.member), requireRole("17th Administrator")], async (req, res) => { +r.delete('/:id', [requireMemberState(MemberState.Member), requireRole("17th Administrator")], async (req, res) => { try { const id = req.params.id; diff --git a/ui/src/api/loa.ts b/ui/src/api/loa.ts index dd7350a..5a356a0 100644 --- a/ui/src/api/loa.ts +++ b/ui/src/api/loa.ts @@ -43,6 +43,7 @@ export async function getMyLOA(): Promise { headers: { "Content-Type": "application/json", }, + credentials: 'include', }); @@ -63,6 +64,7 @@ export function getAllLOAs(): Promise { headers: { "Content-Type": "application/json", }, + credentials: 'include', }).then((res) => { if (res.ok) { return res.json();