Ejemplo n.º 1
0
 def post(self):
     if self.request.files:
         
         file = self.request.files['avatar'][0]
         people = self.current_user
         if file:
             rawname = file.get('filename')
             dstname = str(int(time.time()))+'.'+rawname.split('.').pop()
             thbname = "thumb_"+dstname
             # write a file
             # src = "./static/upload/src/"+dstname
             # file(src,'w+').write(f['body'])
             tf = tempfile.NamedTemporaryFile()
             tf.write(file['body'])
             tf.seek(0)
              
             # create normal file
             # img = Image.open(src)
             img = Image.open(tf.name)
             img.thumbnail((60,60),resample=1)
             img.save("./static/avatar/"+dstname)
             tf.close()
             people.avatar_url = "/static/avatar/"+dstname
             people.save()
             fetch_cached_people(people.id, reflush=True)
             
             return self.redirect('/settings/avatar')
Ejemplo n.º 2
0
 def post(self):
     people = self.current_user
     email = self.get_argument('email', '')
     
     people.email = email
     people.save()
     fetch_cached_people(people.id, reflush=True)
     
     return self.render_json(dict(result='ok', info='ok'))
Ejemplo n.º 3
0
 def post(self):
     people = self.current_user
     oldpwdmd5 = self.get_argument('oldpwdmd5', '')
     newpwdmd5 = self.get_argument('newpwdmd5', '')
     if not people.validate_password(oldpwdmd5):
         return self.render_json(dict(result='error', info= u'原密码输入有误'))
     
     people.set_password(newpwdmd5, with_md5=True)
     people.save()
     fetch_cached_people(people.id, reflush=True)
     
     return self.render_json(dict(result='ok', info='ok'))
Ejemplo n.º 4
0
 def post(self):
     login_name_error = ''
     login_password_error = ''
     login_name = ''
     login_password = ''
     schema = LoginForm(self)
     next = self.get_argument("next", options.home_url)
     #login_name = self.get_argument('login_name', None)
     #form_result = schema.to_python(dict(self.request.arguments))
     #login_name = form_result.get('login_name')
     #login_password = form_result.get('login_md5password')
     if schema.validate():
         login_name = schema.params['login_name']
         login_password = schema.params['login_md5password']
         next = schema.params['next']
         
         
         people = People.find_by_name(login_name)
         if people: 
             
             if people.validate_password(login_password):
                 self.set_secure_cookie("user", str(people.id), domain=options.cookie_domain)
                 fetch_cached_people(people.id, reflush=True)
                 #session = request.session
                 #session['people_name'] = people.username
                 #session['people_id'] = people.getid()
     
                 #headers = repeople(request, people.username)
                 if login_name == 'admin':
                     url_from = '/admin'
                     
                 #return HTTPFound(location = url_from, headers = headers)
                 return self.redirect(next)
             else:
                 login_password_error = u'输入的密码不正确'
         else:
             login_name_error = login_name #u'用户名不存在'
             login_name = ''
     else:
         
         #errors = error.unpack_errors()
         login_name_error = schema.form_errors.get('login_name')
         login_password_error = schema.form_errors.get('login_password')
     
     self.render("people/login.html",
                 login_name_error = login_name_error,
                 login_password_error = login_password_error,
                 next = next,
                 login_name = login_name,
                 )
Ejemplo n.º 5
0
    def get_current_user(self):
        people_id = self.get_secure_cookie("user")

        if not people_id:
            return None

        return fetch_cached_people(people_id)