Telerik Forums
UI for ASP.NET AJAX Forum
3 answers
95 views
Why does the Rad Calendar ignore my !important fore-color?

It seems that some JavaScript code runs and overrides the style? Very frustrating!

I have the following code:

 string cssOutOfRange = "calOutOfRange";
// clear the default cell content (anchor tag) as we need to disable the hover effect for this cell
           e.Cell.Text = string.Empty;
           e.Cell.CssClass = cssOutOfRange; //set new CssClass for the disabled calendar day cells (e.g. look like other month days here)
 
           // render a span element with the processed calendar day number instead of the removed anchor -- necessary for the calendar skinning mechanism
           Label label = new Label();
           label.Text = e.Day.Date.Day.ToString();
           e.Cell.Controls.Add(label);
 
           // disable the selection for the specific day
           RadCalendarDay calendarDay = new RadCalendarDay();
           calendarDay.Date = e.Day.Date;
           calendarDay.IsSelectable = false;
           calendarDay.ItemStyle.CssClass = cssOutOfRange;
           rdpDate.Calendar.SpecialDays.Add(calendarDay);

.calOutOfRange, span.calOutOfRange {
    color: #FF0000 !important;   
}

Princy
Top achievements
Rank 2
 answered on 23 Jul 2013
8 answers
438 views
Hi

ItemStyle property is ReadOnly on SpecialDay!

How can I set it's property?

My Code ...

loCurrentSpecialDays[lnCount] = new Telerik.Web.UI.RadCalendarDay()  
                    {  
                        Date = loAppointment.APPDStart.AddDays(lnCount),  
                        IsDisabled = true,  
                        IsSelectable = false,  
                        ToolTip = ((FLMVilla.App_Code.Enums.ScheduleTypes)loAppointment.APPNScheduleType).ToString().Replace("_", " ")  
                    }; 

I would like to add an extra line to set the ItemStyle like "ItemStyle = new System.Web.UI.WebControls.TableItemStyle()". But compiler says Readonly!

Kind Regards

David
Princy
Top achievements
Rank 2
 answered on 23 Jul 2013
3 answers
290 views
Hello

I can't attach webservice as a source of data to RadSearchBox

I have webservice:

[System.Web.Services.WebMethod(Description = "dane dla searchbox")]
 public List<MySearchBoxItemData> GetResults(string context)
 {
     DataTable data = GetData(context);
 
     List<MySearchBoxItemData> result = new List<MySearchBoxItemData>();
 
     for (int i = 0; i < data.Rows.Count; i++)
     {
         MySearchBoxItemData itemData = new MySearchBoxItemData();
         itemData.Text = data.Rows[i]["nazwisko"].ToString();
         itemData.Value = data.Rows[i]["nrewid"].ToString();
 
         result.Add(itemData);
     }
 
     return result;
      
 }
on my server:
http://ip.address/uslugi/apin01.asmx
How I must fill WebserviceSettings ?

<telerik:RadSearchBox ID="RadSearchBox2" runat="server" Height="16px" Width="244px" Filter="StartsWith">
      <WebServiceSettings Path="http://ip.address/uslugi/apin01.asmx" Method="GetResults" />
  </telerik:RadSearchBox>

Can I please for simple example with bindind to webservice data ?

regards,
Dominik
Bozhidar
Telerik team
 answered on 23 Jul 2013
5 answers
229 views
Hi

I got a radnumerictextbox with the arrows to change values. I want to increase and decrease valu by 5 on click and scroll.

Thanks
Saira
Shinu
Top achievements
Rank 2
 answered on 23 Jul 2013
1 answer
228 views
Hi

When I reference the Telerik DLL to an asp.net website, I need to add the tag prefix in each page. Today I installed the product and created a project using the Telerik Menu of Visual studio and found that I dont need to add tag prefix for the pages. Why?

Thanks
Katya
Shinu
Top achievements
Rank 2
 answered on 23 Jul 2013
1 answer
181 views

there are 5 tab in my application, i provide a "Back" and "Next" button to previous/next tab.

i had used requiredfield validator for compulsory field, but i found that there is error that i cannot browse next tab even though i input all required field. the tab had been locked.

I need to set causevalidation to "false" so that user can click next bitton and next tab.

