Jquery disabled an event, and re activate it later

by Artur Filipiak

HTML

<a class="btn btn-primary blah" href="play" data-needlogged="yes">Login</a>

        <div class="modal hide " id="myModal">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">x</button>
            <h3>Login to MyWebsite.com</h3>
          </div>
          <div class="modal-body">
            <form method="post" action='' name="login_form">
              <p><input type="text" class="span3" name="eid" id="email" placeholder="Email"></p>
              <p><input type="password" class="span3" name="passwd" id="pass" placeholder="Password"></p>
              <p><button type="submit" class="btn btn-primary login">Sign in</button>
              </p>
                  <div class="error alert alert-error hidden"></div>
            </form>
          </div>
          <div class="modal-footer">
              <small>login: demo | pass : demo</small>
          </div>
        </div>

JavaScript

$('.blah').click(function(e) {
    e.preventDefault();
    if($(this).data('needlogged') === 'yes'){
        return $('#myModal').modal('show');
    }
    alert('play!');
});

$('.login').click(function(e) {
    e.preventDefault();
    if($('#email').val() === 'demo' && $('#pass').val() === 'demo'){
        $('.blah').data('needlogged', 'no').trigger('click').html('play!');
        $('.error').html('').addClass('hidden'); 
        return $('#myModal').modal('hide');
    }else{
      $('.error').html('wrong login or pass').removeClass('hidden'); 
    }
});