Event class (Schedule)

Event(oEvents)

new Event(oEvents)

The Event object holds the event of the control. The Event(id) method returns the event based on its index or identifier/key.

Every option of the EventOptions type has associated a property of the Event object. For instance, the option:

cursor {string}, defines the mouse-cursor for the event
is associated with the property:
Cursor {string}, defines the mouse-cursor for the event
which means that the following statements are equivalent:
oEvent.Options = {cursor: "pointer"}
oEvent.SetOptions({cursor: "pointer"})
oEvent.Cursor = "pointer"
oEvent.SetCursor("pointer")
where oEvent is an object of Event type
Parameters:
Name Type Description
oEvents Event Indicates an object of Events type that's the owner collection of this event
Event

Methods

EndUpdateEvent(startUpdateEvent)

The EndUpdateEvent() method adds programmatically updated properties of the event (calendar appointment) to undo/redo queue. You can use the StartBlockUndoRedo / EndBlockUndoRedo methods to group multiple Undo/Redo operations into a single-block. The AllowUndoRedo property specifies whether the control supports undo/redo operations for objects (event (calendar appointment)s, links, ...). No entry is added to the Undo/Redo queue if no property is changed for the current event (calendar appointment).
Parameters:
Name Type Description
startUpdateEvent any Holds the result of a StartUpdateEvent() method
Since:
  • 2.1
EndUpdateEvent

EnsureVisible()

The EnsureVisible() method scrolls the view so the event (calendar appointment) fits the control's visible-area
Since:
  • 2.1
EnsureVisible

GetAllDay() → {boolean}

The GetAllDay() method specifies whether the event is an all-day event. The time is ignored for all-day events
Returns:
Returns true if the event is an all-day event.
Type
boolean
GetAllDay

GetCaption() → {any}

The GetCaption() method defines the caption of the event
Returns:
Returns the caption of the event
Type
any
GetCaption

GetCursor() → {string}

The GetCursor() method defines the mouse cursor for the event.
Returns:
Returns the mouse-cursor for the event.
Type
string
GetCursor

GetDuration() → {Date}

The GetDuration() method gets the event's duration in days (or hours if including the decimal point, for instance 0.5 indicates a 12 hours lenght)
Returns:
Returns the duration of the event in days
Type
Date
GetDuration

GetEnabled() → {boolean}

The GetEnabled() method determines whether the event is enabled or disabled
Returns:
Returns true if the event is enabled, or false if the event is disabled
Type
boolean
GetEnabled

GetEnd() → {any}

The GetEnd() method defines the date/time when the event or the appointment ends
Returns:
Returns the date/time when the event or the appointment ends
Type
any
GetEnd

GetExtraLabel() → {any}

The GetExtraLabel() method defines event's extra-label
Returns:
Returns the event's extra-label
Type
any
GetExtraLabel

GetGroupID() → {any}

The GetGroupID() method defines the identifier of the group where the Event object belongs
Returns:
Returns the identifier of the group where the Event object belongs
Type
any
GetGroupID

GetIndex() → {any}

The GetIndex() method retrieves the event's index.
Returns:
Returns the event's index (0-based)
Type
any
Example
The following statements are equivalents:

 oEvent.GetIndex(), retrieves the event's index
 oEvent.Index, retrieves the event's index

where oEvent is an object of Event type
GetIndex

GetKey() → {string}

The GetKey() method returns the event's key.
Returns:
Returns the event's key
Type
string
GetKey

GetKnownProperty(index) → {any}

The GetKnownProperty() method gets the value of the event's property giving its index.
Parameters:
Name Type Description
index number Specifies the identifier of the event's property to request as listed:
  • 1 (exEventStartDateTime) {Date}, indicates the starting date/time of the event. This property gets the Start property of the event. The Start property defines the lower margin of the event, and it includes the date and the time values. The exEventStartDate specifies the DATE value only, while the exEventStartTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%1)%>" displays the day of the week where the event starts
  • 2 (exEventEndDateTime) {Date}, indicates the ending date/time of the event. This property gets or sets the End property of the event. The End property defines the upper margin of the event, and it includes the date and the time values. The exEventEndDate specifies the DATE value only, while the exEventEndTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%2)%>" gets the day of the week where the event ends.
  • 3 (exEventAllDay) {boolean}, indicates if the current event is an all day event. This property is equivalent with the event's AllDay property which indicates if the current event is an all-day event. For instance, the LabelProperty = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>", displays automatically an "All-Day-Event: " prefix for all-day events. If the event is not an all-day event, the <%=%256%>, or exEventDisplayShortMargins, short margins of the events are displayed.
  • 4 (exEventGroupID) {any}, specifies the identifier/index of the event's group. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupLabel property indicates the Caption property of the Group's event. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%4%>
    <%=%256%>" displays on the first line, the group's identifier, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • 5 (exEventCaption) {string}, indicates the caption of the event. The Caption property of the event specifies the custom caption that can be displayed on the label, without having to change the event's label. For instance, the LabelProperty = "<%=%256%>
    <%=%5%>" displays on the first line, the event's short margins, while on the second line displays the event's caption. Once you update or edit the event's Caption, the event's body automatically shows the new caption.
  • 6 (exEventUserData) {any}, indicates the extra data associated with the event. The UserData property of the event indicates an extra data associated with the event. For instance, the LabelProperty = "<%=%256%>
    <%=%6%>" displays on the first line, the event's short margins, while on the second line displays the event's user data. Once you update or edit the event's UserData, the event's body automatically shows the new label.
  • 7 (exEventDuration) {number}, specifies the duration of the event. The returned values is of float type, and it indicates the duration of the event in days. For instance, the 1.5 indicates, 1 day and 12 hours. For instance, the LabelProperty = "<%=%256%>
    <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>" displays on the first line, the event's short margins, while on the second line displays the event's durations in days, hours and minutes. Once you update or edit the event's margins, the event's body automatically shows the new length. You can use the MoveBy method to delay the current event with a specified value time. You can use the SetKnownProperty(exEventDuration) to change the event's duration.
  • 8 (exEventRepetitiveExpression) {string}, specifies the repetitive expression of the event. The Repetitive property of the event indicates the expression that determines whether the event is repetitive. For instance, the LabelProperty = "<%=%256%>
    <%=len(%8)? `repetitive event`:``%>" displays repetitive event for repetitive events.
  • 12 (exEventID) {string}, specifies the event's unique key/identifier/index.
  • 256 (exEventDisplayShortMargins) {string}, displays the margins of the event in a short format (read-only). The ShortDateFormat property defines the short date format. The ShortTimeFormat property defines the short time format.
  • 257 (exEventDisplayLongMargins) {string}, displays the margins of the event in a long format (read-only). The LongDateFormat property defines the long date format. The LongTimeFormat property defines the long time format.
  • 258 (exEventStartDate) {Date}, gets the starting date ( not including the time ) of the event (read-only). You can use this property to get the starting date of the event.
  • 259 (exEventStartTime) {number}, gets the starting time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the starting time of the event.
  • 260 (exEventEndDate) {Date}, gets the ending date ( not including the time ) of the event (read-only). You can use this property to get the ending date of the event.
  • 261 (exEventEndTime) {number}, gets the ending time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the ending time of the event.
  • 262 (exEventGroupLabel) {string}, gets the label of the owner group (read-only). The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%262%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • 263 (exEventGroupTitle) {string}, gets the title of the owner group (read-only). The exEventGroupTitle property indicates the Title property of the Group's event. The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. For instance, the LabelProperty = "<%=%263%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • 264 (exEventRepetitive) {boolean}, Indicates if the current event is a repetitive event. (read-only). You can use this flag to specify whether Repetitive property is not empty, and valid.