<%@ Page Title="" Language="VB" MasterPageFile="~/LRDB.master" AutoEventWireup="false" CodeFile="HR_employee_details.aspx.vb" Inherits="HR_HR_employee_details" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
        <style type="text/css">
       .table_photo
        {
            width: 100px;
            height: auto;
        }
        .table_header
        {
            width: 150px;
            height: 15px;
            background-color:#E7EEF6;
        }
      .table_content
      {
        /*  width: 527px;*/
          height: 15px;
      }
 
             
            .style6
            {
                width: 150px;
                height: 15px;
                background-color: #E7EEF6;
                font-weight: bold;
            }
 
             
       </style>
       <script type="text/javascript">
 
           function UpdateValidationGroup(sender, args) {
               args.set_cancel(!Page_IsValid);
           
 
     
           function display_name() {
               if (document.getElementById('<%=tb_middle_name.ClientID%>').value != "") {
                   document.getElementById('<%=tb_display_name.ClientID%>').value = document.getElementById('<%=tb_last_name.ClientID%>').value + ", " + document.getElementById('<%=tb_middle_name.ClientID%>').value + " " + document.getElementById('<%=tb_first_name.ClientID%>').value;
                   document.getElementById('<%=tb_username.ClientID%>').value = document.getElementById('<%=tb_first_name.ClientID%>').value.toLowerCase() + document.getElementById('<%=tb_last_name.ClientID%>').value.toLowerCase();
               }
               else {
                   document.getElementById('<%=tb_display_name.ClientID%>').value = document.getElementById('<%=tb_last_name.ClientID%>').value + ", " + document.getElementById('<%=tb_first_name.ClientID%>').value;
                   document.getElementById('<%=tb_username.ClientID%>').value = document.getElementById('<%=tb_first_name.ClientID%>').value.replace(/[^A-Za-z0-9]/g, "").toLowerCase() + document.getElementById('<%=tb_last_name.ClientID%>').value.replace(/[^A-Za-z0-9]/g, "").toLowerCase();
               }
           }
 
           //    function ValidateChkList(source, arguments) {
           //        arguments.IsValid = IsCheckBoxChecked() ? true : false;
           //    }
           //   
           //    function IsCheckBoxChecked() {
           //        var isChecked = false;
           //        var list = document.getElementById('<%=CheckBoxList_RoleType.ClientID%>');
           //        if (list != null) {
           //            for (var i = 0; i < list.rows.length; i++) {
           //                for (var j = 0; j < list.rows[i].cells.length; j++) {
           //                    var listControl = list.rows[i].cells[j].childNodes[0];
           //                    if (listControl.checked) {
           //                        isChecked = true;
           //                    }
           //                }
 
           //            }
           //        }
           //        return isChecked;
           //    }
 
           function verifyCheckboxList(source, arguments) {
               var val = document.getElementById("<%=CheckBoxList_RoleType.ClientID%>");
               var col = val.getElementsByTagName("*");
               if (col != null) {
                   for (i = 0; i < col.length; i++) {
                       if (col.item(i).tagName == "INPUT") {
                           if (col.item(i).checked) {
                               arguments.IsValid = true; return;
                           }
                       }
                   }
               }
               arguments.IsValid = false;
           }
           function verifyCheckboxList2(source, arguments) {
               var val = document.getElementById("<%=CheckBoxList_Language.ClientID%>");
               var col = val.getElementsByTagName("*");
               if (col != null) {
                   for (i = 0; i < col.length; i++) {
                       if (col.item(i).tagName == "INPUT") {
                           if (col.item(i).checked) {
                               arguments.IsValid = true; return;
                           }
                       }
                   }
               }
               arguments.IsValid = false;
           }
    
       </script>
 
</asp:Content>
 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
 
    <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
 
<script type="text/javascript">
    var date = new Date();
    function RadDatePicker_SetMaxDateToCurrentDate(sender, args) {
        var arr = new Array(date.getFullYear(), date.getMonth() + 1, date.getDate());
        sender.set_rangeMaxDate(arr);
    }
 
    // on upload button click temporarily disables ajax to perform
    // upload actions
    function conditionalPostback(sender, args) {
        if (args.get_eventTarget() == "<%= RadButton1.UniqueID %>") {
            args.set_enableAjax(false);
        }
    }
 
 
 </script>
 </telerik:RadScriptBlock
 
    <telerik:RadToolBar ID="rtbMenu" runat="server" Width="100%" Skin="Windows7">
        <Items>
<%--            <telerik:RadToolBarButton Value="New" Text="New" Width="80px"  CausesValidation="false" />
            <telerik:RadToolBarButton IsSeparator="true" />
--%>            <telerik:RadToolBarButton Value="Search" Text="Search" Width="80px"  CausesValidation="false" Visible="false"/>
            <telerik:RadToolBarButton IsSeparator="true" Visible="false" />
            <telerik:RadToolBarButton Value="Delete" Text="Delete" Width="80px" Enabled="true"   CausesValidation="false"/>
            <telerik:RadToolBarButton IsSeparator="true" />
            <telerik:RadToolBarButton Value="Edit" Text="Edit" Width="80px" Enabled="true"   CausesValidation="false"/>
            <telerik:RadToolBarButton IsSeparator="true" />
            <telerik:RadToolBarButton Value="Save" Text="Save" Width="80px" Enabled="true"  />
            <telerik:RadToolBarButton IsSeparator="true" />
            <telerik:RadToolBarButton Value="Cancel" Text="Cancel" Width="80px" Visible="false" CausesValidation="false"  />
            <telerik:RadToolBarButton Value="Back" Text="Back" Width="80px" Visible="true" CausesValidation="false"/>
            <telerik:RadToolBarButton IsSeparator="true" />
            <telerik:RadToolBarButton Value="SIMPER" Text="SIMPER" Width="80px" Enabled="false" CausesValidation="false"  />
            <telerik:RadToolBarButton IsSeparator="true" />
            <telerik:RadToolBarButton Value="BackSeparator" IsSeparator="true" Visible="false" />
        </Items>
    </telerik:RadToolBar>
 
       <div style="margin-left:5px;">   
    <%--<telerik:RadAjaxPanel ID="Panel_content" runat="server" Enabled="false" clientevents-onrequeststart="conditionalPostback">--%>
                     
        <telerik:RadTabStrip ID="RadTabStrip1" runat="server"
            MultiPageID="RadMultiPage1" AutoPostBack="True"
             ClickSelectedTab="True" SelectedIndex="0">
            <Tabs>
                <telerik:RadTab runat="server" Text="Personal Info." PageViewID="Tab_personal" Selected="True"
                CausesValidation="true" OnClientTabSelecting="UpdateValidationGroup" ValidationGroup="ValidatePersonal">
                </telerik:RadTab>
                <telerik:RadTab runat="server" Text="Job Particulars" PageViewID="Tab_job"
                CausesValidation="true" OnClientTabSelecting="UpdateValidationGroup" ValidationGroup="ValidateJob">               
                </telerik:RadTab>
                <telerik:RadTab runat="server" Text="Other Info." PageViewID="Tab_Others"
                CausesValidation="true" OnClientTabSelecting="UpdateValidationGroup" ValidationGroup="ValidateOthers">
                </telerik:RadTab>
                <telerik:RadTab runat="server" Text="License" PageViewID="Tab_license"
                CausesValidation="true" OnClientTabSelecting="UpdateValidationGroup" ValidationGroup="ValidateLicense">
                </telerik:RadTab>
                <telerik:RadTab runat="server" Text="Training Course" PageViewID="Tab_training"
                CausesValidation="true" OnClientTabSelecting="UpdateValidationGroup" ValidationGroup="ValidateTraining">
                </telerik:RadTab>
            </Tabs>
        </telerik:RadTabStrip>
        <telerik:RadMultiPage ID="RadMultiPage1" runat="server" SelectedIndex="0">
        <telerik:RadPageView ID="Tab_personal" runat="server">
 
        <telerik:RadAjaxPanel ID="Panel_personal" runat="server" Enabled="false" clientevents-onrequeststart="conditionalPostback">
 
              <table cellpadding="1" width="1000" style="vertical-align:top">
                                            <tr>
                                                <td align="left" valign="top" class="style6" >
                                                    Last Name</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_last_name" runat="server" Width="300px" Enabled="true"
                                                        onkeyup="javascript:display_name();" TabIndex="1"></asp:TextBox>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server"
                                                        ErrorMessage="Please enter Last Name." ControlToValidate="tb_last_name"
                                                        style="color: #FF0000"></asp:RequiredFieldValidator>
                                                     
                                                </td>                                             
                                                <td align="left" valign="top" rowspan="9" style="width:440px;">
                                         
<div class="qsf-demo-canvas" id="qsfexWrapper">
 
 <telerik:RadBinaryImage runat="server" ID="RadBinaryImage1" ImageUrl="../images/blank_photo.jpg"
               Width="100px" ResizeMode="Fit" AlternateText="No picture available" style="border-style:dotted;"
               CssClass="preview" AutoAdjustImageControlSize="false"></telerik:RadBinaryImage>
 
          <div class="qsf-fb">              
           
                         <label>Upload a photo of employee:</label>
                         <telerik:RadAsyncUpload runat="server" ID="RadAsyncUpload1" InitialFileInputsCount="1"
                              MaxFileInputsCount="1" AllowedFileExtensions=".jpg,.jpeg,.png,.gif" MaxFileSize="10240000" PostbackTriggers="RadButton1">
                              </telerik:RadAsyncUpload>
 
             
               <p class="buttons">
                    <asp:Button runat="server" ID="RadButton1" Text="Submit your picture"
                         OnClientClick="updatePictureAndInfo(); return false;" />
                         <br />
                         <asp:Label ID="Lb_upload" runat="server" Visible="false"></asp:Label>
               </p>
          </div>
 
          
 
    </div>
 
    <telerik:RadScriptBlock ID="RadScriptBlock2" runat="server">
          <script type="text/javascript">
          //<![CDATA[
              function updatePictureAndInfo() {
                  var upload = $find("<%=RadAsyncUpload1.ClientID %>");
                  if (upload.getUploadedFiles().length > 0) {
                      __doPostBack('RadButton1', 'RadButton1Args');
                  }
              }
          //]]>
          </script>
     </telerik:RadScriptBlock>   
 
  
                                                 </td>
                                                <td align="left" valign="top" rowspan="9">
 
                                                         
 
 
 
 
 
                                                </td>
                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Middle Name</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_middle_name" TabIndex="2" runat="server" Width="300px" Enabled="true" onkeyup="javascript:display_name();"></asp:TextBox>
                                                </td>                                           
                                                </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    First Name</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_first_name" runat="server" Width="300px" Enabled="true"
                                                        onkeyup="javascript:display_name();" TabIndex="3"></asp:TextBox>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" ErrorMessage="Please enter First Name." ControlToValidate="tb_first_name" style="color: #FF0000"></asp:RequiredFieldValidator>  
                                                </td>
                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Display Name</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_display_name" runat="server" Width="300px" Enabled="true"
                                                        TabIndex="4"></asp:TextBox>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="Please enter Display Name." ControlToValidate="tb_display_name" style="color: #FF0000"></asp:RequiredFieldValidator>  
                                                </td>
                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Username</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_username" runat="server" Width="300px" Enabled="true"
                                                        AutoPostBack="true" OnTextChanged="tb_username_OnTextChanged" TabIndex="5"></asp:TextBox>                                                   
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator12" runat="server" ErrorMessage="Please enter Username." ControlToValidate="tb_username" style="color: #FF0000"></asp:RequiredFieldValidator>  
                                                     <asp:Label ID="lb_message" runat="server" Visible="False"></asp:Label>
                                                </td>
                                            </tr>                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Gender</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:RadioButtonList ID="rbl_gender" runat="server"
                                                        RepeatDirection="Horizontal">
                                                    <asp:ListItem Text="Male" Value="M"></asp:ListItem>
                                                    <asp:ListItem Text="Female" Value="F"></asp:ListItem>
                                                    </asp:RadioButtonList>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ErrorMessage="Please select a gender." ControlToValidate="rbl_gender" style="color: #FF0000"></asp:RequiredFieldValidator>  
                                                    <br />
                                                </td>
                                            </tr>
                                                <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Date of Birth</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <telerik:RadDatePicker ID="RadDatePicker_birthday" Runat="server" Enabled="true" MinDate="1900/1/1">
                                                    <DateInput ID="tb_birthday" runat="server" DateFormat="dd-MMM-yyyy" DisplayDateFormat="dd-MMM-yyyy" LabelWidth="" ></DateInput>                                                   
 
        <Calendar ID="Calendar2" runat="server"
            <SpecialDays
                <telerik:RadCalendarDay Repeatable="Today" Date="" ItemStyle-CssClass="rcToday" /> 
            </SpecialDays
            <ClientEvents OnLoad="RadDatePicker_SetMaxDateToCurrentDate" /> 
        </Calendar>
 
                                                    </telerik:RadDatePicker>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="Please enter birthday." ControlToValidate="RadDatePicker_birthday" style="color: #FF0000"></asp:RequiredFieldValidator>  
 
                                                </td>                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Blood Type</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:RadioButtonList ID="rbl_blood_type" runat="server" RepeatColumns="4"
                                                        RepeatDirection="Horizontal">
                                                    <asp:ListItem Text="O+" Value="O+"></asp:ListItem>
                                                    <asp:ListItem Text="A+" Value="A+"></asp:ListItem>
                                                    <asp:ListItem Text="B+" Value="B+"></asp:ListItem>
                                                    <asp:ListItem Text="AB+" Value="AB+"></asp:ListItem>
                                                    <asp:ListItem Text="O-" Value="O-"></asp:ListItem>
                                                    <asp:ListItem Text="A-" Value="A-"></asp:ListItem>
                                                    <asp:ListItem Text="B-" Value="B-"></asp:ListItem>
                                                    <asp:ListItem Text="AB-" Value="AB-"></asp:ListItem>
                                                    <asp:ListItem Text="Unknown" Value="Unknown"></asp:ListItem>
                                                    </asp:RadioButtonList>
                                                   <asp:RequiredFieldValidator ID="RequiredFieldValidator13" runat="server" ErrorMessage="Please select a blood type." ControlToValidate="rbl_blood_type" style="color: #FF0000"></asp:RequiredFieldValidator>  
 
                                                </td>                                           
                                                </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Email</td>
                                                <td align="left" valign="top" class="table_content">
                                                <asp:TextBox ID="tb_email" runat="server" Width="300px" Enabled="true"></asp:TextBox>                                           
                                                <asp:RegularExpressionValidator ID="RequiredFieldValidator9" runat="server" Display="Dynamic"
                                                    ErrorMessage="Please, enter valid e-mail address." ValidationExpression="^[\w\.\-]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]{1,})*(\.[a-zA-Z]{2,3}){1,2}$"
                                                    ControlToValidate="tb_email" style="color: #FF0000"></asp:RegularExpressionValidator>   
                                                </td></tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Phone</td>
                                                <td align="left" valign="top" >
                                                <asp:TextBox ID="tb_phone" runat="server" Width="300px" Enabled="true"></asp:TextBox>
                                                <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" Display="Dynamic" ErrorMessage="Please, enter valid phone number." ValidationExpression="\d+" ControlToValidate="tb_phone" style="color: #FF0000"></asp:RegularExpressionValidator>
                                                
                                                </td>
                                            </tr><tr>
                                                <td align="left" valign="top" class="style6">
                                                    Address</td>
                                                <td align="left" valign="top"  colspan="2">
                                                    <asp:TextBox runat="server" ID="tb_addr" Width="639px" TextMode="MultiLine"
                                                      Enabled="true"></asp:TextBox>
                                                </td>
                                                <td align="left" valign="top">
                                                     </td>
                                            </tr>                                                                                                                                                                                             
    </table>
    </telerik:RadAjaxPanel>
             
            <asp:Button ID="btnStep2" runat="server" Text="Next" OnClick="btnStep2_Click" CausesValidation="false" />
        </telerik:RadPageView>       
         
         
             
        <telerik:RadPageView ID="Tab_job" runat="server">
 
                <telerik:RadAjaxPanel ID="Panel_job" runat="server" Enabled="false" clientevents-onrequeststart="conditionalPostback">
 
        <table cellpadding="1" width="100%" style="vertical-align:top">
                                                    <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Location</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_location" runat="server" Width="300px" Enabled="true" Visible="false"></asp:TextBox>
                                                    <telerik:RadDropDownList ID="RadDropDownList_location" runat="server"
                                                        DataSourceID="LDS_Location" DataTextField="Location" CausesValidation="true"
                                                        DataValueField="Location_ID" Enabled="true" DefaultMessage="Please Select...">
                                                    </telerik:RadDropDownList>
                                                   <asp:RequiredFieldValidator ID="RequiredFieldValidator11" runat="server" ControlToValidate="RadDropDownList_location"
                                                    InitialValue="0" ErrorMessage="Please select a Location." style="color: #FF0000"></asp:RequiredFieldValidator>
                                                    <asp:LinqDataSource ID="LDS_Location" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" EntityTypeName="" TableName="db_Locations">
                                                    </asp:LinqDataSource>
                                                </td>                                           
                                                </tr>
                                                <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Department</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_dept" runat="server" Width="300px" Enabled="true" Visible="false"></asp:TextBox>
                                                    <telerik:RadDropDownList ID="RadDropDownList_dept" runat="server"  AutoPostBack="true" CausesValidation="true"
                                                        DataSourceID="LDS_Dept" DataTextField="Department" DataValueField="DeptID" Enabled="true" DefaultMessage="Please Select..." OnSelectedIndexChanged="RadDropDownList_dept_OnSelectedIndexChanged">
                                                    </telerik:RadDropDownList>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator10" runat="server" ControlToValidate="RadDropDownList_dept"
                                                     InitialValue="0" ErrorMessage="Please select a Department." style="color: #FF0000"></asp:RequiredFieldValidator>
                                                    <asp:LinqDataSource ID="LDS_Dept" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" EntityTypeName=""
                                                        TableName="db_Departments">
                                                    </asp:LinqDataSource>
                                                </td>                                            </tr>
                                                                                        <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Job Title</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <telerik:RadDropDownList ID="RadDropDownList_job_title" runat="server"
                                                    AutoPostBack="true" CausesValidation="true"
                                                        DataSourceID="LDS_job_title" DataTextField="Job_title" DataValueField="ID" Enabled="true" DefaultMessage="Please Select...">
                                                    </telerik:RadDropDownList>  
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ControlToValidate="RadDropDownList_job_title"
                                                     InitialValue="0" ErrorMessage="Please select a Job Title." style="color: #FF0000"></asp:RequiredFieldValidator>
                                                    <asp:LinqDataSource ID="LDS_job_title" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" EntityTypeName=""
                                                        TableName="db_dictionary_job_titles">
                                                    </asp:LinqDataSource>
                                                                                                    </td>                                            </tr>     
                                        <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Role Type</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_roletype" runat="server" Width="300px" Enabled="true" Visible="false"></asp:TextBox>
                                                     
                                                    <asp:CheckBoxList ID="CheckBoxList_RoleType" runat="server" 
                                                        DataSourceID="LDS_RoleType" DataTextField="RoleName" AutoPostBack="True"
                                                        DataValueField="RoleTypeID" 
                                                         OnDataBound="CheckBoxList_RoleType_DataBound" RepeatColumns="6"
                                                        RepeatDirection="Horizontal" >
                                                    </asp:CheckBoxList>
                                                            <%--<asp:CustomValidator ID="CustomValidator1" ClientValidationFunction="ValidateChkList" runat="server" >Please select a Role Type</asp:CustomValidator>--%>
                                                            <asp:CustomValidator  OnServerValidate="RoleType_ServerValidation"  ID="valRoleType"  EnableClientScript="true"  ClientValidationFunction="verifyCheckboxList"  ErrorMessage="Please select a Role Type"  runat="server" style="color: #FF0000"></asp:CustomValidator>
 
                                                    <asp:ObjectDataSource ID="ODS_RoleType" runat="server"
                                                        SelectMethod="GetRoleTypeArrayByUserID" TypeName="LRDB">
                                                        <SelectParameters>
                                                            <asp:SessionParameter Name="id" SessionField="SelectedEmployeeID"
                                                                Type="String" />
                                                        </SelectParameters>
                                                    </asp:ObjectDataSource>
 
                                                    <asp:LinqDataSource ID="LDS_RoleType" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" EntityTypeName=""
                                                        Select="new (RoleName, RoleTypeID)" TableName="db_Dictionary_RoleTypes">
                                                    </asp:LinqDataSource>
                                                </td>                                            </tr>                                       
                                                <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Supervisor</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <telerik:RadDropDownList ID="RadDropDownList_supervisor" runat="server"
                                                         AutoPostBack="true" CausesValidation="true"
                                                        DefaultMessage="Please Select..." DataSourceID="ODS_Supervisor"
                                                        DataTextField="Employee_Display_Name" DataValueField="UserID"
                                                        >
                                                    </telerik:RadDropDownList>
                                                    <asp:ObjectDataSource ID="ODS_Supervisor" runat="server"
                                                        SelectMethod="GetSupervisorArrayByDeptID" TypeName="LRDB">
                                                        <SelectParameters>
                                                            <asp:ControlParameter ControlID="RadDropDownList_dept" Name="id"
                                                                PropertyName="SelectedValue" Type="Int32" />
                                                            <asp:SessionParameter Name="pid" SessionField="SelectedPID" Type="Int32" />
                                                        </SelectParameters>
                                                    </asp:ObjectDataSource>
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator15" runat="server"
                                                        ControlToValidate="RadDropDownList_supervisor" InitialValue="0"
                                                        ErrorMessage="Please select a Supervisor." style="color: #FF0000"></asp:RequiredFieldValidator>
                                                </td>                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Point of Hire</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <asp:TextBox ID="tb_point_of_hire" runat="server" Width="300px" Enabled="true"></asp:TextBox>
                                                </td>                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    Start Date</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <telerik:RadDatePicker ID="RadDatePicker_start_date" Runat="server" Enabled="true" MinDate="1900/1/1">
                                                    <DateInput ID="DateInput1" runat="server" DateFormat="dd-MMM-yyyy" DisplayDateFormat="dd-MMM-yyyy" LabelWidth=""></DateInput>
                                                             
                                                    </telerik:RadDatePicker>
 
                                                    <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ErrorMessage="Please enter Start Date." ControlToValidate="RadDatePicker_start_date" style="color: #FF0000"></asp:RequiredFieldValidator>  
                                                </td>                                            </tr>
                                            <tr>
                                                <td align="left" valign="top" class="style6">
                                                    End Date</td>
                                                <td align="left" valign="top" class="table_content">
                                                    <telerik:RadDatePicker ID="RadDatePicker_end_date" Runat="server" Enabled="true">
                                                    <DateInput ID="DateInput2" runat="server" DateFormat="dd-MMM-yyyy" DisplayDateFormat="dd-MMM-yyyy" LabelWidth=""></DateInput>
                                                       
                                                    </telerik:RadDatePicker>
                                                    <asp:CompareValidator ID="dateCompareValidator" runat="server" ControlToValidate="RadDatePicker_end_date" ControlToCompare="RadDatePicker_start_date"
                                    Operator="GreaterThanEqual" Type="Date" ErrorMessage="End date must be equal or greater than Start date - please correct dates." Display="Dynamic">
                                </asp:CompareValidator>
 
                                                     
                                                </td>                                            </tr>
                                                                                    
 
 
        </table>
        </telerik:RadAjaxPanel>
            <asp:Button ID="btnback3" runat="server" Text="Back" OnClick="btnback3_Click" CausesValidation="false" />
            <asp:Button ID="btnStep3" runat="server" Text="Next" OnClick="btnStep3_Click" CausesValidation="true"/>
 
        </telerik:RadPageView>
         
        <telerik:RadPageView ID="Tab_Others" runat="server">
 
                <telerik:RadAjaxPanel ID="Panel_others" runat="server" Enabled="false" clientevents-onrequeststart="conditionalPostback">
 
        <table cellpadding="1" width="100%" style="vertical-align:top">
         <tr>
                                                <td align="left" valign="top" class="table_header">
                                                    Language</td>
                                                <td align="left" valign="top" class="table_content">                                                                                                       
                                                    <asp:CheckBoxList ID="CheckBoxList_Language" runat="server" 
                                                        AutoPostBack="True"
                                                         
                                                         OnDataBound="CheckBoxList_Language_DataBound" DataSourceID="LDS_Language"
                                                        DataTextField="Language_LongName" DataValueField="Language_ID"
                                                        RepeatColumns="8" >
                                                    </asp:CheckBoxList>
                                                    <asp:CustomValidator  OnServerValidate="Language_ServerValidation"  ID="valLanguage"  EnableClientScript="true"  ClientValidationFunction="verifyCheckboxList2"  ErrorMessage="Please select a Language"  runat="server"></asp:CustomValidator>
                                                    <%--<asp:CustomValidator ID="CustomValidator2" ClientValidationFunction="ValidateChkList2" runat="server" >Please select a Language</asp:CustomValidator>--%>
                                                            <asp:LinqDataSource ID="LDS_Language" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" 
                                                        Select="new (Language_ID, Language_LongName)"
                                                        TableName="db_Dictionary_Languages">
                                                    </asp:LinqDataSource>
                                                             
 
                                                </td>                                            </tr>   
                                                 <tr>
                                                <td align="left" valign="top" class="table_header">
                                                    Ability</td>
                                                <td align="left" valign="top" class="table_content">                                                                                                       
                                                    <asp:CheckBoxList ID="CheckBoxList_Ability" runat="server" 
                                                        AutoPostBack="True"                                                        
                                                         OnDataBound="CheckBoxList_Ability_DataBound" DataSourceID="LDS_Ability"
                                                        DataTextField="Ability_LongName" DataValueField="Ability_ID"
                                                        RepeatColumns="8"  >
                                                    </asp:CheckBoxList>
                                                            <%--<asp:CustomValidator ID="CustomValidator3" ClientValidationFunction="ValidateChkList3" runat="server" >Please select a Ability</asp:CustomValidator>--%>
                                                            <asp:LinqDataSource ID="LDS_Ability" runat="server"
                                                        ContextTypeName="dcLRDBDataContext" 
                                                        Select="new (Ability_ID, Ability_LongName)"
                                                        TableName="db_Dictionary_Abilities">
                                                    </asp:LinqDataSource>                                                                                                                       
                                                </td>                                            </tr
                                                                                               <tr>
                                                <td align="left" valign="top" class="table_header">
                                                    Prior Experience</td>
                                                <td align="left" valign="top" colspan="2">
                                                    <asp:TextBox runat="server" ID="Tb_prior_exp" Width="639px" TextMode="MultiLine"
                                                      Enabled="true"></asp:TextBox>
 
                                                </td>
                                                <td align="left" valign="top">
                                                     </td>
                                            </tr>                                                                                              
 
                                                                                               <tr>
                                                <td align="left" valign="top" class="table_header">
                                                    Notes</td>
                                                <td align="left" valign="top" colspan="2">
                                                    <asp:TextBox runat="server" ID="tb_notes" Width="639px" TextMode="MultiLine"
                                                      Enabled="true"></asp:TextBox>
                                                </td>
                                                <td align="left" valign="top">
                                                     </td>
                                            </tr
        </table>
        </telerik:RadAjaxPanel>
                    <asp:Button ID="btnback4" runat="server" Text="Back" OnClick="btnback4_Click" CausesValidation="false" />
                    <asp:Button ID="btnStep4" runat="server" Text="Next" OnClick="btnStep4_Click" CausesValidation="true"/>
 
        </telerik:RadPageView>
 
        <telerik:RadPageView ID="Tab_license" runat="server">
         
            <strong><span class="style4">License</span><br /> </strong>
            <br />
 
                    <telerik:RadAjaxPanel ID="Panel_License" runat="server" Enabled="false" clientevents-onrequeststart="conditionalPostback">
 
                                                            <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
                                                            <script type="text/javascript">
                                                                function RowDblClick(sender, eventArgs) {
                                                                    sender.get_masterTableView().editItem(eventArgs.get_itemIndexHierarchical());
                                                                }
                                                            </script>
                                                        </telerik:RadCodeBlock>
 
                                                        <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
                                                            <AjaxSettings>
                                                                <telerik:AjaxSetting AjaxControlID="RadGrid_License">
                                                                    <UpdatedControls>
                                                                        <telerik:AjaxUpdatedControl ControlID="RadGrid_License" LoadingPanelID="RadAjaxLoadingPanel1">
                                                                        </telerik:AjaxUpdatedControl>
                                                                        <telerik:AjaxUpdatedControl ControlID="divMsgs"></telerik:AjaxUpdatedControl>
                                                                    </UpdatedControls>
                                                                </telerik:AjaxSetting>
                                                            </AjaxSettings>
                                                        </telerik:RadAjaxManager>
                                                        <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server">
                                                        </telerik:RadAjaxLoadingPanel>
                                                            <telerik:RadGrid ID="RadGrid_License" runat="server" CellSpacing="0"
                                                            DataSourceID="ODS_License" GridLines="None" style="margin-top: 0px"
                                                            AllowFilteringByColumn="True" AllowPaging="True" AllowSorting="True"
                                                            AutoGenerateColumns="False" ShowStatusBar="True" AllowAutomaticDeletes="True" AllowAutomaticInserts="True"
                                                            AllowAutomaticUpdates="True" Width="800">
                                                                <MasterTableView AutoGenerateColumns="False"
                                                                    DataKeyNames="License_To_Operate_ID" DataSourceID="ODS_License"
                                                                    AllowFilteringByColumn="False" AllowPaging="False"
                                                                    CommandItemDisplay="Top">
 
                                                                    <CommandItemSettings ExportToPdfText="Export to PDF" />
                                                                    <RowIndicatorColumn FilterControlAltText="Filter RowIndicator column"
                                                                        Visible="True">
                                                                    </RowIndicatorColumn>
                                                                    <ExpandCollapseColumn FilterControlAltText="Filter ExpandColumn column"
                                                                        Visible="True">
                                                                    </ExpandCollapseColumn>
 
                                                                    <Columns>
                                                                        <telerik:GridEditCommandColumn UniqueName="EditCommandColumn">
                                                                        </telerik:GridEditCommandColumn>
                                                                        <telerik:GridBoundColumn DataField="License_To_Operate_ID"
                                                                            FilterControlAltText="Filter License_Number column" HeaderText="License_To_Operate_ID"
                                                                            SortExpression="License_To_Operate_ID" UniqueName="License_To_Operate_ID" Visible="false">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="License_Name"
                                                                            FilterControlAltText="Filter License_Name column" HeaderText="License Name"
                                                                            SortExpression="License_Name" UniqueName="License_Name">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="License_Number"
                                                                            FilterControlAltText="Filter License_Number column" HeaderText="License Number"
                                                                            SortExpression="License_Number" UniqueName="License_Number">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="License_Issuer"
                                                                            FilterControlAltText="Filter License_Issuer column" HeaderText="License Issuer"
                                                                            SortExpression="License_Issuer" UniqueName="License_Issuer">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="Valid_From" DataType="System.DateTime"
                                                                            FilterControlAltText="Filter Valid_From column" HeaderText="Valid From"
                                                                            SortExpression="Valid_From" UniqueName="Valid_From" DataFormatString="{0: dd-MMM-yyyy}">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="Valid_Till" DataType="System.DateTime"
                                                                            FilterControlAltText="Filter Valid_Till column" HeaderText="Valid Till"
                                                                            SortExpression="Valid_Till" UniqueName="Valid_Till" DataFormatString="{0: dd-MMM-yyyy}">
                                                                        </telerik:GridBoundColumn>
                                                                        <telerik:GridBoundColumn DataField="Issue_date" DataType="System.DateTime"
                                                                            FilterControlAltText="Filter Issue_date column" HeaderText="Issue Date"
                                                                            SortExpression="Issue_date" UniqueName="Issue_date" DataFormatString="{0: dd-MMM-yyyy}">
                                                                        </telerik:GridBoundColumn>
                                                                    </Columns>
                                                                    <EditFormSettings EditFormType="Template">
                                                                        <EditColumn FilterControlAltText="Filter EditCommandColumn1 column"
                                                                            UniqueName="EditCommandColumn1">
                                                                        </EditColumn>
                                                                    <FormTemplate>
 
                                                        <table id="Table2" cellspacing="2" cellpadding="1" width="100%" border="1" rules="none"
                                                            style="border-collapse: collapse;">
                                                            <tr class="EditFormHeader">
                                                            <td style="width:100px">
                                                            <asp:Label ID="Label5" Text="License Type" runat="server"></asp:Label>                                                           
                                                            </td>
                                                            <td>
                                                                <telerik:RadDropDownList ID="rdl_license_type" runat="server" DataSourceID="LDS_License_type" DefaultMessage="Please select..."
                                                                 DataValueField="License_ID" DataTextField="License_name" >
                                                                </telerik:RadDropDownList>  
                                                                <%--<asp:Label ID="Lb_License_ID" runat="server" text='<%# Bind("License_ID") %>' Visible="false"></asp:Label>--%>
                                                     
                                                            </td>
                                                            </tr>
                                                            <tr >
                                                            <td >
                                                            <asp:Label ID="lb" Text="License Number" runat="server"></asp:Label>                                                           
                                                            </td>
                                                            <td>
                                                            <asp:TextBox ID="tb_License_Number" runat="server" Text='<%# Bind("License_Number") %>' TabIndex="2"></asp:TextBox>                                                           
                                                            </td>
                                                            </tr>
                                                            <tr>
                                                            <td>
                                                            <asp:Label ID="Label1" Text="License Issuer" runat="server"></asp:Label>
                                                            </td>
                                                            <td>
                                                            <asp:TextBox ID="tb_License_Issuer" runat="server" Text='<%# Bind("License_Issuer") %>' TabIndex="3"></asp:TextBox>
                                                            </td>
                                                            </tr>
                                                            <tr>
                                                            <td>
                                                            <asp:Label ID="Label2" Text="Issue Date" runat="server"></asp:Label>
                                                            </td>
                                                            <td>
                                                            <telerik:RadDatePicker ID="IssueDatePicker" runat="server" MinDate="1/1/1900" DbSelectedDate='<%# Bind("Issue_Date") %>' TabIndex="4"></telerik:RadDatePicker>
                                                            </td>
                                                            </tr>
                                                            <tr>
                                                            <td>
                                                            <asp:Label ID="Label3" Text="Valid From" runat="server"></asp:Label>
                                                            </td>
                                                            <td>
                                                            <telerik:RadDatePicker ID="RadDatePicker_ValidFrom" runat="server" MinDate="1/1/1900" DbSelectedDate='<%# Bind("Valid_From") %>' TabIndex="5"></telerik:RadDatePicker>
                                                            </td>
                                                            </tr>
                                                                                                                        <tr>
                                                            <td>
                                                            <asp:Label ID="Label4" Text="Valid To" runat="server"></asp:Label>
                                                            </td>
                                                            <td>
                                                            <telerik:RadDatePicker ID="RadDatePicker_ValidTill" runat="server" MinDate="1/1/1900" DbSelectedDate='<%# Bind("Valid_Till") %>' TabIndex="6"></telerik:RadDatePicker>
                                                            </td>
                                                            </tr>
 
                                                               <tr>
                                                                <td align="right" colspan="2">
                                                                    <asp:Button ID="btnUpdate" Text='<%# IIf((TypeOf(Container) is GridEditFormInsertItem), "Insert", "Update") %>'
                                                                        runat="server" CommandName='<%# IIf((TypeOf(Container) is GridEditFormInsertItem), "PerformInsert", "Update")%>' >
                                                                    </asp:Button
                                                                    <asp:Button ID="btnDelete" Text="Delete" runat="server" CausesValidation="False"
                                                                        CommandName="Delete"></asp:Button>
                                                                    <asp:Button ID="btnCancel" Text="Cancel" runat="server" CausesValidation="False"
                                                                        CommandName="Cancel"></asp:Button>
 
                                                                </td>
                                                            </tr>
                                                        </table>
                                                    </FormTemplate>
                                                </EditFormSettings>
                                                                    <PagerStyle PageSizeControlType="RadComboBox" />
                                                                </MasterTableView>
                                                                <PagerStyle PageSizeControlType="RadComboBox" />
                                                                <FilterMenu EnableImageSprites="False">
                                                                </FilterMenu>
 
                                                        </telerik:RadGrid>
                                                        <asp:LinqDataSource ID="LDS_License_type" runat="server"
                                                            ContextTypeName="dcLRDBDataContext" EntityTypeName=""
                                                            TableName="db_Dictionary_Licenses">
                                                            </asp:LinqDataSource>
                                                        <asp:ObjectDataSource ID="ODS_License" runat="server"
                                                            SelectMethod="GetLicenseArrayByUserID" TypeName="LRDB">
                                                            <SelectParameters>
                                                                <asp:SessionParameter DefaultValue="0" Name="id" SessionField="SelectedUserID"
                                                                    Type="String" />
                                                            </SelectParameters>
                                                        </asp:ObjectDataSource>
                                                        <asp:LinqDataSource ID="LDS_License" runat="server"
                                                            ContextTypeName="dcLRDBDataContext" EntityTypeName=""
                                                            TableName="db_Employee_Licenses" Where="UserID == @UserID">
                                                            <WhereParameters>
                                                                <asp:SessionParameter Name="UserID" SessionField="SelectedUserID"
                                                                    Type="Int32" DefaultValue="0"/>
                                                            </WhereParameters>
                                                        </asp:LinqDataSource>
                                      <br />
 
        </telerik:RadAjaxPanel>
                    <asp:Button ID="btnback5" runat="server" Text="Back" OnClick="btnback5_Click" CausesValidation="false" />
                    <asp:Button ID="btnStep5" runat="server" Text="Next" OnClick="btnStep5_Click" CausesValidation="true"/>
 
        </telerik:RadPageView>
         
        <telerik:RadPageView ID="Tab_training" runat="server">
         
                                                            <strong><span class="style4">Training Course Details and Progress</span><br />
                                                    </strong><br />
                                                     
                                                       <div style="width:80%;">
                                                           <strong>Completed Course (Internal)</strong>
         
 
 
        <br />
        <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" Width="800"
            CellSpacing="0" DataSourceID="ODS_CompleteCourse" GridLines="None" Skin="Windows7">
<MasterTableView DataSourceID="ODS_CompleteCourse">
<CommandItemSettings ExportToPdfText="Export to PDF"></CommandItemSettings>
 
<RowIndicatorColumn Visible="True" FilterControlAltText="Filter RowIndicator column">
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
 
<ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column">
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
 
  <Columns>
        <telerik:GridBoundColumn DataField="Course_Name"
            FilterControlAltText="Filter Course Name"
            HeaderText="Course Name" SortExpression="Course_Name"
            UniqueName="Course_Name"  ReadOnly="True">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="Exam_Date"
            FilterControlAltText="Filter Date column"
            HeaderText="Exam Date" SortExpression="Date" DataFormatString="{0:yyyy-MM-dd}"
            UniqueName="Exam_Date" DataType="System.DateTime" ReadOnly="True" HeaderStyle-Width="15%">
            <HeaderStyle Width="15%" />
        </telerik:GridBoundColumn>
<%--        <telerik:GridBoundColumn DataField="Time"
            FilterControlAltText="Filter Time column" HeaderText="Time" ReadOnly="True"
            SortExpression="Time" UniqueName="Time" DataType="System.TimeSpan" DataFormatString="{0:t}" HeaderStyle-Width="15%">
        </telerik:GridBoundColumn>--%>
        <telerik:GridBoundColumn DataField="Exam_Score"
            FilterControlAltText="Filter Score" HeaderText="Exam Score" ReadOnly="True"
            SortExpression="Exam_Score" UniqueName="Exam_Score" HeaderStyle-Width="15%">
            <HeaderStyle Width="15%" />
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="Result"
            FilterControlAltText="Filter Result" HeaderText="Result" ReadOnly="True"
            SortExpression="Result" UniqueName="Result" HeaderStyle-Width="15%">
            <HeaderStyle Width="15%" />
        </telerik:GridBoundColumn>
<%--        <telerik:GridBoundColumn DataField="Status"
            FilterControlAltText="Filter Status column" HeaderText="Status" ReadOnly="True"
            SortExpression="Status" UniqueName="Status" HeaderStyle-Width="15%">
            <HeaderStyle Width="15%" />
        </telerik:GridBoundColumn>--%>
        <telerik:GridBoundColumn DataField="Remarks"
            FilterControlAltText="Filter Remarks column" HeaderText="Remarks" ReadOnly="True"
            SortExpression="Remarks" UniqueName="Remarks" HeaderStyle-Width="15%">
            <HeaderStyle Width="15%" />
        </telerik:GridBoundColumn>
    </Columns>
 
<EditFormSettings>
<EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn>
</EditFormSettings>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
</MasterTableView>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
 
<FilterMenu EnableImageSprites="False"></FilterMenu>
        </telerik:RadGrid>
 
 
 
 
                                                           <asp:ObjectDataSource ID="ODS_CompleteCourse" runat="server"
                                                               SelectMethod="GetTrainingRecordByEmployeeID" TypeName="LRDB">
                                                               <SelectParameters>
                                                                   <asp:QueryStringParameter Name="id" QueryStringField="EmployeeID"
                                                                       Type="Int32" />
                                                               </SelectParameters>
                                                           </asp:ObjectDataSource>
        <br />
        <br />
        <span class="style6"><strong>
Incompleted Course (Internal)</strong></span><telerik:RadGrid ID="RadGrid2" runat="server" AutoGenerateColumns="False"
            CellSpacing="0" DataSourceID="LinqDataSource2" GridLines="None" Skin="Windows7" Enabled="true" Width="800">
<MasterTableView DataSourceID="LinqDataSource2">
<CommandItemSettings ExportToPdfText="Export to PDF"></CommandItemSettings>
 
<RowIndicatorColumn Visible="True" FilterControlAltText="Filter RowIndicator column">
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
 
<ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column">
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
 
    <Columns>
        <telerik:GridBoundColumn DataField="db_course.Course_Name"
            FilterControlAltText="Filter Course Name"
            HeaderText="Course Name" SortExpression="db_course.Course_Name"
            UniqueName="db_course.Course_Name"  ReadOnly="True">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="Start_Time"
            FilterControlAltText="Filter Date column"
            HeaderText="Start Time" SortExpression="Start_Time" DataFormatString="{0:yyyy-MM-dd HH:mm}"
            UniqueName="Start_Time" DataType="System.DateTime" ReadOnly="True" HeaderStyle-Width="25%">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="End_Time"
            FilterControlAltText="Filter Date column"
            HeaderText="End Time" SortExpression="End_Time" DataFormatString="{0:yyyy-MM-dd HH:mm}"
            UniqueName="End_Time" DataType="System.DateTime" ReadOnly="True" HeaderStyle-Width="25%">
        </telerik:GridBoundColumn>       
        <telerik:GridBoundColumn DataField="Remarks"
            FilterControlAltText="Filter Remarks column" HeaderText="Remarks" ReadOnly="True"
            SortExpression="Remarks" UniqueName="Remarks" HeaderStyle-Width="15%">
        </telerik:GridBoundColumn>
    </Columns>
 
<EditFormSettings>
<EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn>
</EditFormSettings>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
</MasterTableView>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
 
<FilterMenu EnableImageSprites="False"></FilterMenu>
        </telerik:RadGrid>
 
        <br />
        <br />
        <span class="style6"><strong>
External Training</strong></span><telerik:RadGrid ID="RadGrid3" runat="server" AutoGenerateColumns="False"
            CellSpacing="0" DataSourceID="LinqDataSource3" GridLines="None" Skin="Windows7" Enabled="true" Width="800">
<MasterTableView DataSourceID="LinqDataSource3">
<CommandItemSettings ExportToPdfText="Export to PDF"></CommandItemSettings>
 
<RowIndicatorColumn Visible="True" FilterControlAltText="Filter RowIndicator column">
<HeaderStyle Width="20px"></HeaderStyle>
</RowIndicatorColumn>
 
<ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column">
<HeaderStyle Width="20px"></HeaderStyle>
</ExpandCollapseColumn>
 
    <Columns>
        <telerik:GridBoundColumn DataField="db_Training_Course_External.Course_Name"
            FilterControlAltText="Filter Course Name"
            HeaderText="Course Name" SortExpression="db_Training_Course_External.Course_Name"
            UniqueName="db_Training_Course_External.Course_Name"  ReadOnly="True">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="Start_Time"
            FilterControlAltText="Filter Date column"
            HeaderText="Start Time" SortExpression="Start_Time" DataFormatString="{0:yyyy-MM-dd HH:mm}"
            UniqueName="Start_Time" DataType="System.DateTime" ReadOnly="True" HeaderStyle-Width="25%">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="End_Time"
            FilterControlAltText="Filter Date column"
            HeaderText="End Time" SortExpression="End_Time" DataFormatString="{0:yyyy-MM-dd HH:mm}"
            UniqueName="End_Time" DataType="System.DateTime" ReadOnly="True" HeaderStyle-Width="25%">
        </telerik:GridBoundColumn>       
        <telerik:GridBoundColumn DataField="Status"
            FilterControlAltText="Filter Status column" HeaderText="Status" ReadOnly="True"
            SortExpression="Status" UniqueName="Status" HeaderStyle-Width="15%">
        </telerik:GridBoundColumn>
        <telerik:GridBoundColumn DataField="Remarks"
            FilterControlAltText="Filter Remarks column" HeaderText="Remarks" ReadOnly="True"
            SortExpression="Remarks" UniqueName="Remarks" HeaderStyle-Width="15%">
        </telerik:GridBoundColumn>
    </Columns>
 
<EditFormSettings>
<EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn>
</EditFormSettings>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
</MasterTableView>
 
<PagerStyle PageSizeControlType="RadComboBox"></PagerStyle>
 
<FilterMenu EnableImageSprites="False"></FilterMenu>
        </telerik:RadGrid>
                                                                                                                        
                <asp:LinqDataSource ID="LinqDataSource1" runat="server"
            ContextTypeName="dcLRDBDataContext" EntityTypeName=""
            Select="new (db_Course, db_Training_Session.db_training_record, db_Training_Session.Status)" TableName="db_Employee_Enrollments"
            Where="UserID == @UserID && db_Training_Session.Status == @Status">
                    <WhereParameters>
                        <asp:SessionParameter Name="UserID" SessionField="SelectedUserID" DefaultValue="0"
                            Type="Int32" />
                        <asp:Parameter DefaultValue="Completed" Name="Status"
                            Type="String" />
                    </WhereParameters>
        </asp:LinqDataSource>
                     
                <asp:LinqDataSource ID="LinqDataSource2" runat="server"
            ContextTypeName="dcLRDBDataContext" EntityTypeName=""
            Select="new (db_Course, Start_Time, End_Time, Remarks)" TableName="db_Employee_Enrollments"
            Where="UserID == @UserID && db_Training_Session.Status == @Status && db_Training_Session.Parent_ID == null ">
                    <WhereParameters>
                        <asp:SessionParameter Name="UserID" SessionField="SelectedUserID" DefaultValue="0"
                            Type="Int32" />
                        <asp:Parameter DefaultValue="Confirmed" Name="Status"
                            Type="String" />
                        <asp:Parameter  Name="Parent_ID"
                            Type="Int32" />
                    </WhereParameters>
        </asp:LinqDataSource>                   
 
                <asp:LinqDataSource ID="LinqDataSource3" runat="server"
            ContextTypeName="dcLRDBDataContext" EntityTypeName=""
            Select="new (db_Training_Course_External.course_name, Start_Time, End_Time, Remarks)" TableName="db_employee_enrollment_externals"
            Where="Employee_ID == @eid ">
                    <WhereParameters>
                      <asp:QueryStringParameter Name="eid" QueryStringField="EmployeeID"
                                                                       Type="Int32" />
 
                        <asp:Parameter DefaultValue="Confirmed" Name="Status"
                            Type="String" />
                        <asp:Parameter  Name="Parent_ID"
                            Type="Int32" />
                    </WhereParameters>
        </asp:LinqDataSource>                                                                                                        
                </div>
                                           <asp:Button ID="btnback6" runat="server" Text="Back" OnClick="btnback6_Click" CausesValidation="false" />
 
        </telerik:RadPageView>
 
        </telerik:RadMultiPage>
 
 
 
 
 
 
 
 
   
 
<%--    </telerik:RadAjaxPanel>--%>
    </div>
 
</asp:Content>

Code Behind:

Imports System
Imports System.IO
Imports Telerik.Web.UI
Imports System.Web.UI
Imports Telerik.Web.UI.AsyncUpload
Imports System.Runtime.Serialization.Json
Imports System.Web.Services
Imports System.Runtime.Serialization
Imports System.Collections.Generic
Imports System.Drawing
 
Partial Class HR_HR_employee_details
    Inherits System.Web.UI.Page   
    Const MaxTotalBytes As Integer = 1048576 ' 1 MB
    Private totalBytes As Integer
    Private Shared prevPage As String = String.Empty
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 
        If Not IsPostBack Then
            prevPage = Request.UrlReferrer.ToString()
 
            If IsNothing(Session("SelectedPID")) Then
                Page.ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "alert('Please select a Project.');", True)
                'rtbMenu.FindItemByValue("New").Enabled = False
            Else
                'rtbMenu.FindItemByValue("New").Enabled = True
            End If
 
            'Dim lb_panel As Label
            'lb_panel = CType(Master.FindControl("lb_panel"), Label)
            'lb_panel.Text = "Employee Details"
            'Dim photo_path As String = ""
            'Dim CurrentURL As String = ""
            'CurrentURL = HttpContext.Current.Request.Url.GetLeftPart(UriPartial.Authority) + ResolveUrl("~/")
            'If (Request("EmployeeID") <> "0") Or (Request("EmployeeID") <> "") Or (Not IsNothing(Request("EmployeeID"))) Then
 
            Session.Remove("SelectedEmployeeID")
            Session.Remove("SelectedUserID")
            Session.Remove("TmpFileName")
            'For Employee_license
            Session.Remove("TmpUserID")
            'For Employee_Detail
            Session.Remove("TmpUID_Emp_Detail")
 
            If Request.QueryString("EmployeeID") <> "" And Request.QueryString("EmployeeID") <> "0" Then
                Dim dc As New dcLRDBDataContext
                Dim result = (From d In dc.db_Employee_Details Where d.Employee_ID = Request("EmployeeID") Select d).FirstOrDefault
                Dim result2 = (From d In dc.db_UserDBs Where d.UserID = GetUserIDbyEmployeeID(Request("EmployeeID")) Select d).FirstOrDefault
                If Not IsNothing(result) Then
 
                    'Bind data
                    HttpContext.Current.Session("SelectedEmployeeID") = result.Employee_ID
                    HttpContext.Current.Session("SelectedUserID") = result.UserID
 
                    tb_addr.Text = result.Address
                    'tb_blood_type.Text = result.Blood_Type
                    If Not IsNothing(result.Blood_Type) Then
                        rbl_blood_type.SelectedValue = result.Blood_Type
                    End If
                    If Not IsNothing(result.Dept_ID) Then
                        tb_dept.Text = result.Dept_ID
                    End If
                    If Not IsNothing(result.Email) Then
                        tb_email.Text = result.Email
                    End If
                    rbl_gender.SelectedValue = result.Gender
 
                    tb_username.Text = result2.username
                    tb_first_name.Text = result.First_Name
 
                    tb_last_name.Text = result.Last_Name
                    tb_display_name.Text = result.Employee_Display_Name
                    If Not IsNothing(result.Location_ID) Then
                        tb_location.Text = result.Location_ID
                    End If
 
                    tb_middle_name.Text = result.Middle_Name
                    If Not IsNothing(result.Phone) Then
                        tb_phone.Text = result.Phone
                    End If
                    If Not IsNothing(result.Point_of_Hire) Then
                        tb_point_of_hire.Text = result.Point_of_Hire
                    End If
 
                    If Not IsNothing(result.Photo) Then
                        RadBinaryImage1.DataValue = result.Photo.ToArray
                    End If
 
                    If Not IsNothing(result.Dept_ID) Then
                        RadDropDownList_dept.SelectedValue = result.Dept_ID
                    End If
                    If Not IsNothing(result.Job_Title_ID) Then
                        RadDropDownList_job_title.SelectedValue = result.Job_Title_ID
                    End If
                    If Not IsNothing(result.Location_ID) Then
                        RadDropDownList_location.SelectedValue = result.Location_ID
                    End If
 
                    If result.Dept_ID > 0 Or Not IsNothing(result.Dept_ID) Then
                        RadDropDownList_supervisor.Enabled = True
                    End If
 
                    If result.Supervisor_UserID > 0 Or Not IsNothing(result.Supervisor_UserID) Then
                        RadDropDownList_supervisor.SelectedValue = result.Supervisor_UserID
                        'RadDropDownList_supervisor.Enabled = True
                    Else
                        RadDropDownList_supervisor.SelectedValue = RadDropDownList_supervisor.DefaultMessage
                        ' RadDropDownList_supervisor.Enabled = False
                    End If
 
                    tb_notes.Text = result.Notes
                    Tb_prior_exp.Text = result.Prior_Exp
                    RadDatePicker_birthday.SelectedDate = result.Date_of_Birth.ToString
                    RadDatePicker_start_date.SelectedDate = result.Start_date.ToString
                    If Not IsNothing(result.End_date) Then
                        RadDatePicker_end_date.SelectedDate = result.End_date.ToString
                    End If
 
                    'tb_roletype.Text = GetRoleTypeArrayByUserID(Request("EmployeeID")).Item(0).ToString
 
                    'Enable button
                    rtbMenu.FindItemByValue("Save").Enabled = False
                    rtbMenu.FindItemByValue("Edit").Enabled = True
                    rtbMenu.FindItemByValue("SIMPER").Enabled = True
                    rtbMenu.FindItemByValue("Delete").Enabled = True
                End If
            Else 'New Record
                'rtbMenu.FindItemByValue("New").Enabled = False
                rtbMenu.FindItemByValue("Cancel").Visible = True
                rtbMenu.FindItemByValue("Back").Visible = False
                rtbMenu.FindItemByValue("Save").Enabled = True
                rtbMenu.FindItemByValue("Search").Enabled = False
                rtbMenu.FindItemByValue("Edit").Enabled = False
                rtbMenu.FindItemByValue("SIMPER").Enabled = False
                rtbMenu.FindItemByValue("Delete").Visible = False
                'Panel_content.Enabled = True
                Panel_personal.Enabled = True
                Panel_job.Enabled = True
                Panel_License.Enabled = True
                Panel_others.Enabled = True
 
                'Organization.Insert(0,new ListItem("--Select--","0"));
                'RadDropDownList_dept.Items.Add(0, New ListItem("--Select--", "0"))
                'RadDropDownList_dept.Items.Add(New Telerik.Web.UI.DropDownListItem("--Select--", "0"))
                'RadDropDownList_job_title.Items.Add(New Telerik.Web.UI.DropDownListItem("--Select--", "0"))
                'RadDropDownList_supervisor.Items.Add(New Telerik.Web.UI.DropDownListItem("--Select--", "0"))
                'RadDropDownList_location.Items.Add(New Telerik.Web.UI.DropDownListItem("--Select--", "0"))
 
            End If
 
        End If
    End Sub
 
    Protected Sub RadGrid_License_ItemCommand(ByVal source As Object, ByVal e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid_License.ItemCommand
 
        If e.CommandName = RadGrid.InitInsertCommandName Then   'Click Add New Record button           
            Dim editColumn As GridEditCommandColumn = CType(RadGrid_License.MasterTableView.GetColumn("EditCommandColumn"), GridEditCommandColumn)
            editColumn.Visible = False
        ElseIf (e.CommandName = RadGrid.RebindGridCommandName AndAlso e.Item.OwnerTableView.IsItemInserted) Then
            e.Canceled = True
        Else
            Dim editColumn As GridEditCommandColumn = CType(RadGrid_License.MasterTableView.GetColumn("EditCommandColumn"), GridEditCommandColumn)
            If Not editColumn.Visible Then  'Click Cancel button (both Insert and Update mode)
                editColumn.Visible = True
            End If
 
            Dim ddlLicense_id As RadDropDownList = DirectCast(e.Item.FindControl("rdl_license_type"), RadDropDownList)
            Dim txtLicense_Number As TextBox = DirectCast(e.Item.FindControl("tb_License_Number"), TextBox)
            Dim txtLicense_Issuer As TextBox = DirectCast(e.Item.FindControl("tb_License_Issuer"), TextBox)
            Dim dateIssue As RadDatePicker = DirectCast(e.Item.FindControl("IssueDatePicker"), RadDatePicker)
            Dim dateValidFrom As RadDatePicker = DirectCast(e.Item.FindControl("RadDatePicker_ValidFrom"), RadDatePicker)
            Dim dateValidTill As RadDatePicker = DirectCast(e.Item.FindControl("RadDatePicker_ValidTill"), RadDatePicker)
            Dim dc As New dcLRDBDataContext
 
            ' If (TypeOf e.Item Is GridEditableItem AndAlso e.Item.IsInEditMode) Then
 
            If e.CommandName = "PerformInsert" Then
 
                If Request.QueryString("EmployeeID") = "" Then  'New Employee
                    Dim rnd As New Random()
                    Dim tmpUserID As Integer 'allow 10 digit only
                    tmpUserID = rnd.Next(100000, 999999) & DateTime.Now.Hour & DateTime.Now.Minute
                    HttpContext.Current.Session("tmpUserID") = tmpUserID
 
                    dc.insertEmployeeLicense(tmpUserID.ToString, ddlLicense_id.SelectedValue, txtLicense_Number.Text.Trim, txtLicense_Issuer.Text.Trim, _
                                               dateIssue.SelectedDate, dateValidFrom.SelectedDate, dateValidTill.SelectedDate, "Y", DateTime.Now, HttpContext.Current.Session("UserID").ToString)
 
                Else
                    dc.insertEmployeeLicense(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")).ToString, ddlLicense_id.SelectedValue, txtLicense_Number.Text.Trim, txtLicense_Issuer.Text.Trim, _
                                               dateIssue.SelectedDate, dateValidFrom.SelectedDate, dateValidTill.SelectedDate, "N", DateTime.Now, HttpContext.Current.Session("UserID").ToString)
                End If
                RadGrid_License.DataBind()
            ElseIf e.CommandName = "Update" Then
                Dim lid As Integer = e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("License_To_Operate_ID")
                Dim uid As Integer
                If Request.QueryString("EmployeeID") = "" Then
                    uid = HttpContext.Current.Session("tmpUserID").ToString
                Else
                    uid = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")).ToString
                End If
 
                Dim rec = (From p In dc.db_Employee_Licenses Where p.UserID = uid And p.License_To_Operate_ID = lid).FirstOrDefault
                If Not rec Is Nothing Then
                    rec.License_ID = ddlLicense_id.SelectedValue
                    rec.License_Number = txtLicense_Number.Text.Trim
                    rec.License_Issuer = txtLicense_Issuer.Text.Trim
                    rec.Issue_date = dateIssue.SelectedDate
                    rec.Valid_From = dateValidFrom.SelectedDate
                    rec.Valid_Till = dateValidTill.SelectedDate
                    rec.LastUpdateBy = HttpContext.Current.Session("UserID")
                    rec.LastUpdateDate = DateTime.Now
                    dc.SubmitChanges()
                End If
                RadGrid_License.DataBind()
            ElseIf e.CommandName = "Delete" Then
                Dim lid As Integer = e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("License_To_Operate_ID")
                Dim uid As Integer
                If Request.QueryString("EmployeeID") = "" Then
                    uid = HttpContext.Current.Session("tmpUserID").ToString
                Else
                    uid = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")).ToString
                End If
                Dim rec2 = (From p In dc.db_Employee_Licenses Where p.UserID = uid And p.License_To_Operate_ID = lid).FirstOrDefault
                If Not IsNothing(rec2) Then
                    dc.db_Employee_Licenses.DeleteOnSubmit(rec2)
                    dc.SubmitChanges()
                End If
                RadGrid_License.DataBind()
            End If
            'End If
 
            dc.Dispose()
        End If
    End Sub
    Private Sub RadGrid_License_ItemDataBound(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridItemEventArgs) Handles RadGrid_License.ItemDataBound
        'If (TypeOf e.Item Is GridEditableItem AndAlso e.Item.IsInEditMode) Then
        '    Dim item As GridEditableItem = e.Item
        '    'access/modify the edit item template settings here
        '    Dim list As RadDropDownList = item.FindControl("rdl_license_type")
        '    'list.DataSource = Country_values
        '    'list.DataBind()
        '    If (Not HttpContext.Current.Session("updatedValue") Is Nothing) Then
        '        list.SelectedValue = 2
        '        'HttpContext.Current.Session("updatedValue")
        '    End If
        'ElseIf (TypeOf e.Item Is GridDataItem AndAlso Not e.Item.IsInEditMode AndAlso Page.IsPostBack) Then
        '    Dim item As GridDataItem = e.Item
        '    Dim label As Label = item.FindControl("Lb_License_ID")
 
        '    'update the label value
        '    label.Text = HttpContext.Current.Session("updatedValue")
        'End If
 
        If (TypeOf e.Item Is GridEditableItem AndAlso e.Item.IsInEditMode) Then
            Dim item As GridEditableItem = e.Item
            Dim ddl As RadDropDownList = item.FindControl("rdl_license_type")
            ddl.SelectedValue = DataBinder.Eval(e.Item.DataItem, "License_ID").ToString
        End If
 
 
    End Sub
 
    Protected Sub RadGrid_License_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadGrid_License.PreRender
        If (Not Page.IsPostBack) Then
            RadGrid_License.EditIndexes.Add(0)
            RadGrid_License.Rebind()
        End If
    End Sub
 
    Protected Sub RadGrid_License_ItemDeleted(ByVal source As Object, ByVal e As Telerik.Web.UI.GridDeletedEventArgs) Handles RadGrid_License.ItemDeleted
        If Not e.Exception Is Nothing Then
            e.ExceptionHandled = True
            'DisplayMessage(True, "Employee " + e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("EmployeeID").ToString() + " cannot be deleted. Reason: " + e.Exception.Message)
        Else
            'DisplayMessage(False, "Employee " + e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("EmployeeID").ToString() + " deleted")
        End If
    End Sub
 
    Protected Sub RadGrid_License_ItemUpdated(ByVal source As Object, ByVal e As Telerik.Web.UI.GridUpdatedEventArgs) Handles RadGrid_License.ItemUpdated
        If Not e.Exception Is Nothing Then
            e.KeepInEditMode = True
            e.ExceptionHandled = True
            'DisplayMessage(True, "Employee " + e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("EmployeeID").ToString() + " cannot be updated. Reason: " + e.Exception.Message)
 
        Else
 
            'DisplayMessage(False, "Employee " + e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("EmployeeID").ToString() + " updated")
            'If (TypeOf e.Item Is GridEditableItem AndAlso e.Item.IsInEditMode) Then
            '    Dim item As GridEditableItem = e.Item
            '    Dim dc As New dcLRDBDataContext
            '    Dim rec = (From p In dc.db_Employee_Licenses Where p.License_To_Operate_ID = e.Item.OwnerTableView.DataKeyValues(e.Item.ItemIndex)("License_To_Operate_ID").ToString()).FirstOrDefault
 
            '    Dim ddl As RadDropDownList = item.FindControl("rdl_license_type")
            '    'ddl.SelectedValue = DataBinder.Eval(e.Item.DataItem, "License_ID").ToString
 
            '    Dim tb_License_Number As TextBox = item.FindControl("tb_License_Number")
            '    Dim tb_License_Issuer As TextBox = item.FindControl("tb_License_Issuer")
            '    Dim IssueDatePicker As RadDatePicker = item.FindControl("IssueDatePicker")
            '    Dim RadDatePicker_ValidFrom As RadDatePicker = item.FindControl("RadDatePicker_ValidFrom")
            '    Dim RadDatePicker_ValidTill As RadDatePicker = item.FindControl("RadDatePicker_ValidTill")
 
            '    If Not rec Is Nothing Then
            '        rec.License_Number = tb_License_Number.Text
            '        rec.License_Issuer = tb_License_Issuer.Text
            '        rec.License_ID = ddl.SelectedValue
            '        rec.Valid_From = RadDatePicker_ValidFrom.SelectedDate
            '        rec.Valid_Till = RadDatePicker_ValidTill.SelectedDate
            '        rec.Issue_date = IssueDatePicker.SelectedDate
            '        dc.SubmitChanges()
            '    End If
            '    dc.Dispose()
            'End If
        End If
    End Sub
 
    Protected Sub RadGrid_License_ItemInserted(ByVal source As Object, ByVal e As Telerik.Web.UI.GridInsertedEventArgs) Handles RadGrid_License.ItemInserted
        If Not e.Exception Is Nothing Then
            e.ExceptionHandled = True
            e.KeepInInsertMode = True
            'DisplayMessage(True, "Employee cannot be inserted. Reason: " + e.Exception.Message)
        Else
            'DisplayMessage(False, "Employee inserted")
        End If
    End Sub
 
    Protected Sub RoleType_ServerValidation(ByVal source As Object, ByVal args As ServerValidateEventArgs)
        args.IsValid = CheckBoxList_RoleType.SelectedItem IsNot Nothing
    End Sub
 
    Protected Sub Language_ServerValidation(ByVal source As Object, ByVal args As ServerValidateEventArgs)
        args.IsValid = CheckBoxList_Language.SelectedItem IsNot Nothing
    End Sub
 
    Protected Sub rtbMenu_ButtonClick(ByVal sender As Object, ByVal e As Telerik.Web.UI.RadToolBarEventArgs) Handles rtbMenu.ButtonClick
        If e.Item.Value = "New" Then
            Response.Redirect("~/HR/HR_employee_details.aspx")
        ElseIf e.Item.Value = "Home" Then
            Response.Redirect("~/HR/HR_employee.aspx")
        ElseIf e.Item.Value = "Search" Then
            Response.Redirect("~/HR/HR_employee_search.aspx")
        ElseIf e.Item.Value = "SIMPER" Then
            Response.Redirect("~/TrainingAdmin/SIMPER_details.aspx?UserID=" & GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")))
        ElseIf e.Item.Value = "Save" Then
 
            'Existing Record
            If Request.QueryString("EmployeeID") <> "" And Request.QueryString("EmployeeID") > 0 Then
 
                SaveEmpDetail(Request.QueryString("EmployeeID"))
 
            Else    'New
 
                If CheckDuplicate() = False Then
 
 
 
                    'All new record
 
                    'insert into db_UserDB and retrieve UserID
                    Dim dc1 As New dcLRDBDataContext
                    Dim newRecord1 As New db_UserDB
                    Dim uid As Integer
                    Dim eid As Integer
 
                    dc1.db_UserDBs.InsertOnSubmit(newRecord1)
                    newRecord1.username = tb_username.Text.Trim.ToLower                   
                    newRecord1.Disabled = "0"
                    newRecord1.LastUpdateDate = DateTime.Now
                    newRecord1.LastUpdateBy = HttpContext.Current.Session("UserID")
                    dc1.SubmitChanges()
                    uid = newRecord1.UserID
                    dc1.ResetUserPassword(uid, "pass", 0, DateTime.Now, HttpContext.Current.Session("UserID"))
                    dc1.Dispose()
                    'insert into db_UserProject
                    Dim dc2 As New dcLRDBDataContext
                    Dim newRecord2 As New db_UserProject
                    dc2.db_UserProjects.InsertOnSubmit(newRecord2)
                    newRecord2.UserID = uid
                    newRecord2.ProjectID = HttpContext.Current.Session("SelectedPID").ToString
                    newRecord2.LastUpdateDate = DateTime.Now
                    newRecord2.LastUpdateBy = HttpContext.Current.Session("UserID")
                    dc2.SubmitChanges()
                    dc2.Dispose()
 
                    'insert into db_employee_details
                    Dim dc As New dcLRDBDataContext
                    Dim newRecord As New db_Employee_Detail
                    dc.db_Employee_Details.InsertOnSubmit(newRecord)
                    newRecord.UserID = uid
                    newRecord.Last_Name = tb_last_name.Text
                    newRecord.Middle_Name = tb_middle_name.Text
                    newRecord.First_Name = tb_first_name.Text
                    newRecord.Employee_Display_Name = tb_display_name.Text
                    newRecord.Gender = rbl_gender.SelectedValue
 
                    newRecord.Date_of_Birth = RadDatePicker_birthday.SelectedDate
                    'newRecord.Blood_Type = tb_blood_type.Text
                    If rbl_blood_type.SelectedValue <> "" Then
                        newRecord.Blood_Type = rbl_blood_type.SelectedValue
                    End If
 
                    If tb_email.Text <> "" Then
                        newRecord.Email = tb_email.Text
                    End If
                    If tb_phone.Text <> "" Then
                        newRecord.Phone = tb_phone.Text
                    End If
                    If tb_addr.Text <> "" Then
                        newRecord.Address = tb_addr.Text
                    End If
                    If RadDropDownList_location.SelectedValue <> "" Then
                        newRecord.Location_ID = RadDropDownList_location.SelectedValue
                    End If
                    If RadDropDownList_dept.SelectedValue <> "" Then
                        newRecord.Dept_ID = RadDropDownList_dept.SelectedValue
                    End If
                    If RadDropDownList_job_title.SelectedValue <> "" Then
                        newRecord.Job_Title_ID = RadDropDownList_job_title.SelectedValue
                    End If
                    If tb_point_of_hire.Text <> "" Then
                        newRecord.Point_of_Hire = tb_point_of_hire.Text
                    End If
                    newRecord.Start_date = RadDatePicker_start_date.SelectedDate
                    If Not IsNothing(RadDatePicker_end_date.SelectedDate) Then
                        newRecord.End_date = RadDatePicker_end_date.SelectedDate
                    End If
                    If tb_notes.Text <> "" Then
                        newRecord.Notes = tb_notes.Text
                    End If
 
                    newRecord.LastUpdateDate = DateTime.Now
                    newRecord.LastUpdateBy = HttpContext.Current.Session("UserID")
 
                    If Tb_prior_exp.Text <> "" Then
                        newRecord.Prior_Exp = Tb_prior_exp.Text
                    End If
 
                    If RadDropDownList_supervisor.SelectedValue <> "" Then
                        newRecord.Supervisor_UserID = RadDropDownList_supervisor.SelectedValue
                    End If
                    dc.SubmitChanges()
                    eid = newRecord.Employee_ID
 
                    'Insert RoleType
                    For i = 0 To CheckBoxList_RoleType.Items.Count - 1
                        If CheckBoxList_RoleType.Items(i).Selected = True Then
                            dc.insertRoleType(HttpContext.Current.Session("SelectedPID").ToString, CheckBoxList_RoleType.Items(i).Value.ToString, uid, DateTime.Now, HttpContext.Current.Session("UserID").ToString)
                        End If
                    Next
 
                    'insert language
                    For i = 0 To CheckBoxList_Language.Items.Count - 1
                        If CheckBoxList_Language.Items(i).Selected = True Then
                            dc.insertLanguage(CheckBoxList_Language.Items(i).Value.ToString, uid, DateTime.Now, HttpContext.Current.Session("UserID").ToString)
                        End If
                    Next
 
                    'insert ability
                    For i = 0 To CheckBoxList_Ability.Items.Count - 1
                        If CheckBoxList_Ability.Items(i).Selected = True Then
                            dc.insertAbility(CheckBoxList_Ability.Items(i).Value.ToString, uid, DateTime.Now, HttpContext.Current.Session("UserID").ToString)
                        End If
                    Next
 
                    If Not HttpContext.Current.Session("TmpFileName") Is Nothing Then
                        'rename tmpphoto
                        Dim tmpfile As String = Server.MapPath("..") & "\StaffPhoto\" & HttpContext.Current.Session("TmpFileName").ToString
                        Dim destfile As String = Server.MapPath("..") & "\StaffPhoto\" & eid & ".jpg"
 
                        System.IO.File.Move(tmpfile, destfile)
                    End If
 
                    If Request.QueryString("EmployeeID") = "" Then
                        If Not Session("TmpUserID") Is Nothing Then
                            'Update tmpuserid to userid
                            dc.updateEmployeeLicense(uid, HttpContext.Current.Session("TmpUserID").ToString, DateTime.Now, HttpContext.Current.Session("UserID").ToString)
                        End If
                    End If
 
                    'Had insert photo to db_employee_detail before click SAVE (already had a EmployeeID)
                    If Not Session("TmpUID_Emp_Detail") Is Nothing Then
                        dc.CopyEmployeeTmpPhoto(eid, HttpContext.Current.Session("TmpUID_Emp_Detail").ToString)
                    End If
 
 
 
                    dc.Dispose()
 
                    lb_message.Text = "User created successfully."
                    lb_message.Visible = True
 
                    rtbMenu.FindItemByValue("Edit").Enabled = True
                    rtbMenu.FindItemByValue("Save").Enabled = False
                    rtbMenu.FindItemByValue("Cancel").Visible = False
                    rtbMenu.FindItemByValue("Back").Visible = True
                    rtbMenu.FindItemByValue("Delete").Enabled = True
                    'rtbMenu.FindItemByValue("New").Enabled = True
                    rtbMenu.FindItemByValue("Search").Enabled = True
                    'Panel_content.Enabled = False
                    Panel_personal.Enabled = False
                    Panel_job.Enabled = False
                    Panel_License.Enabled = False
                    Panel_others.Enabled = False
 
                    If Not Session("TmpUID_Emp_Detail") Is Nothing Then
                        'remove tmp record from
                        Dim dc4 As New dcLRDBDataContext
                        dc4.deleteTmpPhoto(HttpContext.Current.Session("TmpUID_Emp_Detail").ToString)
                    End If
 
                    Response.Redirect("~/HR/HR_employee.aspx")
 
                Else
                    lb_message.Text = "Username already exists."
                    lb_message.Visible = True
                End If
 
            End If
            tb_username.Enabled = False
 
        ElseIf e.Item.Value = "Back" Then
            Response.Redirect(prevPage)
        ElseIf e.Item.Value = "Cancel" Then
 
            If Request.QueryString("EmployeeID") = "" Then
                If Not Session("TmpUserID") Is Nothing Then
                    'remove tmp record from
                    Dim dc As New dcLRDBDataContext
                    dc.deleteEmployeeLicense(HttpContext.Current.Session("TmpUserID").ToString)
                End If
                If Not Session("TmpUID_Emp_Detail") Is Nothing Then
                    'remove tmp record from
                    Dim dc As New dcLRDBDataContext
                    dc.deleteTmpPhoto(HttpContext.Current.Session("TmpUID_Emp_Detail").ToString)
                End If
 
            End If
 
            'Panel_content.Enabled = False
            Panel_personal.Enabled = False
            Panel_job.Enabled = False
            Panel_License.Enabled = False
            Panel_others.Enabled = False
 
            rtbMenu.FindItemByValue("Edit").Enabled = True
            rtbMenu.FindItemByValue("Save").Enabled = False
            rtbMenu.FindItemByValue("Cancel").Visible = False
            rtbMenu.FindItemByValue("Back").Visible = True
            'rtbMenu.FindItemByValue("New").Enabled = True
            rtbMenu.FindItemByValue("Search").Enabled = True
            rtbMenu.FindItemByValue("Delete").Enabled = True
            'Response.Redirect("~/HR/HR_employee.aspx")
        ElseIf e.Item.Value = "Edit" Then
            rtbMenu.FindItemByValue("Save").Enabled = True
            rtbMenu.FindItemByValue("Cancel").Visible = True
            rtbMenu.FindItemByValue("Back").Visible = False
            rtbMenu.FindItemByValue("Edit").Enabled = False
            'rtbMenu.FindItemByValue("New").Enabled = False
            rtbMenu.FindItemByValue("Search").Enabled = False
            rtbMenu.FindItemByValue("Delete").Enabled = False
            'Panel_content.Enabled = True
            Panel_personal.Enabled = True
            Panel_job.Enabled = True
            Panel_License.Enabled = True
            Panel_others.Enabled = True
 
            tb_username.Enabled = False
        ElseIf e.Item.Value = "Delete" Then
            If Request.QueryString("EmployeeID") <> "" Then
                Dim dc As New dcLRDBDataContext
                Dim i As Integer = 0
 
                Dim rec = (From p In dc.db_UserDBs Where p.UserID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).FirstOrDefault
                If Not IsNothing(rec) Then
                    dc.db_UserDBs.DeleteOnSubmit(rec)
                    dc.SubmitChanges()
                End If
 
                Dim rec2 = (From p In dc.db_Employee_Details Where p.UserID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).FirstOrDefault
                If Not IsNothing(rec2) Then
                    dc.db_Employee_Details.DeleteOnSubmit(rec2)
                    dc.SubmitChanges()
                End If
 
                Dim rec3 = (From p In dc.db_UserProjects Where p.UserID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).ToList
                If Not IsNothing(rec3) Then
                    For i = 0 To rec3.Count - 1
                        dc.deleteUserProject(rec3.Item(i).UP_ID)
                    Next
                    dc.SubmitChanges()
                End If
 
                Dim rec4 = (From p In dc.db_UserRoles Where p.UserID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).Count
                If rec4 > 0 Then
                    dc.deleteUserRole(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")))
                    dc.SubmitChanges()
                End If
 
                Dim rec5 = (From p In dc.db_Employee_Languages Where p.User_ID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).Count
                If rec5 > 0 Then
                    dc.deleteEmployeeLanguage(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")))
                    dc.SubmitChanges()
                End If
 
                Dim rec6 = (From p In dc.db_Employee_Abilities Where p.User_ID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).Count
                If rec6 > 0 Then
                    dc.deleteEmployeeAbility(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")))
                    dc.SubmitChanges()
                End If
 
                Dim rec7 = (From p In dc.db_Employee_Licenses Where p.UserID = GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))).Count
                If rec7 > 0 Then
                    dc.deleteEmployeeLicense_All(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID")))
                    dc.SubmitChanges()
                End If
 
                Page.ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "alert('User deleted successfully.');", True)
                Response.Redirect("~/HR/HR_employee.aspx")
 
            End If
        End If
    End Sub
    Protected Sub FileUploaded() Handles RadAsyncUpload1.FileUploaded
        Dim dc As New dcLRDBDataContext
 
        If Request.QueryString("EmployeeID") <> "" Then
            For Each file As UploadedFile In RadAsyncUpload1.UploadedFiles
                Dim rec = (From p In dc.db_Employee_Details Where p.Employee_ID = Request.QueryString("EmployeeID")).FirstOrDefault
                If Not rec Is Nothing Then
                    Dim bytes As Byte() = New Byte(file.ContentLength - 1) {}
                    file.InputStream.Read(bytes, 0, file.ContentLength)                   
                    rec.Photo = bytes
                    RadBinaryImage1.DataValue = bytes
                    RadBinaryImage1.Width = 100
                    RadBinaryImage1.ResizeMode = BinaryImageResizeMode.Fit
                    dc.SubmitChanges()
                End If
            Next
 
        Else
            Dim newRecord As New db_TmpPhoto
            For Each file As UploadedFile In RadAsyncUpload1.UploadedFiles
                Dim bytes As Byte() = New Byte(file.ContentLength - 1) {}
                file.InputStream.Read(bytes, 0, file.ContentLength)
                newRecord.Photo = bytes
                newRecord.Type = "Staff"
                RadBinaryImage1.DataValue = bytes
                RadBinaryImage1.Width = 100
                RadBinaryImage1.ResizeMode = BinaryImageResizeMode.Fit
                dc.db_TmpPhotos.InsertOnSubmit(newRecord)
                dc.SubmitChanges()
                HttpContext.Current.Session("TmpUID_Emp_Detail") = newRecord.ID
            Next
 
        End If
    End Sub
 
    Public Function ResizeImage(ByVal stream As IO.Stream) As Bitmap
        Dim originalImage As System.Drawing.Image = Bitmap.FromStream(stream)
        Dim height As Integer = 331
        Dim width As Integer = 495
        Dim scaledImage As New Bitmap(width, height)
        Using g As Graphics = Graphics.FromImage(scaledImage)
            g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic
            g.DrawImage(originalImage, 0, 0, width, height)
            g.DrawString("Employee Photo ", New Font("Tahoma", 18), Brushes.White, New PointF(0, 0))
            Return scaledImage
        End Using
    End Function
 
    Protected Sub CheckBoxList_Language_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxList_Language.DataBound
        If Request.QueryString("EmployeeID") <> "" Then
 
            Dim results As IEnumerable = GetLanguageArrayByUserID(GetUserIDbyEmployeeID(HttpContext.Current.Session("SelectedEmployeeID")))
            Dim chkstr As String = ""
            For Each item In results
                For Each cb As ListItem In CheckBoxList_Language.Items
                    If Trim(item.ToString).Contains(cb.Text) Then
                        If Trim(item.ToString).Contains("YES") Then
                            cb.Selected = True
                        End If
                    End If
                Next
            Next
        End If
    End Sub
 
    Protected Sub CheckBoxList_Ability_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxList_Ability.DataBound
        If Request.QueryString("EmployeeID") <> "" Then
 
            Dim results As IEnumerable = GetAbilityArrayByUserID(GetUserIDbyEmployeeID(HttpContext.Current.Session("SelectedEmployeeID")))
            Dim chkstr As String = ""
            For Each item In results
                For Each cb As ListItem In CheckBoxList_Ability.Items
                    If Trim(item.ToString).Contains(cb.Text) Then
                        If Trim(item.ToString).Contains("YES") Then
                            cb.Selected = True
                        End If
                    End If
                Next
            Next
        End If
    End Sub
 
    Protected Sub CheckBoxList_RoleType_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBoxList_RoleType.DataBound
        If Request.QueryString("EmployeeID") <> "" Then
            Dim rList = Split(GetRoleTypeIDByUserID(GetUserIDbyEmployeeID(Request.QueryString("EmployeeID"))), ",")
            Dim i As Integer = 0
            Dim j As Integer = 0
            Dim chkboxlb As CheckBoxList
            chkboxlb = DirectCast(FindControl("CheckBoxList_RoleType"), CheckBoxList)
 
            'Dim results As IEnumerable = ODS_RoleType.[Select]()
            Dim results As IEnumerable = GetRoleTypeArrayByUserID(GetUserIDbyEmployeeID(HttpContext.Current.Session("SelectedEmployeeID")))
            'Dim chkstr As String = "HaveRight=" + Chr(34) + "Y" + Chr(34)
            Dim chkstr As String = ""
            For Each item In results
                For Each cb As ListItem In CheckBoxList_RoleType.Items
                    'If item.Value("HaveRight") = "Y" Then
                    '    cb.Selected = True
                    'End If
                    'chkstr = item.ToString
                    If Trim(item.ToString).Contains(cb.Text) Then
                        If Trim(item.ToString).Contains("YES") Then
                            cb.Selected = True
                        End If
                    End If
                Next
            Next
 
            'For Each item As ListItem In Me.CheckBoxList_RoleType.Items
            '    If item.Value("HaveRight") = "Y" Then
            '        item.Selected = True
            '    End If
            'Next
 
            ''For j = 0 To chkboxlb.Items.Count - 1
            ''    For i = 0 To rList.Length - 1
            ''        If rList(i).ToString = chkboxlb.DataValueField(j) Then
            ''            chkboxlb.Items(j).Selected = True
            ''        End If
            ''    Next
            ''Next
        End If
    End Sub
    Private Function CheckDuplicate() As Boolean
        Dim dc As New dcLRDBDataContext
        Dim rec = (From u In dc.db_UserDBs Where u.username = tb_username.Text.Trim.ToLower And u.Disabled = 0)
        If Not rec Is Nothing Then
            If rec.Count > 0 Then
                Return True
            Else
                Return False
            End If
        Else
            Return False
        End If
        dc.Dispose()
    End Function
 
    Protected Sub tb_username_OnTextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles tb_username.TextChanged
 
        If CheckDuplicate() = True Then
            lb_message.Text = "Username already exists. Please assign another username"
            lb_message.Visible = True
        Else
            lb_message.Text = ""
            lb_message.Visible = False
        End If
 
    End Sub
 
    Protected Sub RadDropDownList_dept_OnSelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadDropDownList_dept.SelectedIndexChanged
 
        '        If RadDropDownList_dept.SelectedText <> RadDropDownList_dept.DefaultMessage And RadDropDownList_dept.SelectedText <> "" And RadDropDownList_supervisor.Enabled = False Then
        RadDropDownList_supervisor.Enabled = True
        RadDropDownList_supervisor.ClearSelection()
        RadDropDownList_supervisor.SelectedText = RadDropDownList_supervisor.DefaultMessage
        RadDropDownList_supervisor.DataBind()
        'End If
    End Sub
 
    Public Sub SaveEmpDetail(ByVal EID As Integer)
 
        Dim dc As New dcLRDBDataContext
        Dim rec = (From p In dc.db_Employee_Details Where p.Employee_ID = EID).FirstOrDefault
        If Not rec Is Nothing Then
            rec.Last_Name = tb_last_name.Text
            rec.Middle_Name = tb_middle_name.Text
            rec.First_Name = tb_first_name.Text
            rec.Employee_Display_Name = tb_display_name.Text
            rec.Gender = rbl_gender.SelectedValue
            rec.Date_of_Birth = RadDatePicker_birthday.SelectedDate
            'rec.Blood_Type = tb_blood_type.Text
            If rbl_blood_type.SelectedValue <> "" Then
                rec.Blood_Type = rbl_blood_type.SelectedValue
            End If
            If tb_email.Text <> "" Then
                rec.Email = tb_email.Text
            End If
            If tb_phone.Text <> "" Then
                rec.Phone = tb_phone.Text
            End If
            If tb_addr.Text <> "" Then
                rec.Address = tb_addr.Text
            End If
            If RadDropDownList_location.SelectedValue <> "" Then
                rec.Location_ID = RadDropDownList_location.SelectedValue
            End If
            If RadDropDownList_dept.SelectedValue <> "" Then
                rec.Dept_ID = RadDropDownList_dept.SelectedValue
            End If
            If RadDropDownList_job_title.SelectedValue <> "" Then
                rec.Job_Title_ID = RadDropDownList_job_title.SelectedValue
            End If
            If Tb_prior_exp.Text <> "" Then
                rec.Prior_Exp = Tb_prior_exp.Text
            End If
 
            If RadDropDownList_supervisor.SelectedValue <> "" Then
                rec.Supervisor_UserID = RadDropDownList_supervisor.SelectedValue
            End If
            If tb_point_of_hire.Text <> "" Then
                rec.Point_of_Hire = tb_point_of_hire.Text
            End If
 
            rec.Start_date = RadDatePicker_start_date.SelectedDate
            If Not IsNothing(RadDatePicker_end_date.SelectedDate) Then
                rec.End_date = RadDatePicker_end_date.SelectedDate
            End If
            If tb_notes.Text <> "" Then
                rec.Notes = tb_notes.Text
            End If
 
            rec.LastUpdateDate = DateTime.Now
            rec.LastUpdateBy = HttpContext.Current.Session("UserID")
            dc.SubmitChanges()
        End If
 
        Dim dc2 As New dcLRDBDataContext
        For i = 0 To CheckBoxList_RoleType.Items.Count - 1
            Dim chb_value As String = ""
            If CheckBoxList_RoleType.Items(i).Selected = True Then  'checkbox checked
                chb_value = CheckBoxList_RoleType.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_UserRoles Where p.UserID = GetUserIDbyEmployeeID(EID).ToString And p.RoleTypeID = chb_value And p.ProjectID = HttpContext.Current.Session("SelectedPID").ToString).FirstOrDefault
                If IsNothing(rec2) Then 'not exist
                    Dim newRecord2 As New db_UserRole
                    dc2.db_UserRoles.InsertOnSubmit(newRecord2)
                    newRecord2.RoleTypeID = chb_value
                    newRecord2.UserID = GetUserIDbyEmployeeID(EID).ToString
                    newRecord2.ProjectID = HttpContext.Current.Session("SelectedPID").ToString
 
                    newRecord2.CreateDate = DateTime.Now
                    newRecord2.CreateBy = HttpContext.Current.Session("UserID")
 
                    newRecord2.LastUpdateDate = DateTime.Now
                    newRecord2.LastupdateBy = HttpContext.Current.Session("UserID")
                    dc2.SubmitChanges()
                End If
            Else    'checkbox unchecked
                chb_value = CheckBoxList_RoleType.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_UserRoles Where p.UserID = GetUserIDbyEmployeeID(EID).ToString And p.RoleTypeID = chb_value And p.ProjectID = HttpContext.Current.Session("SelectedPID").ToString).FirstOrDefault
                If Not IsNothing(rec2) Then 'exists in db, but user uncheck, need delete
                    dc2.db_UserRoles.DeleteOnSubmit(rec2)
                    dc2.SubmitChanges()
                End If
            End If
        Next
 
        For i = 0 To CheckBoxList_Language.Items.Count - 1
            Dim chb_value As String = ""
            If CheckBoxList_Language.Items(i).Selected = True Then  'checkbox checked
                chb_value = CheckBoxList_Language.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_Employee_Languages Where p.User_ID = GetUserIDbyEmployeeID(EID).ToString And p.Language_ID = chb_value).FirstOrDefault
                If IsNothing(rec2) Then 'not exist
                    Dim newRecord2 As New db_Employee_Language
                    dc2.db_Employee_Languages.InsertOnSubmit(newRecord2)
                    newRecord2.Language_ID = chb_value
                    newRecord2.User_ID = GetUserIDbyEmployeeID(EID).ToString
 
                    newRecord2.LastUpdateDate = DateTime.Now
                    newRecord2.LastUpdateBy = HttpContext.Current.Session("UserID")
                    dc2.SubmitChanges()
                End If
            Else    'checkbox unchecked
                chb_value = CheckBoxList_Language.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_Employee_Languages Where p.User_ID = GetUserIDbyEmployeeID(EID).ToString And p.Language_ID = chb_value).FirstOrDefault
                If Not IsNothing(rec2) Then 'exists in db, but user uncheck, need delete
                    dc2.db_Employee_Languages.DeleteOnSubmit(rec2)
                    dc2.SubmitChanges()
                End If
            End If
        Next
 
        For i = 0 To CheckBoxList_Ability.Items.Count - 1
            Dim chb_value As String = ""
            If CheckBoxList_Ability.Items(i).Selected = True Then  'checkbox checked
                chb_value = CheckBoxList_Ability.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_Employee_Abilities Where p.User_ID = GetUserIDbyEmployeeID(EID).ToString And p.Ability_ID = chb_value).FirstOrDefault
                If IsNothing(rec2) Then 'not exist
                    Dim newRecord2 As New db_Employee_Ability
                    dc2.db_Employee_Abilities.InsertOnSubmit(newRecord2)
                    newRecord2.Ability_ID = chb_value
                    newRecord2.User_ID = GetUserIDbyEmployeeID(EID).ToString
 
                    newRecord2.LastUpdateDate = DateTime.Now
                    newRecord2.LastUpdateBy = HttpContext.Current.Session("UserID")
                    dc2.SubmitChanges()
                End If
            Else    'checkbox unchecked
                chb_value = CheckBoxList_Ability.Items(i).Value.ToString
                Dim rec2 = (From p In dc2.db_Employee_Abilities Where p.User_ID = GetUserIDbyEmployeeID(EID).ToString And p.Ability_ID = chb_value).FirstOrDefault
                If Not IsNothing(rec2) Then 'exists in db, but user uncheck, need delete
                    dc2.db_Employee_Abilities.DeleteOnSubmit(rec2)
                    dc2.SubmitChanges()
                End If
            End If
        Next
 
        dc.Dispose()
        dc2.Dispose()
        Page.ClientScript.RegisterStartupScript(Page.GetType(), "MessageBox", "alert('User details saved successfully.');", True)
        'lb_message.Text = "User details saved successfully."
        lb_message.Visible = True
        lb_message.ForeColor = Drawing.Color.Red
 
        rtbMenu.FindItemByValue("Edit").Enabled = True
        rtbMenu.FindItemByValue("Save").Enabled = False
        rtbMenu.FindItemByValue("Cancel").Enabled = False
        'rtbMenu.FindItemByValue("New").Enabled = True
        rtbMenu.FindItemByValue("Search").Enabled = True
        'Panel_content.Enabled = False
        Panel_personal.Enabled = False
        Panel_job.Enabled = False
 
        Response.AddHeader("REFRESH", "1;URL=HR_employee.aspx")
    End Sub
 
    Protected Sub btnback3_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnback3.Click
        'Response.Redirect(prevPage)
        GoToNextTab("Personal Info.", "Tab_personal")
    End Sub
    Protected Sub btnback4_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnback4.Click
        'Response.Redirect(prevPage)
        GoToNextTab("Job Particulars", "Tab_job")
    End Sub
    Protected Sub btnback5_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnback5.Click
        GoToNextTab("Other Info.", "Tab_Others")
    End Sub
    Protected Sub btnback6_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnback6.Click
        GoToNextTab("License", "Tab_license")
    End Sub
 
    Protected Sub btnStep2_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnStep2.Click
        GoToNextTab("Job Particulars", "Tab_job")
    End Sub
 
    Protected Sub btnStep3_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnStep3.Click
        GoToNextTab("Other Info.", "Tab_Others")
    End Sub
 
    Protected Sub btnStep4_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnStep4.Click
        GoToNextTab("License", "Tab_license")
    End Sub
 
    Protected Sub btnStep5_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnStep5.Click
        GoToNextTab("Training Course", "Tab_training")
    End Sub
 
    Private Sub GoToNextTab(ByVal TabText As String, ByVal PageViewID As String)
 
        Dim NextTab As RadTab = RadTabStrip1.FindTabByText(TabText)
        NextTab.Enabled = True
        NextTab.Selected = True
        GoToNextPageView(PageViewID)
 
    End Sub
 
    Private Sub GoToNextPageView(ByVal PageViewID As String)
 
        Dim PageView As RadPageView = RadMultiPage1.FindPageViewByID(PageViewID)
        If PageView Is Nothing Then
            PageView = New RadPageView()
            PageView.ID = PageViewID
            RadMultiPage1.PageViews.Add(PageView)
        End If
        PageView.Selected = True
    End Sub
 
