Beispiel #1
0
 public PartialWidgetPageAjaxTagHelper(IPageRetriever pageRetriever,
                                       IHttpContextAccessor httpContextAccessor,
                                       IPartialWidgetPageHelper partialWidgetPageHelper)
 {
     PageRetriever           = pageRetriever;
     HttpContextAccessor     = httpContextAccessor;
     PartialWidgetPageHelper = partialWidgetPageHelper;
 }
    public static string LayoutIfNotAjax(this HtmlHelper helper, string Layout)
    {
        IPartialWidgetPageHelper Helper = DependencyResolver.Current.GetService <IPartialWidgetPageHelper>();

        if (HttpContext.Current.Request.QueryString != null && HttpContext.Current.Request.QueryString.AllKeys.Contains(Helper.GetPartialUrlParameter()))
        {
            return(null);
        }
        return(Layout);
    }
 public PartialWidgetPageWidgetViewComponent(IPageRetriever pageRetriever,
                                             IPartialWidgetPageHelper partialWidgetPageHelper,
                                             IPartialWidgetRenderingRetriever partialWidgetRenderingRetriever,
                                             IEventLogWriter eventLogWriter)
 {
     PageRetriever                   = pageRetriever;
     PartialWidgetPageHelper         = partialWidgetPageHelper;
     PartialWidgetRenderingRetriever = partialWidgetRenderingRetriever;
     EventLogWriter                  = eventLogWriter;
 }
 public PartialWidgetPageWidgetController(IPageRetriever pageRetriever,
                                          IPartialWidgetPageHelper partialWidgetPageHelper,
                                          IPartialWidgetRenderingRetriever partialWidgetRenderingRetriever,
                                          IEventLogWriter eventLogWriter,
                                          IComponentPropertiesRetriever componentPropertiesRetriever,
                                          IPageDataContextRetriever pageDataContextRetriever)
 {
     PageRetriever                   = pageRetriever;
     PartialWidgetPageHelper         = partialWidgetPageHelper;
     PartialWidgetRenderingRetriever = partialWidgetRenderingRetriever;
     EventLogWriter                  = eventLogWriter;
     ComponentPropertiesRetriever    = componentPropertiesRetriever;
     PageDataContextRetriever        = pageDataContextRetriever;
 }
    private static HtmlString PartialWidgetPageAjax(string Url)
    {
        if (!string.IsNullOrWhiteSpace(Url))
        {
            IPartialWidgetPageHelper Helper = DependencyResolver.Current.GetService <IPartialWidgetPageHelper>();
            Url += $"{(Url.IndexOf('?') == -1 ? '?' : '&')}{Helper.GetPartialUrlParameter()}=true";

            // resolve Virtual Urls
            if (Url.StartsWith("~/"))
            {
                if (!string.IsNullOrWhiteSpace(HttpContext.Current.Request.ApplicationPath.Trim('/')))
                {
                    Url = Url.Replace("~/", $"{HttpContext.Current.Request.ApplicationPath}/");
                }
                else
                {
                    Url = Url.Replace("~/", "/");
                }
            }

            string UniqueID = Guid.NewGuid().ToString().Replace("-", "");
            string Html     = $"<div id=\"Partial-{UniqueID}\"></div>" +
                              $"<script type=\"text/javascript\">" +
                              $"(function() {{ var PartialContainer_{UniqueID} = document.getElementById('Partial-{UniqueID}'); " +
                              $"var RequestObj = (XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');" +
                              $"RequestObj.open('GET', '{Url}', true);" +
                              $"RequestObj.send();" +
                              $"RequestObj.onreadystatechange = function() {{" +
                              $"  if(RequestObj.readyState == 4) {{" +
                              $"     PartialContainer_{UniqueID}.innerHTML = (RequestObj.status == 200) ? RequestObj.responseText : '<!-- Error retrieving page content at {Url} -->';" +
                              $"  }}" +
                              $"}};}})();" +
                              $"</script>";

            return(new HtmlString(Html));
        }
        else
        {
            return(new HtmlString("<!-- Could not determine Ajax Url, please provide valid Page or Document ID -->"));
        }
    }
Beispiel #6
0
 public PartialWidgetPageTagHelper(IPartialWidgetPageHelper partialWidgetPageHelper)
 {
     PartialWidgetPageHelper = partialWidgetPageHelper;
 }
    public static string GetPartialUrlParameter(this HtmlHelper helper)
    {
        IPartialWidgetPageHelper Helper = DependencyResolver.Current.GetService <IPartialWidgetPageHelper>();

        return(Helper.GetPartialUrlParameter());
    }
    public static PreservedPageBuilderContext GetCurrentContext(this HtmlHelper helper)
    {
        IPartialWidgetPageHelper Helper = DependencyResolver.Current.GetService <IPartialWidgetPageHelper>();

        return(Helper.GetCurrentContext());
    }