Ejemplo n.º 1
0
        public FieldProviderModelData(IFieldValueProvider provider, IFieldInfoEx fieldInfo)
            : base(provider)
        {
            TkDebug.AssertArgumentNull(fieldInfo, "fieldInfo", null);

            FieldInfo = fieldInfo;
        }
Ejemplo n.º 2
0
        private static string Time(this Tk5FieldInfoEx field, IFieldValueProvider row,
                                   bool needId, bool isSearchCtrl)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            return(DateControl(field, "time", field.NickName, string.Empty, "hh:ii", 5, needId, isSearchCtrl));
        }
Ejemplo n.º 3
0
        public string DisplayValue(object value, Tk5FieldInfoEx field, IFieldValueProvider rowValue)
        {
            TkDebug.AssertArgumentNull(field, "field", this);

            if (DisplayUtil.IsNull(value))
            {
                return(string.Empty);
            }

            if (field.Upload != null)
            {
                Tk5UploadConfig   upload    = field.AssertUpload();
                IUploadProcessor2 processor = upload.CreateUploadProcessor2();
                //IFieldValueProvider provider = new DataRowFieldValueProvider(row, row.Table.DataSet);
                string        url     = processor.Display(upload, rowValue);
                HtmlAttribute cssAttr = string.IsNullOrEmpty(CssClass) ? null
                    : new HtmlAttribute("class", CssClass);
                HtmlAttributeBuilder builder = new HtmlAttributeBuilder();
                builder.Add("src", url);
                builder.Add(cssAttr);

                return(string.Format(ObjectUtil.SysCulture, "<img {0} />", builder.CreateAttribute()));
            }
            return(string.Empty);
        }
Ejemplo n.º 4
0
        public string DisplayValue(object value, Tk5FieldInfoEx field, IFieldValueProvider rowValue)
        {
            IDisplay display = CoreDisplay.CreateObject();

            if (display == null)
            {
                return(string.Empty);
            }
            string linkValue = display.DisplayValue(value, field, rowValue);

            if (DecorateDisplays == null)
            {
                return(linkValue);
            }
            foreach (var item in DecorateDisplays)
            {
                var decorateDisplay = item.CreateObject();
                if (decorateDisplay == null)
                {
                    continue;
                }
                linkValue = decorateDisplay.DisplayValue(value, field, rowValue, linkValue);
            }

            return(linkValue);
        }
Ejemplo n.º 5
0
        public DataSetListModel(DataSet dataSet)
            : base(dataSet)
        {
            PageStyle      = dataSet.GetFieldValue <string>("Info", "Style");
            HasListButtons = CalcHasListButtons(dataSet);
            DecoderSelfUrl = dataSet.GetFieldValue <string>("URL", "DSelfURL");

            DataRow countRow = dataSet.GetRow("Count");

            if (countRow != null)
            {
                PageInfo = new CountInfo(1, 1, 1);
                PageInfo.ReadFromDataRow(countRow);
            }
            DataRow sortRow = dataSet.GetRow("Sort");

            if (sortRow != null)
            {
                SortInfo = new ListSortInfo(null);
                SortInfo.ReadFromDataRow(sortRow);
            }

            DataTable table = dataSet.Tables["ListOperator"];

            ListOperators = Operator.ReadFromDataTable(table);
            table         = dataSet.Tables["RowOperator"];
            RowOperators  = Operator.ReadFromDataTable(table);

            fEmptyProvider = new DataRowFieldValueProvider(null, dataSet);
        }
Ejemplo n.º 6
0
        private static string DisplayValue(object value, Tk5FieldInfoEx field,
                                           IFieldValueProvider rowValue, IConfigCreator <IDisplay> displayObj)
        {
            var display = displayObj.CreateObject();

            return(display.DisplayValue(value, field, rowValue));
        }
