Tag Archives: Client side API

Enhancements in WebScheduler 2 SP1

Striving to deliver the world’s best WebScheduler product, we continue to enhance and add more new features based on your feedback with the objectives to provide more advanced scheduling functionality — making your web development faster and easier than ever. In this post, I will share some new features and enhancements that we’ve made in the latest service pack. These new enhancements and features are included  in Intersoft WebUI Studio 2009 R1 SP1 or the latest build of WebScheduler released this month.

New Client Side Events

  1. OnCalendarCellClicked
    This client side event will be invoked when a calendar date is clicked.

New Client Side API

  1. SetCallOutWidth(width)
    This method is used to set the width of WebScheduler’s callout. Please note that the “width” parameter should be integer.
  2. SetCallOutHeight(height)
    This method is used to set the height of Webscheduler’s callout. Please note that the “height” parameter should be integer.

New Properties

  1. UseAgendaDetailsCollection
    This property indicates whether WebScheduler should use the AgendaDetailsCollection property instead of the default/built-in details. For an instance, we can hide the default details completely by simply setting the UseAgendaDetailsCollection property to true and leave the AgendaDetailsCollection empty. This property exist in ViewSettings >> AgendaView. To learn more, please head to Customize Agenda View in WebScheduler.
  2. DisplayViewOnMyCalendarLink
    This property indicates whether “View on my calendar” button should appear or not in Agenda view. This property exist in ViewSettings >> AgendaView. To learn more, please refer to Customize Agenda View in WebScheduler.
  3. DateHeaderMode
    This property determines which date header mode that should be used in Timeline view. When displayed, this property introduces 5 options. Since WebScheduler build 220, there are 2 new options (DayNameAndDateNumber and ShortestDayNameAndDateNumber) added to DateHeaderMode. This property can be found  in ViewSettings >> TimelineView. To learn more, please refer to Customize date header in WebScheduler Timeline View.

That’s all for now — hopefully you find these new features and enhancements useful for your scheduling web application development. As usual, please feel free to post your questions, thoughts or feedback about WebScheduler in our forum.

Best Regards,
Budianto Muliawan

New Properties, Events, and Client-side API added in WebTextEditor

As published previously, we have released WebUI Studio 2009 R1 SP1 which includes many enhancements, especially to WebTextEditor and WebScheduler 2. Specifically in WebTextEditor, some new properties, client-side events, and client-side API are included.

New Properties

  • ToolBarSettings >> SerializationMode, determines the serialization mode used for toolbars definition. When set to Client, the page output will be much reduced. Read the complete explanation here
  • ToolBarSettings >> SynchronizeCommandLatency, determines the latency used to synchronize the toolbar commands with the format of selected content. When users navigate through contents that has different format, the toolbar commands will be synchronized to the selected content. This property determines the latency used before the synchronization action is invoked.
  • PreventScriptInjection, determines whether WebTextEditor should detect whether the content contains script injection. If this property is enabled, all script tags and its content will be removed when the content is saved.
  • ShowCallOutOnMediaInsert, determines whether callout should be automatically displayed when a media is inserted as editor content.
  • ShowMediaActionOnMediaSelect, determines whether media action should be displayed when a media is selected.

New client-side events

  • OnKeyDown, will be invoked when there is a key down input in editor.
    function WebTextEditor1_OnKeyDown(controlId, keyCode)
    {
         var rte = ISGetObject(controlId);
         //implement your codes here
    }
  • OnMediaSelected, will be invoked when a media is selected. Users can input media to editor content from Media Gallery. When the media is selected, this event will be invoked when specified.
    function WebTextEditor1_OnMediaSelected(contolId, element)
    {
         var rte = ISGetObject(controlId);
         //implement your codes here
    }
  • OnBeforeResize and OnAfterResize, will be invoked before and after editor is resized using the footer resize element.
    function WebTextEditor1_OnBeforeResize(controlId)
    {
         var rte = ISGetObject(controlId);
         //implement your codes here
    } 
    
    function WebTextEditor1_OnAfterResize(controlId)
    {
         var rte = ISGetObject(controlId);
         //implement your codes here
    }
  • Integrated file-uploader client side events, which are OnBeforeUpload, OnUploaderValidate, OnUploading, OnAfterUpload, OnCancelUpload, OnUploaderInitialize, OnUploaderError, OnUploaderFileAdded, and OnUploaderFileRemoved. When WebFileUploader is integrated to WebTextEditor and users perform specific action related to it, the above events will be invoked when specified.

