java.lang.AssertionError: Contrib qn giver type invalid: TEAMS expected: but was: #2383

Fixes #2383
Removed asserts for invalid giver/recipient, force values to be valid, log as severe and show error to user instead.
Disabled invalid options, since hiding does not work on some browsers.
I don't like it when the `else` is far away from the `if`. Try to do an early return instead. e.g. 
```
if(updatedQuestion.questionType != FeedbackQuestionType.CONTRIB) {
   return "";
}
```
It reduces nesting too.