working on subscription

This commit is contained in:
2022-04-16 18:09:13 +02:00
parent 853926e0f7
commit 1282064565
5 changed files with 58 additions and 9 deletions

View File

@@ -9,6 +9,7 @@ import java.sql.ResultSet;
import java.sql.SQLException;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -28,8 +29,12 @@ public class User {
}
public static User create(String email, String name, String password) throws SQLException {
var salt = Util.sha256(email + name + LocalDate.now());
var hashedPass = Util.sha256(password+salt);
String salt = null;
String hashedPass = null;
if (password != null) {
salt = Util.sha256(email + name + LocalDate.now());
hashedPass = Util.sha256(password + salt);
}
return new User(email,name,salt,hashedPass).save();
}
@@ -102,6 +107,7 @@ public class User {
private boolean matching(String password) {
if (hashedPass == null && password == null) return true;
return hashedPass.equals(Util.sha256(password+salt));
}
@@ -126,8 +132,13 @@ public class User {
}
private User save() throws SQLException {
var values = new HashMap<String,Object>();
values.put(EMAIL,email);
values.put(NAME,name);
if (salt != null) values.put(SALT,salt);
if (hashedPass != null) values.put(HASHED_PASS,hashedPass);
Database.open().insertInto(TABLE_NAME)
.values(Map.of(EMAIL,email,NAME,name,SALT,salt,HASHED_PASS,hashedPass))
.values(values)
.run();
return this;
}