Esempio n. 1
0
        /// <summary>
        /// Add parameters to the script statement.
        /// </summary>
        /// <param name="scriptStatement">
        /// The script statement.
        /// </param>
        /// <param name="allowStatement">
        /// The allow statement.
        /// </param>
        /// <param name="parameters">
        /// The parameters.
        /// </param>
        private static void AddParameters([NotNull] this IScriptStatementContext scriptStatement, bool allowStatement, [NotNull] IEnumerable <object> parameters)
        {
            if (parameters.Any())
            {
                parameters.ForEachFirst(
                    (param, isFirst) =>
                {
                    if (!isFirst)
                    {
                        scriptStatement.Add(",");
                    }

                    if (allowStatement && param.HasInterface <IScriptStatementContext>())
                    {
                        scriptStatement.Add(
                            param.ToClass <IScriptStatementContext>().ScriptStatement.Build(scriptStatement.ScriptBuilder));
                    }
                    else if (param is string)
                    {
                        scriptStatement.AddString(param.ToString());
                    }
                    else
                    {
                        scriptStatement.Add(param.ToString());
                    }
                });
            }
        }
Esempio n. 2
0
        public static IScriptStatementContext AddString(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string jsString)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");

            return(scriptStatement.AddFormat(@"""{0}""", jsString.ToJsString()));
        }
Esempio n. 3
0
        public static IScriptStatementContext AddWithEnd(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string js)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(js, "js");

            return(scriptStatement.AddFormat("{0};\r\n", js));
        }
Esempio n. 4
0
        public static IScriptStatementContext Add(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] IScriptStatement addStatement)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(addStatement, "addStatement");

            return(scriptStatement.Add(addStatement.Build(scriptStatement.ScriptBuilder)));
        }
Esempio n. 5
0
        public static IScriptStatementContext AddSelector(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string selector)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(selector, "selector");

            return(scriptStatement.AddFormat(@"$$$({0})", selector));
        }
Esempio n. 6
0
        public static IScriptStatementContext AddFunc(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string jsInner)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(jsInner, "jsInner");

            return(scriptStatement.AddFormat("function() {{ {0} }}", jsInner));
        }
Esempio n. 7
0
        public static IScriptStatementContext Add(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string js)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(js, "js");

            scriptStatement.ScriptStatement.Add(js);
            return(scriptStatement);
        }
Esempio n. 8
0
        public static IScriptStatementContext AddSelectorFormat(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string selector, [NotNull] params object[] args)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(selector, "selector");
            CodeContracts.ArgumentNotNull(args, "args");

            return(scriptStatement.AddFormat(@"$$$({0})", selector.FormatWith(args)));
        }
Esempio n. 9
0
        public static IScriptStatementContext AddFormat(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] string js, [NotNull] params object[] args)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(js, "js");
            CodeContracts.ArgumentNotNull(args, "args");

            scriptStatement.Add(js.FormatWith(args));

            return(scriptStatement);
        }
Esempio n. 10
0
        public static IScriptStatementContext AddFunc(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] Action <IScriptFunctionContext> buildFunction)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(buildFunction, "buildFunction");

            var function = scriptStatement.ScriptBuilder.CreateFunction(false);

            buildFunction(function);

            return(scriptStatement.Add(function.Build()));
        }
Esempio n. 11
0
        public static IScriptStatementContext AddDocumentReady(
            [NotNull] this IScriptStatementContext scriptStatement, [NotNull] Action <IScriptFunctionContext> buildInner)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(buildInner, "buildInner");

            var function = scriptStatement.ScriptBuilder.CreateFunction(false);

            buildInner(function);

            scriptStatement.AddFormat("$$$().ready({0})", function.Build());

            return(scriptStatement);
        }
Esempio n. 12
0
        public static IScriptStatementContext AddIf(
            [NotNull] this IScriptStatementContext scriptStatement,
            [NotNull] string condition,
            [NotNull] Action <IScriptStatementContext> doInner)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(condition, "condition");
            CodeContracts.ArgumentNotNull(doInner, "doInner");

            var newStatementContext = scriptStatement.ScriptBuilder.CreateStatement(false);

            doInner(newStatementContext);

            return(scriptStatement.AddFormat(
                       "if ({0}) {{\r\n{1}\r\n}}", condition, newStatementContext.ScriptStatement.Build(scriptStatement.ScriptBuilder)));
        }
Esempio n. 13
0
        public static IScriptStatementContext AddCall(
            [NotNull] this IScriptStatementContext scriptStatement,
            [NotNull] string functionName,
            [NotNull] params object[] parameters)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(functionName, "functionName");
            CodeContracts.ArgumentNotNull(parameters, "parameters");

            scriptStatement.AddFormat("{0}(", functionName);

            AddParameters(scriptStatement, true, parameters);

            scriptStatement.Add(")");

            return(scriptStatement);
        }
Esempio n. 14
0
        public static IScriptStatementContext AddArray(
            [NotNull] this IScriptStatementContext scriptStatement,
            [NotNull] string arrayName,
            [NotNull] params object[] parameters)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");
            CodeContracts.ArgumentNotNull(arrayName, "arrayName");

            scriptStatement.AddLine();
            scriptStatement.AddFormat("var {0} = Array(", arrayName);

            AddParameters(scriptStatement, false, parameters);

            scriptStatement.Add(");");

            scriptStatement.AddLine();

            return(scriptStatement);
        }
Esempio n. 15
0
 /// <summary>
 /// Registers a Javascript block using the script manager. Adds script tags.
 /// </summary>
 /// <param name="name">
 /// The name.
 /// </param>
 /// <param name="scriptStatement">
 /// The script Statement.
 /// </param>
 public void RegisterJsBlockStartup(string name, IScriptStatementContext scriptStatement)
 {
     this.RegisterJsBlockStartup(YafContext.Current.CurrentForumPage, name, scriptStatement.Build());
 }
Esempio n. 16
0
        /// <summary>
        /// Builds the Statement from the context and returns the built string.
        /// </summary>
        /// <param name="scriptStatementContext">
        /// The script statement context.
        /// </param>
        /// <returns>
        /// The build.
        /// </returns>
        public static string Build([NotNull] this IScriptStatementContext scriptStatementContext)
        {
            CodeContracts.ArgumentNotNull(scriptStatementContext, "scriptStatementContext");

            return(scriptStatementContext.ScriptStatement.Build(scriptStatementContext.ScriptBuilder));
        }
 /// <summary>
 /// Registers a Javascript block using the script manager. Adds script tags.
 /// </summary>
 /// <param name="name">
 /// The name.
 /// </param>
 /// <param name="scriptStatement">
 /// The script Statement.
 /// </param>
 public void RegisterJsBlockStartup(string name, IScriptStatementContext scriptStatement)
 {
     this.RegisterJsBlockStartup(YafContext.Current.CurrentForumPage, name, scriptStatement.Build());
 }
Esempio n. 18
0
        public static IScriptStatementContext End([NotNull] this IScriptStatementContext scriptStatement)
        {
            CodeContracts.ArgumentNotNull(scriptStatement, "scriptStatement");

            return(scriptStatement.Add(";\r\n"));
        }