A lot of your issues resolve around JEvents. We don't have an Open Graph plugin for JEvents, which means the default Open Graph behavior will be used for any of your JEvents pages:
Meta Description
By default, JFBConnect should take the meta description set for any page and use that as the Open Graph Description tag. If you're using an extension that we have an Open Graph plugin for, then there are different options for how the og:description tag can be generated. Since we don't have an Open Graph plugin for JEvents, the only way to override or set your own og:description would be through the {SCOpenGraph description=...} tag.
Meta Image
JFBConnect can't determine the best image to use for extensions it doesn't understand. It's impossible to use the first image we see on a page (or content area) as many times, that will be an icon or other irrelevant image. The purpose of Open Graph plugins are to give hints to JFBConnect as to the best title, description or image to use for the current type of page for an extension. Since we don't have a plugin for JEvents, you'd need to set the {SCOpenGraph image=...} tag to tell JFBConnect which image should be set when the current event (or user or any other type of page) is shown.
Why absolute URLs for images?
An absolute URL is required by Facebook and Twitter for the image and therefore, our SCOpenGraph tag has always required a full URL as well. We've never had the request for, or even considered, making the {SCOpenGraph image=..} tag work with a relative URL. It's a good idea though, so we looked into it this morning to get the code worked up for it.
To implement, please edit the /libraries/sourcecoast/OpenGraph.php file. Around line 395, you'll see:
}
// Basic Twitter Card support
Sandwich this code between those 2 lines:
// Check and set the base URL for images if a relative path is given
if ($this->name == 'og:image')
{
if (strpos($tagValue, 'http') !== 0)
{
$tagValue = JUri::root() . ltrim($tagValue, '/');
}
}
From our testing, that seems to work, and we don't see any negative effects. We'll continue to test, but would love to have your feedback. This will likely go in the next release (once we're confident in it), so you won't have to keep implementing this change going forward.
Thanks for helping improve JFBConnect!
Alex