By default, users can input whatever name and email they like into a ContactPage form. While it populates those fields with the user's name and email if available, they can be changed, which is not always desirable (for example, inaccurate names or emails on a block appeals template could be a problem). There should be configuration options to limit this if the use case calls for it.
Specifically, we should add configuration options to make the name and email fields readonly: NameReadonly and EmailReadonly which will set the readonly property in the HTML Form creation.
Name and email only populate when a user is logged in, so the readonly config settings should only function if MustBeLoggedIn => true.
Not every account has an email on file, and if writing in an email is disabled, then the recipient would have no way to contact the sender. To prevent this, we should add a configuration option MustHaveEmail which displays an error page if the sender doesn't have a confirmed email.
These changes would help with adoption on the English Wikipedia. The Arbitration Committee (see T321447) there believes that our block appeal form needs to ensure accurate names and emails of accounts contacting us, but the MustBeLoggedIn option is not sufficient to ensure the information input is accurate.