protocols.advise(instancesProvide=[ITraversalContext]) |
protocols.advise(instancesProvide=[ITraversalContext]) |
|
|
# Public attributes |
# Public attributes |
current = binding.Require("Current object",permissionNeeded=Anybody) |
current = binding.Require("Current object", [security.Anybody]) |
previous = binding.Require("Parent context",permissionNeeded=Anybody) |
previous = binding.Require("Parent context",[security.Anybody]) |
|
|
environ = interaction = policy = skin = rootURL = \ |
environ = interaction = policy = skin = rootURL = \ |
binding.Delegate('previous', permissionNeeded=Anybody) |
binding.Delegate('previous', [security.Anybody]) |
|
|
user = binding.Delegate('interaction', permissionNeeded=Anybody) |
user = binding.Delegate('interaction', [security.Anybody]) |
|
|
# Private attrs |
# Private attrs |
allows = permissionNeeded = binding.Delegate('interaction') |
allows = permissionProtocol = binding.Delegate('interaction') |
getResource = binding.Delegate('skin') |
getResource = binding.Delegate('skin') |
|
|
_clone_attrs = ( |
_clone_attrs = ( |
|
|
absoluteURL = binding.Make( |
absoluteURL = binding.Make( |
lambda self: IWebTraversable(self.current).getURL(self), |
lambda self: IWebTraversable(self.current).getURL(self), |
permissionNeeded=Anybody |
[security.Anybody] |
) |
) |
|
|
traversedURL = binding.Make( |
traversedURL = binding.Make( |
lambda self: posixpath.join(self.previous.absoluteURL, self.name), |
lambda self: posixpath.join(self.previous.absoluteURL, self.name), |
permissionNeeded=Anybody |
[security.Anybody] |
) |
) |
|
|
def renderHTTP(self): |
def renderHTTP(self): |
url = binding.Make( |
url = binding.Make( |
lambda self: relativeURL( |
lambda self: relativeURL( |
request_uri(self.environ,False), self.absoluteURL |
request_uri(self.environ,False), self.absoluteURL |
), permissionNeeded = Anybody |
), |
|
[security.Anybody] |
) |
) |
|
|
|
|
|
|
def viewHandler(self): |
def viewHandler(self): |
vs = IViewService(self.current,None) |
vs = IViewService(self.current,None) |
if vs is not None: |
if vs is not None: |