Returns:
Returns the value of the event's property
Type
any
GetKnownProperty

GetLongLabel() → {any}

The GetLongLabel() method defines event's long-label
Returns:
Returns the event's long-label
Type
any
GetLongLabel

GetMovable() → {boolean}

The GetMovable() method specifies whether the event is movable
Returns:
Returns true if the event is movable.
Type
boolean
GetMovable

GetOptions() → {object}

The GetOptions() method returns the event's options at once
Returns:
Returns an object of EventOptions type
Type
object
Example
The following statements are equivalents:

 oEvent.GetOptions(), returns the event's options
 oEvent.Options, returns the event's options

where oEvent is an object of Event type
GetOptions

GetRepetitive() → {string}

The GetRepetitive() method defines the expression to define the repetitive-event
Returns:
Returns the expression to define the repetitive-event
Type
string
GetRepetitive

GetResizable() → {exontrol.Schedule.EventResizableEnum}

The GetResizable() method specifies whether the event is resizable
Returns:
Returns true if the event is resizable.
Type
exontrol.Schedule.EventResizableEnum
GetResizable

GetSelectable() → {boolean}

The GetSelectable() method specifies whether the event is selectable
Returns:
Returns true if the event is selectable.
Type
boolean
GetSelectable

GetSelected() → {boolean}

The GetSelected() method specifies whether the event is selected
Returns:
Returns true if the event is selected.
Type
boolean
GetSelected

GetShape() → {any}

The GetShape() method defines the shape for the event.
Returns:
Returns the shape for the event, as one of the following:
  • null, no custom-shape is applied on the object (default-shape may be applied instead)
  • the shape's name within the exontrol.Shape.Schedule or exontrol.Shape namespace
  • a CSS color
  • a JSON string-representation of an object of exontrol.Def.Shape type, for the event
  • an object of {normal,hover,click,disabled} type. The normal, hover, click and disabled are objects of exontrol.Def.Shape type
Type
any
GetShape

GetShortLabel() → {any}

The GetShortLabel() method defines event's short-label
Returns:
Returns the event's short-label
Type
any
GetShortLabel

GetStart() → {any}

The GetStart() method defines the date/time when the event or the appointment begins
Returns:
Returns the date/time when the event or the appointment begins
Type
any
GetStart

GetToolTip() → {any}

The GetToolTip() method defines event's predefined tooltip
Returns:
Returns the event's predefined tooltip
Type
any
GetToolTip

GetUserData() → {any}

The GetUserData() method gets the extra-data associated with the event
Returns:
Returns the extra-data associated with the event
Type
any
GetUserData

GetVisible() → {boolean}

The GetVisible() method determines whether the event is visible or hidden
Returns:
Returns true if the event is visible, or false if the event is not visible
Type
boolean
GetVisible

MoveBy(value)

The MoveBy() method moves the event by specified time.
Parameters:
Name Type Description
value number | string Indicates a number that specifies the time to move the event by or a string or a string expression that indicates the hour and minutes to delay the current event.
Example
MoveBy(0) moves the current event 15 minutes later.
 MoveBy("00:15"), moves the current event 15 minutes later.
MoveBy

Remove()

The Remove() method removes the event from the events collection
Remove

SetAllDay(value)

The SetAllDay() method defines whether the event is an all-day event. The time is ignored for all-day events
Parameters:
Name Type Description
value boolean Specifies whether the event is an all-day event
Example
false {boolean}, the event is not an all-day event, and it is displayed in the time-scale of the day
 true {boolean}, the event is an all-day event, and it is displayed in All-Day header
SetAllDay

SetCaption(value)

The SetCaption() method sets the caption of the event
Parameters:
Name Type Description
value any Specifies the caption of the event
Example
null {null}, resets the caption of the event
 "caption" {string}, defines the plain-caption for the event
SetCaption

SetCursor(value)

The SetCursor() method changes the mouse cursor for the event.
Parameters:
Name Type Description
value any A string expression that defines the mouse cursor for the event.
Example
"pointer" {string}, The cursor is a pointer that indicates a link (typically an image of a pointing hand)
SetCursor

SetDuration(value)

