Home     About PeterBlum.com     Policies     Download a Licensed Product     Newsletter

Release History for Peter's Date Package v2.0.5


12/12/2007 Peter's Date Package 2.0.5 Update
  • Support for RadControls "Prometheus" platform. Please see the instructions in the "Using these controls with AJAX" section of the User's Guide.
  • Support for Infragistics AJAX-enabled controls. The PDP controls can be inside of a WebAsyncRequestPanel or UltraWebTab. Please see the User's Guide for the section "Using Infragistics AJAX-enabled Controls" to set up this feature.
  • The ToolkitScriptManager control from the AJAX Control Toolkit is supported.
  • Some cultures use the single quote (') character in the LongDatePattern to preserve a literal string element. This is now supported.
Bugs Fixed
  • When the calendar is displayed in FireFox or other Mozilla-based browser, the borders for day cells where not shown so long as xWeekRowsCellSpacing=0 (the default). They are now shown.
  • The DateTextBox.xClientParserFunctionName property caused a javascript error when used after an AJAX callback.
  • When you have two DateTextBoxes setup in a range and both are using xAutoPopupOnFocusB=true, clicking in one textbox pops it up. Clicking in the second textbox popped up but closed almost immediately.
  • When the DateTextBox is using xAutoPopupOnFocusB="True" on a non-IE browser, the first click into the calendar after autopopup, closes the calendar. It should only close when selecting a date or clicking the Apply button.
  • When you have a MultiSelectionCalendar set up to call PreLoadForAJAX(), it generated a server side error on a callback.
  • MultiSelectionCalendar.GetSelectedDateRanges() method was not reliable and has been rewritten.
  • MultiSelectionCalendar ignored a click on the Month toggle button during December of any year.
  • When using the xExpandedDateFormatter property on a calendar that is within an AJAX update and the calendar is only shown after the callback, javascript errors occurred when attempting to show the ExpandedDateFormatter box.
  • If you clear any of the predefined ContextMenus then add a single command, you would get a javascript error when popping up the context menu.
  • When using Microsoft ASP.NET AJAX with VAM, Safari would not handle callbacks properly. It acted like AJAX features were never setup.
  • The DateTextBoxCompareValidator would not compare correctly when the current culture has a ShortDatePattern with a single M or D (m/d/yyyy would fail). Only affected the client-side evaluation. Server side worked.

3/27/2007 Peter's Date Package v2.0.4 Update
  • Support for v1 of MS ASP.NET AJAX.
  • New client-side functions for the MultiSelectionCalendar: MSC_GetRange() and MSC_GetSelectedCount(). MSC_GetRange gets either the lowest or highest selected date. MSC_GetSelectedCount() gets the number of selected items.
  • MultiSelectionCalendar has a new property, xUnselectOthersFirstB. When true, it always unselects other dates when the user attempts to make a new selection. It does not toggle dates. Use it to enforce a rule where you permit 1 day, 1 week, or 1 month, but no other types of ranges.
  • Support for subclasses of the MS ASP.NET AJAX controls: ScriptManager and UpdatePanel in the AJAXManager.UsingMicrosoftAJAX() and RegisterUpdatePanel() methods.
  • MonthYearTextBox now supports the xDateFormat property, allowing abbreviated and long months.
Bugs fixed
  • MonthYearTextBox assigned the wrong min-max date range to its popup MonthYearPicker. It was off by one month.
  • MultiSelectionCalendar can report a javascript error when the mouse passes over it if TrueBrowser.xSupportsCalendarB=false.
  • Some cultures put the AM/PM Designator before the time, such as in Korea, where the LongTimePattern is "tt hh:mm:ss". The TimeOfDayTextBox now supports that positioning of the AM/PM Designator.
  • When using the SpecialDates control within MS ASP.NET AJAX RC 1 or later, callbacks invoked by the UpdatePanel did not get updated SpecialDate data.
  • When the DateTextBox has today's date outside of the range of xMinDate and xMaxDate and the user pops up the calendar with an empty datetextbox, it shows the month that contains today's date. While that is normally fine, when today's date is at least one month outside of the range, the popped up month will be blank. It now adjusts to show either the first or last month of the range.
  • When using VS2005 with its absolute positioning feature in design mode, you could not drag most of the controls to position them.
  • When using xShowWeekendDaysB=false in the DateTextBox's popup calendar, the weekends were still shown, except in the day of week header.
  • The MultiSelectionCalendar did not preserve the xSelectedDates property in the ViewState. This affected it when it was made invisible then restored to visibility, such as in a Wizard control. Since the xSelectedDates property consumes a larger than normal amount of the ViewState (given an extensive list of attached dates), this data is only written into the ViewState when the control is invisible. It has no impact when visible.
  • When the MultiSelectionCalendar was made invisible then restored to visibility through a postback, this exception would occur: "The hidden field [ID]_SelDates is missing or has been tampered with."
  • When using the PopupEffect and the control has a style sheet class that defines a filter style, a javascript error occurred.
  • When using VAM's DataTypeCheckValidator on a TimeOfDayTextBox that is connected to a DateTextBox, the client-side validation would allow times above 24 hours. It should not consider that a valid time of day.
  • The MonthYearTextBox had the xAutoPopupOnFocusB property. It should not be on that control. If assigned, it would cause a javascript error when focus is set to the MYTB.
  • Setting the property DateTextBox.xPopupCalendar.xUsePopupEffectB to false did not disable the effect.
  • When the TimePicker has only one time value, a javascript error occurred.
  • In VS2005, if you edit the PopupCalendar control's xCalendar property in the Properties Editor, the contents between the start and end <date:PopupCalendar> tags output the wrong info: definitions of a label, image, and button.
  • When using the TimeTextBoxCompareValidator and you forget to assign the ControlToCompare property, a client-side error may occur.
  • Introduced in 2.0.3: When the DateTextBox used xDateFormat of Abbreviated or Long, there could be clean side validation errors on a valid date. Only occurred when the xDateTimeFormatInfo.LongDatePattern contained "dddd" or "ddd".

1/2/2007 Peter's Date Package v2.0.3 update
  • Support for Microsoft ASP.NET AJAX Release Candidate 1.
  • The MultiSelectionCalendar offers these new properties, xFirstSelectedDate and xLastSelectedDate, to return the first and last dates in the selected dates data.
  • The MultiSelectionCalendar offers the GetSelectedDateRanges() method to return all selected date ranges found within the selected dates data.
  • The DateTextBox's Custom Parser now can indicate that the value passed is illegal and should not be accepted by returning false.
  • New javascript function, MSC_SetRange, is available on the MultiSelectionCalendar. Use it to add your own buttons near the calendar that also can select, unselect or toggle a range. The MultiSelectionCalendar control introduces a related method, GetSelectRangeScript(), to easily create calls to MSC_Range.
  • New javascript function, MSC_GetLastDateClicked, is available on the MultiSelectionCalendar. Use it to return the date of the last cell that was selected or unselected.
  • Previously, you could not get the posted back selected date value from CS_Calendar.xSelectedDate inside Page_Load(). Now you can.
  • Better support for alternative HttpHandlers including SharePoint.
  • Added the event SpecialDates.OnReviewSpecialDateItem. It is called for each Special Dates item object that was added through databinding. It allows you to further modify these objects.
  • The Special Date item and TimeRow classes (used by SpecialDates) now offers the property xDataSourceRow. It is setup when databinding to contain a reference to the Row object that provided the data used to create this object. You can use it in the SpecialDates.OnReviewSpecialDateItem event to modify the Special Date item and TimeRow object with data that isn't directly supported by the databinding features of SpecialDates.
  • The CS_Calendar.xDayCellFormatter now offers the property xTooltipTemplate. Use it to determine the contents of the tooltip shown on date cells, or to remove that tooltip.
  • The CS_Calendar.xDayCellFormatter and xExpandedDateFormatter offer a new property on their xDescriptionFormatter, xBody. It defines the formatting for the body of the cell to allow extensive customization.

Bug fixes
  • When using the radAJAXPanel with the AJAXManager.UsingRadAJAX() method, callbacks did not work for FireFox and other Mozilla browsers.
  • Better support for Internet Explorer 7. Prior to this release, some client-side features would work differently from IE 6.
  • When VAM is also running, CS_Calendar would not display the SpecialDates after a postback, on the initial month shown. It would update if you moved to another month.
  • Text entry into the DateTextBox should have permitted the date separator character when using xDateFormat=Abbreviated or Long. Now it does.
  • Use of the CSC_GetDateString() function always failed with a javascript error.
  • When the DateTextBox is disabled through the FieldStateController or other client-side code, clicking the calendar button still opened the calendar, often with dates showing 99s.
  • When using the TimeRows feature of SpecialDates to show time rows in the calendar, the TimeRows.xCssClass property was ignored.
  • MultipleSelectionCalendar with the Toggle month button available selects the wrong dates when pointing to a calendar showing December.
  • When these controls are added into an ASP.NET 2 CompositeControl class, in the Properties Editor, any property that drops down to show a list of controls already on the page would throw a NullReferenceException.
  • When using the UnselectableDatesValidator with an unselectable date that has no value in its xLabel property, the server-side generated ValidationSummary will omit its error message when UnselectableDatesValidator.xNoLabelErrorMessage is blank.
  • When using PDP with VAM through the PeterBlum.PDPtoVAM.dll assembly, callbacks could fail with javascript errors when the PDP controls are first added to the page after the callback.
  • When using the MultiSelectionCalendar with xWeekendBackground setup, a click on a weekend date to select did not visually show that selection.
  • When DateTextBox.xDateFormat is Abbrev or Long, if the xDateTimeFormatInfo.ShortDatePattern is a different order for D/M/Y compared to LongDatePattern, there would be validation errors.

10/31/2006 Peter's Date Package v2.0.2 Update
  • Support for Microsoft's AJAX Library (the beta versions of "Atlas"). Due to some breaking changes between Atlas and the AJAX Library, Atlas users must use a slightly different approach for using Peter's Date Package controls inside the UpdatePanel.
  • CS_Calendar includes a new property: xMultiMonthFullSpecialDateFormattingB. When using SpecialDates to format date cells, this determines what happens to date cells shown on one month but a part of another month that is also shown. When false, those cells do not use the SpecialDates formatting. When true, they do. In previous releases, the calendar does not show the formatting.
  • BREAKING CHANGE: SpecialDates has a new property, xHTMLEncodeDataFields. It is only used when reading from a DataSource. When true, it applies HTMLEncoding to all string-type values. It defaults to true. Set it to false to embed HTML tags and characters found in the data source into the page. If you previously set this up with HTML in your data source, you MUST set xHTMLEncodeDataFields to false.
  • When reading from a DataSource, all string types will have embedded carriage returns and line feeds converted into the <br /> tag automatically. Note that the xHTMLEncodeDataFields property does not have any affect on this.
  • UnselectableDatesValidator did not support embedded web controls for its error message. It now does.

Bug fixes
  • The textbox controls ignored the TabIndex property.
  • When the TimePicker is used inside of a naming container other than the Page object (such as a UserControl or form using a MasterPage), after a postback, a javascript error occurred. This affected the TimeOfDayTextBox and DurationTextBox, PopupTimePicker and TimePicker.
  • When the first DateTextBox or MonthYearTextBox on the page has xShowPopupB=false and any other on the page has xShowPopupB=true, the popup calendar would not appear. (A javascript error occurs when you clicked on the toggle button.)
  • When the Calendar is using multi month view, xAutoPostBackOnSelectionChangeB=true, and is involved in an AJAX callback, after the callback completes, the calendar changed the first viewed month to the month you clicked in. It should not have changed the viewed months.
  • When using the calendar's xDayCellFormatter, you can use tokens like {LABEL} and {DESC}. These tokens were not supported in the xDayNumberFormatting property or the Custom formatter's xOpeningHTML or xClosingHTML properties. Now they are.
  • When using the SpecialDates control with TimeRows defined, if a TimeRow has no data to display, a javascript error could occur.
  • The Hungarian culture (id=hu-HU) provides a ShortDatePattern with a period followed by a space as the date separator. This caused data entry errors in the DateTextBox. Now the code will eliminate the space, limiting the separator to just the period. This fixes the errors.
  • When using the TimeOfDayTextBox and a TimeOfDayValidator, it would not report an error when the hours were 24 or higher. The addition of the TimeOfDayMinMaxValidator would report the error but with a TimeOfDayTextBox, that should not be needed to catch times exceeding 24 hours.

9/12/2006 Peter's Date Package v2.0.1 Update
  • The MultipleSelectionCalendar now interactively highlights day cells that are going to be selected in range. If you click on toggle week, day of week or month, it will highlight cells too. This behavior is the default. If you don't like the color choices, change them in the xHiliteRangeSelectColor and xHiliteRangeUnselectColor properties.
  • Support for MagicAJAX, a free AJAX framework.
  • Extensions to the AJAXManager to support a new category of AJAX products, from which MagicAJAX support was created. It adds the new AJAXSystemType, GetScriptsAtEnd. It provides you with additional options when attempting to get a third party AJAX system to work.
  • When using Multiple Month View in the Calendar and there are date cells to be formatted by the SpecialDates control, v2.0.0 did not use the SpecialDates data when those Date Cells were in the "other month" cells of the current month. This rule exists so that two months don't show identical info. This rule has been modified so that the first month will show special dates from the earlier month and the last month will show special dates from the later month.

Bug fixes
  • The PetersDatePackage.dll generated a Security Exception when placed into a site that has security restrictions through Partial Trust. This was due to the Best Order button appearing in VS.net's Properties Window. The button has been removed, allowing you to deploy the PetersDatePackage.dll. The Best Order button still remains part of the Expanded Properties Editor dialog box. You can still get security exceptions for other reasons in a Partial Trust Environment. See "Installing into a Partial Trust Environment" in the Installation Guide.
  • The MultipleSelectionCalendar selected one date in the next month when using the toggle Day Of Week button in some cases.
  • ASP.NET 2.0: When using the <%= PeterBlum.PetersDatePackage.CommonFunctions.GetStyleSheetLinkTags(Page) %> tag and the <head> tag does not contain a runat='server' property, no style sheets were added at runtime.
  • The Week Rows area of a calendar sometimes positioned its right edge incorrectly. It may have been far to the left of the border or crossed over the border. This problem depended on the browser. Only IE worked correctly.
  • In IE for Windows, the month change buttons on the right side of the calendar had a bigger distance to the calendar's border than the left side. Same with buttons in the footer. They should have been equal distances.
  • In Safari, the Multi Month View did not draw in any month except the first. It showed the days of the last month in the first month's position.
  • In most browsers other than Mozilla/FireFox, the calendar did not have a border along the top row of Day Cells, separating them from the day of week names. This happened when the xWeekRowCellSpacing property is "0". It now has a border.
  • Certain versions of Opera and Safari positioned the popup calendar incorrectly (usually to far left and up). While its not 100% perfect now, they do position better in most cases.
  • When typing into the DateTextBox and xDateFormat is Abbreviated or Long, if the user typed "/", the context menu appeared. It should not because the "/" character should be allowed for date entry. In addition, selecting menu commands at that time may have generated a javascript error.
  • When both the DateTextBox and MonthYearTextBox are on the page, popup the MonthYearPicker on the MYTB and click its OK button. It gave a javascript error.
  • If the TimePicker had an empty xItems collection, it threw this exception: "Do not call OutputScriptInRender unless you call OutputScriptInPreRender from the OnPreRender method.".
  • When using these controls in AJAX and you called the PreLoadForAJAX(), if they were using any of the PopupOnMouseOverB properties, a javascript error appeared as the page is loaded.
  • When the calendar is shown and has a xMaxDate setting, the date cell associated with xMaxDate did not have a right border when xWeekRowsCellSpacing=0 on IE.
  • When using Multiple Month View in the Calendar and there are date cells defined as unselectable by the SpecialDates control, the user could still select those dates if they were shown as "other month" dates.
  • Atlas (at least June 2006 CTP) interfered with the context menus, showing the browsers context menu on top of PDP's.
  • When the MonthYearTextBox is on the page without any DateTextBox or Calendar also there, when xAllowMonthNames is "Show", a javascript error occurred after the user entered a valid date.
  • When the DateTextBox has its popupcalendar set with xCallbackOnMonthViewChangeB=true, it did not fire the OnMonthViewChanged event and collect new data from the SpecialDates control.
  • When CS_Calendar or MultiSelectionCalendar is Visible=false on a postback, it threw an exception describing a problem with a hidden field.