Пример #1
0
 def post(self):
     if not self.requireParameters(POST_USER_NAME, POST_USER_PASSWORD, POST_USER_PUBKEY, POST_USER_PRIVKEY,
                                   POST_USER_EMAIL, POST_USER_KEY_SALT):
         return
     username = self.request.POST[POST_USER_NAME]
     password = self.request.POST[POST_USER_PASSWORD]
     pubkey = self.request.POST[POST_USER_PUBKEY]
     privateKey = self.request.POST[POST_USER_PRIVKEY]
     email = self.request.POST[POST_USER_EMAIL]
     salt = self.request.POST[POST_USER_KEY_SALT]
     newUser = self.user_model.create_user(username, ["email"], email=email, password_raw=password,
                                           verified=False)
     if not newUser[0]:
         if newUser[1][0] == 'auth_id':
             self.response.write(RESPONSE_USER_NAME_EXISTS)
         else:
             print(newUser)
             print("EMAIL", email)
             self.response.write(RESPONSE_USER_EMAIL_EXISTS)
     else:
         user = newUser[1]
         token = self.user_model.create_signup_token(user.getId())
         emailTemplateHTML = open("static/verify_mail.html", mode="r").read()
         emailTemplateTXT = open("static/verify_mail.txt", mode="r").read()
         emailContentsHTML = emailTemplateHTML.replace("{USERNAME HERE}", username)
         emailContentsHTML = emailContentsHTML.replace("{EMAIL HERE}", email)
         emailContentsHTML = emailContentsHTML.replace("{SITE ADDR}", ADDR_SITE)
         emailContentsHTML = emailContentsHTML.replace("{VERIFICATION ADDR}", ADDR_VERIFY)
         emailContentsHTML = emailContentsHTML.replace("{TOKEN HERE}", token)
         emailContentsTXT = emailTemplateTXT.replace("{USERNAME HERE}", username)
         emailContentsTXT = emailContentsTXT.replace("{EMAIL HERE}", email)
         emailContentsTXT = emailContentsTXT.replace("{SITE ADDR}", ADDR_SITE)
         emailContentsTXT = emailContentsTXT.replace("{VERIFICATION ADDR}", ADDR_VERIFY)
         emailContentsTXT = emailContentsTXT.replace("{TOKEN HERE}", token)
         mail.send_mail("*****@*****.**", email, "Secure Messaging verification",
                        emailContentsTXT, html=emailContentsHTML)
         userKeys = UserKey(parent=UserKey.newKey(newUser[1].auth_ids[0]))
         userKeys.pubkey = pubkey
         userKeys.privateKey = privateKey
         userKeys.keySalt = salt
         userKeys.put()
         self.response.write(RESPONSE_OK)