The SetDuration() method sets the duration of the event in days (or hours if including the decimal point, for instance 0.5 indicates a 12 hours lenght)
Parameters:
Name Type Description
value number | string Indicates a numeric expression that defines the event's duration in days, or a string expression that specifies the event's duration in hour and minutes. The value property can be positive, when the end margin of the event is updated or negative when the start of the event is updated.
Example
1 {number}, defines a 1-day event (changes the end-margin of the event)
 12/24 or 0.5 {number}, defines a 12 hours event (changes the end-margin of the event)
 -12/24 or -0.5 {number}, defines a 12 hours event (changes the start-margin of the event)
 "4:30" {number}, defines the event's duration to 4 hours and 30 minutes (changes the end-margin of the event)
 "-4:30" {number}, defines the event's duration to 4 hours and 30 minutes (changes the start-margin of the event)
SetDuration

SetEnabled(value)

The SetEnabled() method enables or disables the event
Parameters:
Name Type Description
value boolean Indicates a boolean expression that specifies whether the event is enabled or disabled
Example
false {boolean}, disables the event
 true {boolean}, enables the event
SetEnabled

SetEnd(value)

The SetEnd() method sets the date/time when the event or the appointment ends
Parameters:
Name Type Description
value any Specifies the date/time when the event or the appointment ends, as explained: {null} or {undefined}, indicates the current date and time (equivalent of Date.Now()) {number}, indicates the Jan 1st of the year, such as "Jan 1st 2001" for 2001 {string}, defines the date in string-format as "#MM/DD/YYYY[ HH:mm:ss]#", such as "#10/10/2011 14:48#" or string-format as "YYYY-MM-DDTHH:mm:ss.sssZ" (ISO 8601), such as "2011-10-10" (date-only format), "2011-10-10T14:48:00" (local date-time format), "2011-10-10T14:48:00Z" (UTC date-time format), or "2011-10-10T14:48:00.000+09:00" (date-time format with milliseconds and time zone offset) {Date}, indicates a javascript Date to be copied, such as "Wed, 25 Mar 2015 15:00:00 GMT" for new Date("2015-03-25T15:00:00Z")
Example
null {null}, is equivalent of Date.Now()
 2001 {number}, is equivalent of Mon, 01 Jan 2001 00:00:00 GMT
 "#12/31/1971 13:00#" {string}, is equivalent of Fri, 31 Dec 1971 13:00:00 GMT
 new Date("2015-03-25T15:00:00Z"), is equivalent of Wed, 25 Mar 2015 15:00:00 GMT
SetEnd

SetExtraLabel(value)

The SetExtraLabel() method sets the event's extra-label. The formatEventExtraLabel misc option defines the format to show the extra-label.
Parameters:
Name Type Description
value any Specifies the event's extra-label. The value parameter supports ex-HTML and <%=formula%> tags. The <%=formula%> tag indicates the result of the giving formula. The formula supports value formatting. Inside the formula the %0, %1, ... indicates the value of corresponding property of the event, such as %1 specifies the exEventStartDateTime, %2 exEventEndDateTime, and so on. The known identifiers within the <%=formula%> tag are:
  • %1 (exEventStartDateTime) {Date}, indicates the starting date/time of the event. This property gets the Start property of the event. The Start property defines the lower margin of the event, and it includes the date and the time values. The exEventStartDate specifies the DATE value only, while the exEventStartTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%1)%>" displays the day of the week where the event starts
  • %2 (exEventEndDateTime) {Date}, indicates the ending date/time of the event. This property gets or sets the End property of the event. The End property defines the upper margin of the event, and it includes the date and the time values. The exEventEndDate specifies the DATE value only, while the exEventEndTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%2)%>" gets the day of the week where the event ends.
  • %3 (exEventAllDay) {boolean}, indicates if the current event is an all day event. This property is equivalent with the event's AllDay property which indicates if the current event is an all-day event. For instance, the LabelProperty = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>", displays automatically an "All-Day-Event: " prefix for all-day events. If the event is not an all-day event, the <%=%256%>, or exEventDisplayExtraMargins, extra margins of the events are displayed.
  • %4 (exEventGroupID) {any}, specifies the identifier/index of the event's group. The GroupID property of the event indicates the identifier of the group that event beextras to. The exEventGroupLabel property indicates the Caption property of the Group's event. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%4%>
    <%=%256%>" displays on the first line, the group's identifier, and the extra margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %5 (exEventCaption) {string}, indicates the caption of the event. The Caption property of the event specifies the custom caption that can be displayed on the label, without having to change the event's label. For instance, the LabelProperty = "<%=%256%>
    <%=%5%>" displays on the first line, the event's extra margins, while on the second line displays the event's caption. Once you update or edit the event's Caption, the event's body automatically shows the new caption.
  • %6 (exEventUserData) {any}, indicates the extra data associated with the event. The UserData property of the event indicates an extra data associated with the event. For instance, the LabelProperty = "<%=%256%>
    <%=%6%>" displays on the first line, the event's extra margins, while on the second line displays the event's user data. Once you update or edit the event's UserData, the event's body automatically shows the new label.
  • %7 (exEventDuration) {number}, specifies the duration of the event. The returned values is of float type, and it indicates the duration of the event in days. For instance, the 1.5 indicates, 1 day and 12 hours. For instance, the LabelProperty = "<%=%256%>
    <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>" displays on the first line, the event's extra margins, while on the second line displays the event's durations in days, hours and minutes. Once you update or edit the event's margins, the event's body automatically shows the new length. You can use the MoveBy method to delay the current event with a specified value time. You can use the SetKnownProperty(exEventDuration) to change the event's duration.
  • %8 (exEventRepetitiveExpression) {string}, specifies the repetitive expression of the event. The Repetitive property of the event indicates the expression that determines whether the event is repetitive. For instance, the LabelProperty = "<%=%256%>
    <%=len(%8)? `repetitive event`:``%>" displays repetitive event for repetitive events.
  • %12 (exEventID) {string}, specifies the event's unique key/identifier/index.
  • %256 (exEventDisplayShortMargins) {string}, displays the margins of the event in a short format (read-only). The ShortDateFormat property defines the short date format. The ShortTimeFormat property defines the short time format.
  • %257 (exEventDisplayLongMargins) {string}, displays the margins of the event in a long format (read-only). The LongDateFormat property defines the long date format. The LongTimeFormat property defines the long time format.
  • %258 (exEventStartDate) {Date}, gets the starting date ( not including the time ) of the event (read-only). You can use this property to get the starting date of the event.
  • %259 (exEventStartTime) {number}, gets the starting time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the starting time of the event.
  • %260 (exEventEndDate) {Date}, gets the ending date ( not including the time ) of the event (read-only). You can use this property to get the ending date of the event.
  • %261 (exEventEndTime) {number}, gets the ending time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the ending time of the event.
  • %262 (exEventGroupLabel) {string}, gets the label of the owner group (read-only). The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%262%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %263 (exEventGroupTitle) {string}, gets the title of the owner group (read-only). The exEventGroupTitle property indicates the Title property of the Group's event. The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. For instance, the LabelProperty = "<%=%263%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %264 (exEventRepetitive) {boolean}, Indicates if the current event is a repetitive event. (read-only). You can use this flag to specify whether Repetitive property is not empty, and valid.
