function signInSignUpWindow(el, in_up) {
    
    $('body').data('authElRef', el);
    $('body').data('authInUp', in_up);
    $('body').append($('<div id="sign_in_sign_up" class="simple_overlay"><iframe src="/profile/sign-in-sign-up/" width="410" height="450" frameborder="0" allowtransparency="true"></iframe></div>'));
    $('#sign_in_sign_up').overlay({
        top: '5%',
        mask:{
            color:'#282c35',
            opacity:0.9
        },
        closeOnClick: false,
        load: true,
        onClose : function() {
            var targetEl = $($('body').data('authElRef'));
            if($('body').data('auth_success')) {
                if(targetEl.attr('href') === window.location.pathname) {
                    location.reload();
                }
                else {
                    if(targetEl.get(0).tagName.toLowerCase() === 'input') {
                        targetEl.click();
                    }
                    else if(targetEl.hasClass('submit_button')) {
                        targetEl.parents('form').submit();
                    }
                    else {
                        window.location = targetEl.attr('href');
                    }
                }
            }
            $('#sign_in_sign_up').detach();
        }
    });
};

function additionalInfoWindow(element) {
  
    $('body').append($('<div id="additional_info" class="simple_overlay"><iframe src="/profile/additional-info/" width="410" height="300" frameborder="0" allowtransparency="true"></iframe></div>'));
    $('#additional_info').overlay({
        top: '5%',
        mask:{
            color:'#282c35',
            opacity:0.9
        },
        closeOnClick: false,
        load: true,
        onClose : function() {
            if($('body').data('additional_info_success')) {
                window.location = $('body').data('additional_info_success');
            }
            $('#additional_info').detach();
        }
    });
};


function accountIssuesWindow(element) {
  
    $('body').append($('<div id="account_issues" class="simple_overlay"><iframe src="/profile/account-issues/" width="410" height="300" frameborder="0" allowtransparency="true"></iframe></div>'));
    $('#account_issues').overlay({
        top: '5%',
        mask:{
            color:'#282c35',
            opacity:0.9
        },
        closeOnClick: false,
        load: true,
        onClose : function() {
            if($('body').data('account_issues_success')) {
                window.location = $('body').data('account_issues_success');
            }
            $('#account_issues').detach();
        }
    });
};


$(document).ready(function() {
    $('.authable').click(function(e) {
        if($('body').data('auth_success')) {
            $('body').data('auth_success',false);
            return true;
        }
        e.preventDefault();
        var in_up = $(this).hasClass('in') ? 'in' : 'up'
        signInSignUpWindow(this, in_up);
        return false;
    });
    $('a[href="#hs_cc_popup"]').click(function(e) {
      if($('body').data('additional_info_success')) {
          $('body').data('additional_info_success', false);
          return true;
      }
      e.preventDefault();
      additionalInfoWindow(this);
      return false;
    });
    $('a[href="#account_issues"]').click(function(e) {
      if($('body').data('account_issues_success')) {
          $('body').data('account_issues_success', false);
          return true;
      }
      e.preventDefault();
      accountIssuesWindow(this);
      return false;
    });
});