Ejemplo n.º 7
0
        public static string HiddenKey(INormalTableData table, IFieldValueProvider provider, bool needId)
        {
            TkDebug.AssertArgumentNull(table, "table", null);

            var keys = from item in table.HiddenList.Union(table.DataList)
                       where item.IsKey
                       select item;
            StringBuilder        builder     = new StringBuilder();
            HtmlAttributeBuilder attrBuilder = new HtmlAttributeBuilder();

            foreach (Tk5FieldInfoEx item in keys)
            {
                attrBuilder.Clear();
                string value = provider == null ? string.Empty : provider[item.NickName].ToString();
                attrBuilder.Add("value", value);
                attrBuilder.Add("type", "hidden");
                string name = "OLD_" + item.NickName;
                if (needId)
                {
                    attrBuilder.Add("id", name);
                }
                attrBuilder.Add("name", name);

                builder.AppendFormat("<input {0}/>", attrBuilder.CreateAttribute());
                builder.AppendLine();
            }

            return(builder.ToString());
        }
Ejemplo n.º 8
0
        public static string Combo(this Tk5FieldInfoEx field, IFieldValueProvider row, bool needId)
        {
            TkDebug.AssertArgumentNull(field, "field", null);
            TkDebug.AssertArgumentNull(row, "row", null);

            return(InternalCombo(field, field.NickName, row, needId));
        }
Ejemplo n.º 9
0
        private static string EasySearch(this Tk5FieldInfoEx field, IFieldValueProvider row,
                                         bool needId, bool isSearchCtrl)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            return(InternalEasySearch(field, field.NickName, row, needId, isSearchCtrl));
        }
Ejemplo n.º 10
0
        public string DisplayValue(object value, Tk5FieldInfoEx field,
                                   IFieldValueProvider rowValue, string linkedValue)
        {
            switch (Style)
            {
            case FontStyle.Bold:
                return(string.Format(ObjectUtil.SysCulture,
                                     "<span class='bold'>{0}</span>", linkedValue));

            case FontStyle.Italic:
                return(string.Format(ObjectUtil.SysCulture,
                                     "<span class='italic'>{0}</span>", linkedValue));

            case FontStyle.Underline:
                return(string.Format(ObjectUtil.SysCulture,
                                     "<span class='underline'>{0}</span>", linkedValue));

            case FontStyle.Strikeout:
                return(string.Format(ObjectUtil.SysCulture,
                                     "<span style='text-decoration:line-through;'>{0}</span>", linkedValue));

            default:
                return(linkedValue);
            }
        }
Ejemplo n.º 11
0
        public string DisplayValue(object value, Tk5FieldInfoEx field,
                                   IFieldValueProvider rowValue, string linkedValue)
        {
            string text = Expression.Execute(this);

            return(string.Format(ObjectUtil.SysCulture, text, linkedValue));
        }
Ejemplo n.º 12
0
        public static string Detail(this Tk5FieldInfoEx field, IFieldValueProvider row, bool showHint, bool needId)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            HtmlAttributeBuilder builder = new HtmlAttributeBuilder();

            AddNormalAttribute(field, builder, field.NickName, needId, true);
            object fieldValue = row[field.NickName];

            builder.Add("data-value", fieldValue.ToString());
            HtmlAttribute classAttr = builder["class"];

            if (classAttr == null)
            {
                builder.Add("class", "detail-content");
            }
            else
            {
                classAttr.Value = HtmlCommonUtil.MergeClass(classAttr.Value, "detail-content");
            }
            string displayValue = DisplayUtil.GetDisplayString(field.ListDetail.DetailDisplay,
                                                               fieldValue, field, row);

            return(string.Format(ObjectUtil.SysCulture, "<div {0}>{1}</div>",
                                 builder.CreateAttribute(), displayValue));
        }
Ejemplo n.º 13
0
        public string DisplayValue(object value, Tk5FieldInfoEx field,
                                   IFieldValueProvider rowValue, string linkedValue)
        {
            if (rowValue == null)
            {
                return(linkedValue);
            }

            string linkUrl = ResolveRowValue(rowValue, Content);

            if (string.IsNullOrEmpty(linkUrl))
            {
                return(linkedValue);
            }
            else
            {
                linkUrl = AppUtil.ResolveUrl(linkUrl);
            }
            string target;

            if (!string.IsNullOrEmpty(Base))
            {
                linkUrl = UriUtil.CombineUri(Base, linkUrl).ToString();
            }
            if (!string.IsNullOrEmpty(Target))
            {
                target = string.Format(ObjectUtil.SysCulture, " target=\"{0}\"", Target);
            }
            else
            {
                target = string.Empty;
            }
            return(string.Format(ObjectUtil.SysCulture, "<a href=\"{0}\"{1}>{2}</a>",
                                 StringUtil.EscapeHtmlAttribute(linkUrl), target, StringUtil.EscapeHtml(linkedValue)));
        }
 /// <summary>
 /// Registers <paramref name="provider"/> to be used for field with identifier <paramref name="fieldIdentifier"/>.
 /// </summary>
 /// <param name="fieldIdentifier">Field identifier.</param>
 /// <param name="provider">Value provider.</param>
 /// <returns>Self (for fluency).</returns>
 public FieldValueProviderCollection <TModel> Add(string fieldIdentifier, IFieldValueProvider <TModel> provider)
 {
     Ensure.NotNullOrEmpty(fieldIdentifier, "fieldIdentifier");
     Ensure.NotNull(provider, "provider");
     storage[fieldIdentifier] = provider;
     return(this);
 }