Example
null {null} or undefined {undefined}, no extra-label is displayed
 "" {string}, no extra-label is displayed
 "<img>image</img> and text" {string}, displays the image and the text. The image can be added using the exontrol.HTMLPicture.Add() method
 "<%=%256%>", displays the event's start and end margins in a short format
SetExtraLabel

SetGroupID(value)

The SetGroupID() method sets the identifier of the group where the Event object belongs
Parameters:
Name Type Description
value any Specifies the identifier of the group where the Event object belongs
Example
null {null}, dissociates the event from any group
 0 {number}, moves the event to the group with the index 0 (0-based)
 "G1" {string}, moves the event to the group with the identifier "G1"
SetGroupID

SetKey(value)

The SetKey() method assigns a new key to the event
Parameters:
Name Type Description
value string Specifies a new key to be assigned to the event
Example
"logo" {string}, defines the event with the giving key (logo). You can use the oSchedule.Event("logo") method to request the event giving its key.
SetKey

SetKnownProperty(index, value)

The SetKnownProperty() method sets the value of the event's property giving its index.
Parameters:
Name Type Description
index number Specifies the identifier of the event's property to request as listed: 1 (exEventStartDateTime) {Date}, sets the starting date/time of the event. 2 (exEventEndDateTime) {Date}, sets the ending date/time of the event. 3 (exEventAllDay) {boolean}, sets if the current event is an all day event. 4 (exEventGroupID) {any}, sets the identifier/index of the event's group. 5 (exEventCaption) {string}, sets the caption of the event. 6 (exEventUserData) {any}, sets the extra data associated with the event. 7 (exEventDuration) {number}, sets the duration of the event, in days. 8 (exEventRepetitiveExpression) {string}, sets the repetitive expression of the event. 12 (exEventID) {string}, specifies the event's unique key/identifier/index.
value any Indicates the value of the event's property
SetKnownProperty

SetLongLabel(value)

The SetLongLabel() method sets the event's long-label. The formatEventLongLabel misc option defines the format to show the long-label.
Parameters:
Name Type Description
value any Specifies the event's long-label. The value parameter supports ex-HTML and <%=formula%> tags. The <%=formula%> tag indicates the result of the giving formula. The formula supports value formatting. Inside the formula the %0, %1, ... indicates the value of corresponding property of the event, such as %1 specifies the exEventStartDateTime, %2 exEventEndDateTime, and so on. The known identifiers within the <%=formula%> tag are:
  • %1 (exEventStartDateTime) {Date}, indicates the starting date/time of the event. This property gets the Start property of the event. The Start property defines the lower margin of the event, and it includes the date and the time values. The exEventStartDate specifies the DATE value only, while the exEventStartTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%1)%>" displays the day of the week where the event starts
  • %2 (exEventEndDateTime) {Date}, indicates the ending date/time of the event. This property gets or sets the End property of the event. The End property defines the upper margin of the event, and it includes the date and the time values. The exEventEndDate specifies the DATE value only, while the exEventEndTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%2)%>" gets the day of the week where the event ends.
  • %3 (exEventAllDay) {boolean}, indicates if the current event is an all day event. This property is equivalent with the event's AllDay property which indicates if the current event is an all-day event. For instance, the LabelProperty = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>", displays automatically an "All-Day-Event: " prefix for all-day events. If the event is not an all-day event, the <%=%256%>, or exEventDisplayLongMargins, long margins of the events are displayed.
  • %4 (exEventGroupID) {any}, specifies the identifier/index of the event's group. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupLabel property indicates the Caption property of the Group's event. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%4%>
    <%=%256%>" displays on the first line, the group's identifier, and the long margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %5 (exEventCaption) {string}, indicates the caption of the event. The Caption property of the event specifies the custom caption that can be displayed on the label, without having to change the event's label. For instance, the LabelProperty = "<%=%256%>
    <%=%5%>" displays on the first line, the event's long margins, while on the second line displays the event's caption. Once you update or edit the event's Caption, the event's body automatically shows the new caption.
  • %6 (exEventUserData) {any}, indicates the extra data associated with the event. The UserData property of the event indicates an extra data associated with the event. For instance, the LabelProperty = "<%=%256%>
    <%=%6%>" displays on the first line, the event's long margins, while on the second line displays the event's user data. Once you update or edit the event's UserData, the event's body automatically shows the new label.
  • %7 (exEventDuration) {number}, specifies the duration of the event. The returned values is of float type, and it indicates the duration of the event in days. For instance, the 1.5 indicates, 1 day and 12 hours. For instance, the LabelProperty = "<%=%256%>
    <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>" displays on the first line, the event's long margins, while on the second line displays the event's durations in days, hours and minutes. Once you update or edit the event's margins, the event's body automatically shows the new length. You can use the MoveBy method to delay the current event with a specified value time. You can use the SetKnownProperty(exEventDuration) to change the event's duration.
  • %8 (exEventRepetitiveExpression) {string}, specifies the repetitive expression of the event. The Repetitive property of the event indicates the expression that determines whether the event is repetitive. For instance, the LabelProperty = "<%=%256%>
    <%=len(%8)? `repetitive event`:``%>" displays repetitive event for repetitive events.
  • %12 (exEventID) {string}, specifies the event's unique key/identifier/index.
  • %256 (exEventDisplayShortMargins) {string}, displays the margins of the event in a short format (read-only). The ShortDateFormat property defines the short date format. The ShortTimeFormat property defines the short time format.
  • %257 (exEventDisplayLongMargins) {string}, displays the margins of the event in a long format (read-only). The LongDateFormat property defines the long date format. The LongTimeFormat property defines the long time format.
  • %258 (exEventStartDate) {Date}, gets the starting date ( not including the time ) of the event (read-only). You can use this property to get the starting date of the event.
  • %259 (exEventStartTime) {number}, gets the starting time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the starting time of the event.
  • %260 (exEventEndDate) {Date}, gets the ending date ( not including the time ) of the event (read-only). You can use this property to get the ending date of the event.
  • %261 (exEventEndTime) {number}, gets the ending time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the ending time of the event.
  • %262 (exEventGroupLabel) {string}, gets the label of the owner group (read-only). The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%262%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %263 (exEventGroupTitle) {string}, gets the title of the owner group (read-only). The exEventGroupTitle property indicates the Title property of the Group's event. The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. For instance, the LabelProperty = "<%=%263%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %264 (exEventRepetitive) {boolean}, Indicates if the current event is a repetitive event. (read-only). You can use this flag to specify whether Repetitive property is not empty, and valid.