End Class



Joe
Top achievements
Rank 1
 answered on 23 Jul 2013
1 answer
159 views
Hi All,

I have to allow user to select either single value or multiple values from drop down based on one variable. Lets say if  variable value is 1 then user can select only single value from dropdownlist and if variable value is 2 then user can select multiple values from dropdownlist. we can achieve it by providing one simple property checkboxes = true or false from server side but I am looking for client side code to achieve this task.

Anyone have idea?

Thanks,
Ruchi
Boyan Dimitrov
Telerik team
 answered on 23 Jul 2013
3 answers
219 views
Hello,

I have a combobox in a GridTemplateColumn that is configured for LoadOnDemand. I need to subscribe to a OnSelectedIndexChanged event in Edit Mode to populate other controls when a value is selected but the event signature does not recoginize the RadComboBoxSelectedIndexChangedEventArgs delegate I reference in the OnSelectedIndexChanged method.

I cannot determine what the issue is.

Thank you,

Steve O.


Code Behind
---------------------------------------------------------------------------------------------------------------------------------------------------------------------

using

 

System;

 

 

 

 

 

using System.Collections;

 

 

 

 

 

using System.Configuration;

 

 

 

 

 

using System.Data;

 

 

 

 

 

using System.Linq;

 

 

 

 

 

