Exemplo n.º 1
0
        //public static string GetReturnUrlParam(HttpRequest request, string siteRoot)
        //{
        //    // only allow return urls that are relative or start with the site root
        //    //http://www.mojoportal.com/Forums/Thread.aspx?thread=5314&mid=34&pageid=5&ItemID=2&pagenumber=1#post22121
        //    if (request.Params.Get("returnurl") != null)
        //    {
        //        string returnUrlParam = request.Params.Get("returnurl");
        //        if (returnUrlParam.Contains(","))
        //        {
        //            returnUrlParam = returnUrlParam.Substring(0, returnUrlParam.IndexOf(","));
        //        }
        //        if (!String.IsNullOrEmpty(returnUrlParam))
        //        {
        //            returnUrlParam = SecurityHelper.RemoveMarkup(returnUrlParam);
        //            string returnUrl = WebUtils.ResolveUrl(SecurityHelper.RemoveMarkup(HttpUtility.UrlDecode(returnUrlParam)));
        //            if ((returnUrl.StartsWith("/")) && (!(returnUrl.StartsWith("//"))))
        //            {
        //                return returnUrl;
        //            }
        //            if (
        //                (returnUrl.StartsWith(siteRoot))
        //                || (returnUrl.StartsWith(siteRoot.Replace("https://", "http://")))
        //                )
        //            {
        //                return returnUrl;
        //            }
        //        }
        //    }
        //    return string.Empty;
        //}
        /// <summary>
        /// You should pass your editor to this method during pre-init or init
        /// </summary>
        /// <param name="editor"></param>
        public static void SetupNewsletterEditor(EditorControl editor)
        {
            if (HttpContext.Current == null) { return; }
            if (HttpContext.Current.Request == null) { return; }
            if (editor == null) return;

            SiteSettings siteSettings = CacheHelper.GetCurrentSiteSettings();
            if (siteSettings == null) { return; }

            string providerName = siteSettings.NewsletterEditor;

            string loweredBrowser = string.Empty;

            if (HttpContext.Current.Request.UserAgent != null)
            {
                loweredBrowser = HttpContext.Current.Request.UserAgent.ToLower();
            }

            if (
                (loweredBrowser.Contains("iphone"))
                && (WebConfigSettings.ForcePlainTextInIphone)
                )
            {
                providerName = "TextAreaProvider";
            }

            if (
                (loweredBrowser.Contains("android"))
                && (WebConfigSettings.ForcePlainTextInAndroid)
                )
            {
                providerName = "TextAreaProvider";
            }

            //string siteRoot = null;
            //if (siteSettings.SiteFolderName.Length > 0)
            //{
            //    siteRoot = siteSettings.SiteRoot;
            //}
            //if (siteRoot == null) siteRoot = WebUtils.GetSiteRoot();

            string siteRoot = GetNavigationSiteRoot();

            editor.ProviderName = providerName;
            editor.WebEditor.SiteRoot = siteRoot;

            CultureInfo defaultCulture = SiteUtils.GetDefaultCulture();
            if (defaultCulture.TextInfo.IsRightToLeft)
            {
                editor.WebEditor.TextDirection = Direction.RightToLeft;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// You should pass your editor to this method during pre-init or init
        /// </summary>
        /// <param name="editor"></param>
        public static void SetupEditor(EditorControl editor, bool useSkinCss, string preferredProvider, bool allowPageOverride, bool fullUrl, Page page)
        {
            if (HttpContext.Current == null) return;
            if (HttpContext.Current.Request == null) return;
            if (editor == null) return;

            SiteSettings siteSettings = CacheHelper.GetCurrentSiteSettings();
            if (siteSettings == null) return;

            string providerName = siteSettings.EditorProviderName;
            if (siteSettings.AllowUserEditorPreference)
            {
                SiteUser siteUser = GetCurrentSiteUser();
                if ((siteUser != null) && (siteUser.EditorPreference.Length > 0))
                {
                    providerName = siteUser.EditorPreference;
                }

            }

            string loweredBrowser = string.Empty;

            if (HttpContext.Current.Request.UserAgent != null)
            {
                loweredBrowser = HttpContext.Current.Request.UserAgent.ToLower();
            }

            if (
                (loweredBrowser.Contains("safari"))
                && (WebConfigSettings.ForceTinyMCEInSafari)
                )
            {
                providerName = "TinyMCEProvider";
            }

            if (
                (loweredBrowser.Contains("opera"))
                && (WebConfigSettings.ForceTinyMCEInOpera)
                )
            {
                providerName = "TinyMCEProvider";
            }

            if (WebConfigSettings.AdaptEditorForMobile)
            {
                if (
                    (IsMobileDevice() || BrowserHelper.IsIpad())
                    && (
                        (!BrowserHelper.MobileDeviceSupportsWYSIWYG()) || (WebConfigSettings.ForceTextAreaEditorInMobile)
                        )
                    )
                {
                    providerName = "TextAreaProvider";
                    if ((page != null) && (page is mojoBasePage))
                    {
                        mojoBasePage basePage = page as mojoBasePage;
                        basePage.ScriptConfig.IncludeMarkitUpHtml = true;
                    }

                }
            }

            //string siteRoot = null;
            //if (siteSettings.SiteFolderName.Length > 0)
            //{
            //    siteRoot = siteSettings.SiteRoot;
            //}
            //if (siteRoot == null) siteRoot = WebUtils.GetSiteRoot();

            string siteRoot = GetNavigationSiteRoot();

            if (!string.IsNullOrEmpty(preferredProvider)) { providerName = preferredProvider; }

            editor.ProviderName = providerName;
            if (editor.WebEditor != null)
            {
                editor.WebEditor.SiteRoot = siteRoot;
                //editor.WebEditor.SkinName = siteSettings.EditorSkin.ToString();
                if (useSkinCss)
                {
                    editor.WebEditor.EditorCSSUrl = GetEditorStyleSheetUrl(allowPageOverride, fullUrl, page);
                }

                CultureInfo defaultCulture = SiteUtils.GetDefaultCulture();
                if (defaultCulture.TextInfo.IsRightToLeft)
                {
                    editor.WebEditor.TextDirection = Direction.RightToLeft;
                }
            }
        }
Exemplo n.º 3
0
 /// <summary>
 /// this is the preferred overload
 /// </summary>
 /// <param name="editor"></param>
 /// <param name="allowPageOverride"></param>
 /// <param name="fullUrl"></param>
 /// <param name="page"></param>
 public static void SetupEditor(EditorControl editor, bool allowPageOverride, Page page)
 {
     SetupEditor(editor, WebConfigSettings.UseSkinCssInEditor, string.Empty, allowPageOverride, false, page);
 }
Exemplo n.º 4
0
 public static void SetupEditor(EditorControl editor, bool useSkinCss)
 {
     SetupEditor(editor, useSkinCss, string.Empty, false, true, null);
 }
Exemplo n.º 5
0
 public static void SetupEditor(EditorControl editor)
 {
     SetupEditor(editor, WebConfigSettings.UseSkinCssInEditor);
 }