Example
null {null} or undefined {undefined}, the control's DefaultEventLongLabel property defines the event's long-label (visible while it fits the event's body, else the event's short-label is displayed)
 "" {string}, no long-label for the event is displayed
 "<img>image</img> and text" {string}, displays the image and the text. The image can be added using the exontrol.HTMLPicture.Add() method
 "<%=%256%>", displays the event's start and end margins in a long format
SetLongLabel

SetMovable(value)

The SetMovable() method defines whether the event is movable
Parameters:
Name Type Description
value boolean Specifies whether the event is movable
Example
false {boolean}, the event can not be moved at runtime
 true {boolean}, the event is movable
SetMovable

SetOptions(oOptions)

The SetOptions() method changes the event's options (visibility, caption, ...) at once
Parameters:
Name Type Description
oOptions object Specifies an object of EventOptions type that holds information about the event, such as caption, image and so on. If the oOptions parameter is not-of object type it indicates the event's caption instead
Example
oSchedule.Event(0).Options = {shape: "red", height: 32}, changes the event's height and background
 oSchedule.Event(0).SetOptions({shape: "red", height: 32}), changes the event's height and background
SetOptions

SetRepetitive(value)

The SetRepetitive() method sets the expression to define the repetitive-event
Parameters:
Name Type Description
value string Specifies the expression to define the repetitive-event. The Repetitive property supports Value or ICalendar format/expressions (requires "exontrol.icalendar.js"). The FREQ property determines whether the Repetitive property uses the Value or ICalendar format. In other words, if the Repetitive property contains the FREQ keyword, the ICalendar format is using, else the Value format.

The Value format supports the "value" keyword which defines the scheduling-date. The Value format/expressions supports constants, variables, operators, operations and predefined functions as described .

The ICalendar format (requires "exontrol.icalendar.js") supports RRULE expressions, as explained:

  • FREQ, {string} The FREQ rule part identifies the type of recurrence rule. This rule part MUST be specified in the recurrence rule. Valid values include SECONDLY, to specify repeating events based on an interval of a second or more; MINUTELY, to specify repeating events based on an interval of a minute or more; HOURLY, to specify repeating events based on an interval of an hour or more; DAILY, to specify repeating events based on an interval of a day or more; WEEKLY, to specify repeating events based on an interval of a week or more; MONTHLY, to specify repeating events based on an interval of a month or more; and YEARLY, to specify repeating events based on an interval of a year or more. The valid values are "SECONDLY", "MINUTELY", "HOURLY", "DAILY", "WEEKLY", "MONTHLY" and "YEARLY".
  • DTSTART {Date}, The DTSTART rule specifies the date the recurrence starts from, in YYYYMMDD[THHNNSS[Z]] format. If missing the current date and time is used.
  • INTERVAL {number}, The INTERVAL rule part contains a positive integer representing at which intervals the recurrence rule repeats. The default value is "1", meaning every second for a SECONDLY rule, every minute for a MINUTELY rule, every hour for an HOURLY rule, every day for a DAILY rule, every week for a WEEKLY rule, every month for a MONTHLY rule, and every year for a YEARLY rule. For example, within a DAILY rule, a value of "8" means every eight days.
  • COUNT {number}, The COUNT rule part defines the number of occurrences at which to range-bound the recurrence. The "DTSTART" property value always counts as the first occurrence.
  • WKST {string}, The WKST rule part specifies the day on which the workweek starts. Valid values are MO, TU, WE, TH, FR, SA, and SU. This is significant when a WEEKLY "RRULE" has an interval greater than 1, and a BYDAY rule part is specified. This is also significant when in a YEARLY "RRULE" when a BYWEEKNO rule part is specified. The default value is MO.
  • UNTIL {Date}, The UNTIL rule part defines a DATE or DATE-TIME value that bounds the recurrence rule in an inclusive manner. If the value specified by UNTIL is synchronized with the specified recurrence, this DATE or DATE-TIME becomes the last instance of the recurrence. The value of the UNTIL rule part MUST have the same value type as the "DTSTART" property.
  • BYWEEKNO {string}, The BYWEEKNO rule part specifies a COMMA-separated list of ordinals specifying weeks of the year. Valid values are 1 to 53 or -53 to -1.
  • BYDAY {string}, The BYDAY rule part specifies a COMMA-separated list of days of the week; SU indicates Sunday; MO indicates Monday; TU indicates Tuesday; WE indicates Wednesday; TH indicates Thursday; FR indicates Friday; and SA indicates Saturday.
  • BYMONTHDAY {string}, The BYMONTHDAY rule part specifies a COMMA-separated list of days of the month. Valid values are 1 to 31 or -31 to -1. For example, -10 represents the tenth to the last day of the month. The BYMONTHDAY rule part MUST NOT be specified when the FREQ rule part is set to WEEKLY.
  • BYYEARDAY {string}, The BYYEARDAY rule part specifies a COMMA-separated list of days of the year. Valid values are 1 to 366 or -366 to -1. For example, -1 represents the last day of the year (December 31st) and -306 represents the 306th to the last day of the year (March 1st). The BYYEARDAY rule part MUST NOT be specified when the FREQ rule part is set to DAILY, WEEKLY, or MONTHLY.
  • BYSETPOS {string}, The BYSETPOS rule part specifies a COMMA-separated list of values that corresponds to the nth occurrence within the set of recurrence instances specified by the rule. BYSETPOS operates on a set of recurrence instances in one interval of the recurrence rule. For example, in a WEEKLY rule, the interval would be one week A set of recurrence instances starts at the beginning of the interval defined by the FREQ rule part. Valid values are 1 to 366 or -366 to -1. It MUST only be used in conjunction with another BYxxx rule part. For example "the last work day of the month" could be represented as: FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1 Each BYSETPOS value can include a positive (+n) or negative (-n) integer. If present, this indicates the nth occurrence of the specific occurrence within the set of occurrences specified by the rule.
  • BYMONTH {string}, The BYMONTH rule part specifies a COMMA-separated list of months of the year. Valid values are 1 to 12.
  • BYHOUR {string}, The BYHOUR rule part specifies a COMMA-separated list of hours of the day. Valid values are 0 to 23. (ignored)
  • BYMINUTE {string}, The BYMINUTE rule part specifies a COMMA-separated list of minutes within an hour. Valid values are 0 to 59. (ignored)
  • BYSECOND {string}, The BYSECOND rule part specifies a COMMA-separated list of seconds within a minute. Valid values are 0 to 60. (ignored)

