function fnValidate() {
	var himsValidator = [new hims_ctl_val('ctl00_CP_EmployeeCodeTextBox', "Employee Code", "T", "", "", "", 20),
		new hims_ctl_val('ctl00_CP_ReportDatePickerControl1' + '_DateTextbox', "Report Date", "T", "", "", "", 10),
		new hims_ctl_val('ctl00_CP_LeaveTypeIdDropDownList', "Leave Type", "T", "", "", "", 20),
		new hims_ctl_val('ctl00_CP_FromDatePickerControl' + '_DateTextbox', "From Date", "T", "", "", "", 10),
		new hims_ctl_val('ctl00_CP_ToDatePickerControl3' + '_DateTextbox', "To Date", "T", "", "", "", 10)];
	if (fnDoValidate(himsValidator))
		return true;
	else
		return false;
}
//function cpageLoad() {
//	var browser=navigator.userAgent.toLowerCase();
//	if(browser.indexOf('firefox')>=0){		
//		$("#ctl00_CP_FileUpload1").fileUpload({
//			'uploader' : '../../../UserControls/MultiFileUpload/uploader.swf',
//			'cancelImg': '../../../Images/cancel.png',
//			'script': '../../../UserControls/MultiFileUpload/Upload.ashx?ASPSESSID=' + $('#ctl00_CP_hdnSessionid').val(),
//			'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
//			'multi': false,
//			'auto': true
//		});
//	}
//	else {
//		$("#ctl00_CP_FileUpload1").fileUpload({
//			'uploader': '../../../UserControls/MultiFileUpload/uploader.swf',
//			'cancelImg': '../../../Images/cancel.png',
//			'script': '../../../UserControls/MultiFileUpload/Upload.ashx',
//			'fileExt': '*.jpg;*.jpeg;*.gif;*.png',
//			'multi': false,
//			'auto': true
//		});
//	}
//}


var reader = new FileReader();
var filename = '';
reader.onload = function (e) {
}
function readURL(input) {
    if (input.files && input.files[0]) {
        reader.readAsDataURL(input.files[0]);
        filename = input.files[0].name;
        if ($('#ctl00_CP_UploadConfigurationHiddenField').val() == "Azure") {
            ajaxFileUploadAzure();
        }
        else {
            ajaxFileUpload();
        }
        
    }
}
function OpenFileUpload() {
    $('#flUpload').click();
}
function LoadingMessage(msg1, msg2) {
    $('#dvTestLoadingmsg').show();
    $('#spn1msg').html(msg1);
    $('#spn2msg').html(msg2);
    $('.hls-bg').show();
}
function CloseLoadingpopup() {
    $('#dvTestLoadingmsg').hide();
    $('.hls-bg').hide();
}
function ajaxFileUpload() {
    if (ValidateImageDetails()) {
        if (ValidateImageSize()) {
            LoadingMessage('Uploading', '<b>Please Wait</b>');
            $("#loading").ajaxStart(function () {
                $(this).show();
            }).ajaxComplete(function () {
                $(this).hide();
            });
            $.ajaxFileUpload({
                url: '/UserControls/MultiFileUpload/common-file-upload.ashx',
                secureuri: false,
                fileElementId: 'flUpload',
                dataType: 'text',
                contentType: "application/json; charset=utf-8",
                data: { name: 'logan', id: 'id', hdn: '1' },
                success: function (response, status) {
                    if (response == "-007") {
                        alert('Cannot upload file as the used space exceeds allocated space')
                        return
                    }
                    if (response == "-008") {
                        alert('Invalid Extention')
                        return
                    }
                    if (response == "-009") {
                        alert('Cannot include / or .. in a filename')
                        return;
                    }
                    /*var str = response;
                    str = str.replace('<pre style="word-wrap: break-word; white-space: pre-wrap;">','');
                    str = str.replace('</pre>','');				
                    $('#hdnFileName').val(str);*/
                    window.setTimeout(function () {
                        CloseLoadingpopup();
                        $("#ctl00_CP_Label2").text("Uploaded Successfully");
                    }, 100);
                },
                error: function (response, status, e) {
                    window.setTimeout(function () {
                        CloseLoadingpopup();
                    }, 100);
                }
            })
            return false;
        }
    }
}

