Advertisement
Guest User

Untitled

a guest
May 10th, 2016
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. # LOADING THE TEMPLATE INTO THE JINJA ENVIRONMENT
  2. template_dir = os.path.join(os.path.dirname(__file__), 'templates')
  3. jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(template_dir), autoescape = True)
  4.  
  5. # HELPER FUNCTION
  6. def render_str(template, **params):
  7. t = jinja_env.get_template(template)
  8. return t.render(params)
  9.  
  10. # GOOGLE DATASTORE DATABASE
  11. class Entries(db.Model):
  12. title = db.StringProperty(required = True)
  13. body = db.TextProperty(required = True)
  14. created = db.DateTimeProperty(auto_now_add = True)
  15.  
  16. # HANDLER FUNCTIONS
  17. class SignUp(webapp2.RequestHandler):
  18. def get(self):
  19. self.response.write(render_str('signup.html'))
  20.  
  21. def post(self):
  22. have_error = False
  23. username = self.request.get('username')
  24. password = self.request.get('password')
  25. verify = self.request.get('verify')
  26. email = self.request.get('email')
  27.  
  28. params = dict(username = username, email = email)
  29.  
  30. if not valid_username(username):
  31. params['error_username'] = "That's not a valid username."
  32. have_error = True
  33.  
  34. if not valid_password(password):
  35. params['error_password'] = "That wasn't a valid password."
  36. have_error = True
  37. elif password != verify:
  38. params['error_verify'] = "Your passwords didn't match."
  39. have_error = True
  40.  
  41. if not valid_email(email):
  42. params['error_email'] = "That's not a valid email."
  43. have_error = True
  44.  
  45. pwhash = make_secure_val(password)
  46. self.response.headers.add_header('Set-Cookie', 'uid: %s' % str(pwhash))
  47.  
  48. if have_error:
  49. self.response.write(render_str('signup.html', **params))
  50. else:
  51. self.redirect('/welcome')
  52.  
  53. class Welcome(webapp2.RequestHandler):
  54. def get(self):
  55. self.response.write(render_str('welcome.html'))
  56.  
  57. # APP HANDLERS
  58. app = webapp2.WSGIApplication([('/', MainPage),
  59. ('/newpost', NewPost),
  60. ('/newpost/(d+)', Permalink),
  61. ('/signup', SignUp),
  62. ('/welcome', Welcome)
  63. ], debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement