Skip to content

Commit 1d8c7cf

Browse files
committed
sql: ajout des tables au repo
1 parent 3d796ec commit 1d8c7cf

17 files changed

+188
-14
lines changed

app/dashboard/chats/components/chatList.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ export default function ChatList() {
88

99
return (
1010
<div>
11-
{
11+
{
1212
rooms.rooms.map((room) => {
1313
return <p>{room.name}</p>
1414
})

app/dashboard/components/navBar/messageIndicator.tsx

+2-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@ export default function MessageButtonIndicator() {
1616
getChatRooms().then((loadedRooms) => {
1717
dispatch({
1818
type: CHATROOMS_LOADED,
19-
rooms: loadedRooms,
19+
rooms: loadedRooms.rooms,
20+
unreadCount: loadedRooms.unreadCount
2021
})
2122
}).catch((error) => {
2223
dispatch({

functions/chats/getChatRooms.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ import { ChatRoom } from "@/types/chat";
44
import { auth } from "@/auth";
55
import executeQuery from "@/db";
66

7-
export default async function getChatRooms(): Promise<ChatRoom[]> {
7+
export default async function getChatRooms(): Promise<{unreadCount: number, rooms: ChatRoom[]}> {
88

99
const session = await auth();
1010
if (!session) {
11-
return [];
11+
return {unreadCount: 0, rooms: []};
1212
}
1313

1414
console.log('Obtention de la liste de discussion.');
@@ -43,7 +43,7 @@ export default async function getChatRooms(): Promise<ChatRoom[]> {
4343
roomID: room.roomID,
4444
name: room.name,
4545
iconPath: room.iconPath,
46-
unreadCount: room.unreadCount ?? 0,
46+
unreadCount: parseInt(room.unreadCount ?? '0'),
4747
lastChat: null /* {
4848
chatID: room.lastChat.chatID,
4949
chatRoomID: room.lastChat.chatRoomID,
@@ -60,6 +60,5 @@ export default async function getChatRooms(): Promise<ChatRoom[]> {
6060

6161
console.log("Liste obtenue : ", rooms);
6262

63-
64-
return rooms;
63+
return {unreadCount: 0, rooms: rooms};
6564
}

functions/chats/getUnreadCount.ts

-7
This file was deleted.

sql/accounts.sql

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
CREATE TABLE
2+
public.accounts (
3+
id serial NOT NULL,
4+
"userId" integer NOT NULL,
5+
type
6+
character varying(255) NOT NULL,
7+
provider character varying(255) NOT NULL,
8+
"providerAccountId" character varying(255) NOT NULL,
9+
refresh_token text NULL,
10+
access_token text NULL,
11+
expires_at bigint NULL,
12+
id_token text NULL,
13+
scope text NULL,
14+
session_state text NULL,
15+
token_type text NULL
16+
);
17+
18+
ALTER TABLE
19+
public.accounts
20+
ADD
21+
CONSTRAINT accounts_pkey PRIMARY KEY (id)

sql/attachements.sql

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
CREATE TABLE
2+
public.attachements (
3+
"attachementID" serial NOT NULL,
4+
"chatID" integer NOT NULL,
5+
author integer NOT NULL,
6+
type
7+
character varying(10) NULL,
8+
path text NOT NULL,
9+
size integer NULL,
10+
mime_type character varying(255) NULL
11+
);
12+
13+
ALTER TABLE
14+
public.attachements
15+
ADD
16+
CONSTRAINT attachements_pkey PRIMARY KEY (attachementID)

sql/chatreadedby.sql

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
CREATE TABLE
2+
public.chatreadedby (
3+
"chatID" integer NOT NULL,
4+
"userID" integer NOT NULL
5+
);
6+
7+
ALTER TABLE
8+
public.chatreadedby
9+
ADD
10+
CONSTRAINT chat_readedby_pkey PRIMARY KEY (chatID)

sql/chatrooms.sql

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
CREATE TABLE
2+
public.chatrooms (
3+
"roomID" serial NOT NULL,
4+
name character varying(255) NULL,
5+
"iconPath" text NULL,
6+
"unreadCount" integer NULL DEFAULT 0,
7+
"lastChatID" integer NULL
8+
);
9+
10+
ALTER TABLE
11+
public.chatrooms
12+
ADD
13+
CONSTRAINT chatrooms_pkey PRIMARY KEY (roomID)

sql/chatroomsmembers.sql

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
CREATE TABLE
2+
public.chatroommembers (
3+
"roomID" integer NOT NULL,
4+
"userID" integer NOT NULL
5+
);
6+
7+
ALTER TABLE
8+
public.chatroommembers
9+
ADD
10+
CONSTRAINT chatroommembers_pkey PRIMARY KEY (roomID)

sql/chats.sql

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
CREATE TABLE
2+
public.chats (
3+
"chatID" serial NOT NULL,
4+
"chatRoomID" integer NOT NULL,
5+
"sendDate" timestamp without time zone NULL DEFAULT CURRENT_TIMESTAMP,
6+
author integer NULL,
7+
"textContent" text NULL,
8+
"responseTo_chatID" integer NULL
9+
);
10+
11+
ALTER TABLE
12+
public.chats
13+
ADD
14+
CONSTRAINT chats_pkey PRIMARY KEY (chatID)

sql/course.sql

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
CREATE TABLE
2+
public.courses (
3+
"courseID" character varying(255) NOT NULL DEFAULT nextval('"courses_courseID_seq"'::regclass),
4+
"courseName" character varying(255) NULL,
5+
"courseDesc" character varying(255) NULL,
6+
"courseTeacherID" character varying(255) NOT NULL DEFAULT 0,
7+
"courseIcon" character varying(255) NULL,
8+
"stripeItemID" character varying(255) NULL
9+
);
10+
11+
ALTER TABLE
12+
public.courses
13+
ADD
14+
CONSTRAINT courses_pkey PRIMARY KEY (courseID)

sql/courseregistrations.sql

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
CREATE TABLE
2+
public.courseregistrations (
3+
"courseRegID" serial NOT NULL,
4+
"studentID" character varying(255) NOT NULL,
5+
"purchaseDate" timestamp without time zone NULL DEFAULT CURRENT_TIMESTAMP,
6+
"courseProgress" integer NOT NULL DEFAULT 0,
7+
"lastReadChapter" character varying(255) NULL,
8+
"earnedXP" integer NOT NULL DEFAULT 0,
9+
"isFavorite" boolean NULL DEFAULT true,
10+
"checkoutSessionID" character varying(255) NULL,
11+
"courseID" character varying(255) NULL,
12+
"stripeItemID" character varying(255) NULL
13+
);
14+
15+
ALTER TABLE
16+
public.courseregistrations
17+
ADD
18+
CONSTRAINT courseregistrations_pkey PRIMARY KEY (courseRegID)

sql/privatelessons.sql

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
CREATE TABLE
2+
public.privatelessons (
3+
"tutoringID" serial NOT NULL,
4+
"stripeItemID" character varying(255) NULL,
5+
"studentID" character varying(255) NULL
6+
);
7+
8+
ALTER TABLE
9+
public.privatelessons
10+
ADD
11+
CONSTRAINT private_lessons_pkey PRIMARY KEY (tutoringID)

sql/progress.sql

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
CREATE TABLE
2+
public.progress (
3+
"progressID" serial NOT NULL,
4+
"progressDate" timestamp without time zone NOT NULL DEFAULT now(),
5+
"progressType" character varying(255) NULL,
6+
"userID" character varying(255) NULL,
7+
"courseID" character varying(255) NULL,
8+
"progressScore" integer NOT NULL DEFAULT 0
9+
);
10+
11+
ALTER TABLE
12+
public.progress
13+
ADD
14+
CONSTRAINT progress_pkey PRIMARY KEY (progressID)

sql/sessions.sql

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
CREATE TABLE
2+
public.sessions (
3+
id serial NOT NULL,
4+
"userId" integer NOT NULL,
5+
expires timestamp with time zone NOT NULL,
6+
"sessionToken" character varying(255) NOT NULL
7+
);
8+
9+
ALTER TABLE
10+
public.sessions
11+
ADD
12+
CONSTRAINT sessions_pkey PRIMARY KEY (id)

sql/users.sql

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
CREATE TABLE
2+
public.users (
3+
id serial NOT NULL,
4+
name character varying(255) NULL,
5+
email character varying(255) NULL,
6+
"emailVerified" timestamp with time zone NULL,
7+
image text NULL,
8+
role character varying(50) NULL DEFAULT 'student'::character varying,
9+
status character varying(50) NULL DEFAULT 'active'::character varying,
10+
"stripeCustomerID" character varying(255) NULL,
11+
"lastViewedChapterURL" character varying(255) NULL
12+
);
13+
14+
ALTER TABLE
15+
public.users
16+
ADD
17+
CONSTRAINT users_pkey PRIMARY KEY (id)

sql/verification_tokens.sql

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
CREATE TABLE
2+
public.verification_token (
3+
identifier text NOT NULL,
4+
expires timestamp with time zone NOT NULL,
5+
token text NOT NULL
6+
);
7+
8+
ALTER TABLE
9+
public.verification_token
10+
ADD
11+
CONSTRAINT verification_token_pkey PRIMARY KEY (identifier)

0 commit comments

Comments
 (0)