Пример #1
0
    def post(self, action=None):
        if action=='gen':
            name = self.request.get('code')
            amt = self.request.get('amount')
            # Look up code
            c = PromoCode.by_code(name)
            if not c:
                c = PromoCode(code=name, amount=float(amt))
                c.put()
            self.params['last_code'] = c.code
            self.params['last_amount'] = c.amount

            self.render('admin/coupongen.html', **self.params)
Пример #2
0
 def get(self, action=None):
     if self.user_prefs: # if user is logged in, redirect to profile
         self.redirect("/")
     elif action=='signup':
         promo = self.request.get('code')
         if promo and PromoCode.valid_code(promo):
             self.params['promo'] = promo
         self.render('signup.html', **self.params)
     elif action=='signin':
         self.render('signin.html')
     elif action=='signout':
         self.__signout()
Пример #3
0
 def __signup(self, newacct=True):
     self.response.headers['Content-Type'] = "application/json"
     data = json.loads(self.request.body)
     logging.info(data)
     # retrieve information
     password = data.get('password')
     email = data.get('email')
     promo = data.get('promo')
     mm={'error':None}
     mm['next_url'] = '/m/profile'
     if not valid_email(email):
         mm['error']="That's not a valid email address."
     else:
         mm['email'] = email
     u = UserAccounts.by_email(email)
     if u:
         # already have account, sign them in
         self.__signin(u,password)
         return
     # if not valid_pw(password):
     #     mm['error'] = "That wasn't a valid password."
     if not newacct:
         mm['error']="Not an existing user."
     else:
         u = UserAccounts(email = email, pwhash = make_pw_hash(email, password))
         u.put()
         # create related data structures
         if promo:
             p = PromoCode.valid_code(promo)
             u.init(p)
         else:
             u.init()
         # return mobile login cookies
         mm['status'] = 'new'
         logging.info(u.user_id())
         self.login(u.user_id())
         self.set_current_user()
     if mm['error'] is not None:
         mm['status'] = 'error'
     self.write(json.dumps(mm))
     return