Tell me how to properly display the page to the user, depending on his rights. For example, one role has some buttons, and the other others. Faced with one project with the if condition in which a lot of places get into the markup with large numbers of roles => if you need to change the interface mapping for a particular role, you will have to edit it in N places, not in one place.
How succinctly to solve such problems?