Esempio n. 1
0
        protected override Endpoint createResult(object model, BehaviorChain chain)
        {
            var url = _urlResolver.UrlFor(model, chain);

            return(new Endpoint {
                IsAuthorized = _authorizor.Authorize(chain, model) == AuthorizationRight.Allow,
                Url = url,
                Chain = chain
            });
        }
Esempio n. 2
0
        // TODO -- this could really use some more end to end testing
        public MenuItemToken BuildToken(MenuNode node)
        {
            var token = new MenuItemToken {
                Children      = node.Children.Select(BuildToken).ToArray(),
                Key           = node.Key.Key,
                Text          = node.Key.ToString(),
                Category      = node.Category,
                MenuItemState = _stateService.DetermineStateFor(node)
            };

            if (node.Icon().IsNotEmpty())
            {
                token.IconUrl = _urls.FindImageUrl(node.Icon());
            }

            if (node.Type == MenuNodeType.Leaf)
            {
                token.Url = _urlResolver.UrlFor(node.UrlInput, node.BehaviorChain);
            }

            node.ForData(token.Set);

            return(token);
        }
Esempio n. 3
0
        public string UrlFor(Type modelType, RouteParameters parameters, string categoryOrHttpMethod = null)
        {
            var chain = resolver.FindUniqueByType(modelType, categoryOrHttpMethod);

            return(_urlResolver.UrlFor(chain, parameters));
        }