tried my best to make the admin controllers adhere to the single responsibility principle.