示例#1
0
    def post(self, invite_hash):
      password = self.request.get("password")
      password2 = self.request.get("password2")
      if not password == password2:
	self.redirect("/invite/" + invite_hash + "?message=Passwords aren't identical, please try again")
	
      
      # add to member entity
      q = db.Query(invite_db.Invite)
      q.filter("invite_hash =", invite_hash)
      existing_invite = q.get()
      if not existing_invite:
	self.redirect("/invite/" + invite_hash + "?message=No invite exists at this link")
	return
      # get email
      password_hash = get_hash(password)
      m = member_db.Member(email = existing_invite.email, password_hash = password_hash, permissions_list = [existing_invite.permission])
      m.put()
      # delete invite entity
      db.delete(existing_invite.key())
      self.redirect("/?message=You are now a member, thank you")
      # redirect home
示例#2
0
    def post(self):
      email = self.request.get("email")
      password = self.request.get("password")
      password_hash = get_hash(password)
      destination = self.request.get("destination")
      
      q = db.Query(member_db.Member)
      q.filter("email =", email)
      q.filter("password_hash =", password_hash)
      existing_member = q.get()
      
      if existing_member:
        # create gae sessions
        session = get_current_session()
        session['email'] = existing_member.email
        session['permissions_list'] = existing_member.permissions_list
        if not destination:
	  self.redirect("/")
	  return
        self.redirect(destination)
      else:
	self.redirect("/authentication?message=Email and Password not recognized")
	
示例#3
0
    def get(self):
	#gql_string = 'SELECT * From Site'# WHERE status >= %s", where_string
	#q = db.GqlQuery(gql_string)
	#for site in q.run():
	  #db.delete(site.key())
        data = {
	  "show_banner": True,
	  "home_page_current": True,
	  "message": self.request.get("message"),
	  "logged_in": check_login(),
	}
	
	q = db.Query(member_db.Member)
	q.filter("email =", "*****@*****.**")
	admin_exists = q.get()
	
	if not admin_exists:
	  m = member_db.Member(email = "*****@*****.**", password_hash = get_hash("temporary_password"), permissions_list=["Administrator"])
	  m.put()
	  session=get_current_session()
	  session.clear()
        self.response.out.write(template.render(get_template_path(TEMPLATE_URI), data))         
        
示例#4
0
  def post(self):
    # validate form
    email = self.request.get("email")
    confirm_email = self.request.get("confirm_email")
    permission = self.request.get("permission")
    if not permission:
      self.redirect("/invite?message=must specify which permission you are allowing the user.")
      return
    invite_hash = self.request.get("invite_hash")
    if not email == confirm_email:
      self.redirect("/invite?message=email and confirm email were not identical, please try again")
      return
      
    q = db.Query(invite_db.Invite)
    q.filter("email =", email)
    existing_invite = q.get()
    if existing_invite:
      db.delete(existing_invite.key())
      
      
    invite_hash = get_hash()

    i = invite_db.Invite(email = email, invite_hash = invite_hash, permission = permission)
    i.put()
    
    
    email_sucessful_boolean = send_invite(email, invite_hash)
    if not email_sucessful_boolean:
      self.redirect("/invite?message=There was an error sending email, please email us and let us know")
      return

    
    self.redirect("/invite?message=Invite sent to " + email)