Fix creation of LTIProviderConfig object in admin

Description

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
unused.

Close CRI-205.

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).

Assignee

Unassigned

Reporter

Open Source Pull Request Bot

Labels

Contributor Name

Régis Behmo

Repo

edx/edx-platform

Customer

None

Epic Link

None

OSCM Assignee

None

Platform Map Area (Levels 1 & 2)

None

Platform Map Area (Levels 3 & 4)

None

Blended Hour Utilization Percentage

None

Priority

Unset
Configure