fix admin checking and admin required decorator