Hi I’ve got the problem with the radcalendar please see the attached as that shows you what i'm looking to produce.
This is the aspx;
<%@ Page Title="" Language="C#" MasterPageFile="~/App_Templates/Local/ConfigLayoutContainer.master" AutoEventWireup="true" CodeBehind="OnCall.aspx.cs" Inherits="ConfigurationModule.rota.OnCall" %><%@ Register TagPrefix="user" Namespace="TESTones.Web.UI.Telerik" Assembly="TESTones.Web.UI" %><asp:Content ID="Header" ContentPlaceHolderID="InstanceHeader" runat="server"> <title>TESTones | Configuration Module | Manage Overtime</title> <link href="/styles/global.css" rel="stylesheet" type="text/css" /> <style type="text/css"> .rcWeekend { background-color: #2291a1 !important; } .rcDisabled { background-color: #fb1f33 !important; border: 1px solid #fb1f33 !important; background-repeat: no-repeat; background-position: 5px 5px !important; } </style></asp:Content><asp:Content ID="Page" ContentPlaceHolderID="InstanceContent" runat="server"><telerik:RadWindowManager ID="RadWindowManager1" runat="server" Modal="true" Width="800" Height="600" /><telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" > <AjaxSettings> <telerik:AjaxSetting AjaxControlID="btnSave"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="JustOnePanel" LoadingPanelID="LoadPanel1"></telerik:AjaxUpdatedControl> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManager><telerik:RadAjaxLoadingPanel ID="LoadPanel1" runat="server"></telerik:RadAjaxLoadingPanel><telerik:RadToolBar ID="RadToolBar1" runat="server" CssClass="PageMenu"> <Items> <telerik:RadToolBarButton Value="Name" runat="server"> <ItemTemplate> <h1> <asp:Label ID="Label4" runat="server" Text="Manage On Call" /></h1> </ItemTemplate> </telerik:RadToolBarButton> </Items></telerik:RadToolBar> <div class="Form"> <div class="ContentLeft" style="width: 200px;"> <p> <asp:Label ID="lblEngineer" CssClass="formLabel" Text="Engineer" runat="server" /> <telerik:RadComboBox ID="ddlEngineer" runat="server" AppendDataBoundItems="true" AutoPostBack="True" Filter="Contains" EmptyMessage="Please Select..." CssClass="SearchFormDropdown" EnableLoadOnDemand="True" OnSelectedIndexChanged="ddlEngineer_SelectedIndexChanged"/> </p> </div> <div> <telerik:RadCalendar Width="350px" Height="200px" ID="RadCalendar1" runat="server" EnableMultiSelect="True" AutoPostBack="True" CultureInfo="en-GB" OnSelectionChanged="RadCalendar1_SelectionChanged"> <WeekendDayStyle CssClass="rcWeekend" /> <CalendarTableStyle CssClass="rcMainTable" /> <OtherMonthDayStyle CssClass="DayStyle" /> <OutOfRangeDayStyle CssClass="rcOutOfRange" /> <DisabledDayStyle CssClass="rcDisabled" /> <SelectedDayStyle CssClass="rcSelected" /> <DayOverStyle CssClass="rcHover" /> <FastNavigationStyle CssClass="RadCalendarMonthView RadCalendarMonthView_WebBlue" /> <ViewSelectorStyle CssClass="rcViewSel" /> <DayStyle CssClass="DayStyle" /> </telerik:RadCalendar> </div> <telerik:RadAjaxPanel ID="JustOnePanel" runat="server"> <div class="ContentRight"> <p> <div style="margin-top: 34px; margin-left: 15px;"> <telerik:RadButton runat="server" ID="btnSave" Text="Save On Call Selection" OnClick="btnSaveChanges_Click" > <Icon PrimaryIconLeft="5px" PrimaryIconTop="2px" PrimaryIconUrl="../images/icons/tick.png" /> </telerik:RadButton> <asp:Label ID="lblSaved" CssClass="formLabel" Text="Saved" ForeColor="green" runat="server" /> </div> </p> </div> </telerik:RadAjaxPanel> </div></asp:Content>
and this is the cs;
using System;using System.Collections.Generic;using System.Linq;using System.Web.UI;using Ninject;using Test.Core.Sevices;using Telerik.Web.UI;using Telerik.Web.UI.Calendar;namespace ConfigurationModule.rota{ public partial class OnCall : Page { #region Dependency declarations [Inject] public IResourceService svcResourceService { get; set; } [Inject] public ICheapSingleUserStorageService svcUser { get; set; } #endregion protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { lblSaved.Visible = false; BindEngineersDropDown(); SetUpCalendar(); } } protected void BindEngineersDropDown() { ddlEngineer.DataSource = svcResourceService.ListByContracts(svcUser.Get().ContractCollection().ToList()); ddlEngineer.DataBind(); } protected void ddlEngineer_SelectedIndexChanged(object sender, EventArgs e) { lblSaved.Visible = false; SetUpCalendar(); } protected void RadCalendar1_SelectionChanged(object sender, SelectedDatesEventArgs e) { lblSaved.Visible = false; } protected void SetUpCalendar() { RadCalendar1.RangeMinDate = DateTime.Today; RadCalendar1.SpecialDays.Clear(); RadCalendar1.SelectedDates.Clear(); var onCallList = svcResourceService.GetOnCallList(ddlEngineer.SelectedValue).ToList(); foreach (var rotaOverride in onCallList) { var calendarDay = new RadCalendarDay { Date = rotaOverride.Date }; if (rotaOverride.TypeId == 2) { calendarDay.ItemStyle.CssClass = "rcSelected2"; calendarDay.IsSelectable = false; RadCalendar1.SpecialDays.Add(calendarDay); } else { RadCalendar1.SelectedDates.Add(new RadDate(rotaOverride.Date)); } } } protected void btnSaveChanges_Click(object sender, EventArgs e) { List<DateTime> dates = new List<DateTime>(); foreach (RadDate date in RadCalendar1.SelectedDates) { var d = date.Date; dates.Add(d); } svcResourceService.UpdateOnCallList(dates, ddlEngineer.SelectedValue.ToString()); lblSaved.Visible = true; } }}