Skip Navigation LinksHome / Community & Support / Code Library / ASP.NET and ASP.NET AJAX > Scheduler > Copy/Paste Appointments using keyboard shortcut

Not answered Copy/Paste Appointments using keyboard shortcut

Feed from this thread
  • Daryl Intermediate avatar

    Posted on Oct 18, 2010 (permalink)

    Requirements

    RadControls version 2010.2.929.40

    .NET version 4.0

    Visual Studio version 2010 Professional

    programming language C#

    browser support

    all browsers supported by RadControls


    PROJECT DESCRIPTION
    This will allow you to copy and paste appointments using keyboard shortcuts (ctrl+c & ctrl+v).

    Make sure the body tag has onKeyDown() event.
    <body onkeydown="onKeyDown()">

    Client side code for control+c & control+v
        <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
            <script type="text/javascript">
                var selectedApt;
                var activeTimeslot;
                var copiedApt;
     
    function OnClientAppointmentClick(sender, eventArgs) {
                    if (eventArgs.get_appointment()) {
                        selectedApt = eventArgs.get_appointment();
                    }
                }
     
                function OnClientTimeSlotClick(sender, eventArgs) {
                    if (eventArgs.get_targetSlot()) {
                        activeTimeslot = eventArgs.get_targetSlot();
                    }
                }
     
                function onKeyDown() {
                    // current pressed key
                    var pressedKey = String.fromCharCode(event.keyCode).toLowerCase();
     
                    if (event.ctrlKey && pressedKey == "c")
                    {
                        copiedApt = selectedApt;
                    }
     
                    if ((event.ctrlKey && pressedKey == "v") && copiedApt && activeTimeslot) {
                        var newAppointment = new Telerik.Web.UI.SchedulerAppointment();
                        var startTime = activeTimeslot.get_startTime();
                        var endTime = new Date(activeTimeslot.get_startTime());
                        endTime.setTime(endTime.getTime() + copiedApt.get_duration());
                         
     
                        newAppointment.set_start(startTime);
                        newAppointment.set_end(endTime);
                        newAppointment.set_subject(copiedApt.get_subject());
     
                        var scheduler = $find('<%= RadScheduler1.ClientID %>');
                        scheduler.insertAppointment(newAppointment);
     
                        activeTimeslot = null;
                    }
                }
            </script>
        </telerik:RadScriptBlock>


    RadScheduler event bindings
    <telerik:RadScheduler ID="RadScheduler1" runat="server" DataEndField="End" OnClientAppointmentClick="OnClientAppointmentClick" OnClientTimeSlotClick="OnClientTimeSlotClick">

    Daryl
    Software Developer

    Reply

Back to Top

Skip Navigation LinksHome / Community & Support / Code Library / ASP.NET and ASP.NET AJAX > Scheduler > Copy/Paste Appointments using keyboard shortcut