예제 #1
0
  def post(self):
    json = simplejson.loads(self.request.body)
    all_users = User.query().fetch()

    hashs = json["resetHash"]
    email = json["email"]
    username = json["username"]
    password = json["password"]

    user = None
    if len(hashs)>0:
      if not utils.checkResetHash(email,hashs):
        utils.write_back(self,{"invalid hash": 1})
        return

      users = User.query().fetch()
      for ui in users:
        if ui.email == email:
          user = ui
          break
        
      if user == None:
        utils.write_back(self,{"invalid hash": 1})
        return

    else:
      for user in all_users:
        if user.email == email:
          utils.write_back(self,{"email exists": 1})
          return

        if user.name == username:
          utils.write_back(self,{"username exists": 1})
          return

      user = User(name=username,email=email,subscribed=True)

    user.password = user.password_hash(password)
    user.put()

    self.response.set_cookie('username', urllib.quote(user.name))
    self.response.set_cookie('hash', urllib.quote(cookieHash(user.name)))

    ans = lookup_util.do_lookup(self,user)
    utils.write_back(self,ans)
예제 #2
0
  def post(self,idStr):
    json = simplejson.loads(self.request.body)
    if "password" not in json or json["password"]!="ruilov12": return

    if "users" in json:
      for user_dict in json["users"]:
        ndb_user = User(name=user_dict["name"],email=user_dict["email"],subscribed=user_dict["subscribed"])
        if ndb_user.email=="*****@*****.**":
          ndb_user.password = ndb_user.password_hash("ruilov12")
        ndb_user.put()

    if "quizzes" in json:
      for quiz_dict in json["quizzes"]:
        quiz = getQuiz(quiz_dict["id"])
        quiz.status = quiz_dict["status"]
        if "releaseDate" in quiz_dict and quiz_dict["releaseDate"]!=None:
          quiz.releaseDate = utils.date_from_str(quiz_dict["releaseDate"])
        questionArr = []
        for question_dict in quiz_dict["questions"]:
          question = Question()
          question.text = question_dict["text"]
          question.source = question_dict["source"]
          question.answer = question_dict["answer"]
          questionArr.append(question)
        quiz.questions = questionArr
        quiz.put()

    if "fillouts" in json:
      for fillout_dict in json["fillouts"]:
        fillout = Fillout(parent=fillout_key(fillout_dict["username"],fillout_dict["quiz_id"]),
            username=fillout_dict["username"],quiz_id=fillout_dict["quiz_id"])

        fillout.ranked = fillout_dict["ranked"]
        fillout.guesses_low = [float(x) for x in fillout_dict["guesses_low"]]
        fillout.guesses_high = [float(x) for x in fillout_dict["guesses_high"]]
        fillout.put()

    if "ratings" in json:
      for rating_dict in json["ratings"]:
        rating = QuestionRatings(username=rating_dict["username"],quiz_id=rating_dict["quiz_id"],ratings=rating_dict["ratings"])
        rating.put()