﻿var baseUrl = "../" + $("#hdnurlAddl").val();
function AvoidSpace(event) {
    var k = event ? event.which : window.event.keyCode;
    if (k == 32) return false;
}
var bankPage = window.location.href.toString().toLowerCase().indexOf('canararesponse') > 0;
var captcha = null
var captchaReset = null

function initHome() {
    baseUrl = "../" + $("#hdnurlAddl").val();
    loadLog();
    //captcha = new Captcha($('#canvas'), {length: 4});
    //captchaReset = new Captcha($('#canvasReset'), {length: 4});
    //$('.cssRefresh').on('click', function () {
    //    captcha.refresh();
    //});
    //$('.cssRefreshReset').on('click', function () {
    //    captchaReset.refresh();
    //});
    $('input').on('keypress', function (e) {
        if (e.which == 32)
            return false;
    });
    $('.logform input').keypress(function (e) {
        if (e.which == 13) {
            log();
            return false;
        }
    });
    $(".btnSubmit").click(function () {
        log();
    });
    

    $('#txtNewPwd').on('keyup', function () {
        var p = 0;
        var re = /^(?=.*[A-Z]).{1,}$/; p = p + re.test($(this).val()) ? 20 : 0;
        re = /^(?=.*[a-z]).{1,}$/; p = p + (re.test($(this).val()) ? 20 : 0);
        re = /^(?=.*[!@#$%^&*]).{1,}$/; p = p + (re.test($(this).val()) ? 20 : 0);
        re = /^(?=.*\d).{1,}$/; p = p + (re.test($(this).val()) ? 20 : 0);
        p = p + ($(this).val().length>=8 ? 20 : 0);
        re = /^(?=.*\d)(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z]).{8,}$/; if (re.test($(this).val())) { p = 100;};
        

        $("#divPStrength").css('width', p + '%');
        if(p===20) $("#divPStrength").css('background-color', 'red');
        if(p===40) $("#divPStrength").css('background-color', 'grey');
        if(p===60) $("#divPStrength").css('background-color', 'lightbrown');
        if(p===80) $("#divPStrength").css('background-color', 'orange');
        if(p===100) $("#divPStrength").css('background-color', 'green');
    })

    $(".btnSubmitOtp").click(function () {

        var LogID = $.trim($("[name*=txtTempLoginId]").val());
        var Pwd = $.trim($("[name*=txtTempPwd]").val());
        var NPwd = $.trim($("[name*=txtNewPwd]").val());
        var CPwd = $.trim($("[name*=txtConfirmPwd]").val());
       
        if (LogID == '') {
            //bootbox.alert({ title: "Required !", message: "Login ID required" });
            //bootbox.alert("This is the default alert!");
            showAlert("Login ID Required", 'error');
            return;
        }
        if (Pwd == '') { showAlert("OTP Required", 'error'); return; }
        if (NPwd == '') { showAlert("New Password Required", 'error'); return; }
        if (CPwd == '') { showAlert("Confirm Password Required", 'error'); return; }
        if (NPwd != CPwd) { showAlert("New password and Confirm password does not match", 'error'); return; }
        if (NPwd.indexOf('\\') >= 0) { showAlert('Symbol "\\" not allowed ', 'error'); return; }
        if (NPwd.indexOf('&') >= 0) { showAlert('Symbol "&" not allowed ', 'error'); return; }
        if (NPwd.indexOf('#') >= 0) { showAlert('Symbol "#" not allowed ', 'error'); return; }
        if (NPwd.indexOf('"') >= 0) { showAlert('Symbol "\"" not allowed ', 'error'); return; }
        if (NPwd.indexOf('\'') >= 0) { showAlert('Symbol "\'" not allowed ', 'error'); return; }
        if (NPwd.indexOf('+') >= 0) { showAlert('Symbol "+" not allowed ', 'error'); return; }
        if (NPwd.length >30) { showAlert('Maximum 30 letters only allowed', 'error'); return; }
        var re = /^(?=.*\d)(?=.*[!@#$%^&*])(?=.*[a-z])(?=.*[A-Z]).{8,}$/;
        if (!re.test(NPwd)) { showAlert("Password must have min 8 letter with at least a symbol, number, upper and lower case letters", 'error'); return; }
        var lst = JSON.stringify({
            'TBL': [{ 'LoginId': LogID, 'Pwd': Pwd, 'NPwd': NPwd, 'CPwd': CPwd }]
        });
        var rwItem = "{'data': '" + lst + "'}";

        $.ajax({
            type: "POST",
            url: baseUrl+ "/Apps/TempLogin",
            data: rwItem,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {
                
                sessionStorage.setItem('auth', JSON.stringify(response));

                var resp = response;

                //application status completed
                if (resp.Result == "2") {
                    $('#first_tab').trigger('click');
                    $('.divTempLogin').hide();
                    showAlert('Password changed successfully...', 'success');
                    return;
                }

                if (resp.Result != "1") {
                    showAlert(resp.Error, 'error');
                    return;
                }


            },
            error: function (r) {
                if (r.responseText != '')
                    alert(r.responseText);
            },
            failure: function (r) {
                if (r.responseText != '')
                    alert(r.responseText);
            }
        });
        return false;
    });

    //btnGenOTP    GenerateTempOTP
    $(".btnGenOTP").click(function () {
        var LogID = $.trim($("[name*=txtTempLoginId]").val());
        var Pwd = $.trim($("[name*=txtTempPwd]").val());
        if (LogID == '') {
            //bootbox.alert({ title: "Required !", message: "Login ID required" });
            //bootbox.alert("This is the default alert!");
            showAlert("Mobile Number Required", 'error');
            return;
        }
        //if (LogID.length != 10) {
        //    showAlert("Mobile Number should be 10 character", 'error');
        //    return;
        //}
        //const ans = captchaReset.valid($('input[name="txtCaptchaReset"]').val());
        //if (!ans) {
        //    showAlert("Invalid Captcha", 'error');
        //    return;
        //}
        var lst = JSON.stringify({
            'TBL': [{ 'LoginId': LogID, 'Pwd': Pwd }]
        });
        var rwItem = "{'mobile': '" + LogID + "'}";
        $(".divTempLogin").hide();
        $.ajax({
            type: "POST",
            url: baseUrl + "/Apps/GenerateTempOTP",
            data: rwItem,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function (response) {
                //var resp = JSON.parse(response.d);
                var resp = response;


                //application status completed
                if (resp == "1") {
                    $(".divTempLogin").show();
                    return;
                }

                if (resp != "1") {
                    showAlert(resp, 'error');
                    return;
                }


            },
            error: function (r) {
                if (r.responseText != '')
                    alert(r.responseText);
            },
            failure: function (r) {
                if (r.responseText != '')
                    alert(r.responseText);
            }
        });
        return false;
    });

    $("#sidebarCollapse").on('click', function () {
        $("#sidebar").toggleClass('active');
    });

    $('#first_tab').click(function () {
        if (!$('#first').hasClass('show')) {
            $('#second').removeClass('show');
            $('#first').addClass('show');
        }
    });
    $('#second_tab').click(function () {
        if (!$('#second').hasClass('show')) {
            $('#first').removeClass('show');
            $('#second').addClass('show');
        }
    });

    $(".toggle-password").click(function () {
        var input = $($(this).attr("toggle"));
        if ($(this).hasClass('glyphicon-eye-open')) {
            $(this).removeClass('glyphicon-eye-open');
            $(this).addClass('glyphicon-eye-close');
            input.attr("type", "password");
        }
        else {
            $(this).removeClass('glyphicon-eye-close');
            $(this).addClass('glyphicon-eye-open');
            input.attr("type", "text");
        }

    });

}
function loadEdit() {
    var tkt = sessionStorage.getItem("auth");
    if (tkt != null) {
        $('.modal-backdrop').show();
        $('.loader1').parent().show();
        $.get(baseUrl +'/U/EditChoice?agl=' + AngLoaded + '&data=' + tkt, function (data) {
            var eMsg = "";
            eMsg = $(data).filter('.logError').val();
            if (eMsg != "") {
                $("#lblRst").show();
                $('.loader1').parent().hide();
                showAlert(eMsg, 'error');
                return;
            }
            $('#user_content').html(data);
            $('.modal-backdrop').hide();
            $('.loader1').parent().hide();
            return;
        });
    }
};
var AngLoaded = '0';
function loadLog() {
    baseUrl = "../" + $("#hdnurlAddl").val();
    
    var tkt = sessionStorage.getItem("auth");
    
    if (tkt != null) {
        $.get(baseUrl + '/U/Logged?data=' + tkt, function (data) {
            
            var eMsg = "";
            eMsg = $(data).filter('.logError').val();
            if (eMsg != "") {
                $("#lblRst").show();
                $('.loader1').parent().hide();
                showAlert(eMsg, 'error');
                sessionStorage.clear();
                setTimeout(function () { window.location.reload(); }, 2000);
                return;
            }
            $('#user_content').html(data);
            $('.modal-backdrop').hide();
            $('.loader1').parent().hide();
            return;
        });
    }
    
}
function log() {
    var LogID = $.trim($("[name*=txtLoginId]").val());
    var Pwd = $.trim($("[name*=txtPwd]").val());
    if (LogID == '') {
        showAlert("Login ID Required", 'error');
        return;
    }
    if (Pwd == '') {
        //bootbox.alert({ title: "Required !", message: "Password required" });
        showAlert("Password Required", 'error');
        return;
    }
    //const ans = captcha.valid($('input[name="txtCaptcha"]').val());
    //if (!ans) {
    //    showAlert("Invalid Captcha", 'error');
    //    return;
    //}
    //captcha.refresh();
    //Pwd = Encryption(Pwd);
    var NPwd = Pwd;
    var eMsg = 'Login Id or Password Incorrect!.';
    if (NPwd.indexOf('\\') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.indexOf('&') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.indexOf('#') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.indexOf('"') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.indexOf('\'') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.indexOf('+') >= 0) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }
    if (NPwd.length > 30) { $("#lblRst").show(); showAlert(eMsg, 'error'); return; }

    var lst = JSON.stringify({
        'TBL': [{ 'LoginId': LogID, 'Pwd': Pwd }]
    });
    var rwItem = "{'data': '" + lst + "'}";

    $('.loader1').parent().show();
    $.get(baseUrl + '/U/Logged?data=' + lst, function (data) {
        
        var eMsg = "";
        eMsg = $(data).filter('.logError').val();
        if (eMsg != "") {
            $("#lblRst").show();
            $('.loader1').parent().hide();
            showAlert(eMsg, 'error');
            return;
        }
        $('#user_content').html(data);
        $('.modal-backdrop').hide();
        $('.loader1').parent().hide();
        return;
    });
    return false;
}
function showAlert(msg, type) {
    if (msg == undefined) return;
    var msgID = 'msg' + Math.floor((Math.random() * 1000000) + 1);
    var html = '<div id="' + msgID + '" class="alertMsg" style="border-radius: 10px; width: 30vw; min-height: 5vh; ';
    if (type == 'success')
        html += 'background-color: limegreen;color: white; '
    else
        html += 'background-color: yellow; color: black;'
    html += ' margin-top: 10px; padding: 10px; text-align: center; font-weight: bold; font-size: large; "><div onclick="$(this).parent().remove()" style="float: right; margin-top: -10px; cursor: pointer; color: red; display: flex; align-items: center; ">X</div><div>' + msg + '</div></div>';
    $('#alertDiv').append(html);
    setTimeout(function () { $('#' + msgID).remove(); }, 5000);
}
function logoff() {
    sessionStorage.clear();
    $('#user_content').load(baseUrl +  '/Home/Home');
}
function logoffE() {
    
    sessionStorage.clear();
    window.location.href = '/' + baseUrl;
}
function Encryption(str) { var key = CryptoJS.enc.Utf8.parse('9247531869742187'); var iv = CryptoJS.enc.Utf8.parse('5175284769831473'); var encrypted = CryptoJS.AES.encrypt(CryptoJS.enc.Utf8.parse(str), key, { keySize: 128 / 8, iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7 }); return encrypted.toString(); }
function jsDwl(eUrl) {
    var tkt = sessionStorage.getItem("auth");

    var CUrl = "../" + $("#hdnurlAddl").val() + "/" + eUrl;
    //var Durl = "Download.aspx?type=download&AutoPrint=false&token=" + tkt.TOKEN + "&key=" + tkt.TOKENKEY;
    $('<form>', {
        'method': 'POST',
        'id': 'getSecureImage',
        'html': '<input type="text" id="componentSecureId" name="componentSecureId" value=' + tkt + ' />',
        'action': CUrl
    }).appendTo(document.body).submit().remove();

    //window.location.href=Durl;
}
