admin part refactor