Ejemplo n.º 15
0
        public string DisplayValue(object value, Tk5FieldInfoEx field, IFieldValueProvider rowValue)
        {
            if (DisplayUtil.IsNull(value) || string.IsNullOrEmpty(value.ToString()))
            {
                return(string.Empty);
            }

            DateTime today     = DateTime.Today;
            DateTime dateValue = value.Value <DateTime>();

            if (today == dateValue)
            {
                return(TkWebApp.Today);
            }
            else if (today.AddDays(1) == dateValue)
            {
                return(TkWebApp.Tomorrow);
            }
            else if (today.AddDays(-1) == dateValue)
            {
                return(TkWebApp.Yesterday);
            }
            else
            {
                DateTime weekDate = today.AddDays(-6);
                if (dateValue > weekDate && dateValue < today)
                {
                    return(dateValue.ToString("dddd", ObjectUtil.SysCulture));
                }
                else
                {
                    return(dateValue.ToString(Format, ObjectUtil.SysCulture));
                }
            }
        }
Ejemplo n.º 16
0
 public CucumberMessageSender(ICucumberMessageFactory cucumberMessageFactory, IPlatformFactory platformFactory, ICucumberMessageSink cucumberMessageSink, IFieldValueProvider fieldValueProvider)
 {
     _cucumberMessageFactory = cucumberMessageFactory;
     _platformFactory        = platformFactory;
     _cucumberMessageSink    = cucumberMessageSink;
     _fieldValueProvider     = fieldValueProvider;
 }
Ejemplo n.º 17
0
        public static string DisplayValue(this Tk5FieldInfoEx field, IFieldValueProvider row)
        {
            object fieldValue = row[field.NickName];

            return(DisplayUtil.GetDisplayString(field.ListDetail.ListDisplay, fieldValue, field, row));
            //return DisplayValue(field, row, false);
        }
Ejemplo n.º 18
0
        public string DisplayValue(object value, Tk5FieldInfoEx field, IFieldValueProvider rowValue)
        {
            if (DisplayUtil.IsNull(value))
            {
                return(string.Empty);
            }

            string text = value.ToString();
            int    len  = text.Length;

            if (len <= MaxLength)
            {
                return(StringUtil.EscapeXmlString(text));
            }

            switch (DisplayMode)
            {
            case DisplayPosition.Middle:
                text = string.Format(ObjectUtil.SysCulture, "{0}{1}{2}",
                                     text.Substring(0, MaxLength - EndLength), AbbrString,
                                     text.Substring(len - EndLength, EndLength));
                break;

            default:
                text = text.Substring(0, MaxLength) + AbbrString;
                break;
            }
            return(StringUtil.EscapeXmlString(text));
        }
Ejemplo n.º 19
0
        public static string Switcher(this Tk5FieldInfoEx field, IFieldValueProvider row, bool needId)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            HtmlAttributeBuilder builder = InternalCheckBox(field, row, needId);

            return(string.Format(ObjectUtil.SysCulture, Html.Switcher, builder.CreateAttribute()));
        }
Ejemplo n.º 20
0
        internal static string DateTimeEnd(Tk5FieldInfoEx field, IFieldValueProvider row)
        {
            string name       = GetSearchEndName(field);
            object fieldValue = row[name + "END"];
            string value      = DisplayUtil.GetDisplayString(field.Edit.Display, fieldValue, field, row);

            return(DateControl(field, "th", name, value, "yyyy-mm-dd hh:ii", 16, true, true));
        }
