Exemple #1
0
 internal static bool AreDefault(this JqGridFilterToolbarOptions filterToolbarOptions)
 {
     return((filterToolbarOptions.DefaultSearchOperator == JqGridOptionsDefaults.Filter.Toolbar.DefaultSearchOperator) &&
            (filterToolbarOptions.GroupingOperator == JqGridOptionsDefaults.Filter.Toolbar.GroupingOperator) &&
            ((filterToolbarOptions.Operands == null) || (filterToolbarOptions.Operands.Count == 0)) &&
            (filterToolbarOptions.OperandToolTip == JqGridOptionsDefaults.Filter.Toolbar.OperandToolTip) &&
            (filterToolbarOptions.SearchOnEnter == JqGridOptionsDefaults.Filter.Toolbar.SearchOnEnter) &&
            (filterToolbarOptions.SearchOperators == JqGridOptionsDefaults.Filter.Toolbar.SearchOperators) &&
            (filterToolbarOptions.StringResult == JqGridOptionsDefaults.Filter.Toolbar.StringResult) &&
            (filterToolbarOptions as JqGridFilterOptions).AreDefault());
 }
        internal static StringBuilder AppendFilterToolbar(this StringBuilder javaScriptBuilder, JqGridFilterToolbarOptions filterToolbarOptions)
        {
            if (filterToolbarOptions != null)
            {
                javaScriptBuilder.AppendLine(")").Append(".jqGrid('filterToolbar'");

                if (!filterToolbarOptions.AreDefault())
                {
                    javaScriptBuilder.AppendLine(",")
                    .AppendJavaScriptObjectOpening()
                    .AppendFilterOptions(filterToolbarOptions)
                    .AppendJavaScriptObjectEnumField(JqGridOptionsNames.Filter.Toolbar.DEFAULT_SEARCH, filterToolbarOptions.DefaultSearchOperator, JqGridOptionsDefaults.Filter.Toolbar.DefaultSearchOperator)
                    .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.Filter.Toolbar.SEARCH_ON_ENTER, filterToolbarOptions.SearchOnEnter, JqGridOptionsDefaults.Filter.Toolbar.SearchOnEnter)
                    .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.Filter.Toolbar.SEARCH_OPERATORS, filterToolbarOptions.SearchOperators, JqGridOptionsDefaults.Filter.Toolbar.SearchOperators)
                    .AppendJavaScriptObjectBooleanField(JqGridOptionsNames.Filter.Toolbar.STRING_RESULT, filterToolbarOptions.StringResult, JqGridOptionsDefaults.Filter.Toolbar.StringResult);

                    if (filterToolbarOptions.StringResult)
                    {
                        javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.Filter.Toolbar.GROUPING_OPERATOR, filterToolbarOptions.GroupingOperator.ToString().ToUpperInvariant(), JqGridOptionsDefaults.Filter.Toolbar.GroupingOperator.ToString().ToUpperInvariant());
                    }

                    if (filterToolbarOptions.SearchOperators)
                    {
                        javaScriptBuilder.AppendJavaScriptObjectStringField(JqGridOptionsNames.Filter.Toolbar.OPERAND_TITLE, filterToolbarOptions.OperandToolTip, JqGridOptionsDefaults.Filter.Toolbar.OperandToolTip);

                        if ((filterToolbarOptions.Operands != null) && (filterToolbarOptions.Operands.Count > 0))
                        {
                            IList <KeyValuePair <JqGridSearchOperators, string> > operands = new List <KeyValuePair <JqGridSearchOperators, string> >();
                            foreach (KeyValuePair <JqGridSearchOperators, string> operand in filterToolbarOptions.Operands)
                            {
                                if (JqGridOptionsDefaults.Filter.Toolbar.Operands.TryGetValue(operand.Key, out string defaultShortText) && (operand.Value != defaultShortText))
                                {
                                    operands.Add(operand);
                                }
                            }

                            if (operands.Count > 0)
                            {
                                javaScriptBuilder.AppendJavaScriptObjectFieldOpening(JqGridOptionsNames.Filter.Toolbar.OPERANDS);
                                foreach (KeyValuePair <JqGridSearchOperators, string> operand in operands)
                                {
                                    javaScriptBuilder.AppendJavaScriptObjectStringField(operand.Key.ToString().ToLower(), operand.Value);
                                }
                                javaScriptBuilder.AppendJavaScriptObjectFieldClosing();
                            }
                        }
                    }

                    javaScriptBuilder.AppendJavaScriptObjectClosing();
                }
            }

            return(javaScriptBuilder);
        }