def POST(self): it = web.input() try: grade = it.get('grade') token = it.get('token') tryId = it.get('tryId') now = int(it.get('now', time.time())) user = User().become(token) except leancloud.errors.LeanCloudError: return {'code': 1} obj = TryWords.query.get(tryId) delay = obj.get('delay') tryCount = obj.get('tryCount') if grade == 'c': delay = delay / 2.0 elif grade == 'b': delay = delay / 1.1 elif grade == 'a': if delay > 30 * 86400 - 1: getObj = GetWords() getObj.set('userId', user.id) getObj.set('wordAndExpl', obj.get('word')+'|'+obj.get('expl')) getObj.set('tryCount', obj.get('tryCount') + 1) getObj.set('totalTime', now - obj.get('startTime')) getObj.save() obj.destroy() return {'code': 0} delay *= math.exp(math.log(30) / (user.get('avgGetCount') - 0.1)) delay = min(delay, 40 * 86400) recall_day = int((now + 8 * 3600 + delay) / 86400) obj.set('delay', delay) obj.set('tryCount', tryCount + 1) obj.set('recallDay', recall_day) obj.save() return {'code': 0}
def POST(self, _phone, _password): user = User() try: user.login(_phone, _password) token = user.get_session_token() trueName = user.get("nickName") web.setcookie('session', token) return {'status': 0, 'token': token, 'name': trueName} except leancloud.errors.LeanCloudError: return {'status': 1, 'message': 'login failed'}
def h(*a, **b): ck = web.cookies() tokenName = 'session' token = ck.get(tokenName, None) or web.input().get(tokenName, '!') try: user = User().become(token) web.ctx.userId = user.id web.ctx.userName = user.get("nickName") return g(*a, **b) except leancloud.errors.LeanCloudError as e: if isRedirectOn: web.seeother("/login.html", True) return {'code': e.code, 'message': e.error}
def POST(self): it = web.input() try: word = it.get('word') context = it.get('context') expl = it.get('expl') token = it.get('token') now = int(it.get('now', time.time())) user = User().become(token) except leancloud.errors.LeanCloudError: return {'code': 1} delay = math.exp(math.log(30) / (user.get('avgGetCount') - 0.1)) * 86400 recall_day = int((now + 8 * 3600 + delay) / 86400) obj = TryWords() obj.set('word', word) obj.set('context', context) obj.set('userId', user.id) obj.set('expl', expl) obj.set('delay', delay) obj.set('tryCount', 0) obj.set('recallDay', recall_day) obj.set('startTime', now) obj.save() return {'code': 0}
def test_user_become(): existed_user = User() existed_user.login('user1_name', 'password') session_token = existed_user.get_session_token() user = User.become(session_token) assert user.get('username') == existed_user.get('username')
def test_user_become(): # type: () -> None existed_user = User() existed_user.login('user1_name', 'password') session_token = existed_user.session_token user = User.become(session_token) assert user.get('username') == existed_user.get('username')
def test_user_become(): # type: () -> None existed_user = User() existed_user.login("user1_name", "password") session_token = existed_user.session_token user = User.become(session_token) assert user.get("username") == existed_user.get("username")