There is the situation, that a user was assigned to past events, and now he/she is not active any more.
In that case he/she will be listed as a choice according his skills when creating a new event.
The only way to suppress him/her being listed there at the moment, would be to delete the whole user.
But doing this all old events will be "broken", because there would be an user assigned that is no more existent.
Furthermore the user's inactivity could be only temporarily.
So, I see 2 options for that situation:
option 1) possibility to disable user
There could be a flag in user management, that sets the user disabled. This leads to suppress new assignments, but keep the old ones working. Also, it would reduce the choice of users (when creating new events) to only active users. Reactivating a diasabled user would be easy.
option 2) archive events
There could be a possibility to archive events (manually or even automated). So if an event is done, all its information will be converted into their string-only representations in a new archive table. This one should then be used to browse past events.
Maybe both ways are worth implementing, because they consider different aspects.
Details should be clearified before working on these options.