The security issue has been discussed previously and best solution was to only use the login modal on a fully SSL'd site.
I like what you're trying to do here but you need to remember that there are a number of areas on the page that need to be updated after user login. The navbar which you have already addressed, but there is also the footer, customer's order history box needs to appear if enabled and if the shopping cart box is being used then that also needs to be updated. There could be more.
Having the pages load using ajax would be a cool thing, but the only time this is going to happen using your code is when no redirect is required. In my opinion, then what is the point of using ajax at all since there are still a number of areas of the page that need to be updated (as mentioned), even when there is no redirect.
The point of the login modal was to eliminate an extra page load (to the login page) when logging in, which has been achieved. Trying to eliminate another page load seems like a good idea but that won't work anyway if a redirect is required.