Ejemplo n.º 1
0
 def f(*a, **b):
     if len(request.args) > 0:
         token = request.args[-1]
         res = None
         try:
             from gluon.contrib.simplejsonrpc import ServerProxy
             url = settings.rpc_server + "/cba/admin/call/jsonrpc"
             server = ServerProxy(url)
             res = server.check_permission(request.application, request.controller, request.function, token)
         except:
             # print auth.user.token
             # import traceback
             # traceback.print_exc()
             pass
         finally:
             if "result" in res and res["result"] is True:
                 return action(*a, **b)
     if request.is_restful:
         raise HTTP(401)
     else:
         return dict(error="You don't have permission to access!")
Ejemplo n.º 2
0
 def f(*a, **b):
     if auth.user is not None:
         res = None
         try:
             from gluon.contrib.simplejsonrpc import ServerProxy
             url = settings.rpc_server + "/cba/admin/call/jsonrpc"
             service = ServerProxy(url)
             res = service.check_permission(request.application, request.controller,
                                            request.function, auth.user.token)
         except:
             # print auth.user.token
             # import traceback
             # traceback.print_exc()
             pass
         finally:
             if res and "result" in res and res["result"] is True:
                 auth.user.permissions = res["permissions"]
                 return action(*a, **b)
     if request.is_restful:
         raise HTTP(401)
     else:
         #session.flash = "Bạn không có quyền truy cập!" if not "message" in res else res["message"]
         redirect(URL(c='default', f='index'))