def wrapper(**kwargs): # Get context from the handler function context = func(**kwargs) if hasattr(context, '__call__'): return context # Add some extra values to context request = kwargs['request'] # while it's enough :) if 'GET' == request.method: rendered_page = render_to_string(templatename, context, request) return Response(rendered_page) else: response = Response(json.dumps(context)) response.headerlist = [('Content-type', 'application/json')] return response
def list_articles(request): try: articles = session.query(Article).filter( Article.user_id == request.params['user_id']).all() except KeyError: articles = session.query(Article).all() json = dumps([serialize(article) for article in articles]) return Response(json)
def index(request): try: admin = get_admin(request, DEFAULT_ADMIN) except AuthErr, e: r = Response() r.status = 403 r.body = 'looks like you are not authorized: %s' % e return r
def wrapper(**kwargs): # Get context from the handler function context = func(**kwargs) if hasattr(context, '__call__'): return context # Add some extra values to context request = kwargs['request'] # while it's enough :) rendered_page = render_to_string(templatename, context, request) return Response(rendered_page)
def delete_article(request, id): if not request.method != 'DELETE': raise HTTPMethodNotAllowed try: article = session.query(Article).filter(Article.id == id.path).one() session.delete(article) session.commit() message = 'article {} deleted'.format(article.title) except NoResultFound: message = 'article does not exist' return Response(message)
def delete_user(request, id): if not request.method != 'DELETE': raise HTTPMethodNotAllowed try: user = session.query(User).filter(User.id == id.path).one() session.delete(user) session.commit() message = 'user {} deleted'.format(user.email) except NoResultFound: message = 'user does not exist' return Response(message)
def add_article(request): if not request.method != 'POST': raise HTTPMethodNotAllowed try: article = Article(user_id=request.params['user_id'], title=request.params['title'], text=request.params['text']) session.add(article) session.commit() response = dumps(serialize(article)) except KeyError: response = 'query parameters was not provided' return Response(response)
def build_challenge_response(self, stale=False): """ If not auth show digest authentification form """ opaque = ''.join([random.choice('0123456789ABCDEF') for x in range(32)]) # IGNORE:W0612 @UnusedVariable response = Response() response.status = 401 response.headerlist.append(('WWW-Authenticate', python_digest.build_digest_challenge( time.time(), self.secret_key, self.realm, opaque, stale))) return response
def add_user(request): if not request.method != 'POST': raise HTTPMethodNotAllowed try: user = User(email=request.params['email'], first_name=request.params['first_name'], last_name=request.params['last_name']) session.add(user) session.commit() response = dumps(serialize(user)) except KeyError: response = 'query parameters was not provided' return Response(response)
def update_user(request, id): if not request.method != 'PATCH': raise HTTPMethodNotAllowed try: user = session.query(User).filter(User.id == id.path).one() user.email = request.params['email'] user.first_name = request.params['first_name'] user.last_name = request.params['last_name'] session.commit() message = 'user {} updated'.format(user.email) except (NoResultFound, KeyError) as err: if isinstance(err, NoResultFound): message = 'user does not exist' else: message = 'please insert new values in query string' return Response(message)
def index(request,room=None): authck = request.cookies.get('auth') logging.info('current auth cookie is %s (%s)'%(authck,RedisConn.get('auth.%s'%authck))) setauthck=None if not authck or not RedisConn.get('auth.%s'%authck): un = request.params.get('username','') pw = request.params.get('password','') err='' if un: u = getuser(un) if u: logging.info('user exists') u = u[0] hpw = hashlib.md5(pw).hexdigest() #raise Exception('comparing %s with %s'%(u,hpw)) if u['password']==hpw: logging.info('generating auth cookie') setauthck = ''.join(random.choice('abcdefghijklmnopqrstuvwxyz') for i in xrange(16)) else: err='invalid login' else: logging.info('creating new user') user={'id':un,'password':hashlib.md5(pw).hexdigest()} users.append(user) saveusers() err='user %s created succesfully. please log in'%un context = {'username':un,'password':pw,'err':err} rtpl='auth.html' else: rtpl='index.html' global rooms if room: openrooms = room.split(',') else: openrooms = [] openrooms = [getroom(rn) for rn in openrooms if rn[0]!='@'] context = {'rooms':json.dumps(rooms),'openrooms':json.dumps(openrooms),'user':RedisConn.get('auth.%s'%authck),'authck':authck,'rowlimit':ROWLIMIT} rendered_page = render_to_string(rtpl, context, request) rsp= Response(rendered_page) if setauthck: RedisConn.set('auth.%s'%setauthck,un) logging.info('setting auth cookie = %s (redis value = %s)'%(setauthck,RedisConn.get('auth.%s'%setauthck))) rsp = Redirect('/') rsp.set_cookie('auth',setauthck) return rsp
def read(request, id): article = session.query(Article).filter(Article.id == id.path).one() json = dumps(serialize(article)) return Response(json)
def render_to_response(templatename, context, request=None): rendered_page = render_to_string(templatename, context, request) return Response(rendered_page)
def list_users(request): users = session.query(User).all() json = dumps([serialize(user) for user in users]) return Response(json)
def detail_user(request, id): user = session.query(User).filter(User.id == id.path).one() json = dumps(serialize(user)) return Response(json)
def render(request, templatename, **kwargs): rendered_page = render_to_string(templatename, kwargs, request) return Response(rendered_page)
def index(request): return Response('<h1>Hello, noodles!</h1>')
def index(request): return Response('<h1>Hello, NoodlesFramework!</h1>')