Social Connected Facebook API Fix: Sitecore 8.0 and 8.1

If you are currently utilizing Social Connected module with Sitecore 8.0 or 8.1, then you lost your Facebook Social Login capabilities on 3/25/2017. The version of the Facebook API that is bundled with those Sitecore releases is V2.2 which was no longer available as of 3/25/2017. My initial thought was to see if I could modify configuration settings to update to a new version (assuming capability). That didn't work because the version is stored inside a class within the Sitecore.Social.Facebook.dll. If you use a decompiler, then you can easily see that Sitecore.Social.Facebook.Connector.Paths.FacebookPathsFactory contains v2.2 hard coded. Since this is a Sitecore out of the box DLL, I decided to open a ticket with Sitecore Support. It turns out that this was addressed with Sitecore 8.1 Update 3 along with 8.2. The solution suggested by Sitecore support was to utilize the Sitecore.Social.Facebook DLLs from 8.2 with the 8.1 environment. I'll be 100% honest that this solution still doesn't sit well with me as I generally have a rule about using Sitecore DLLs from different versions. However after debating with support, I admitted defeat and moved on with their recommended solution. The solution resolves the problem however there are a few things to note.
Couple of things to note:
1) 8.2 DLLs may conflict with current solution's MVC. If that is the case, then you will need to add the following:

<dependentAssembly>
 <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" xmlns="urn:schemas-microsoft-com:asm.v1" />
 <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.1.0.0" xmlns="urn:schemas-microsoft-com:asm.v1" />
</dependentAssembly>


2) With Sitecore 8.1 Update 3, the location of the Social renderings moved from /layouts/system/Social to /layouts/Social. This means that you will need the Social renderings in the new location in order for the authorization return to work as expected.
I've uploaded the files I used to resolve this. As always backup current solution before deploying in case you need to roll back.  Enjoy the patch!

Comments