jQuery.fn.modalLogin = function(options){
    var defaults = {
        success: null
    }
    
    var opts = jQuery.extend(defaults, options);
    var modalWindow = $('<div class="jqmWindow" id="login-box"><img src="/assets/img/loading.gif" alt="loading"></div>').appendTo('body');

    modalWindow.jqm({
        trigger: this,
        modal: true,
        onShow: function(hash){
            var box = hash.w;
            var trigger = hash.t;
                
            var init_modal_events = function(response, status, xhr){
                if (box.html() == '') {
                    $(box).jqmHide();
                        
                    if (opts.success != null && typeof opts.success == 'object') {
                        opts.success.each(function(){
                            if (this.tagName == 'FORM') {
                                $(this).submit();
                            } else {
                                $(this).click();
                            }
                        });
                    } else if (typeof opts.success == 'string') {
                        window.location = opts.success;
                    } else if (typeof opts.success == 'function') {
                        opts.success();
                    } else {
                        window.location.reload();
                    }
                    
                    return false;
                }

                $('<img src="/assets/img/bg_jqmwindow.png">').css({position: 'absolute', bottom: -17, left: 0}).appendTo(box);

                $('a.close').click(function(){
                    $(box).jqmHide();
                    return false;
                }).text('Sulje');

                $('#frm_login').submit(function(){
                    var email = $(this).find('input#email').val();
                    var passwd = $(this).find('input#password').val();
                    var url = $('#frm_login').attr('action') + ' #signin-login';

                    $(box).load(url, { email: email, password: passwd, login: true}, init_modal_events);
                    return false;
                });
            }
            
            $(box).load($(trigger).attr('href') + ' #signin-login', {}, init_modal_events);
            box.show();
        }
    });
    
    return this;
}