Code refactoring & few small fixes & moving admin logic to separate controller