     return filteredMentors
   getSelectedMentors: (filteredMentors) ->
     limit _.pick filteredMentors, @state.mentorsToDisplay
-  onChangeSelectedMentorsToDisplay: (mentorIds) ->
+  onChangeSelectedMentorsToDisplay: (mentorIds, removedMentors) ->
+    @setState visitedMentors: _.union @state.visitedMentors, removedMentors
     @setState mentorsToDisplay: mentorIds
   onChangeFilter: (key, value) ->
     filters = @state.filters
     filters[key] = value
+    @setState visitedMentors: [] # reset visits
     @setState filters: filters
     # select all mentors, if filter changes
     @selectAll()

      when "true" then true
      when "false" then false
      else null
    @props.onChange? "ects", asBoolean event.target.value
  onChangeSchool: (event) ->
    sanitize = (value) -> if _.size(value) == 0 then null else parseInt value, 10

        </span>
      else
        <span>({_.size @props.mentors})</span>
    optionRenderer = (option) ->
      <span>{if option.visited then <i className='glyphicon glyphicon-eye-open'></i>} {option.label}</span>

    <div className="mentors-display-filter row">
      <div className="col-xs-10">
        <Select 
          options=options 
          multi=true
          optionRenderer=optionRenderer
          delimiter=@DELEMITER
          value=value
          onChange=@onChange
