implement event view