Exemple #1
0
        public ProxyRenderContext(ControllerContext controllerContext,
            PageRequestContext pageRequestContext, ProxyPosition proxyPosition, string requestPath)
        {
            this.ControllerContext = controllerContext;
            this.PageRequestContext = pageRequestContext;
            this.ProxyPosition = proxyPosition;

            if (string.IsNullOrEmpty(requestPath) && PageRequestContext != null)
            {
                requestPath = pageRequestContext.ModuleUrlContext.GetModuleUrl(proxyPosition.PagePositionId);
            }

            if (string.IsNullOrEmpty(requestPath))
            {
                requestPath = proxyPosition.RequestPath;
            }
            requestPath = requestPath.Trim('~').Trim();

            RequestUri = new Uri(proxyPosition.HostUri, requestPath);

            var httpMethod = controllerContext.HttpContext.Request.HttpMethod;
            if (httpMethod.ToUpper() == "POST" && pageRequestContext != null)
            {
                var postModule = pageRequestContext.AllQueryString[Kooboo.CMS.Sites.View.ModuleUrlContext.PostModuleParameter];
                if (postModule != proxyPosition.PagePositionId)
                {
                    httpMethod = "GET";
                }
            }
            HttpMethod = httpMethod;
        }
 public PageDesignProxyContent(ProxyPosition pos)
     : base(pos)
 {
     this.Parameter["Host"] = pos.Host;
     this.Parameter["RequestPath"] = pos.RequestPath;
     this.Parameter["NoProxy"] = pos.NoProxy.ToString().ToLower();
     if (pos.OutputCache != null)
     {
         var outputCacheJson = new
         {
             Duration = pos.OutputCache.Duration,
             ExpirationPolicy = pos.OutputCache.ExpirationPolicy.ToString()
         };
         var serializer = new JavaScriptSerializer();
         var outputCacheJsonString = serializer.Serialize(outputCacheJson);
         this.Parameter.Add("OutputCache", PageDesignContent.Code(outputCacheJsonString));
     }
 }
Exemple #3
0
 protected virtual IHtmlString RenderProxyPosition(ProxyPosition proxyPosition)
 {
     return ProxyRender.Render(PageContext, proxyPosition.PagePositionId, proxyPosition.Host, proxyPosition.RequestPath, proxyPosition.NoProxy, proxyPosition.OutputCache);
 }
Exemple #4
0
 protected virtual IHtmlString RenderProxyPosition(ProxyPosition proxyPosition)
 {
     return ProxyRender.Render(new ProxyRenderContext(PageContext.ControllerContext, PageContext.PageRequestContext, proxyPosition, null));
 }