From 8fde05a96d084cc65907915ee720bada94d024d1 Mon Sep 17 00:00:00 2001 From: reidlab Date: Fri, 22 Sep 2023 18:27:42 -0700 Subject: [PATCH] account management thingy --- public/assets/icons/gd/coin.png | Bin 0 -> 3129 bytes public/assets/icons/gd/demon.png | Bin 0 -> 7080 bytes public/assets/icons/gd/diamond.png | Bin 0 -> 4626 bytes public/assets/icons/gd/silvercoin.png | Bin 0 -> 2086 bytes public/assets/icons/gd/star.png | Bin 0 -> 1379 bytes public/favicon.png | Bin 478 -> 3039 bytes public/style.css | 106 +++++++++++++++++++ readme.md | 4 +- src/main.rs | 4 +- src/template_endpoints.rs | 1 + src/template_endpoints/account_management.rs | 37 +++++++ src/template_endpoints/index.rs | 18 +++- src/template_endpoints/login.rs | 16 +-- src/template_endpoints/logout.rs | 4 +- templates/account_header.html.hbs | 23 ++++ templates/account_management.html.hbs | 49 +++++++++ templates/index.html.hbs | 5 +- templates/login.html.hbs | 2 +- 18 files changed, 251 insertions(+), 18 deletions(-) create mode 100644 public/assets/icons/gd/coin.png create mode 100644 public/assets/icons/gd/demon.png create mode 100644 public/assets/icons/gd/diamond.png create mode 100644 public/assets/icons/gd/silvercoin.png create mode 100644 public/assets/icons/gd/star.png create mode 100644 src/template_endpoints/account_management.rs create mode 100644 templates/account_header.html.hbs create mode 100644 templates/account_management.html.hbs diff --git a/public/assets/icons/gd/coin.png b/public/assets/icons/gd/coin.png new file mode 100644 index 0000000000000000000000000000000000000000..c6ab23fe9c994d1c6952881decbb1850b2387e8c GIT binary patch literal 3129 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 literal 0 HcmV?d00001 diff --git a/public/assets/icons/gd/star.png b/public/assets/icons/gd/star.png new file mode 100644 index 0000000000000000000000000000000000000000..59bc2b1d35db3ae9b26c62189a3c84af8ca63f9b GIT binary patch literal 1379 zcmeAS@N?(olHy`uVBq!ia0y~yV6b6eV6fs~W?*2rU41H+fq{V~-O<;Pfnj4m_n$;o z1_lPk;vjb?hIQv;UNSH+a29w(7Bet#3xhBt!>l2SZ01gR!yT|CxgCRx$kFt@Qt{%e%XwN=gi8Is{!@1dWZA%0n66 z-A#LUMsRm1!@F_@7h{IIG`D@8W~55b}sBlPLWWY($(gh zE+~6($77C_T26-pH!umj_hTy6VcNm4<2V0JxDtEVWu}9M^sSR2rpH=x+%C*z@?kx&Bb0x=w9@9)!VcQ!onH4bepL7J z`4F0MS726DYjbo~#9e_|_eh+4AY3)93bc z3ujEZ#$2+Td*(dGi>><#9|_geAG+`IepZT?!J&oqI^jN(4HvF_YB(uu<4f81B{>T} zhM!l};H@s+c_rr0<{L3t_x65%e@ntXE>42YI9+sq&rIRiZG2(-*EN4P_Lv>=<&=f> zm%!o#wl#(}HEV9y|2!0x9qTNa_UXB9)7|#R>UWLa>~pnJXWyfh{$NquRGG~?z6T!p z8)NkUnN=ynS;nYat2cYeZ%J9NZ<%hDettEBWLjwGiOXweXMg>ecwG36_w$s#b>}(y z&bVhuU%C22Z)ZlYylLKnKc{$#$`{7Hj4LY+KDX@Ev=r@Gwo7KGOp}`MC+Vu{O&L$M zzu_C7yf;pLeU|PPycR_~ao%`tE$fc>d5h#uRc-TatdhAq!FA%Jx$e_XibtntKY7}$sW4zC2M<* z^j*1#{R=-W?9VGcJK1K#`-Zc}pVyjwKE0sMbN89Ni>;f=bIK0<<~%zgI%)m8*5koKqcBt;_d@hg#|bEhvy`p*1j#Kf1r7`SS|n04GEu4Nmoae#&3F?&u*rB z!aMiu4W$Kl7k<2PW1I38xhq=^1jZ`wS@P+ymHykWzLR5SaTkQ0|HcIN)%ZxQM*Z(owpfAgtDUgDX0`L9ggPZr%XYWKf2yQja&?rD-r_CEfK wWvs8ID(_!-{(0Y1<7qyu({@B`dNAuh|E|D^vy|Lf*MZ7CPgg&ebxsLQ077tHH~;_u literal 0 HcmV?d00001 diff --git a/public/favicon.png b/public/favicon.png index 9b562aaff4ccc674481408150a8e7d877d9a43e6..ea828db174be8eb64a6d26277ebbfeae7487347d 100644 GIT binary patch literal 3039 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 j{mDuO_Kt.greeting { + flex: 1 1 0px; +} + +.favicon { + margin: auto; + display: block; } \ No newline at end of file diff --git a/readme.md b/readme.md index 26357f7..5858791 100644 --- a/readme.md +++ b/readme.md @@ -39,4 +39,6 @@ i've run out of ideas. - better song support - authentication caching (ip? redis?) - use log instead of println -- make a proper rank system (reuploading, uploading music, rating, etc.) \ No newline at end of file +- make a proper rank system (reuploading, uploading music, rating, etc.) +- user icons in the account management + settings (gdicon.oat.zone? selfhost?) +- account settings page \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index a0455ca..dcf71dc 100644 --- a/src/main.rs +++ b/src/main.rs @@ -58,7 +58,9 @@ fn rocket() -> _ { template_endpoints::login::post_login, template_endpoints::login::get_login, - template_endpoints::logout::logout, + template_endpoints::account_management::account_management, + + template_endpoints::logout::logout ]) // assets .mount("/", routes![ diff --git a/src/template_endpoints.rs b/src/template_endpoints.rs index 89eada7..9c42b0e 100644 --- a/src/template_endpoints.rs +++ b/src/template_endpoints.rs @@ -1,3 +1,4 @@ +pub mod account_management; pub mod index; pub mod login; pub mod logout; diff --git a/src/template_endpoints/account_management.rs b/src/template_endpoints/account_management.rs new file mode 100644 index 0000000..01d2fc4 --- /dev/null +++ b/src/template_endpoints/account_management.rs @@ -0,0 +1,37 @@ +use rocket::response::Redirect; + +use rocket_dyn_templates::{Template, context}; + +use rocket::http::CookieJar; + +use diesel::prelude::*; + +use crate::db; + +#[get("/accounts")] +pub fn account_management(cookies: &CookieJar<'_>) -> Result { + let connection = &mut db::establish_connection_pg(); + + let (logged_in, username_val, _account_id_val, user_id_val) = crate::helpers::templates::auth!(cookies); + + if logged_in { + use crate::schema::users::dsl::*; + use crate::models::User; + + let result = users + .filter(id.eq(user_id_val.expect("user_id not found"))) + .get_result::(connection) + .expect("couldnt find user with user id from account"); + + return Ok(Template::render("account_management", context! { + username: username_val.expect("username not found"), + stars: result.stars, + diamonds: result.diamonds, + coins: result.coins, + user_coins: result.user_coins, + demons: result.demons + })); + } else { + return Err(Redirect::to("/login")); + } +} \ No newline at end of file diff --git a/src/template_endpoints/index.rs b/src/template_endpoints/index.rs index 16fbe81..47006e4 100644 --- a/src/template_endpoints/index.rs +++ b/src/template_endpoints/index.rs @@ -7,7 +7,7 @@ pub fn index() -> Template { let silly_strings: Vec<&str> = vec![ "the trianges consume", "geomtry das", - "now with no RCE!", + "now with no ACE!", "the best gdps", "better than topala", "better than robtop", @@ -17,7 +17,21 @@ pub fn index() -> Template { "kagepro", "wowaka is peak music", "you have been warned: dyno jun", - "listen to jin" + "listen to jin", + "GIVEUP!GIVEUP!GIVEUP!GIVEUP!GIVEUP!GIVEUP!LOVE!LOVE!GIVEUP!GIVEUP!GIVEUP!GIVEUP!GIVEUP!GIVEUP!", + "cross site scripting is a myth", + "VITAL STATE: Deceased - abducted by Pikmin", + "geometry dash for the 3ds", + "trans rights", + "how many maggots eat burger?", + "who would win: the rust borrow checker or rotting flesh", + "your system has run out of application memory", + "unsafe { std::ptr::null_mut::().write(42) }", + "-1", + "[REDACTED]", + "chrome jop jop?", + "pikmin 4", + "italian apk downloader" ]; let mut rng = rand::thread_rng(); diff --git a/src/template_endpoints/login.rs b/src/template_endpoints/login.rs index 96855e8..8163bc1 100644 --- a/src/template_endpoints/login.rs +++ b/src/template_endpoints/login.rs @@ -20,7 +20,7 @@ pub struct FormLogin { } #[post("/login", data = "")] -pub fn post_login(jar: &CookieJar<'_>, input: Form) -> Template { +pub fn post_login(cookies: &CookieJar<'_>, input: Form) -> Template { let connection = &mut db::establish_connection_pg(); use crate::schema::accounts::dsl::*; @@ -34,15 +34,15 @@ pub fn post_login(jar: &CookieJar<'_>, input: Form) -> Template { Ok(account_id_username_val) => { match helpers::accounts::auth(account_id_username_val.0, Some(input.password.clone()), None, None) { Ok(account_id_user_id_val) => { - jar.add_private(Cookie::build( + cookies.add_private(Cookie::build( "blackmail_data", format!("{}:{}:{}", account_id_username_val.1, account_id_user_id_val.0, account_id_user_id_val.1)) - .path("/") - // should probably make this true when we get into production - .secure(false) - .http_only(true) - .max_age(Duration::days(365)) - .finish()); + .path("/") + // should probably make this true when we get into production + .secure(false) + .http_only(true) + .max_age(Duration::days(365)) + .finish()); return Template::render("login", context! { success: "Successfully logged in" diff --git a/src/template_endpoints/logout.rs b/src/template_endpoints/logout.rs index 83b0a28..99566e6 100644 --- a/src/template_endpoints/logout.rs +++ b/src/template_endpoints/logout.rs @@ -3,9 +3,7 @@ use rocket::response::Redirect; #[post("/accounts/logout")] pub fn logout(jar: &CookieJar<'_>) -> Redirect { - jar.remove_private(Cookie::named("username")); - jar.remove_private(Cookie::named("account_id")); - jar.remove_private(Cookie::named("user_id")); + jar.remove_private(Cookie::named("blackmail_data")); Redirect::to("/") } \ No newline at end of file diff --git a/templates/account_header.html.hbs b/templates/account_header.html.hbs new file mode 100644 index 0000000..ee6e4d0 --- /dev/null +++ b/templates/account_header.html.hbs @@ -0,0 +1,23 @@ +
+
+ +
+
+
+ hai, {{ username }}! +
+
+ {{ stars }} {{ diamonds }} {{ coins }} {{ user_coins }} {{ demons }} +
+
+
+ Settings · +
+ +
+
+
+
+
\ No newline at end of file diff --git a/templates/account_management.html.hbs b/templates/account_management.html.hbs new file mode 100644 index 0000000..35aa150 --- /dev/null +++ b/templates/account_management.html.hbs @@ -0,0 +1,49 @@ + + + + + + + + + Home + + + +

+ + Account Management +

+
+
+ +
+
+
+ hai, {{ username }}! +
+
+ {{ stars }} {{ diamonds }} {{ coins }} {{ user_coins }} {{ demons }} +
+
+
+ Settings · +
+ +
+
+
+
+
+
+ lorem ipsum sur dolor amet or something. i'll put stuff here later LOL +

+ anyway how has ur day been +

+ the demon should be your user icon haha, ill get 2 that latr :3 (gonna be next update i think) +
+ + + \ No newline at end of file diff --git a/templates/index.html.hbs b/templates/index.html.hbs index 612426d..0eaf129 100644 --- a/templates/index.html.hbs +++ b/templates/index.html.hbs @@ -11,7 +11,7 @@

- + gdps-server

@@ -24,10 +24,11 @@
  • The Git repository
  • Level reuploading
  • +
  • Account stuff
  • -
    +
    {{ silly_string }}
    diff --git a/templates/login.html.hbs b/templates/login.html.hbs index 127901b..94c9fe5 100644 --- a/templates/login.html.hbs +++ b/templates/login.html.hbs @@ -34,7 +34,7 @@
    - +