Site/Django :

- Add 404 error
    - change request method to post for load page
This commit is contained in:
Kum1ta
2024-09-11 17:27:23 +02:00
parent 88f706698e
commit 9920af659e
4 changed files with 37 additions and 7 deletions

View File

@ -44,7 +44,6 @@ MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',

View File

@ -0,0 +1,7 @@
<div id="topBar">
<h1>PTME</h1>
</div>
<div style='color: white; position: absolute; left: 50%; top: 50%; text-align: center; transform: translate(-50%, -50%); font-size: 10vh;' id="content">
<h1>404</h1>
<p>Page not found</p>
</div>

View File

@ -18,13 +18,15 @@ def index(request):
def homePage(request):
request.session.save()
if(request.method != "POST"):
return(HttpResponse("wrong method",status=403))
return index(request)
link42 = f"https://api.intra.42.fr/oauth/authorize?client_id={UID42}&redirect_uri={SERVER_URL}/login42&response_type=code&scope=public"
return render(request, "homePage.html", {"link42" : link42})
def lobbyPage(request):
request.session.save()
if(not request.session.get("logged_in", False) or request.method != "POST"):
if(request.method != "POST"):
return index(request)
if(not request.session.get("logged_in", False)):
return(HttpResponse("you are not logged in",status=403))
return render(request, "lobbyPage.html", {})

View File

@ -6,7 +6,7 @@
/* By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/08/25 00:00:21 by edbernar #+# #+# */
/* Updated: 2024/09/10 17:33:18 by edbernar ### ########.fr */
/* Updated: 2024/09/11 17:26:02 by edbernar ### ########.fr */
/* */
/* ************************************************************************** */
@ -25,7 +25,6 @@ class Page
{
const thisClass = this;
window.onpopstate = function(event) {
console.log("verif 2")
for (let i = 0; i < thisClass.availablePages.length; i++)
{
if (window.location.pathname == thisClass.availablePages[i].url)
@ -54,7 +53,9 @@ class Page
{
if (name === this.availablePages[i].name)
{
fetch(this.availablePages[i].servUrl)
fetch(this.availablePages[i].servUrl, {
method: "POST",
})
.then(response => {
if (response.status != 200)
throw Error("Page '" + name + "' can't be loaded")
@ -71,6 +72,7 @@ class Page
})
})
.catch(error => {
window.location.href = '/';
throw Error(error);
});
@ -82,7 +84,27 @@ class Page
#showUnknownPage()
{
document.body.innerHTML = "404 - Page not found";
if (this.actualPage != null)
this.actualPage.dispose();
fetch('/404')
.then(response => {
if (response.status != 200)
throw Error("Page '" + name + "' can't be loaded")
return (response);
})
.then(data => {
data.text().then(text => {
document.body.innerHTML = text;
this.actualPage = null;
document.title = 'PTME - Page not found';
history.pushState({}, this.availablePages[i].title, this.availablePages[i].url);
})
})
.catch(error => {
window.location.href = '/';
throw Error(error);
});
}
};