def post(self): if self.request.get('_put'): self.put() return name = self.request.get('name') email = self.request.get('email') push_token = self.request.get('token') device_type = self.request.get('type') if not push_token or not device_type: api.write_error(self.response, 400, 'Missing required parameter, token or type') return user = User(uuid=str(uuid.uuid4()), auth=str(uuid.uuid4())) if name: user.name = name update_gender(user) if email: user.devices.append(Device(device_type='EMAIL', data=email)) user.devices.append(Device(device_type=device_type.upper(), data=push_token)) user.put() update_user_cards(user) api.search.update_public_index(user) api.write_message(self.response, 'success', extra={'users' : [get_user_json(user, public=False)]})
def new_user(**kw): user = User( parent=User.parent_key(), name = kw['account'], img_key = '', chatclass = random.randrange(0,4), account = kw['account'], passward = hash_passward(kw['account'],kw['passward']), fbuser = False, ) user.put() return user.key.id()
def get(self, extID): user = users.get_current_user() if user: userEntry = User.gql("WHERE user = :1", user).get() if not userEntry: userEntry = User() userEntry.user = user userEntry.starred = [] userEntry.starred.append(extID) userEntry.put() else: self.redirect(users.create_login_url(self.request.uri))
def post(self): username = self.request.get('username') self.params['username'] = username password = self.request.get('password') verify = self.request.get('verify') email = self.request.get('email') self.params['email'] = email user = User.all() user.filter('username ='******'username_error'] = 'That is not a valid username' elif invalid_user: self.params['username_error'] = 'This name has been taken' else: self.params['username_error'] = '' if self.valid_password(password): self.params['password_error'] = '' else: self.params['password_error'] = 'That is not a valid password!' if verify == password: self.params['verify_error'] = '' else: self.params['verify_error'] = 'Your passwords did not match!' if self.valid_email(email): self.params['email_error'] = '' else: self.params['email_error'] = 'That is not a valid email!' if not invalid_user and self.valid_username(username) \ and self.valid_password(password) and self.valid_email(email) \ and verify == password: pwhash = au.make_pw_hash(username, password) new = User(username=username, password=pwhash, email=email) new.put() self.response.headers.add_header('Set-Cookie', 'user=%s; Path=/' % str(username)) self.response.headers.add_header('Set-Cookie', 'pw=%s; Path=/' % str(pwhash)) sleep(0.5) self.redirect('/blog/welcome') else: self.render('signup.html', **self.params)
def new_facebook_user(fb_cookie): graph = facebook.GraphAPI(fb_cookie["access_token"]) profile = graph.get_object("me") user = User( parent=User.parent_key(), fbuser = True, fid = str(profile["id"]), name = profile["name"], img_key = '', profile_url = profile["link"], access_token = fb_cookie["access_token"] ) user.put() return user
def get(self, extID): user = users.get_current_user() if user: userEntry = User.gql("WHERE user = :1", user).get() if not userEntry: userEntry = User() userEntry.user = user userEntry.starred = [] if extID in userEntry.starred: userEntry.starred.remove(extID) userEntry.put() self.redirect("/gallery/info/" + extID) else: self.redirect(users.create_login_url(self.request.uri))
def get(self): # check if user is already in database rawRecipes = Recipe.query().fetch() recipes = [] for rawRecipe in rawRecipes : if rawRecipe.image : recipes.append({ 'name': rawRecipe.name, 'latlng': str(rawRecipe.location), 'location': rawRecipe.location_name, 'cooktime': rawRecipe.cooktime, 'image': '<div style="background-image: url(' + rawRecipe.imageUrl() + ')"></div>', 'servings': rawRecipe.servings, 'ingredients': json.dumps(rawRecipe.ingredients), 'recipeUrl' : rawRecipe.viewUrl() }) else : recipes.append({ 'name': rawRecipe.name, 'latlng': str(rawRecipe.location), 'location': rawRecipe.location_name, 'cooktime': rawRecipe.cooktime, 'servings': rawRecipe.servings, 'ingredients': json.dumps(rawRecipe.ingredients), 'recipeUrl' : rawRecipe.viewUrl() }) user = users.get_current_user() name = user.nickname() userID = user.user_id() dbUser = User.query().filter(User.user_id == userID).fetch(1) if UserInfo() : name = dbUser[0].name template_values = { 'name': name } firstTime = False else : newUser = User(user_id=userID, name=name, savedRecipes=['']) newUser.put() name = user.nickname() firstTime = True template_values = { 'title': 'Homepage', 'recipes': json.dumps(recipes), 'header': GetHeader('homepage'), 'logout_url': users.create_logout_url('/'), 'first_time': firstTime } Homepage = jinja_environment.get_template('templates/homepage.html').render(template_values) self.response.write(Homepage)
class UserClass(object): def __init__(self, user_id): if user_id is None: self.user_object = User.get_by_id(user_id) else: if not isinstance(user_id, str): raise ValueError("UserID should be string") try: self.user_object = User.get_by_id(user_id) if self.user_object is None: logging.warning("User not found, creating new user") self.user_object = User(id=user_id) self.user_object.put() except Exception as e: logging.error("Something wient wrong : {}".format(e)) raise Exception self.userid = self.user_object.key.id() def set_name(self, name): if not isinstance(name, str): raise TypeError self.user_object.name = name def set_date_of_birth(self, date_obj): if not isinstance(date_obj, datetime): raise TypeError self.user_object.date_of_birth = date_obj def set_per_month_salary(self, per_month_salary): if not isinstance(per_month_salary, int): raise TypeError self.user_object.per_month_salary = per_month_salary def set_per_month_rent(self, per_month_rent): if not isinstance(per_month_rent, int): raise TypeError self.user_object.per_month_rent = per_month_rent def set_per_month_investment(self, per_month_investment): if not isinstance(per_month_investment, int): raise TypeError self.user_object.per_month_investment = per_month_investment def set_per_month_expenses(self, per_month_expenses): if not isinstance(per_month_expenses, int): raise TypeError self.user_object.per_month_expenses = per_month_expenses def set_no_of_dependents(self, no_of_dependents): if not isinstance(no_of_dependents, int): raise TypeError self.user_object.no_of_dependents = no_of_dependents def set_only_earning_member(self, only_earning_member): if not isinstance(only_earning_member, int): raise TypeError self.user_object.only_earning_member = only_earning_member def save_data(self): self.user_object.put() def update_user(self, name, dob, salary, rent, expenses, dependents, is_only_earning): self.set_name(name) self.set_date_of_birth(dob) self.set_per_month_salary(salary) self.set_per_month_rent(rent) self.set_per_month_expenses(expenses) self.set_no_of_dependents(dependents) self.set_only_earning_member(is_only_earning) self.save_data()