[code modified] just completed entire component(admin & site part)