use mixin and add filtering for calendar