$('.dropdown').hover(function(){ 
  $('.dropdown-toggle', this).trigger('click'); 
});

$('.change_org').click(function(e){
	e.preventDefault();
	var csrf = $('#csrf').val();
	$.ajax({
		url: $('#get_baseurl').val()+'login/login/change_profile',
		async:false,
		cache:false,
		type: 'POST',
		dataType: 'json',
		data: {  
			username : $('#login_name').val(),
			csrf_iems_name : csrf
		},
		success: function(data){
			$('#profile_div').html(data['profile_screen']);
			$('#profile').modal('show');
		}
	});
});
$('.change_password_page').click(function(e){
	e.preventDefault();
	var csrf = $('#csrf').val();
	$.ajax({
		url: $('#get_baseurl').val()+'login/login/change_password_page',
		async:false,
		cache:false,
		type: 'POST',
		dataType: 'json',
		data: {  
			username : $('#login_name').val(),
			csrf_iems_name : csrf
		},
		success: function(data){
			$('#change_password_div').html(data['change_password_screen']);
			call_change();
			$('#change_password').modal('show');
		}
	});
});

$('#profile_div').on('click','#profile_ok',function(){
	change_profile();
});
$('#change_password_div').on('click','#update',function(e){
	e.preventDefault();
	if($('#change_password_form').valid()){
		var csrf = $('#csrf').val();
		$.ajax({
			url: $('#get_baseurl').val()+'login/login/update_password',
			async:false,
			cache:false,
			type: 'POST',
			dataType: 'json',
			data: {  
				username : $('#username').val(),
				password : $('#new_password').val(),
				type : $('#type').val(),
				csrf_iems_name : csrf
			},
			success: function(data){
				location.reload(true);
			}
		});
	}
});

$('#profile_ok').click(function(){
	change_profile();
});
$('#profile_cancel').click(function(){
	window.location.href = 'staff_login';
});
$('#change_password_div').on('click','#change_cancel',function(){
	location.reload(true);
});
$('#profile_div').on('click','#profile_cancel',function(){
	$('#profile').modal('hide');
});
function change_profile(){
	var org_id = $('#org').val();
	var org_name = $('#org option:selected').text();
		if(org_id == 0){
			$('.error_profile').html('This field is required');
		}else{
			$('.error_profile').html('');
			var csrf = $('#csrf').val();
			$.ajax({
					url: $('#get_baseurl').val()+'login/login/set_staff_data',
					async:false,
					cache:false,
					type: 'POST',
					data: {  
						username : $('#username').val(),
						org_name : org_name,
						org_id :  org_id,
						csrf_iems_name : csrf
					},
					success: function(){
						window.location = window.location;
					}
			});
		}

	}
function call_change(){
	 $.validator.addMethod("notEqualTo",
			function(value, element, param) {
				var notEqual = true;
				value = $.trim(value);
				for (i = 0; i < param.length; i++) {
					if (value == $.trim($(param[i]).val())) { notEqual = false; }
				}
				return this.optional(element) || notEqual;
			},
			"User name and password should not match"
		);
	 $('#change_password_form').validate({
		rules: {
			password: {
				minlength: 6,
				notEqualTo: ['#uname']
			},
			old_password: {
				remote: check_credentials_pwd_update()
			},
		},
        messages: {
            old_password: {
                required: 'Enter your current password',
				remote: 'Incorrect Password'
            },
            password: {
                required: "Enter a new password"
            },
            repeat_password: {
                required: "Enter the new password again",
                equalTo: "Password does not match"
            }
        }
    });
	function check_credentials_pwd_update(){
		var post_data;
		post_data = {
				username: function(){
                    return $("#username").val();
                },
                password: function(){
                    return $("#old_password").val();
                },
				type: function(){
					return $("#type").val();
				},
				csrf_iems_name: $('#csrf').val()
            };
        return{
            async: false,
            url: $('#get_baseurl').val()+'login/check_credentials_pwd_update',
            type: 'post',
            data: post_data,                
            dataFilter: function(data){
                if($.trim(data) != 0){
                    return true;
                }else{
                    return false; 
                }
			}
        }
		
    }
	
}