Example #1
0
 def get(self):
     user = users.get_current_user()
     user_id = user.user_id()
     email = user.email()
     if user:
         myUser = User.all().filter('id = ',user_id)
         if(myUser.count() >= 1):
             userMetaData = json.loads(myUser[0].metadata)
             if (userMetaData['profile_completed'] == 0):
                 path = os.path.join(os.path.dirname(__file__), '../views' , 'complete_profile.html')
                 self.response.out.write(template.render(path,locals()))
             else:
                 self.redirect('/home')
         else:
             userDict ={}
             userDict['is_first_time'] = 1;
             userDict['profile_completed'] = 0;
             new_user = User()
             new_user.id = user_id
             new_user.email = email;
             new_user.metadata = json.dumps(userDict)
             new_user.put()
             path = os.path.join(os.path.dirname(__file__), '../views' , 'complete_profile.html')
             self.response.out.write(
               template.render(path,locals())
               )
     else:
         self.redirect('/login')
Example #2
0
    def create(self):
        try:
            createParams = {
                "fields" : {
                    "email": {
                        "type": "string", 
                        "required": True, 
                        "regex": '^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$'
                    },
                    "password": {"type": "string","required": True,"minlength":4}
                },
                "message" : {
                    "email":{
                        "type": "тэмдэгт оруулна уу",
                        "required": "email тодорхойгүй байна",
                        "regex": "имэйлээ зөв оруулна уу"
                    },
                    "password":{
                        "type": "Нууц үг үсэг тоо байна",
                        "required": "Нууц үг тодорхойгүй байна",
                        "minlength": "Нууц үг 4 олон тэмдэгттэй байна"
                    }
                }
            }
            

            v = BuValidator(createParams)
            v.validate(request.json)
            code = '123456'
            password_hashed = bcrypt.hashpw(request.json['password'].encode("utf8"), bcrypt.gensalt())
            code_hashed = bcrypt.hashpw(code.encode("utf8"), bcrypt.gensalt())
            
            user = User(
                uuid=User.generateID(),
                email=request.json['email'],
                password = password_hashed,
                activation = code_hashed
            )            
            session.add(user)
            session.flush()
            return json.dumps({
                'result':'success' 
            })        
        except Exception as e:            
            msg =  e.args if len(e.args)>0 else str(e)
            return json.dumps({
                'result':'error',
                'msg': msg
            },ensure_ascii=False).encode('utf8')