Fix Facebook login on live server
Fix Facebook login on live server

The Facebook App recently changed to require explicitly listing
the Valid OAuth Redirect URIs (presumably when they bumped the
minimum API to v2.6 on Apr 12, 2018). We also enabled "Enforce HTTPS"
at their recommendation. As a result, the Facebook login for the new
containerized server broke. Here's why:

After the redirect back to the SMR server, we need to get an
access code from the social platform. For Facebook, this requires
passing the Redirect URI again (for some OAuth reason...), and
if you don't explicitly specify it, the Facebook code will auto-
detect it. We were not explicitly specifying it, and since Nginx
is currently set up to use regular HTTP in the `proxy_pass` to
the `smr` container, it was autodetecting a non-HTTPS URL.

I don't think we want to change how the `proxy_pass` is set up just
for this. Fortunately, `FacebookRedirectLoginHelper::getAccessToken`
allows us to explicitly specify the Redirect URI, and so we pass
the HTTPS URL that we have listed in the "Valid OAuth Redirect URIs"
for the Facebook App.

Long story short: we should be able to use the Facebook login again,
and we're upgraded to v2.12 of the API, which will be supported for
the next 2 years at least.

hemberger/smr,hemberger/smr,hemberger/smr,smrealms/smr,hemberger/smr,smrealms/smr,smrealms/smr