I have the following code wit an inlineEditTemplate. I am not getting the correct value for the AppointmentTypeID on appointment insert. The value is always one, regardless of the value selected in the radcombobox. What Am I missing or doing wrong?
And the Code Behind:
<%@ Page Language="vb" AutoEventWireup="false" MasterPageFile="WorkPlanProject.Master"
CodeBehind="PersonalCalendar.aspx.vb" Inherits="WQS_Presentation.PersonalCalendar"
Title="Calendar" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
runat
=
"server"
>
<
link
href
=
"../StyleSheets/VesselSheet.css"
rel
=
"stylesheet"
type
=
"text/css"
/>
<
link
href
=
"../StyleSheets/welcome.css"
type
=
"text/css"
/>
<
script
src
=
"../Scripts/jquery-1.4.2.js"
type
=
"text/javascript"
></
script
>
<
script
src
=
"../Scripts/welcome.js"
type
=
"text/javascript"
></
script
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"ContentPlaceHolder1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
/* Firefox resize scrollable content */
function hideScrollableArea(sender, eventArgs) {
if ($telerik.isFirefox)
$telerik.$('.rsContentScrollArea').css('overflow', 'hidden');
}
function showScrollableArea(sender, eventArgs) {
if ($telerik.isFirefox)
$telerik.$('.rsContentScrollArea').css('overflow', 'auto');
}
</
script
>
<
div
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RadAjaxLoadingPanel1"
runat
=
"server"
Skin
=
"Office2007"
/>
<
div
>
<
div
>
My Schedule</
div
>
<
telerik:RadSplitter
runat
=
"server"
ID
=
"RadSplitter1"
PanesBorderSize
=
"0"
Width
=
"734px"
Height
=
"552px"
Skin
=
"Office2007"
>
<
telerik:RadPane
runat
=
"Server"
ID
=
"leftPane"
Width
=
"240px"
MinWidth
=
"240"
MaxWidth
=
"300"
Scrolling
=
"None"
OnClientResizing
=
"hideScrollableArea"
OnClientResized
=
"showScrollableArea"
OnClientExpanding
=
"hideScrollableArea"
OnClientExpanded
=
"showScrollableArea"
OnClientCollapsing
=
"hideScrollableArea"
OnClientCollapsed
=
"showScrollableArea"
>
<
div
>
<
telerik:RadCalendar
runat
=
"server"
ID
=
"RadCalendar1"
Skin
=
"Office2007"
AutoPostBack
=
"true"
EnableMultiSelect
=
"false"
DayNameFormat
=
"FirstTwoLetters"
EnableNavigation
=
"true"
EnableMonthYearFastNavigation
=
"false"
OnSelectionChanged
=
"RadCalendar1_SelectionChanged"
OnDefaultViewChanged
=
"RadCalendar1_DefaultViewChanged"
>
</
telerik:RadCalendar
>
<
telerik:RadCalendar
runat
=
"server"
ID
=
"RadCalendar2"
Skin
=
"Office2007"
AutoPostBack
=
"true"
EnableMultiSelect
=
"false"
DayNameFormat
=
"FirstTwoLetters"
EnableNavigation
=
"false"
EnableMonthYearFastNavigation
=
"false"
OnSelectionChanged
=
"RadCalendar2_SelectionChanged"
>
</
telerik:RadCalendar
>
<
asp:SqlDataSource
ID
=
"SqlDSAppointmentTypes"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:DATACOREConnectionString %>"
SelectCommand="usp_UIGetAppointmentTypes" SelectCommandType="StoredProcedure">
</
asp:SqlDataSource
>
</
div
>
<
telerik:RadPanelBar
runat
=
"server"
Skin
=
"Office2007"
ID
=
"PanelBar"
Width
=
"100%"
>
<
Items
>
<
telerik:RadPanelItem
runat
=
"server"
Text
=
"My Team Calendars"
Expanded
=
"true"
>
<
Items
>
<
telerik:RadPanelItem
runat
=
"server"
>
<
ItemTemplate
>
<
div
>
<
div
>
<
asp:CheckBox
ID
=
"chkDevelopment"
runat
=
"server"
Text
=
"Development"
Checked
=
"true"
AutoPostBack
=
"true"
OnCheckedChanged
=
"CheckBoxes_CheckedChanged"
/>
</
div
>
<
div
>
<
asp:CheckBox
ID
=
"chkMarketing"
runat
=
"server"
Text
=
"Marketing"
Checked
=
"true"
AutoPostBack
=
"true"
OnCheckedChanged
=
"CheckBoxes_CheckedChanged"
/>
</
div
>
<
div
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
Text
=
"Inspections"
Checked
=
"true"
AutoPostBack
=
"true"
OnCheckedChanged
=
"CheckBoxes_CheckedChanged"
/>
</
div
>
</
div
>
</
ItemTemplate
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelItem
>
<
telerik:RadPanelItem
runat
=
"server"
Text
=
"My Calendar"
Expanded
=
"true"
>
<
Items
>
<
telerik:RadPanelItem
runat
=
"server"
>
<
ItemTemplate
>
<
div
>
<
div
>
<
asp:CheckBox
ID
=
"chkQ1"
runat
=
"server"
Text
=
"Personal"
Checked
=
"true"
AutoPostBack
=
"true"
OnCheckedChanged
=
"CheckBoxes_CheckedChanged"
/>
</
div
>
<
div
>
<
asp:CheckBox
ID
=
"chkQ2"
runat
=
"server"
Text
=
"Work"
Checked
=
"true"
AutoPostBack
=
"true"
OnCheckedChanged
=
"CheckBoxes_CheckedChanged"
/>
</
div
>
</
div
>
</
ItemTemplate
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelItem
>
</
Items
>
</
telerik:RadPanelBar
>
</
telerik:RadPane
>
<
telerik:RadSplitBar
runat
=
"server"
ID
=
"RadSplitBar2"
CollapseMode
=
"Forward"
/>
<
telerik:RadPane
runat
=
"Server"
ID
=
"rightPane"
Scrolling
=
"None"
Width
=
"590px"
>
<
telerik:RadScheduler
runat
=
"server"
ID
=
"RadScheduler1"
Skin
=
"Office2007"
Height
=
"551px"
ShowFooter
=
"true"
DayStartTime
=
"08:00:00"
DayEndTime
=
"21:00:00"
FirstDayOfWeek
=
"Monday"
LastDayOfWeek
=
"Friday"
EnableDescriptionField
=
"true"
DataKeyField
=
"AppointmentID"
DataSubjectField
=
"AppointmentSubject"
DataStartField
=
"AppointmentStartDate"
DataEndField
=
"AppointmentEndDate"
AppointmentStyleMode
=
"Default"
OnNavigationComplete
=
"RadScheduler1_NavigationComplete"
OnAppointmentDataBound
=
"RadScheduler1_AppointmentDataBound"
OnAppointmentDelete
=
"RadScheduler1_AppointmentDelete"
OnAppointmentUpdate
=
"RadScheduler1_AppointmentUpdate"
OnAppointmentInsert
=
"RadScheduler1_AppointmentInsert"
EnableCustomAttributeEditing
=
"true"
AdvancedForm-Enabled
=
"true"
>
<
AdvancedForm
Modal
=
"false"
DateFormat
=
"M/d/yyyy"
TimeFormat
=
"h:mm tt"
Enabled
=
"true"
/>
<
TimelineView
UserSelectable
=
"false"
/>
<
ResourceTypes
>
<
telerik:ResourceType
KeyField
=
"AppointmentTypeID"
Name
=
"AppointmentTypes"
TextField
=
"AppointmentTypeName"
ForeignKeyField
=
"AppointmentTypeID"
DataSourceID
=
"SqlDSAppointmentTypes"
/>
<
telerik:ResourceType
KeyField
=
"AppointmentOwnerID"
Name
=
"User"
TextField
=
"UserName"
ForeignKeyField
=
"AppointmentOwnerPersonID"
/>
</
ResourceTypes
>
<
ResourceStyles
>
<%--AppointmentStyleMode must be explicitly set to Default (see above) otherwise setting BackColor/BorderColor
will switch the appointments to Simple rendering (no rounded corners and gradients)--%>
<
telerik:ResourceStyleMapping
Type
=
"Calendar"
Text
=
"Development"
BackColor
=
"#D0ECBB"
BorderColor
=
"#B0CC9B"
/>
<
telerik:ResourceStyleMapping
Type
=
"Calendar"
Text
=
"Marketing"
ApplyCssClass
=
"rsCategoryRed"
/>
<
telerik:ResourceStyleMapping
Type
=
"Calendar"
Text
=
"Work"
ApplyCssClass
=
"rsCategoryOrange"
/>
</
ResourceStyles
>
<
AppointmentTemplate
>
<
span
style
=
"font-weight: bold; font-size: xx-small"
>
<
br
/>
<
h2
>
<%# Eval("Subject") %></
h2
>
</
span
>
<
br
/>
<
b
>Starts on: </
b
><%# Eval("Start")%> <
b
>Ends on: </
b
><%# Eval("End") %>
</
AppointmentTemplate
>
<
InlineInsertTemplate
>
<
div
>
<
table
width
=
"734px"
>
<
tr
>
<
td
>
<%--Subject--%>
<
asp:Label
ID
=
"lblSubject"
Text
=
"Subject: "
runat
=
"server"
Font-Bold
=
"true"
Font-Size
=
"XX-Small"
></
asp:Label
>
<
telerik:RadTextBox
ID
=
"RadTextBox1"
runat
=
"server"
Skin
=
"Sunset"
Text='<%# Bind("Subject") %>'>
</
telerik:RadTextBox
>
</
td
>
</
tr
>
<%--Start and End times--%>
<
tr
>
<
td
>
<
asp:Label
ID
=
"lblStartOn"
runat
=
"server"
Font-Size
=
"XX-Small"
Text
=
"Starts on"
Font-Bold
=
"true"
></
asp:Label
>
<
telerik:RadDateTimePicker
ID
=
"RadDateTimePicker1"
Font-Size
=
"XX-Small"
Skin
=
"Sunset"
runat
=
"server"
SelectedDate='<%# Bind("Start")%>'>
</
telerik:RadDateTimePicker
>
<
asp:Label
ID
=
"lblEndOn"
runat
=
"server"
Font-Size
=
"XX-Small"
Text
=
"Ends on"
Font-Bold
=
"true"
></
asp:Label
>
<
telerik:RadDateTimePicker
ID
=
"RadDateTimePicker2"
Font-Size
=
"XX-Small"
Skin
=
"Sunset"
runat
=
"server"
SelectedDate='<%# Bind("End")%>'>
</
telerik:RadDateTimePicker
>
<
br
/>
<
telerik:RadComboBox
ID
=
"ddlAppointmentType"
runat
=
"server"
DataSourceID
=
"SqlDSAppointmentTypes"
DataTextField
=
"AppointmentTypeName"
DataValueField
=
"AppointmentTypeID"
AutoPostBack
=
"true"
>
</
telerik:RadComboBox
>
<%--Ok and cancel buttons floated right--%>
<
asp:LinkButton
ID
=
"InsertButton"
runat
=
"server"
CommandName
=
"Insert"
>
<
asp:Image
runat
=
"server"
ID
=
"insertImage"
ImageUrl
=
"~/Images/Buttons/ok_checkmark_green.png"
AlternateText
=
"insert"
/>
</
asp:LinkButton
>
<
asp:LinkButton
ID
=
"InsertCancelButton"
runat
=
"server"
CausesValidation
=
"False"
CommandName
=
"Cancel"
>
<
asp:Image
runat
=
"server"
ID
=
"Image2"
ImageUrl
=
"~/Images/Buttons/CancelItem.png"
AlternateText
=
"cancel"
/>
</
asp:LinkButton
>
</
td
>
</
tr
>
</
table
>
</
div
>
</
InlineInsertTemplate
>
<
InlineEditTemplate
>
<
div
>
<
table
width
=
"734px"
>
<
tr
>
<
td
>
<%--Subject--%>
<
asp:Label
ID
=
"lblSubject"
Text
=
"Subject: "
runat
=
"server"
Font-Bold
=
"true"
Font-Size
=
"XX-Small"
></
asp:Label
>
<
telerik:RadTextBox
ID
=
"RadTextBox1"
runat
=
"server"
Skin
=
"Sunset"
Text='<%# Bind("Subject") %>'>
</
telerik:RadTextBox
>
</
td
>
</
tr
>
<%--Start and End times--%>
<
tr
>
<
td
>
<
asp:Label
ID
=
"lblStartOn"
runat
=
"server"
Font-Size
=
"XX-Small"
Text
=
"Starts on"
Font-Bold
=
"true"
></
asp:Label
>
<
telerik:RadDateTimePicker
ID
=
"RadDateTimePicker1"
Font-Size
=
"XX-Small"
Skin
=
"Sunset"
runat
=
"server"
SelectedDate='<%# Bind("Start")%>'>
</
telerik:RadDateTimePicker
>
<
asp:Label
ID
=
"lblEndOn"
runat
=
"server"
Font-Size
=
"XX-Small"
Text
=
"Ends on"
Font-Bold
=
"true"
></
asp:Label
>
<
telerik:RadDateTimePicker
ID
=
"RadDateTimePicker2"
Font-Size
=
"XX-Small"
Skin
=
"Sunset"
runat
=
"server"
SelectedDate='<%# Bind("End")%>'>
</
telerik:RadDateTimePicker
>
<%--Ok and cancel buttons floated right--%>
<
asp:LinkButton
ID
=
"InsertButton"
runat
=
"server"
CommandName
=
"Insert"
>
<
asp:Image
runat
=
"server"
ID
=
"insertImage"
ImageUrl
=
"~/Images/Buttons/ok_checkmark_green.png"
AlternateText
=
"insert"
/>
</
asp:LinkButton
>
<
asp:LinkButton
ID
=
"InsertCancelButton"
runat
=
"server"
CausesValidation
=
"False"
CommandName
=
"Cancel"
>
<
asp:Image
runat
=
"server"
ID
=
"Image2"
ImageUrl
=
"~/Images/Buttons/CancelItem.png"
AlternateText
=
"cancel"
/>
</
asp:LinkButton
>
</
td
>
</
tr
>
</
table
>
</
div
>
</
InlineEditTemplate
>
<
TimeSlotContextMenuSettings
EnableDefault
=
"true"
/>
<
AppointmentContextMenuSettings
EnableDefault
=
"true"
/>
</
telerik:RadScheduler
>
<
telerik:RadAjaxManager
ID
=
"RadAjaxManager1"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"RadAjaxManager1"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RadScheduler1"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
</
telerik:RadPane
>
</
telerik:RadSplitter
>
</
div
>
</
div
>
</
asp:Content
>
Imports
System
Imports
Telerik.Web.UI
Imports
System.Web.UI.WebControls
Imports
Telerik.Web.UI.Calendar
Imports
System.Collections.Generic
Imports
System.ComponentModel
Imports
System.IO
Partial
Public
Class
PersonalCalendar
Inherits
System.Web.UI.Page
Private
AppointmentManager
As
New
ABC_BusinessRules.ApointmentManager
Private
Const
ProviderSessionKey
As
String
=
"Telerik.Web.Examples.Scheduler.Outlook2007.DefaultCS"
Private
checkBoxIDs
As
Dictionary(Of
Integer
,
String
)
Protected
Sub
Page_Load(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
Me
.Load
' BindSchedular(DateTime.Today)
checkBoxIDs =
New
Dictionary(Of
Integer
,
String
)()
checkBoxIDs.Add(1,
"chkDevelopment"
)
checkBoxIDs.Add(2,
"chkMarketing"
)
checkBoxIDs.Add(3,
"chkQ1"
)
checkBoxIDs.Add(4,
"chkQ2"
)
'BindSchedular(RadScheduler1.SelectedDate)
If
Not
IsPostBack
Then
BindSchedular(RadScheduler1.SelectedDate)
RadCalendar1.SelectedDate = RadScheduler1.SelectedDate
SyncCalendars()
End
If
End
Sub
Protected
Sub
RadScheduler1_NavigationComplete(
ByVal
sender
As
Object
,
ByVal
e
As
SchedulerNavigationCompleteEventArgs)
RadCalendar1.FocusedDate = RadScheduler1.SelectedDate
SyncCalendars()
End
Sub
Protected
Sub
RadCalendar1_DefaultViewChanged(
ByVal
sender
As
Object
,
ByVal
e
As
DefaultViewChangedEventArgs)
SyncCalendars()
End
Sub
Private
Sub
SyncCalendars()
RadCalendar2.FocusedDate = RadCalendar1.FocusedDate.AddMonths(1)
End
Sub
Protected
Sub
RadCalendar1_SelectionChanged(
ByVal
sender
As
Object
,
ByVal
e
As
SelectedDatesEventArgs)
If
RadCalendar1.SelectedDates.Count > 0
Then
RadScheduler1.SelectedDate = RadCalendar1.SelectedDate
RadCalendar2.SelectedDate = RadCalendar1.SelectedDate
End
If
End
Sub
Protected
Sub
RadCalendar2_SelectionChanged(
ByVal
sender
As
Object
,
ByVal
e
As
SelectedDatesEventArgs)
If
RadCalendar2.SelectedDates.Count > 0
Then
RadScheduler1.SelectedDate = RadCalendar2.SelectedDate
RadCalendar1.SelectedDate = RadCalendar2.SelectedDate
End
If
End
Sub
Protected
Sub
RadScheduler1_AppointmentDataBound(
ByVal
sender
As
Object
,
ByVal
e
As
SchedulerEventArgs)
Dim
radCalendarDay
As
New
RadCalendarDay(RadCalendar1)
radCalendarDay.[
Date
] = e.Appointment.Start
radCalendarDay.ItemStyle.CssClass =
"DayWithAppointments"
RadCalendar1.SpecialDays.Add(radCalendarDay)
RadCalendar2.SpecialDays.Add(radCalendarDay)
e.Appointment.Visible =
True
For
Each
key
As
Integer
In
checkBoxIDs.Keys
Dim
chkBox
As
CheckBox = TryCast(PanelBar.Items(0).Items(0).FindControl(checkBoxIDs(key)), CheckBox)
If
chkBox
Is
Nothing
Then
chkBox = TryCast(PanelBar.Items(1).Items(0).FindControl(checkBoxIDs(key)), CheckBox)
End
If
If
chkBox.Checked
Then
Dim
userRes
As
Resource = e.Appointment.Resources.GetResource(
"Calendar"
, key.ToString())
If
userRes IsNot
Nothing
Then
e.Appointment.Visible =
True
End
If
End
If
Next
End
Sub
Protected
Sub
RadScheduler1_AppointmentDelete(
ByVal
sender
As
Object
,
ByVal
e
As
SchedulerCancelEventArgs)
RadCalendar1.SpecialDays.Clear()
RadCalendar2.SpecialDays.Clear()
End
Sub
Protected
Sub
RadScheduler1_AppointmentUpdate(
ByVal
sender
As
Object
,
ByVal
e
As
AppointmentUpdateEventArgs)
RadCalendar1.SpecialDays.Clear()
RadCalendar2.SpecialDays.Clear()
End
Sub
Public
Sub
BindSchedular(
ByVal
SelectedDate
As
DateTime)
'Get the Users Profile
Dim
strUserID
As
String
Dim
m
As
MembershipUser = Membership.GetUser()
strUserID = m.UserName
Dim
iOwnerPersonID
As
Integer
iOwnerPersonID = AppointmentManager.oDal.GetPersonIDbyUserName(strUserID)
RadScheduler1.DataSource = AppointmentManager.GetAllItems(iOwnerPersonID)
RadScheduler1.DataBind()
End
Sub
Protected
Sub
RadScheduler1_AppointmentInsert(
ByVal
sender
As
Object
,
ByVal
e
As
SchedulerCancelEventArgs)
'If e.Appointment.Resources.Count < 1 Then
' e.Appointment.Resources.Add(RadScheduler1.Resources.GetResource("Calendar", "1"))
'End If
Dim
AppointmentSet
As
New
ABC_BusinessEntity.AppointmentSet
Dim
Appointment
As
New
ABC_BusinessEntity.Appointment
Dim
dtAppointmentStart
As
DateTime
Dim
dtAppointmentEnd
As
DateTime
Dim
strAppointmentSubject
As
String
'Subject
If
e.Appointment.Subject =
String
.Empty
Then
e.Cancel =
True
Exit
Sub
Else
strAppointmentSubject = e.Appointment.Subject
End
If
dtAppointmentStart = e.Appointment.Start
dtAppointmentEnd = e.Appointment.
End
'Get the Users Profile
Dim
strUserID
As
String
Dim
m
As
MembershipUser = Membership.GetUser()
strUserID = m.UserName
'If e.Appointment.Resources.Count < 1 Then
' e.Appointment.Resources.Add(RadScheduler1.Resources.GetResource("AppointmentTypes", 1))
'End If
'If e.Appointment.Resources.GetResourceByType("AppointmentTypes") IsNot Nothing Then
' e.Appointment.Resources.Add(RadScheduler1.Resources.GetResource("AppointmentTypes", 1))
'End If
With
Appointment
'.AppointmentDescription=
'.AppointmentDuration=
.AppointmentEndDate = dtAppointmentEnd.ToUniversalTime
'.AppointmentID=
'.AppointmentLocationID=
'.AppointmentLocationTypeID=
.AppointmentOwnerPersonID = AppointmentManager.oDal.GetPersonIDbyUserName(strUserID)
'.AppointmentRecurrenceParentID=
'.AppointmentRecurrenceRuleID=
.AppointmentRecurrenceState = 7
'.AppointmentReminderID=
.AppointmentResourceID =
Nothing
.AppointmentStartDate = dtAppointmentStart.ToUniversalTime
.AppointmentSubject = strAppointmentSubject
'.AppointmentTypeID = e.Appointment.Resources.GetResourceByType("AppointmentTypes").Key
.AppointmentTypeID = RadScheduler1.Resources.GetResourceByType(
"AppointmentTypes"
).Key
'.AppointmentTypeID =
End
With
'Insert into database...
AppointmentSet.Add(Appointment)
AppointmentManager.oDal.SaveAppointment(AppointmentSet)
RadScheduler1.Rebind()
End
Sub
Protected
Sub
ddlAppointmentType_DataBinding(
ByVal
sender
As
Object
,
ByVal
e
As
EventArgs)
End
Sub
Protected
Sub
CheckBoxes_CheckedChanged(
ByVal
sender
As
Object
,
ByVal
e
As
EventArgs)
RadScheduler1.Rebind()
End
Sub
Private
Sub
RadScheduler1_AppointmentCreated(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.AppointmentCreatedEventArgs)
Handles
RadScheduler1.AppointmentCreated
'Dim appointmenttype As Resource = e.Appointment.Resources.GetResourceByType("AppointmentTypes")
'Dim cbo As New RadComboBox
'cbo = DirectCast(e.Container.FindControl("ddlAppointmentType"), RadComboBox)
'cbo.SelectedValue = appointmenttype.Key
End
Sub
Private
Sub
RadScheduler1_AppointmentDelete1(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.SchedulerCancelEventArgs)
Handles
RadScheduler1.AppointmentDelete
Dim
AppointmentID
As
Integer
= e.Appointment.ID
AppointmentManager.oDal.DeleteAppointment(AppointmentID)
RadScheduler1.Rebind()
End
Sub
Private
Sub
RadScheduler1_AppointmentUpdate1(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.AppointmentUpdateEventArgs)
Handles
RadScheduler1.AppointmentUpdate
Dim
AppointmentSet
As
New
ABC_BusinessEntity.AppointmentSet
Dim
Appointment
As
New
ABC_BusinessEntity.Appointment
Dim
dtAppointmentStart
As
DateTime
Dim
dtAppointmentEnd
As
DateTime
Dim
strAppointmentSubject
As
String
'Subject
If
e.ModifiedAppointment.Subject =
String
.Empty
Then
e.Cancel =
True
Exit
Sub
Else
strAppointmentSubject = e.ModifiedAppointment.Subject
End
If
dtAppointmentStart = e.ModifiedAppointment.Start
dtAppointmentEnd = e.ModifiedAppointment.
End
'Get the Users Profile
Dim
strUserID
As
String
Dim
m
As
MembershipUser = Membership.GetUser()
strUserID = m.UserName
With
Appointment
.AppointmentID = e.ModifiedAppointment.ID
'.AppointmentDescription=
'.AppointmentDuration=
.AppointmentEndDate = dtAppointmentEnd
'.AppointmentID=
'.AppointmentLocationID=
'.AppointmentLocationTypeID=
.AppointmentOwnerPersonID = AppointmentManager.oDal.GetPersonIDbyUserName(strUserID)
'.AppointmentRecurrenceParentID=
'.AppointmentRecurrenceRuleID=
.AppointmentRecurrenceState = 7
'.AppointmentReminderID=
.AppointmentResourceID =
Nothing
.AppointmentStartDate = dtAppointmentStart
.AppointmentSubject = strAppointmentSubject
.AppointmentTypeID = 1
End
With
'Update database...
AppointmentSet.Add(Appointment)
AppointmentManager.oDal.UpdateAppointment(AppointmentSet)
RadScheduler1.Rebind()
End
Sub
Protected
Function
GetAvailableUsers(
ByVal
container
As
Control)
As
IEnumerable
Dim
appointment
As
Appointment = (
DirectCast
(container, SchedulerFormContainer)).Appointment
Dim
availableUsers
As
New
List(Of Resource)(RadScheduler1.Resources.GetResourcesByType(
"User"
))
For
Each
appointmentInRange
As
Appointment
In
RadScheduler1.Appointments.GetAppointmentsInRange(appointment.Start, appointment.[
End
])
If
appointmentInRange
Is
appointment
Then
Continue
For
End
If
For
Each
occupiedUser
As
Resource
In
appointmentInRange.Resources.GetResourcesByType(
"User"
)
availableUsers.Remove(occupiedUser)
Next
Next
Return
availableUsers
End
Function
Private
Sub
RadScheduler1_FormCreating(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.SchedulerFormCreatingEventArgs)
Handles
RadScheduler1.FormCreating
If
e.Mode = SchedulerFormMode.Insert
OrElse
e.Mode = SchedulerFormMode.AdvancedInsert
Then
e.Appointment.Resources.Add(RadScheduler1.Resources.GetResourceByType(
"AppointmentTypes"
))
End
If
End
Sub
Private
Sub
RadScheduler1_NavigationComplete1(
ByVal
sender
As
Object
,
ByVal
e
As
Telerik.Web.UI.SchedulerNavigationCompleteEventArgs)
Handles
RadScheduler1.NavigationComplete
End
Sub
End
Class