using System.Web;

 

 

 

 

 

using System.Web.Security;

 

 

 

 

 

using System.Web.UI;

 

 

 

 

 

using System.Web.UI.WebControls;

 

 

 

 

 

using System.Web.UI.WebControls.WebParts;

 

 

 

 

 

using System.Web.UI.HtmlControls;

 

 

 

 

 

using System.Xml.Linq;

 

 

 

 

 

using Telerik;

 

 

 

 

 

using

 

Telerik.Web.UI;

 

 


using
System.Collections.Generic;

 

 

 

 

 

using SubSonic;
 

 

 

 

using System.Web.Services;

 

 

using System.Data.SqlClient;

 

 

 

 

 

namespace CIMT.Forms

 

 

 

{

 

 

private void Roster_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)

 

{

 

 

GridEditableItem editedItem = (sender as DropDownList).NamingContainer as GridEditableItem;

 

 

int id = Convert.ToInt32((editedItem["ResourceId"].Controls[0] as DropDownList).SelectedValue);

 

 

StoredProcedure sp = new StoredProcedure("Get_Resource_Details");

 

sp.Command.AddParameter(

"@id", @id, DbType.Int32);

 

 

 

sp.Command.AddOutputParameter(

"@position");

 

 

 

sp.Command.AddOutputParameter(

"@agency");

 

 

 

sp.Execute();

position.Text =

Convert.ToString(sp.OutputValues[0]).Trim();

 

 

 

agency.Text =

Convert.ToString(sp.OutputValues[1]);

 

 

 

}
}

