2
2
import json
3
3
from components import userLogin , newUser , pageData , newBio , newTags , tagsSearch
4
4
from database import get_user , get_email_domain , get_password_from_user , add_new_users , add_page_with_user , set_new_page_with_user , update_bio , update_tags , get_names_with_tags , get_all_users
5
+ import requests
6
+
7
+ url = "https://globalemail.melissadata.net/v4/WEB/GlobalEmail/doGlobalEmail"
8
+
9
+
10
+ def check_email (email ):
11
+ params = {
12
+ 'id' : "gxEnKiQsOnDEki3tgvSky_**nSAcwXpxhQ0PC2lXxuDAZ-**" ,
13
+ 'opt' : "VerifyMailBox:Premium,DomainCorrection:off,WhoIs:on" ,
14
+ 'format' : "json" ,
15
+ 'email' : f"{ email } "
16
+ }
17
+ response = requests .get (url , params = params )
18
+ if response .status_code == 200 :
19
+ result_dict = response .json ()
20
+ print (result_dict )
21
+ score = int (result_dict ["Records" ][0 ]["DeliverabilityConfidenceScore" ])
22
+ return score > 20
23
+ else :
24
+ return False
25
+
5
26
6
27
7
28
@@ -31,10 +52,13 @@ async def post_search_results(search_tags: tagsSearch):
31
52
results = ',' .join (list (results ))
32
53
json_result = json .dumps ({"username" : results })
33
54
return {json_result }
55
+
34
56
@app .post ("/get_all_users/" )
35
57
async def post_all_users ():
36
58
results = get_all_users ()
37
- return {results }
59
+ results = ',' .join (list (results ))
60
+ json_result = json .dumps ({"username" : results })
61
+ return {json_result }
38
62
39
63
40
64
@@ -47,9 +71,12 @@ async def post_create_user(user_info: newUser):
47
71
elif not user_info .school_email .__contains__ (domain_result [0 ][0 ]):
48
72
return {1 }
49
73
else :
50
- add_new_users (user_info .username , user_info .password , user_info .email , user_info .school_email , user_info .school_id )
51
- set_new_page_with_user (user_info .username , user_info .school_id )
52
- return {2 }
74
+ if check_email (user_info .school_email ):
75
+ add_new_users (user_info .username , user_info .password , user_info .email , user_info .school_email , user_info .school_id )
76
+ set_new_page_with_user (user_info .username , user_info .school_id )
77
+ return {2 }
78
+ else :
79
+ return {1 }
53
80
54
81
# turn it from json to dict
55
82
# verify that username is avail
0 commit comments