コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="routeName"></param>
        /// <param name="writeOnBody"></param>
        /// <param name="writeMinified"></param>
        /// <returns></returns>
        public static MvcHtmlString RequiredScript(String routeName = null, Boolean writeOnBody = false, Boolean writeMinified = true)
        {
            var script = "";

            script = ScriptProcessorEngine.GetRequiredCode(routeName, writeOnBody, writeMinified);

            return(new MvcHtmlString(script));
        }
コード例 #2
0
        /// <summary>
        /// <para>Render the code.</para>
        /// </summary>
        protected override void Render(HtmlTextWriter writer)
        {
            writer.BeginRender();
            var script = ScriptProcessorEngine.GetRequiredCode("", this.WriteOnBody, this.Minify, WebModeType.AjaxHandler);

            writer.Write(script);
            writer.EndRender();
        }
コード例 #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="url"></param>
        /// <param name="httpContext"></param>
        /// <param name="webModeType"> </param>
        /// <returns></returns>
        public static Boolean WriteScript(String url, HttpContext httpContext, WebModeType webModeType = WebModeType.MvcController)
        {
            string scriptName = ((!Utils.Parameter.UseAjaxExtension && webModeType == WebModeType.MvcController)
                               ? "mtnajaxmethods/"
                               : "mtnajaxmethods." + Utils.Parameter.AjaxExtension);

            if (url.ToLowerInvariant().Contains(scriptName.ToLowerInvariant()))
            {
                string hashtag = httpContext.Request["hashtag"];
                if (hashtag.IsNullOrWhiteSpaceMtn())
                {
                    return(false);
                }
                string script;
                if (Cache.Instance.ContainsKey(MtnAjaxCacheType.AjaxScriptMethod, hashtag) == false)
                {
                    script = ScriptProcessorEngine.GetStartScriptCode(Utils.Parameter.DisableMtnScriptForClasses);
                }
                else
                {
                    script = ScriptProcessorEngine.GetStartScriptCode(Utils.Parameter.DisableMtnScriptForClasses) + (string)Cache.Instance[MtnAjaxCacheType.AjaxScriptMethod, hashtag];
                }
                httpContext.Response.Write(script);
                httpContext.Response.ContentType = "text/javascript; charset=UTF-8";
                httpContext.ApplicationInstance.CompleteRequest();

                return(true);
            }
            else
            {
                scriptName  = httpContext.Request.ApplicationPath.ToLowerInvariant();
                scriptName += ((!Utils.Parameter.UseAjaxExtension && webModeType == WebModeType.MvcController)
                               ? "mtnlibrary/"
                               : "mtnlibrary." + Utils.Parameter.AjaxExtension);
                var minScriptName = ((!Utils.Parameter.UseAjaxExtension && webModeType == WebModeType.MvcController)
                               ? "mtnlibrary-min/"
                               : "mtnlibrary.min." + Utils.Parameter.AjaxExtension);
                if (url.ToLowerInvariant().Contains(scriptName.ToLowerInvariant()) || url.ToLowerInvariant().Contains(minScriptName.ToLowerInvariant()))
                {
                    string script = ScriptProcessorEngine.GetStartScriptCode(false, url.ToLowerInvariant().Contains(minScriptName.ToLowerInvariant()));
                    httpContext.Response.Write(script);
                    httpContext.Response.ContentType = "text/javascript; charset=UTF-8";
                    httpContext.ApplicationInstance.CompleteRequest();
                    return(true);
                }
            }
            return(false);
        }
コード例 #4
0
        /// <summary>
        /// <para>Render the code.</para>
        /// </summary>
        protected override void Render(HtmlTextWriter writer)
        {
            try
            {
                writer.BeginRender();
                Mtn.Library.Web.Utils.Parameter.AjaxWebModeType = WebModeType.AjaxHandler;

                var script = ScriptProcessorEngine.GetScriptCode(routeName: "", classList: Modules, methodList: Methods, writeOnBody: WriteOnBody, writeMinified: Minify,
                                                                 scriptProcessorType: ScriptProcessorType, webModeType: WebModeType.AjaxHandler, isDeferScript: IsDeferScript, isAsync: IsAsync,
                                                                 hashTag: HashTag, exportFile: ExportFile, virtualPath: VirtualPath, useTraditionalParameterForm: UseTraditionalParameterForm);
                writer.Write(script);
                writer.EndRender();
            }
            catch (Exception ex)
            {
                Service.Statistics.Add(ex.GetAllMessagesMtn());
            }
        }
コード例 #5
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="routeName"></param>
        /// <param name="classList"></param>
        /// <param name="methodList"></param>
        /// <param name="writeOnBody"></param>
        /// <param name="writeMinified"></param>
        /// <param name="scriptProcessorType"></param>
        /// <param name="isDeferScript"></param>
        /// <param name="isAsync"></param>
        /// <param name="hashTag"></param>
        /// <param name="exportFile"></param>
        /// <param name="virtualPath"></param>
        /// <param name="useTraditionalParameterForm"> Use traditional parameters, like function(parm1,parm2,parm3) instead function(options), calling myFunc({data:'data'});</param>
        /// <returns></returns>
        public static MvcHtmlString Script(String routeName = null, String classList = null, String methodList = null, Boolean writeOnBody = false, Boolean writeMinified = true, ScriptProcessorType?scriptProcessorType = null, Boolean isDeferScript = false, Boolean isAsync = false, String hashTag = null, Boolean exportFile = false, String virtualPath = "", Boolean useTraditionalParameterForm = false)
        {
            var script = "";

            script = ScriptProcessorEngine.GetScriptCode(
                routeName: routeName,
                classList: classList,
                methodList: methodList,
                writeOnBody: writeOnBody,
                writeMinified: writeMinified,
                scriptProcessorType: scriptProcessorType,
                webModeType: WebModeType.MvcController,
                isDeferScript: isDeferScript,
                isAsync: isAsync,
                hashTag: hashTag,
                exportFile: exportFile, virtualPath: virtualPath, useTraditionalParameterForm: useTraditionalParameterForm);

            return(new MvcHtmlString(script));
        }