Example
Value format samples:

 "" {string} or null {null}, the event is not repetitive (no effect)
 "0" {string}, no occurrence
 "1" {string}, the event occurs every day
 "weekday(value) = 1" {string}, the event occurs every Monday
 "weekday(value) in (1,2) and month(value) = 6", the event occurs every Monday and Tuesday, on June only
 "value in (#6/8/2012#,#6/11/2012#,#6/20/2012#)", the event occurs on 6/8/2012, 6/11/2012 and 6/20/2012
 "value >= #6/1/2012# and ( (value - #6/1/2012#)/86400000 mod 5 = 0)", the event starts on 6/1/2012, and shows up every 5 days

 ICalendar format samples (requires "exontrol.icalendar.js"):

 "FREQ=DAILY", the event occurs daily
 "FREQ=MONTHLY", the event occurs monthly
 "FREQ=WEEKLY;BYDAY=MO,FR", the event occurs weekly every Monday and Friday
SetRepetitive

SetResizable(value)

The SetResizable() method defines whether the event is resizable
Parameters:
Name Type Description
value exontrol.Schedule.EventResizableEnum Specifies whether the event is resizable
Example
false {boolean} exNoResizable (0), the event can not be resized
 true {boolean} or exResizableStart(1), only the starting point of the event can be resized
 3 {number} or exResizableBoth(3), indicates a sizeable event, so the user can resize at runtime the start or end point of the event (default)
SetResizable

SetSelectable(value)

The SetSelectable() method defines whether the event is selectable
Parameters:
Name Type Description
value boolean Specifies whether the event is selectable
Example
false {boolean}, the event is unselectable
 true {boolean}, the event is selectable
SetSelectable

SetSelected(value)

The SetSelected() method defines whether the event is selected
Parameters:
Name Type Description
value boolean Specifies whether the event is selected
Example
false {boolean}, the event is unselected
 true {boolean}, the event is selected
SetSelected

SetShape(value)

The SetShape() method changes the shape for the event.
Parameters:
Name Type Description
value any The value could be any of the following:
  • null, no custom-shape is applied on the object (default-shape may be applied instead)
  • the shape's name within the exontrol.Shape.Schedule or exontrol.Shape namespace
  • a CSS color
  • a JSON string-representation of an object of exontrol.Def.Shape type, for the event
  • an object of {normal,hover,click,disabled} type. The normal, hover, click and disabled are objects of exontrol.Def.Shape type
