Преглед изворни кода

Create code for the fetch request to create a new user.

Lee Morgan пре 11 месеци
родитељ
комит
2bd3c5ae95
3 измењених фајлова са 35 додато и 8 уклоњено
  1. 2 1
      bruno/Suma/User/Create.bru
  2. 2 2
      src/views/css/index.css
  3. 31 5
      src/views/js/pages/Register.js

+ 2 - 1
bruno/Suma/User/Create.bru

@@ -14,6 +14,7 @@ body:json {
   {
     "email": "lee@leemorgan.dev",
     "password_hash": "leerobertmorgan",
-    "password_salt": "leerobertmorgan"
+    "password_salt": "leerobertmorgan",
+    "encryption_salt": "Some encryption salt string"
   }
 }

+ 2 - 2
src/views/css/index.css

@@ -63,11 +63,11 @@ body{
     padding: 5px 0 5px 10px;
 }
 
-.standardForm button{
+.standardForm button, .button{
     font-size: 22px;
     margin: 15px 0;
     background: var(--primary);
-    border: 3px solid var(--secondary);
+    border: none;
     color: var(--accent);
     padding: 10px;
     font-weight: bold;

+ 31 - 5
src/views/js/pages/Register.js

@@ -12,12 +12,38 @@ export default class Register extends Page{
     async submit(){
         event.preventDefault();
 
-        let name = this.container.querySelector(".name").value;
-        let email = this.container.querySelector(".email").value;
-        let password = this.container.querySelector(".password").value;
-        let confirmPassword = this.container.querySelector(".confirmPassword").value;
+        const name = this.container.querySelector(".name").value;
+        const email = this.container.querySelector(".email").value;
+        const password = this.container.querySelector(".password").value;
+        const confirmPassword = this.container.querySelector(".confirmPassword").value;
+        const passwordEncryption = await encryptPassword(password);
 
-        console.log(await saltAndHash(password));
+        console.log(await encryptPassword(password));
+
+        fetch("/api/user", {
+            method: "POST",
+            headers: {
+                "Content-Type": "application/json"
+            },
+            body: JSON.stringify({
+                name: name,
+                email: email,
+                password_hash: passwordEncryption.hash,
+                password_salt: passwordEncryption.salt,
+                encryption_salt: "temp"
+            })
+        })
+            .then(r=>r.json())
+            .then((response)=>{
+                if(response.error){
+                    console.log(response.error);
+                }else{
+                    changePage("login");
+                }
+            })
+            .catch((err)=>{
+                console.log(err);
+            });
     }
 
     render(){