add LoginRequiredMixin
create views and templates for index, upcoming, past, detail