refactor AdminController