adds Opportunity#hasEnded