Example
null {null}, no custom shape is applied (default object's shape may be applied)
 "" {string}, no custom shape is applied (no default object's shape is be applied)
 "red" {string}, fills the object's background in red (CSS color)
 '{"fillColor": "red"}' or '{"normal":{"fillColor": "red"}}' {string}, fills the object's background in red (JSON-representation of an object of exontrol.Def.Shape type)
 "xxx" {string}, indicates that exontrol.Shapes.Schedule.xxx or exontrol.Shapes.xxx is applied on the object's background. If the xxx field is missing, no custom shape is applied (no default object's shape is be applied)
 exontrol.Shapes.Button {object}, applies the "Button" shape on the object as defined into exontrol.Shapes namespace
SetShape

SetShortLabel(value)

The SetShortLabel() method sets the event's short-label. The formatEventShortLabel misc option defines the format to show the short-label.
Parameters:
Name Type Description
value any Specifies the event's short-label. The value parameter supports ex-HTML and <%=formula%> tags. The <%=formula%> tag indicates the result of the giving formula. The formula supports value formatting. Inside the formula the %0, %1, ... indicates the value of corresponding property of the event, such as %1 specifies the exEventStartDateTime, %2 exEventEndDateTime, and so on. The known identifiers within the <%=formula%> tag are:
  • %1 (exEventStartDateTime) {Date}, indicates the starting date/time of the event. This property gets the Start property of the event. The Start property defines the lower margin of the event, and it includes the date and the time values. The exEventStartDate specifies the DATE value only, while the exEventStartTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%1)%>" displays the day of the week where the event starts
  • %2 (exEventEndDateTime) {Date}, indicates the ending date/time of the event. This property gets or sets the End property of the event. The End property defines the upper margin of the event, and it includes the date and the time values. The exEventEndDate specifies the DATE value only, while the exEventEndTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%2)%>" gets the day of the week where the event ends.
  • %3 (exEventAllDay) {boolean}, indicates if the current event is an all day event. This property is equivalent with the event's AllDay property which indicates if the current event is an all-day event. For instance, the LabelProperty = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>", displays automatically an "All-Day-Event: " prefix for all-day events. If the event is not an all-day event, the <%=%256%>, or exEventDisplayShortMargins, short margins of the events are displayed.
  • %4 (exEventGroupID) {any}, specifies the identifier/index of the event's group. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupLabel property indicates the Caption property of the Group's event. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%4%>
    <%=%256%>" displays on the first line, the group's identifier, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %5 (exEventCaption) {string}, indicates the caption of the event. The Caption property of the event specifies the custom caption that can be displayed on the label, without having to change the event's label. For instance, the LabelProperty = "<%=%256%>
    <%=%5%>" displays on the first line, the event's short margins, while on the second line displays the event's caption. Once you update or edit the event's Caption, the event's body automatically shows the new caption.
  • %6 (exEventUserData) {any}, indicates the extra data associated with the event. The UserData property of the event indicates an extra data associated with the event. For instance, the LabelProperty = "<%=%256%>
    <%=%6%>" displays on the first line, the event's short margins, while on the second line displays the event's user data. Once you update or edit the event's UserData, the event's body automatically shows the new label.
  • %7 (exEventDuration) {number}, specifies the duration of the event. The returned values is of float type, and it indicates the duration of the event in days. For instance, the 1.5 indicates, 1 day and 12 hours. For instance, the LabelProperty = "<%=%256%>
    <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>" displays on the first line, the event's short margins, while on the second line displays the event's durations in days, hours and minutes. Once you update or edit the event's margins, the event's body automatically shows the new length. You can use the MoveBy method to delay the current event with a specified value time. You can use the SetKnownProperty(exEventDuration) to change the event's duration.
  • %8 (exEventRepetitiveExpression) {string}, specifies the repetitive expression of the event. The Repetitive property of the event indicates the expression that determines whether the event is repetitive. For instance, the LabelProperty = "<%=%256%>
    <%=len(%8)? `repetitive event`:``%>" displays repetitive event for repetitive events.
  • %12 (exEventID) {string}, specifies the event's unique key/identifier/index.
  • %256 (exEventDisplayShortMargins) {string}, displays the margins of the event in a short format (read-only). The ShortDateFormat property defines the short date format. The ShortTimeFormat property defines the short time format.
  • %257 (exEventDisplayLongMargins) {string}, displays the margins of the event in a long format (read-only). The LongDateFormat property defines the long date format. The LongTimeFormat property defines the long time format.
  • %258 (exEventStartDate) {Date}, gets the starting date ( not including the time ) of the event (read-only). You can use this property to get the starting date of the event.
  • %259 (exEventStartTime) {number}, gets the starting time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the starting time of the event.
  • %260 (exEventEndDate) {Date}, gets the ending date ( not including the time ) of the event (read-only). You can use this property to get the ending date of the event.
  • %261 (exEventEndTime) {number}, gets the ending time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the ending time of the event.
  • %262 (exEventGroupLabel) {string}, gets the label of the owner group (read-only). The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%262%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %263 (exEventGroupTitle) {string}, gets the title of the owner group (read-only). The exEventGroupTitle property indicates the Title property of the Group's event. The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. For instance, the LabelProperty = "<%=%263%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %264 (exEventRepetitive) {boolean}, Indicates if the current event is a repetitive event. (read-only). You can use this flag to specify whether Repetitive property is not empty, and valid.
Example
null {null} or undefined {undefined}, the control's DefaultEventShortLabel property defines the event's short-label
 "" {string}, no short-label for the event is displayed
 "<img>image</img> and text" {string}, displays the image and the text. The image can be added using the exontrol.HTMLPicture.Add() method
 "<%=%256%>", displays the event's start and end margins in a short format
SetShortLabel

SetStart(value)

The SetStart() method sets the date/time when the event or the appointment begins
Parameters:
Name Type Description
value any Specifies the date/time when the event or the appointment begins, as explained: {null} or {undefined}, indicates the current date and time (equivalent of Date.Now()) {number}, indicates the Jan 1st of the year, such as "Jan 1st 2001" for 2001 {string}, defines the date in string-format as "#MM/DD/YYYY[ HH:mm:ss]#", such as "#10/10/2011 14:48#" or string-format as "YYYY-MM-DDTHH:mm:ss.sssZ" (ISO 8601), such as "2011-10-10" (date-only format), "2011-10-10T14:48:00" (local date-time format), "2011-10-10T14:48:00Z" (UTC date-time format), or "2011-10-10T14:48:00.000+09:00" (date-time format with milliseconds and time zone offset) {Date}, indicates a javascript Date to be copied, such as "Wed, 25 Mar 2015 15:00:00 GMT" for new Date("2015-03-25T15:00:00Z")
Example
null {null}, is equivalent of Date.Now()
 2001 {number}, is equivalent of Mon, 01 Jan 2001 00:00:00 GMT
 "#12/31/1971 13:00#" {string}, is equivalent of Fri, 31 Dec 1971 13:00:00 GMT
 new Date("2015-03-25T15:00:00Z"), is equivalent of Wed, 25 Mar 2015 15:00:00 GMT
SetStart

SetToolTip(value)