ASPX
---------------------------------------------------------------------------------------------------------------------------------------------------------------------

<DetailTables>

 

 

 

<telerik:GridTableView runat="server"

 

 

DataKeyNames="RosterId"

 

 

 

Name="Rosters"


GridLines
="Both"

 

 

 

Width="100%"


DataSourceID
="SqlDataSource4"

 

 

 

BorderStyle="Solid"

 

 

BorderWidth="1px"

 

 

BorderColor="Blue"

 

 

CommandItemDisplay="Top"

 

 

ExpandCollapseColumn-CollapseImageUrl="~/Images/zoom-out-icon[1].png"

 

 

ExpandCollapseColumn-ExpandImageUrl="~/Images/zoom-in-icon[1].png" >

 

 

 

<ParentTableRelation>

 

 

 

<telerik:GridRelationFields MasterKeyField="UnitLogId" DetailKeyField="UnitLogId" />

 

 

 

</ParentTableRelation>

 

 

 

<ExpandCollapseColumn ExpandImageUrl="~/Images/zoom-in-icon[1].png" CollapseImageUrl="~/Images/zoom-out-icon[1].png"></ExpandCollapseColumn>

 

 

 

<EditFormSettings>

 

 

 

<EditColumn UniqueName="EditCommandColumn" ButtonType="ImageButton"

 

 

