When attempting to create a "Provider Configuration (LTI)" object in the
django admin, the following 500 error was being triggered:
"Either an icon class or an icon image must be given (but not both)"
This was caused by the `clean()` method of the mother class
(OAuth2ProviderConfig) which checked whether at least the icon_class XOR
icon_list attribute was well defined. In the case of the
LTIProviderConfig objects it isn't, but that's ok because this object
is not meant to be displayed in the login form.
To resolve this issue, we modify the `clean()` method to also check for
the `visible` attribute, and we set this attribute to false in the
LTIProviderConfig class. As a consequence, the entire `visible` column
is dropped from the database. This is okay because it was otherwise
I would appreciate it if someone familiar with the matter (cc @nasthagiri) could take a look at this and confirm that the `visible` column can be dropped from the LTIProviderConfig table.
This pull request is for resolving a Juniper-related issue (cc @nedbat).