p.s. I'm aware, deleting a user is a big issue in a community based system. I also agree that a user must be never deleted, plus the task to remove all content generated by the user can be a real nightmare. thus, deleting a user is not recommended.
Disabling the user is in general sufficient as "deletion" and is safe with respects to foreign keys. Other strategies or policies might be thought of, but I don't see any clear benefit that would come from there ATM.