Server/Site
- 42 connection is working
This commit is contained in:
@ -11,4 +11,5 @@
|
||||
- 9007 : Invalid username or password
|
||||
- 9008 : User not found
|
||||
- 9009 : Invalid message sent
|
||||
- 9010 : Invalid token 42
|
||||
- 9010 : Invalid token 42
|
||||
- 9011 : Not user registered with this 42 account
|
@ -6,10 +6,11 @@
|
||||
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2024/08/09 09:15:24 by edbernar #+# #+# */
|
||||
/* Updated: 2024/08/09 23:23:46 by edbernar ### ########.fr */
|
||||
/* Updated: 2024/08/10 15:02:33 by edbernar ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
import { typeLogin } from "../typeResponse/typeLogin.js";
|
||||
import { sendRequest } from "../websocket.js";
|
||||
|
||||
function connectedWith42Func()
|
||||
@ -17,7 +18,10 @@ function connectedWith42Func()
|
||||
const token42 = window.location.search.split('code=')[1];
|
||||
|
||||
if (!token42)
|
||||
{
|
||||
typeLogin(null);
|
||||
return ;
|
||||
}
|
||||
sendRequest("login", {type: "by42", token: token42});
|
||||
}
|
||||
|
||||
|
@ -3,10 +3,10 @@
|
||||
/* ::: :::::::: */
|
||||
/* main.js :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: edbernar <edbernar@student.42.fr> +#+ +:+ +#+ */
|
||||
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2024/08/07 17:40:15 by edbernar #+# #+# */
|
||||
/* Updated: 2024/08/09 09:20:03 by edbernar ### ########.fr */
|
||||
/* Updated: 2024/08/10 15:08:44 by edbernar ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
@ -14,7 +14,6 @@ import { createNotification as CN } from "../notification/main.js";
|
||||
import { userMeInfo, waitForLogin } from "../typeResponse/typeLogin.js";
|
||||
import { createConnectDiv } from "./createConnectDiv.js";
|
||||
import { createThreeDiv } from "./createThreeDiv.js";
|
||||
import { connectedWith42Func } from "./connectedWith42.js";
|
||||
|
||||
function login()
|
||||
{
|
||||
@ -22,9 +21,13 @@ function login()
|
||||
const pLoginButton = loginButton.getElementsByTagName('p')[0];
|
||||
let nodeText = null;
|
||||
|
||||
waitForLogin().then(() => {
|
||||
waitForLogin().then((token) => {
|
||||
nodeText = document.createTextNode(userMeInfo.username);
|
||||
|
||||
if (token !== undefined)
|
||||
{
|
||||
document.cookie = "token={" + token + "}; path=/; Secure; SameSite=Strict; max-age=3600";
|
||||
}
|
||||
if (userMeInfo.id !== -1)
|
||||
loginButton.replaceChild(nodeText, pLoginButton);
|
||||
else
|
||||
|
@ -0,0 +1,23 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* typeErrorInvalidToken42.js :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2024/08/10 14:29:34 by edbernar #+# #+# */
|
||||
/* Updated: 2024/08/10 14:40:10 by edbernar ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
|
||||
import { createNotification as NC } from "../notification/main.js";
|
||||
|
||||
function typeErrorInvalidToken42()
|
||||
{
|
||||
// |Eddy| Changer le path pour mettre le bon path quand il y aura un vrai serveur
|
||||
window.history.replaceState({}, document.title, "/site/");
|
||||
NC.new("Error 42", "Invalid token", NC.defaultIcon.error);
|
||||
}
|
||||
|
||||
export { typeErrorInvalidToken42 };
|
@ -0,0 +1,21 @@
|
||||
/* ************************************************************************** */
|
||||
/* */
|
||||
/* ::: :::::::: */
|
||||
/* typeErrorUnknown42Account.js :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2024/08/10 16:01:51 by edbernar #+# #+# */
|
||||
/* Updated: 2024/08/10 16:07:06 by edbernar ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
import { createNotification as CN } from "../notification/main.js";
|
||||
|
||||
function typeErrorUnknown42Account()
|
||||
{
|
||||
window.history.replaceState({}, document.title, "/site/");
|
||||
CN.new("Unknown 42 account", "Your 42 account is not linked to any account.");
|
||||
}
|
||||
|
||||
export { typeErrorUnknown42Account };
|
@ -3,14 +3,16 @@
|
||||
/* ::: :::::::: */
|
||||
/* websocket.js :+: :+: :+: */
|
||||
/* +:+ +:+ +:+ */
|
||||
/* By: edbernar <edbernar@student.42.fr> +#+ +:+ +#+ */
|
||||
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
|
||||
/* +#+#+#+#+#+ +#+ */
|
||||
/* Created: 2024/07/31 22:17:24 by edbernar #+# #+# */
|
||||
/* Updated: 2024/08/09 09:21:28 by edbernar ### ########.fr */
|
||||
/* Updated: 2024/08/10 16:05:26 by edbernar ### ########.fr */
|
||||
/* */
|
||||
/* ************************************************************************** */
|
||||
|
||||
import { typeErrorUnknown42Account } from "./typeErrorResponse/typeErrorUnknown42Account.js";
|
||||
import { typeErrorInvalidPassword } from "./typeErrorResponse/typeErrorInvalidPassword.js";
|
||||
import { typeErrorInvalidToken42 } from "./typeErrorResponse/typeErrorInvalidToken42.js";
|
||||
import { typePrivateListMessage } from "./typeResponse/typePrivateListMessage.js";
|
||||
import { typeNewPrivateMessage } from "./typeResponse/typeNewPrivateMessage.js";
|
||||
import { typePrivateListUser } from "./typeResponse/typePrivateListUser.js";
|
||||
@ -29,8 +31,8 @@ const socket = new WebSocket('ws://localhost:8000/');
|
||||
const typeResponse = ["login", "private_list_user", "private_list_message", "new_private_message"];
|
||||
const functionResponse = [typeLogin, typePrivateListUser, typePrivateListMessage, typeNewPrivateMessage];
|
||||
|
||||
const errorCode = [9007]
|
||||
const errorFunction = [typeErrorInvalidPassword];
|
||||
const errorCode = [9007, 9010, 9011];
|
||||
const errorFunction = [typeErrorInvalidPassword, typeErrorInvalidToken42, typeErrorUnknown42Account];
|
||||
|
||||
let status = 0;
|
||||
|
||||
@ -49,7 +51,7 @@ function getCookie(name)
|
||||
}
|
||||
|
||||
socket.onopen = () => {
|
||||
let token = getCookie("token");
|
||||
let token = getCookie("token");
|
||||
|
||||
status = 1;
|
||||
console.log('Connected');
|
||||
@ -61,7 +63,6 @@ socket.onopen = () => {
|
||||
else
|
||||
{
|
||||
connectedWith42Func();
|
||||
typeLogin(null);
|
||||
}
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user