CancelImageUrl="~/Images/filterCancel.png"

 

 

 

UpdateImageUrl="~/Images/selecttag.png"

 

 

InsertImageUrl="~/Images/selecttag.png"

 

 

EditImageUrl="~/Images/edit-icon[1].png">

 

 

 

</EditColumn>

 

 

 

</EditFormSettings>

 

 

 

<Columns>

 

 

 

<telerik:GridTemplateColumn DataField="ResourceId"

 

 

UniqueName="ResourceId"

 

 

HeaderText="Resource">

 

 

 

<ItemTemplate>

 

 

 

<%

 

 

 

# GetName(Convert.ToString(Eval("ResourceId")))%>

 

 

</ItemTemplate>

 

 

 

<HeaderStyle Font-Bold="True"></HeaderStyle>

 

 

 

<ItemStyle Wrap="false" />

 

 

 

<EditItemTemplate>

 

 

 

 

<telerik:RadComboBox ID="rcbUnitLeader" 
 

 

runat="server"

 

 

 

 

AutoPostBack="true" 
 

 

HighlightTemplatedItems="true"

 

 

DropDownWidth="350px"

 

 

EnableLoadOnDemand="true"

 

 

EnableVirtualScrolling="true"

 

 

 

ShowMoreResultsBox="true"

 

 

