add hooks and setting page