user role handle logic