Server update, this incorporates DOB checks.
This commit is contained in:
parent
f4f664ef86
commit
32d44f6532
@ -15,7 +15,9 @@ import java.io.FileWriter;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
import static com.jamesquinley.Asecure.electronicMailHandler.*;
|
import static com.jamesquinley.Asecure.electronicMailHandler.*;
|
||||||
@ -1155,169 +1157,187 @@ public class delegationServices {
|
|||||||
String Email = (String) DServer.get("Email");
|
String Email = (String) DServer.get("Email");
|
||||||
String FName = (String) DServer.get("FName");
|
String FName = (String) DServer.get("FName");
|
||||||
int DOB = (int) DServer.get("UDOB");
|
int DOB = (int) DServer.get("UDOB");
|
||||||
//TODO Please made DOB calcs work.
|
String yearString = new SimpleDateFormat("yyyy").format(new Date());
|
||||||
if ((Boolean) Filter.get("creationEnabled")) {
|
int year = Integer.parseInt(yearString);
|
||||||
String sourcet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
|
if (year-DOB >= 13) {
|
||||||
StringBuilder sbt = new StringBuilder();
|
if ((Boolean) Filter.get("creationEnabled")) {
|
||||||
Random random = new Random();
|
String sourcet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
|
||||||
int tokenlength = 60;
|
StringBuilder sbt = new StringBuilder();
|
||||||
for (int i = 0; i < tokenlength; i++) {
|
Random random = new Random();
|
||||||
int index = random.nextInt(sourcet.length());
|
int tokenlength = 60;
|
||||||
char randomChar = sourcet.charAt(index);
|
for (int i = 0; i < tokenlength; i++) {
|
||||||
sbt.append(randomChar);
|
int index = random.nextInt(sourcet.length());
|
||||||
}
|
char randomChar = sourcet.charAt(index);
|
||||||
String Token = "OCST" + sbt.toString();
|
sbt.append(randomChar);
|
||||||
//Above makes token, it will be remade if it already exists
|
}
|
||||||
String source = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
|
String Token = "OCST" + sbt.toString();
|
||||||
StringBuilder sb = new StringBuilder();
|
//Above makes token, it will be remade if it already exists
|
||||||
int length = 40;
|
String source = "ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
|
||||||
for (int i = 0; i < length; i++) {
|
StringBuilder sb = new StringBuilder();
|
||||||
int index = random.nextInt(source.length());
|
int length = 40;
|
||||||
char randomChar = source.charAt(index);
|
for (int i = 0; i < length; i++) {
|
||||||
sb.append(randomChar);
|
int index = random.nextInt(source.length());
|
||||||
}
|
char randomChar = source.charAt(index);
|
||||||
String UUID = sb.toString();
|
sb.append(randomChar);
|
||||||
//Above makes UUID, will be remade if it already exists.
|
}
|
||||||
|
String UUID = sb.toString();
|
||||||
|
//Above makes UUID, will be remade if it already exists.
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|
||||||
Document DupeEmail = accountS.find(eq("Email", Email)).first();
|
Document DupeEmail = accountS.find(eq("Email", Email)).first();
|
||||||
String DUPEEMAIL = (String) DupeEmail.get("Email");
|
String DUPEEMAIL = (String) DupeEmail.get("Email");
|
||||||
if (DUPEEMAIL.equals(null)) {
|
if (DUPEEMAIL.equals(null)) {
|
||||||
Document DupeUser = accountS.find(eq("User", User)).first();
|
Document DupeUser = accountS.find(eq("User", User)).first();
|
||||||
String DUPE = (String) DupeUser.get("User");
|
String DUPE = (String) DupeUser.get("User");
|
||||||
}
|
}
|
||||||
BasicDBObject searchQuery = new BasicDBObject();
|
BasicDBObject searchQuery = new BasicDBObject();
|
||||||
searchQuery.append("_id", ClientID);
|
searchQuery.append("_id", ClientID);
|
||||||
|
|
||||||
BasicDBObject updateQuery = new BasicDBObject();
|
BasicDBObject updateQuery = new BasicDBObject();
|
||||||
BasicDBObject updateQuery1 = new BasicDBObject();
|
BasicDBObject updateQuery1 = new BasicDBObject();
|
||||||
updateQuery.append("$set",
|
updateQuery.append("$set",
|
||||||
new BasicDBObject().append("type", 6));
|
new BasicDBObject().append("type", 6));
|
||||||
updateQuery1.append("$set",
|
updateQuery1.append("$set",
|
||||||
new BasicDBObject().append("status", true));
|
new BasicDBObject().append("status", true));
|
||||||
dCollection.updateOne(searchQuery, updateQuery);
|
dCollection.updateOne(searchQuery, updateQuery);
|
||||||
dCollection.updateOne(searchQuery, updateQuery1);
|
dCollection.updateOne(searchQuery, updateQuery1);
|
||||||
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
||||||
} catch (Exception exr) {
|
} catch (Exception exr) {
|
||||||
System.out.println("Username & Email Is Open");
|
System.out.println("Username & Email Is Open");
|
||||||
try {
|
try {
|
||||||
Document DupeToken = accountS.find(eq("Token", Token)).first();
|
Document DupeToken = accountS.find(eq("Token", Token)).first();
|
||||||
String DupeToke1n = (String) DupeToken.get("Token");
|
String DupeToke1n = (String) DupeToken.get("Token");
|
||||||
System.out.println("Got Token from request");
|
System.out.println("Got Token from request");
|
||||||
Boolean TokenOpen = false;
|
Boolean TokenOpen = false;
|
||||||
while (TokenOpen == false) {
|
while (TokenOpen == false) {
|
||||||
for (int i = 0; i < tokenlength; i++) {
|
for (int i = 0; i < tokenlength; i++) {
|
||||||
int index = random.nextInt(sourcet.length());
|
int index = random.nextInt(sourcet.length());
|
||||||
char randomChar = sourcet.charAt(index);
|
char randomChar = sourcet.charAt(index);
|
||||||
sbt.append(randomChar);
|
sbt.append(randomChar);
|
||||||
}
|
}
|
||||||
Token = sbt.toString();
|
Token = sbt.toString();
|
||||||
try {
|
try {
|
||||||
DupeToken = accountS.find(eq("Token", Token)).first();
|
DupeToken = accountS.find(eq("Token", Token)).first();
|
||||||
DupeToke1n = (String) DupeToken.get("Token");
|
DupeToke1n = (String) DupeToken.get("Token");
|
||||||
System.out.println("Token Is Reserved, Try Again.");
|
System.out.println("Token Is Reserved, Try Again.");
|
||||||
for (int i = 0; i < tokenlength; i++) {
|
for (int i = 0; i < tokenlength; i++) {
|
||||||
int index = random.nextInt(sourcet.length());
|
int index = random.nextInt(sourcet.length());
|
||||||
char randomChar = sourcet.charAt(index);
|
char randomChar = sourcet.charAt(index);
|
||||||
sbt.append(randomChar);
|
sbt.append(randomChar);
|
||||||
}
|
}
|
||||||
} catch (Exception exDr) {
|
} catch (Exception exDr) {
|
||||||
TokenOpen = true;
|
TokenOpen = true;
|
||||||
System.out.println("Token Free (While EXP)");
|
System.out.println("Token Free (While EXP)");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception token) {
|
} catch (Exception token) {
|
||||||
System.out.println("Working on UUID");
|
System.out.println("Working on UUID");
|
||||||
try {
|
try {
|
||||||
Document DupeUUID = accountS.find(eq("UUID", UUID)).first();
|
Document DupeUUID = accountS.find(eq("UUID", UUID)).first();
|
||||||
String DupeUUIDS = (String) DupeUUID.get("UUID");
|
String DupeUUIDS = (String) DupeUUID.get("UUID");
|
||||||
System.out.println("Got Gen UUID");
|
System.out.println("Got Gen UUID");
|
||||||
Boolean UUIDOPEN = false;
|
Boolean UUIDOPEN = false;
|
||||||
while (UUIDOPEN == false) {
|
while (UUIDOPEN == false) {
|
||||||
length = 40;
|
length = 40;
|
||||||
sb = new StringBuilder();
|
sb = new StringBuilder();
|
||||||
for (int i = 0; i < length; i++) {
|
for (int i = 0; i < length; i++) {
|
||||||
int index = random.nextInt(source.length());
|
int index = random.nextInt(source.length());
|
||||||
char randomChar = source.charAt(index);
|
char randomChar = source.charAt(index);
|
||||||
sb.append(randomChar);
|
sb.append(randomChar);
|
||||||
}
|
}
|
||||||
String UUIDGEN = sb.toString();
|
String UUIDGEN = sb.toString();
|
||||||
try {
|
try {
|
||||||
System.out.println("Retry UUID");
|
System.out.println("Retry UUID");
|
||||||
DupeUUID = accountS.find(eq("UUID", UUID)).first();
|
DupeUUID = accountS.find(eq("UUID", UUID)).first();
|
||||||
DupeUUIDS = (String) DupeUUID.get("UUID");
|
DupeUUIDS = (String) DupeUUID.get("UUID");
|
||||||
System.out.println("UUID Is Reserved, Try Again.");
|
System.out.println("UUID Is Reserved, Try Again.");
|
||||||
length = 40;
|
length = 40;
|
||||||
sb = new StringBuilder();
|
sb = new StringBuilder();
|
||||||
for (int i = 0; i < length; i++) {
|
for (int i = 0; i < length; i++) {
|
||||||
int index = random.nextInt(source.length());
|
int index = random.nextInt(source.length());
|
||||||
char randomChar = source.charAt(index);
|
char randomChar = source.charAt(index);
|
||||||
sb.append(randomChar);
|
sb.append(randomChar);
|
||||||
}
|
}
|
||||||
UUIDGEN = sb.toString();
|
UUIDGEN = sb.toString();
|
||||||
UUID = UUIDGEN;
|
UUID = UUIDGEN;
|
||||||
} catch (Exception exDr) {
|
} catch (Exception exDr) {
|
||||||
UUIDOPEN = true;
|
UUIDOPEN = true;
|
||||||
System.out.println("UUID Free (While EXP)" + exDr);
|
System.out.println("UUID Free (While EXP)" + exDr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (NullPointerException uuid) {
|
} catch (NullPointerException uuid) {
|
||||||
System.out.println("UUID Free");
|
System.out.println("UUID Free");
|
||||||
}
|
}
|
||||||
System.out.println("Token Free");
|
System.out.println("Token Free");
|
||||||
System.out.println("Token & UUID Free (Main)");
|
System.out.println("Token & UUID Free (Main)");
|
||||||
System.out.println("Creating.");
|
System.out.println("Creating.");
|
||||||
Document createForm = new Document();
|
Document createForm = new Document();
|
||||||
createForm.append("User", User);
|
createForm.append("User", User);
|
||||||
createForm.append("Password", Password);
|
createForm.append("Password", Password);
|
||||||
createForm.append("Status", true);
|
createForm.append("Status", true);
|
||||||
createForm.append("Flagged", false);
|
createForm.append("Flagged", false);
|
||||||
createForm.append("Email", Email);
|
createForm.append("Email", Email);
|
||||||
createForm.append("FName", FName);
|
createForm.append("FName", FName);
|
||||||
createForm.append("Entitlements", "NA");
|
createForm.append("Entitlements", "NA");
|
||||||
createForm.append("Freinds", " ");
|
createForm.append("Freinds", " ");
|
||||||
createForm.append("Token", Token);
|
createForm.append("Token", Token);
|
||||||
createForm.append("UUID", UUID);
|
createForm.append("UUID", UUID);
|
||||||
createForm.append("Control", 1);
|
createForm.append("Control", 1);
|
||||||
createForm.append("Upgrade", 0);
|
createForm.append("Upgrade", 0);
|
||||||
createForm.append("Version", "2");
|
createForm.append("Version", "2");
|
||||||
createForm.append("keyStatus", false);
|
createForm.append("keyStatus", false);
|
||||||
//createForm.append("Uid",uid);
|
//createForm.append("Uid",uid);
|
||||||
createForm.append("lastNet", IPA);
|
createForm.append("lastNet", IPA);
|
||||||
accountS.insertOne(createForm);
|
accountS.insertOne(createForm);
|
||||||
BasicDBObject searchQuery = new BasicDBObject();
|
BasicDBObject searchQuery = new BasicDBObject();
|
||||||
searchQuery.append("_id", ClientID);
|
searchQuery.append("_id", ClientID);
|
||||||
secureCalls.accountCreationComplete(Email, User, UUID);
|
secureCalls.accountCreationComplete(Email, User, UUID);
|
||||||
BasicDBObject updateQuery = new BasicDBObject();
|
BasicDBObject updateQuery = new BasicDBObject();
|
||||||
BasicDBObject updateQuery1 = new BasicDBObject();
|
BasicDBObject updateQuery1 = new BasicDBObject();
|
||||||
updateQuery.append("$set",
|
updateQuery.append("$set",
|
||||||
new BasicDBObject().append("type", 4));
|
new BasicDBObject().append("type", 4));
|
||||||
updateQuery1.append("$set",
|
updateQuery1.append("$set",
|
||||||
new BasicDBObject().append("status", true));
|
new BasicDBObject().append("status", true));
|
||||||
dCollection.updateOne(searchQuery, updateQuery);
|
dCollection.updateOne(searchQuery, updateQuery);
|
||||||
dCollection.updateOne(searchQuery, updateQuery1);
|
dCollection.updateOne(searchQuery, updateQuery1);
|
||||||
System.out.println("Update Request With Finished Status");
|
System.out.println("Update Request With Finished Status");
|
||||||
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
BasicDBObject searchQuery = new BasicDBObject();
|
BasicDBObject searchQuery = new BasicDBObject();
|
||||||
searchQuery.append("_id", ClientID);
|
searchQuery.append("_id", ClientID);
|
||||||
try { secureCalls.accountCreationDisabled(Email, User);} catch (Exception ex) {System.out.println("Unable to send disabled msg to user");
|
try { secureCalls.accountCreationDisabled(Email, User);} catch (Exception ex) {System.out.println("Unable to send disabled msg to user");
|
||||||
}
|
}
|
||||||
BasicDBObject updateQuery = new BasicDBObject();
|
BasicDBObject updateQuery = new BasicDBObject();
|
||||||
BasicDBObject updateQuery1 = new BasicDBObject();
|
BasicDBObject updateQuery1 = new BasicDBObject();
|
||||||
updateQuery.append("$set",
|
updateQuery.append("$set",
|
||||||
new BasicDBObject().append("type", 52));
|
new BasicDBObject().append("type", 52));
|
||||||
updateQuery1.append("$set",
|
updateQuery1.append("$set",
|
||||||
new BasicDBObject().append("status", true));
|
new BasicDBObject().append("status", true));
|
||||||
dCollection.updateOne(searchQuery, updateQuery);
|
dCollection.updateOne(searchQuery, updateQuery);
|
||||||
dCollection.updateOne(searchQuery, updateQuery1);
|
dCollection.updateOne(searchQuery, updateQuery1);
|
||||||
System.out.println("Update Request With Finished Status");
|
System.out.println("Update Request With Finished Status");
|
||||||
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
//Please set to a custom flag
|
||||||
|
BasicDBObject searchQuery = new BasicDBObject();
|
||||||
|
searchQuery.append("_id", ClientID);
|
||||||
|
|
||||||
|
BasicDBObject updateQuery = new BasicDBObject();
|
||||||
|
BasicDBObject updateQuery1 = new BasicDBObject();
|
||||||
|
updateQuery.append("$set",
|
||||||
|
new BasicDBObject().append("type", 97));
|
||||||
|
updateQuery1.append("$set",
|
||||||
|
new BasicDBObject().append("status", true));
|
||||||
|
dCollection.updateOne(searchQuery, updateQuery);
|
||||||
|
dCollection.updateOne(searchQuery, updateQuery1);
|
||||||
|
//delegationTimer.trigger();
|
||||||
|
delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id"));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (requesttype == 20)
|
if (requesttype == 20)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user