function ajaxFileUploadAzure() {
    if (ValidateImageDetails()) {
        if (ValidateImageSize()) {
            LoadingMessage('Uploading', '<b>Please Wait</b>');
            $("#loading").ajaxStart(function () {
                $(this).show();
            }).ajaxComplete(function () {
                $(this).hide();
            });

            var ScreenTypeId = 5;
            if (window.location.pathname == "/Pages/Communication/MyLeaveRequest.aspx")
                ScreenTypeId = 34;
            else
                ScreenTypeId = 5;
            var UserSourceTypeId = $('#ctl00_CP_UserSourceTypeHiddenField').val();
            var UserSourceId = $('#ctl00_CP_UserSourceIdHiddenField').val();
            var DocumentId = $('#ctl00_CP_LeaveHiddenField1').val();
            var DocumentName = filename;
            var GUID = 0;

            if (DocumentId == 0)
                GUID = 1;

            $.ajaxFileUpload({
                url: '/UserControls/MultiFileUpload/DocumentUpload.ashx?ScreenTypeId=' + ScreenTypeId + '&UserSourceTypeId=' + UserSourceTypeId + '&UserSourceId=' + UserSourceId + '&DocumentId=' + DocumentId + '&DocumentName=' + DocumentName + '&GUID=' + GUID,
                secureuri: false,
                fileElementId: 'flUpload',
                dataType: 'text',
                contentType: "application/json; charset=utf-8",
                data: { name: 'logan', id: 'id', hdn: '1' },
                success: function (response, status) {
                    if (response == "-007") {
                        alert('Cannot upload file as the used space exceeds allocated space')
                        return
                    }
                    if (response == "-008") {
                        alert('Invalid Extention')
                        return
                    }
                    if (response == "-009") {
                        alert('Cannot include / or .. in a filename')
                        return;
                    }
                    /*var str = response;
                    str = str.replace('<pre style="word-wrap: break-word; white-space: pre-wrap;">','');
                    str = str.replace('</pre>','');				
                    $('#hdnFileName').val(str);*/
                    window.setTimeout(function () {
                        CloseLoadingpopup();
                        $("#ctl00_CP_Label2").text("Uploaded Successfully");

                    }, 100);
                },
                error: function (response, status, e) {
                    window.setTimeout(function () {
                        CloseLoadingpopup();
                    }, 100);
                }
            })
            return false;
        }
    }
}
function isFile(file) {
    var video = /\.(xls|)$/i;
    var CSV = /\.(csv|)$/i;
    var xlsx = /\.(xlsx|)$/i;
    var jpg = /\.(jpg|)$/i;
    var png = /\.(png|)$/i;
    var jpeg = /\.(jpeg|)$/i;
    var gif = /\.(gif|)$/i;
    var txt = /\.(.txt|)$/i;
    var doc = /\.(.doc|)$/i;
    var pdf = /\.(.pdf|)$/i;
    var docx = (/\.(.docx|)$/i);
     
    if ((/\.(jpg|jpeg|png|doc|docx|pdf|)$/i).test(file.toLowerCase())) {
            return true;
        }
        else {
            return false;
        }
     
    //if ((/\.(jpg|jpeg|png|csv|xls|txt|doc|docx|pdf|)$/i).test(file))
    //    return true;
    //else
    //    return false;
}
function ValidateImageDetails() {
    var fields;
    fields = "";
    var file = document.getElementById('flUpload').value;
    var iSize = ($("#flUpload")[0].files[0].size / 1024);
    iSize = (Math.round((iSize / 1024) * 100) / 100);

    //if (isFile(document.getElementById('flUpload').value) == false || document.getElementById('flUpload').value == null) {
    //    fields = fields + "\n Invalid file ";
    //}
    //else if (iSize > 1) {
    //    alert('File should be less than 1 MB');
    //    return false;
    //}
    if (fields != "") {
        fields = "Please fill in the following details:\n------------------------------------" + fields ;
        alert(fields);
        return false;
    }
    else {
        return true;
    }
}

function ValidateImageSize() {
    var fields;
    fields = "";
    var file = document.getElementById('flUpload').value;
    var iSize = ($("#flUpload")[0].files[0].size / 1024);
    //iSize = (Math.round((iSize / 1024) * 100) / 100);

    //else if (iSize > 1) {
    //    alert('File should be less than 1 MB');
    //    return false;
    //}
    if ($('#ctl00_CP_AttachmentSizeHiddenField').val() != '') {
        if (iSize > $('#ctl00_CP_AttachmentSizeHiddenField').val()) {
            alert('File should be less than ' + $('#ctl00_CP_AttachmentSizeHiddenField').val() + ' KB');
            return false;
        }

        else {
            return true;
        }
    }
    else
    {
        return true;
    }
}