New client-side APIs

  • SetValueToCurrentPosition, used to set value on the last active cursor position. When users navigate through the content and lost focus from editor, a specific value can be added to editor. When this API is used, the value will be added to the last active cursor position before users lost focus from editor.
    var rte = ISGetObject(“WebTextEditor1”);
    rte.SetValueToCurrentPosition(“new value”);
  • SetFocus, used to set focus to WebTextEditor. When watermark is enabled, this function will remove the watermark and set focus to editor content.
    var rte = ISGetObject(“WebTextEditor1”);
    rte.SetFocus();
  • ToggleToolBar, used to toggle or un-toggle a specific toolbar.
    var rte = ISGetObject(“WebTextEditor1”);
    var toolbar = rte.ClientToolBar[1];
    rte.ToggleToolBar(toolbar, false);
  • ResetEditorState, used to reset the editor state to default state. This API will set the content to empty, close the task pane, reset the state of commands in all toolbars, reset the undo and redo collections, and reset the integrated uploader status.
    var rte = ISGetObject(“WebTextEditor1”);
    rte.ResetEditorState();
  • HideCallOut, used to hide the callout. You can specify whether the hide action will be performed using animation.
    var rte = ISGetObject(“WebTextEditor1”);
    rte.HideCallOut(false); //hide callout without animation
  • RegisterIFrameBehavior and UnregisterIFrameBehavior, used to register and unregister the behavior attached to IFrame element of WebTextEditor. When WebTextEditor element is removed and placed in various elements in the page, the behavior attached to the IFrame element will be lost. These new APIs can be used to re-register or unregister the behavior when needed.

If you have installed WebUI Studio 2009 R1 SP1, you can read the complete version history of the enhancements and fixes in Intersoft WebUI Studio 2009 R1 SP1 Release Notes.pdf.

Latest updates in WebScheduler.NET 2.0.1000.214

Hi all, we just released new hotfixes for Intersoft products. WebScheduler.NET 2.0 Build 214 is one of the included hotfixes. Here are the details.

New client side APIs

In Month view, the dates displayed are not only the active month’s dates. The dates of previous and next month may also be displayed. In certain scenarios, you might need to retrieve the start date and end date of the week or month of a specific date. For example: if the selected date is Wednesday, 28th of January 2008, how can i programmatically retrieve the start or end date of the week ? Well, you can always calculate it, but to make it easier, we have provided some new client side APIs. They are:

  • GetStartDateOfWeek(date): get the start date of week of a specific date. If you set 28th of January 2009 as the date parameter, the result of this API is Sunday, 25th of January 2009.
  • GetEndDateOfWeek(date): get the end date of week of a specific date. If you set 28th of January 2009 as the date parameter, the result of this API is Saturday, 31st of January 2009.
  • GetStartDateOfMonth(date): get the start date of month of a specific date. If you set 28th of January 2009 as the date parameter, the result of this API is Sunday, 28th of December 2008.
  • GetEndDateOfMonth(date): get the end date of month of a specific date. If you set 28th of January 2009 as the date parameter, the result of this API is Saturday, 7th of February 2009.

The above examples uses Sunday as the first day of week (can be specified in CalendarSettings >> FirstDayOfWeek property). If you specify other value for the first day of week, the result will be adjusted to the configuration. The date parameter should be datetime-typed input and the result will datetime-typed value as well. 

New client side events
Per your request, we have added the following client side events.
  • OnBeforeViewSwitched: will be invoked before the view is switched.
  • OnAfterViewSwitched: will be invoked after the view is switched. For example: both events will be invoked when user switched from Month view to Week view. Three parameters will be passed to the event: controlId, previousViewMode, and nextViewMode. 
  • OnBackNavigation: will be invoked when back action is performed in either scheduler or calendar.
  • OnForwardNavigation: will be invoked when forward action is performed in either scheduler or calendar.There are back and forward arrows in both scheduler and calendar. These events will be invoked when either one of the arrows is pressed. Five parameters will be passed to the event: controlId, viewMode, previousDate, nextDate, and isCalendarNavigation.
You can download the sample here.

 

We also added new client side properties for a specific event which is explained in this blog, and also enhancement in agenda details which is explained here.

 

You can view other fixes in WebScheduler’s version history in support site.

 

We received plenty of feedback lately. Some of them are already implemented as I have explained above. If you have any other feedback, feel free to submit it to feedback@intersoftpt.com. Good day, everybody !

Create NavBar and NavBarItem via client side

WebDesktop 2.5 enhances its feature to allow user to create NavBar and NavBarItem from client side.

Here is the simple steps you need to follow:

– First of all, you simply need to simply drag WebNavPane control and HTML button from Toolbox to the WebForm.

WebNavPane control

– Then, switch to Source code to create a javascript function called Create_ClientSide(). The code will look like following:

<script type=”text/javascript”>

        function Create_ClientSide()

        {

            var nav = ISGetObject(“WebNavPane1”);

           

            var navbar = new WebNavBar();

            navbar.Text = “test”;

            navbar.Name = “test”;

            nav.AddBar(navbar);

           

            var item = new WebNavBarItem();

            item.Text = “1”;

            item.Name = “1”;

            navbar.AddBarItem(item);

           

            navbar.Click();

        }
    </script>


– Invoke function Create_ClientSide() using onclick event in HTML button. 

<input type=”button” onclick=”Create_ClientSide()” value=”Click to create NavBar from client side” />

– Compile and run the sample.  When you click the button, it will automatically add the NavBar along with its NavBarItem.

Run in browser

The sample is available to be downloaded in here. For more information, you can also access our knowledge base from the following link:
http://support.intersoftpt.com/KBArticle.aspx?aid=255

Should you have any comment please feel free to give one 🙂

Cheers.