예제 #1
0
        public void Constructor_SetsType()
        {
            actual = string.Empty;
            DatePickerBuilder target = new DatePickerBuilder("datepicker");

            returnHtml = Utility.ControlHtmlBuilder <DatePicker, DatePickerBuilder>(target);
            actual     = Utility.GetAttribute(returnHtml, "data-control-type", _startTag);
            Assert.AreEqual("datepicker", actual);
        }
예제 #2
0
        public void Constructor_SetsTagName()
        {
            actual = string.Empty;
            DatePickerBuilder target = new DatePickerBuilder("datepicker");

            returnHtml = Utility.ControlHtmlBuilder <DatePicker, DatePickerBuilder>(target);
            actual     = Utility.GetTagName(returnHtml);
            Assert.AreEqual(_startTag, actual);
        }
예제 #3
0
        public void Render_Begin_SetsDivWithAttributes()
        {
            actual = string.Empty;
            string            expected = "<input id=\"datePicker\" data-control-type=\"datepicker\" />";
            DatePickerBuilder target   = new DatePickerBuilder("datePicker");

            actual = Utility.ControlHtmlBuilder <DatePicker, DatePickerBuilder>(target);
            Assert.AreEqual(expected, actual);
        }
예제 #4
0
        public void Render_Begin_SetsOptions()
        {
            actual = string.Empty;
            string            expected = "<input id=\"datepicker\" data-control-type=\"datepicker\" data-control-options=\"{&quot;isRTL&quot;:true}\" />";
            DatePickerBuilder target   = new DatePickerBuilder("datepicker");

            target.Options(option => option.IsRtl = true);
            returnHtml = Utility.ControlHtmlBuilder <DatePicker, DatePickerBuilder>(target);
            Assert.AreEqual(expected, returnHtml);
        }
예제 #5
0
        public DatePicker.DatePickerBuilder DatePickerFor <TProperty>(Expression <Func <TModel, TProperty> > expression, IDictionary <string, object> htmlAttributes)
        {
            ViewDataDictionary <TModel> viewData = new ViewDataDictionary <TModel>(HtmlHelper.ViewData);
            ModelMetadata metadata      = ModelMetadata.FromLambdaExpression(expression, viewData);
            string        htmlFieldName = ExpressionHelper.GetExpressionText(expression);

            string labelText = metadata.DisplayName;

            if (labelText == null)
            {
                labelText = BsHelper.SplitCamelCase(metadata.PropertyName ?? htmlFieldName.Split('.').Last());
            }

            // add a placeholder if it isn't already there
            if (!String.IsNullOrEmpty(labelText))
            {
                if (!htmlAttributes.ContainsKey("placeholder"))
                {
                    htmlAttributes["placeholder"] = "{placeholder}";
                }
            }

            // add form-control
            if (htmlAttributes.ContainsKey("class"))
            {
                htmlAttributes["class"] += " form-control date";
            }
            else
            {
                htmlAttributes["class"] = "form-control date";
            }


            DateTime?dtval = null;
            string   val   = HtmlHelper.ValueFor <TModel, TProperty>(expression).ToString();
            string   input = HtmlHelper.TextBoxFor(expression, htmlAttributes).ToString();

            if (val.Length > 0)
            {
                input = input.Replace(val, "{value}");
                DateTime temp;
                if (DateTime.TryParse(val, out temp))
                {
                    dtval = temp;
                }
            }


            DatePicker.DatePicker component = new DatePicker.DatePicker(htmlFieldName);
            component.DisplayName = labelText;

            DatePickerBuilder builder = new DatePickerBuilder(component, input, dtval);

            return(builder);
        }
 public static DatePickerBuilder BackDatePicker(this DatePickerBuilder datePicker)
 {
     return(datePicker
            .Start(CalendarView.Month)
            .Format(Constants.DateFormat)
            .ParseFormats(new List <string>
     {
         Constants.DateFormat,
         Constants.DateShort4YFormat,
         Constants.DateShort2YFormat,
         Constants.DateUSAFormat
     }));
 }
예제 #7
0
        public virtual void OnItemClicked()
        {
            base.ExecuteMethod("OnItemClicked", delegate()
            {
                _showing        = true;
                DateTime parsed = DateTime.UtcNow;
                if (!DateTime.TryParse(this.TextView.Text, out parsed))
                {
                    parsed = DateTime.UtcNow;
                }

                if (FocusAction != null)
                {
                    FocusAction(true);
                }

                if (this.PickTime)
                {
                    var picker = new BetterPickers.RadialTimePickers.RadialTimePickerDialog();
                    picker.SetThemeCustom(Resource.Style.BetterPickersRadialTimePickerDialog);
                    picker.SetStartTime(DateTime.Now.Hour, DateTime.Now.Minute);
                    picker.SetDoneText("Done");

                    picker.TimeSet += picker_TimeSet;
                    picker.Show(this.Activity.SupportFragmentManager, null);
                }
                else
                {
                    if (this.UseCalendar)
                    {
                        _handler = new DateSetHandler()
                        {
                            Action = this.OnDateTimePicked
                        };
                        CalendarDatePickerDialog picker = CalendarDatePickerDialog.NewInstance(_handler, parsed.Year, parsed.Month, parsed.Day);
                        picker.Show(this.Activity.SupportFragmentManager, "");
                    }
                    else
                    {
                        var picker = new DatePickerBuilder()
                                     .SetFragmentManager(this.Activity.SupportFragmentManager)
                                     .SetStyleResId(Resource.Style.BetterPickersDialogFragment);

                        picker.AddDatePickerDialogHandler(OnDateTimePicked);

                        picker.Show();
                    }
                }
            });
        }
예제 #8
0
        public void Render_Begin_SetsBind()
        {
            actual = string.Empty;
            DateTime          datetime = new DateTime();
            string            expected = "<input id=\"datepicker\" data-control-type=\"datepicker\" value=\"0001-01-01\" type=\"text\" />";
            DatePickerBuilder target   = new DatePickerBuilder("datepicker");

            target.DataMap(item =>
            {
                item.Value = datetime;
            }
                           );
            actual = Utility.ControlHtmlBuilder <DatePicker, DatePickerBuilder>(target);
            Assert.AreEqual(expected, actual);
        }
        protected void Page_Init(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Date today = new Date(DateTime.Today);

                List <ListItem> datePickerItems = DatePickerBuilder.BuildDateItems(today);
                foreach (ListItem listItem in datePickerItems)
                {
                    ToDropDownList.Items.Add(listItem);
                }

                if (SessionWrapper.Instance.Get != null)
                {
                    string selectedDate = SessionWrapper.Instance.Get.SelectedDateInDatePicker;
                    if (!string.IsNullOrEmpty(selectedDate))
                    {
                        ToDropDownList.SelectedValue = selectedDate;
                    }
                }
            }
        }
 public DatePickerBuilderTests()
 {
     datePicker = DatePickerTestHelper.CreateDatePicker(null, null);
     builder = new DatePickerBuilder(datePicker);
 }
 public DatePickerBuilderTests()
 {
     _datePicker = new DatePicker(new ViewContext(), new Mock<IClientSideObjectWriterFactory>().Object);
     _builder = new DatePickerBuilder(_datePicker);
 }
 public DatePickerBuilderTests()
 {
     datePicker = DatePickerTestHelper.CreateDatePicker(null, null);
     builder    = new DatePickerBuilder(datePicker);
 }