The SetToolTip() method sets the event's predefined tooltip.
Parameters:
Name Type Description
value any Specifies the event's predefined tooltip. The event's tooltip is shown once the cursor hovers the event. The value parameter supports ex-HTML and <%=formula%> tags. The <%=formula%> tag indicates the result of the giving formula. The formula supports value formatting. Inside the formula the %0, %1, ... indicates the value of corresponding property of the event, such as %1 specifies the exEventStartDateTime, %2 exEventEndDateTime, and so on. The known identifiers within the <%=formula%> tag are:
  • %1 (exEventStartDateTime) {Date}, indicates the starting date/time of the event. This property gets the Start property of the event. The Start property defines the lower margin of the event, and it includes the date and the time values. The exEventStartDate specifies the DATE value only, while the exEventStartTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%1)%>" displays the day of the week where the event starts
  • %2 (exEventEndDateTime) {Date}, indicates the ending date/time of the event. This property gets or sets the End property of the event. The End property defines the upper margin of the event, and it includes the date and the time values. The exEventEndDate specifies the DATE value only, while the exEventEndTime includes the TIME value only. For instance, the LabelProperty = "<%=weekday(%2)%>" gets the day of the week where the event ends.
  • %3 (exEventAllDay) {boolean}, indicates if the current event is an all day event. This property is equivalent with the event's AllDay property which indicates if the current event is an all-day event. For instance, the LabelProperty = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>", displays automatically an "All-Day-Event: " prefix for all-day events. If the event is not an all-day event, the <%=%256%>, or exEventDisplayShortMargins, short margins of the events are displayed.
  • %4 (exEventGroupID) {any}, specifies the identifier/index of the event's group. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupLabel property indicates the Caption property of the Group's event. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%4%>
    <%=%256%>" displays on the first line, the group's identifier, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %5 (exEventCaption) {string}, indicates the caption of the event. The Caption property of the event specifies the custom caption that can be displayed on the label, without having to change the event's label. For instance, the LabelProperty = "<%=%256%>
    <%=%5%>" displays on the first line, the event's short margins, while on the second line displays the event's caption. Once you update or edit the event's Caption, the event's body automatically shows the new caption.
  • %6 (exEventUserData) {any}, indicates the extra data associated with the event. The UserData property of the event indicates an extra data associated with the event. For instance, the LabelProperty = "<%=%256%>
    <%=%6%>" displays on the first line, the event's short margins, while on the second line displays the event's user data. Once you update or edit the event's UserData, the event's body automatically shows the new label.
  • %7 (exEventDuration) {number}, specifies the duration of the event. The returned values is of float type, and it indicates the duration of the event in days. For instance, the 1.5 indicates, 1 day and 12 hours. For instance, the LabelProperty = "<%=%256%>
    <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>" displays on the first line, the event's short margins, while on the second line displays the event's durations in days, hours and minutes. Once you update or edit the event's margins, the event's body automatically shows the new length. You can use the MoveBy method to delay the current event with a specified value time. You can use the SetKnownProperty(exEventDuration) to change the event's duration.
  • %8 (exEventRepetitiveExpression) {string}, specifies the repetitive expression of the event. The Repetitive property of the event indicates the expression that determines whether the event is repetitive. For instance, the LabelProperty = "<%=%256%>
    <%=len(%8)? `repetitive event`:``%>" displays repetitive event for repetitive events.
  • %12 (exEventID) {string}, specifies the event's unique key/identifier/index.
  • %256 (exEventDisplayShortMargins) {string}, displays the margins of the event in a short format (read-only). The ShortDateFormat property defines the short date format. The ShortTimeFormat property defines the short time format.
  • %257 (exEventDisplayLongMargins) {string}, displays the margins of the event in a long format (read-only). The LongDateFormat property defines the long date format. The LongTimeFormat property defines the long time format.
  • %258 (exEventStartDate) {Date}, gets the starting date ( not including the time ) of the event (read-only). You can use this property to get the starting date of the event.
  • %259 (exEventStartTime) {number}, gets the starting time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the starting time of the event.
  • %260 (exEventEndDate) {Date}, gets the ending date ( not including the time ) of the event (read-only). You can use this property to get the ending date of the event.
  • %261 (exEventEndTime) {number}, gets the ending time ( not including the date ) of the event, as a number between 0 and 1 (read-only). You can use this property to get the ending time of the event.
  • %262 (exEventGroupLabel) {string}, gets the label of the owner group (read-only). The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. The exEventGroupTitle property indicates the Title property of the Group's event. For instance, the LabelProperty = "<%=%262%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %263 (exEventGroupTitle) {string}, gets the title of the owner group (read-only). The exEventGroupTitle property indicates the Title property of the Group's event. The exEventGroupLabel property indicates the Caption property of the Group's event. The GroupID property of the event indicates the identifier of the group that event belongs to. For instance, the LabelProperty = "<%=%263%>
    <%=%256%>" displays on the first line, the group's caption, and the short margins of the event on the second line. The caption of the label is automatically updated once an event is moved from a group to another.
  • %264 (exEventRepetitive) {boolean}, Indicates if the current event is a repetitive event. (read-only). You can use this flag to specify whether Repetitive property is not empty, and valid.
Example
null {null} or undefined {undefined}, the control's DefaultEventToolTip property defines the event's tooltip
 "" {string}, no tooltip for the event is displayed
 "<img>image</img> and text" {string}, the image and text is being shown once the mouse pointer hovers the event. The image can be added using the exontrol.HTMLPicture.Add() method
 "<%=%256%>", displays the event's start and end margins in a short format
SetToolTip

SetUserData(value)

The SetUserData() method associates any extra-data to the event
Parameters:
Name Type Description
value any Indicates any extra-data to associate to the event
SetUserData

SetVisible(value)

The SetVisible() method shows or hides the event
Parameters:
Name Type Description
value boolean Indicates a boolean expression that specifies whether the event is visible or hidden
Example
false {boolean}, hides the event
 true {boolean}, shows the event
SetVisible

StartUpdateEvent() → {object}

The StartUpdateEvent() method starts changing properties of the event (calendar appointment), so EndUpdateEvent method adds programmatically updated properties to undo/redo queue. You can use the StartBlockUndoRedo / EndBlockUndoRedo methods to group multiple Undo/Redo operations into a single-block. The AllowUndoRedo property specifies whether the control supports undo/redo operations for objects (event (calendar appointment)s, links, ...). No entry is added to the Undo/Redo queue if no property is changed for the current event (calendar appointment).
Since:
  • 2.1
Returns:
Returns undefined (no undo/redo is allowed) or an object to be passed to EndUpdateEvent method.
Type
object
StartUpdateEvent

UpdateEvent(callback, thisArg)

The UpdateEvent() method records the changes of event (calendar appointment)'s properties into control's Undo/Redo queue. The UpdateEvent() method calls StartUpdateEvent / EndUpdateEvent methods.
Parameters:
Name Type Description
callback callback Specifies a function of callback() type
thisArg any Indicates the value of "this" keyword during the callback, or the object itself if missing
UpdateEvent