OnSelectedIndexChanged="Roster_SelectedIndexChanged"

 

 

 

EmptyMessage="Select Roster Resource"

 

 

 

OnItemsRequested="RosterResource_ItemsRequested"

 

 

 

Height="200px">

 

 

 

<HeaderTemplate>

 

 

 

<table style="width: 250px; text-align: left;">

 

 

 

<tr>

 

 

 

<td style="width: 200px;">Name</td>

 

 

 

<td style="width: 50px;">Agency</td>

 

 

 

</tr>

 

 

 

</table>

 

 

 

</HeaderTemplate>

 

 

 

<ItemTemplate>

 

 

 

<table style="width: 250px; text-align: left; white-space:nowrap">

 

 

 

<tr>

 

 

 

<td style="width: 200px;"><%# DataBinder.Eval(Container.DataItem, "Name") %></td>

 

 

 

<td style="width: 50px;"><%# DataBinder.Eval(Container.DataItem, "Agency") %></td>

 

 

 

</tr>

 

 

 

</table>

 

 

 

</ItemTemplate>

 

 

 

</telerik:RadComboBox>

 

 

 

</EditItemTemplate>

 

 

 

</telerik:GridTemplateColumn>

 

 

 

 

Boyan Dimitrov
Telerik team
 answered on 23 Jul 2013
3 answers
191 views
Hi

There are few radinputs in my page with validators. Is it possible to display the error message inside the respective controls?

Thanks
Ivy
Konstantin Dikov
Telerik team
 answered on 23 Jul 2013
5 answers
107 views
So I am starting off with 
var myScheduler = $find('<%=RadScheduler1.ClientID %>');
How would I drill down and access and update the SchedulerResourceCollection?

Thanks.
Plamen
Telerik team
 answered on 23 Jul 2013
Narrow your results
Selected tags
Tags
+? more
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Chester
Top achievements
Rank 1
Iron
Simon
Top achievements
Rank 1
Iron
Douglas
Top achievements
Rank 2
Iron
Iron
SUNIL
Top achievements
Rank 3
Iron
Iron
Iron
Marco
Top achievements
Rank 3
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?