Ejemplo n.º 21
0
        internal static string InputEnd(Tk5FieldInfoEx field, IFieldValueProvider row)
        {
            TkDebug.AssertArgumentNull(field, "field", null);
            string name       = GetSearchEndName(field);
            object fieldValue = row[name]; // DisplayUtil.GetValue(name, row);
            string value      = DisplayUtil.GetDisplayString(field.Edit.Display, fieldValue, field, row);

            return(InternalInput(field, name, value, true, true));
        }
Ejemplo n.º 22
0
        private static string Input(this Tk5FieldInfoEx field, IFieldValueProvider row,
                                    bool needId, bool isSearchCtrl)
        {
            TkDebug.AssertArgumentNull(field, "field", null);
            object fieldValue = row[field.NickName]; // DisplayUtil.GetValue(field.NickName, row);
            string value      = DisplayUtil.GetDisplayString(field.Edit.Display, fieldValue, field, row);

            return(InternalInput(field, field.NickName, value, needId, isSearchCtrl));
        }
Ejemplo n.º 23
0
        public IFieldValueProvider CreateEmptyProvider()
        {
            if (fEmptyProvider == null)
            {
                fEmptyProvider = new DataRowFieldValueProvider(null, DataSet);
            }

            return(fEmptyProvider);
        }
Ejemplo n.º 24
0
        public static String ControlHtml(this Tk5FieldInfoEx field,
                                         IFieldValueProvider provider, bool needId)
        {
            string            ctrl    = field.ControlName;
            BasePlugInFactory factroy = BaseGlobalVariable.Current
                                        .FactoryManager.GetCodeFactory(ControlHtmlPlugInFactory.REG_NAME);

            return(GetCtrlHtml(field, provider, ctrl, factroy, needId));
        }
Ejemplo n.º 25
0
        public string GetHtml(Tk5FieldInfoEx field, IFieldValueProvider provider, bool needId)
        {
            TkDebug.AssertArgumentNull(field, "field", this);

            string startHtml = field.EasySearch(provider, true);
            string endHtml   = HtmlCommonExtension.EasySearchEnd(field, provider);

            return(HtmlCommonUtil.GetRangeCtrl(startHtml, endHtml));
        }
Ejemplo n.º 26
0
        public static string DisplayUpload(this Tk5FieldInfoEx field, IFieldValueProvider row)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            Tk5UploadConfig   upload    = field.AssertUpload();
            IUploadProcessor2 processor = upload.CreateUploadProcessor2();

            return(processor.Display(upload, row));
        }
Ejemplo n.º 27
0
        public string DisplayValue(object value, Tk5FieldInfoEx field,
                                   IFieldValueProvider rowValue, string linkedValue)
        {
            if (string.IsNullOrEmpty(Color))
            {
                return(linkedValue);
            }

            return(DisplayColorText(linkedValue, Color));
        }
Ejemplo n.º 28
0
        public string DisplayValue(object value, Tk5FieldInfoEx field, IFieldValueProvider rowValue)
        {
            if (string.IsNullOrEmpty(Content))
            {
                return(string.Empty);
            }

            return(EvaluatorUtil.Execute <string>(Content,
                                                  ("value", value), ("row", rowValue)));
        }
Ejemplo n.º 29
0
        public static string GetDisplayString(IConfigCreator <IDisplay> display, object value,
                                              Tk5FieldInfoEx field, IFieldValueProvider row)
        {
            TkDebug.AssertArgumentNull(display, "display", null);
            TkDebug.AssertArgumentNull(field, "field", null);

            var displayObj = display.CreateObject();

            return(displayObj.DisplayValue(value, field, row));
        }
Ejemplo n.º 30
0
        private static string DateTime(this Tk5FieldInfoEx field, IFieldValueProvider row,
                                       bool needId, bool isSearchCtrl)
        {
            TkDebug.AssertArgumentNull(field, "field", null);

            object fieldValue = row[field.NickName];
            string value      = DisplayUtil.GetDisplayString(field.Edit.Display, fieldValue, field, row);

            return(DateControl(field, "th", field.NickName, value, "yyyy-mm-dd hh:ii", 16, needId, isSearchCtrl));
        }