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