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.
Why this attribute is empty in some places and has "disabled" in other places? Do they mean the same thing?