Click anywhere to close this dialog

Farewell

Great is the art of beginning, but greater is the art of ending
Henry Wadsworth Longfellow

I announce that I cease all development and activity in the programming universe indefinitely. My career has reached the turning point I was not expecting for at least another year, leaving me highly off guard and without laid-out plans for this hobby's continuity. I have begun a 5-year residency program in Neurosurgery which is clearly not compatible, time-wise, with programming.

I gave in all my passion for developing, and you gave me back your loyalty and trust, even when I did not deserve that much. Now it is the time for payback. I release all my present and past work as Open Source software, in the hope some talented developer will continue maintaining and expanding my vision of a modern, sleek forum software. The intrinsic flexibility of MyBB is the true hidden gem of an otherwise outdated codebase; I do hope the project can continue and be updated complying to the latest coding standards.

I hereby thank Euan, kawaii, andrewjs18, Ben, Matt, Omar G., effone, Eric J., Devilshakerz, Wildcard, JordanMussi and all the other team members I have had the opportunity to work with when I was a MyBB team member. I thank Tomm M, my mentor, who inspired me to pick up coding with his piece-of-art plugins. And finally, I thank all of you MyBBoost subscribers who have helped me getting through my toughest university years economically.

Yours sincerely, Filippo

Flyover documentation

24 Jan 2019 Edited
#1
Flyover is a MyBB plugin which makes it easy and faster for users to register and login through 26 social networks. This document will help you setting up the plugin after you have uploaded and installed the plugin successfully. It is always tailored to the latest Flyover version available.

Installation


To install Flyover, simply click on the Install & activate button in your plugins list. Flyover adds 18 templates and 1 stylesheet to every theme of your board. Flyover also tries to add its widget variable, <flyover_login_box>, to the following templates:
WHITE HEAVY CHECK MARK header_welcomeblock_guest_login_modal
WHITE HEAVY CHECK MARK error_nopermission

While there shouldn't be any problem adding the widget to header_welcomeblock_guest_login_modal, as it's just appended to the template, custom themes might break the search and replace pattern used to alter error_nopermission. Therefore, if you want to show the widget in those templates, ensure the variable is in place and if not, add it manually. You can place it in whatever template you want.

Note that header_welcomeblock_guest_login_modal is available for MyBB 1.8.17 onwards. If you are running a previous version, you will need to insert the widget manually.

Enabling a social network


Flyover is ready to go as soon as you install it, however, you need to configure each social network integration you intend to use on your board.

Go to Flyover's main panel (Configuration > Flyover) first. You will be presented a list of social networks and a series of grayed out inputs. Click on a social network's name to configure it.

Setting up a social network application


You will now need to set up an application. This is required for your board to communicate with a particular social network and exchange informations about users' identities, which is mandatory to authenticate and grant them access.

Look up for the "developer" site of the social network of interest. Then, follow the instructions to create an application. Providers change their sites frequently and it's not feasible for me to create an illustrated guide for all of them; however, you will soon find that it's quite seamless to create one.

The redirect URI


One of the main challenges you may end up with is to find the correct redirect URI. Most of social networks require your application to deliver a redirect URI – a safe and approved link which all requests will lead to upon exchanging sensitive pieces of information. Flyover sports a standardized redirect URI which requires minimal adjustments per each social network. For your convenience, a pre-built redirect URI is available in every social network configuration page.

The standardized redirect URI looks like this:

{boardurl}/flyover.php?action=login&provider={name}
{boardurl} is your board's URL, while {name} should be adjusted accordingly for every social network. For example, MyBBoost's Facebook redirect URI looks like this:

https://www.mybboost.com/flyover.php?action=login&provider=Facebook
Some social networks, such as Twitter, do not accept query strings (everything after the question mark in the link) in their redirect URIs. If so, strip them out from the URI, and you should be fine. For example, MyBBoost's Twitter redirect URI looks like this:

https://www.mybboost.com/flyover.php
Please ask if you are still getting troubles into making it work.

Tokens


Once you have finished setting up the developer application, identify the application's tokens. Think about them as usernames and passwords: users will pass through your app, and the app will communicate to every social network using its own tokens. There are 3 types of tokens: identifier (or simply id), secret and key. Most social networks will show them in the application's setup homepage.

Copy and paste the tokens in the correct input fields in Flyover. Save, and your board is now ready to accept registrations and logins though the social network you have set up.

Synchronization


Extensibility plays a crucial role in Flyover's potential. Users are able to import several informations from their social network accounts to their MyBB's accounts (and not viceversa). This is the so-called synchronization. Currently, the following data points can be collected and imported:
WOMAN avatar
SUNRISE OVER MOUNTAINS cover – if Profile Picture plugin is installed
GLOBE WITH MERIDIANS website
RESTROOM sex
ROUND PUSHPIN location
SQUARED CJK UNIFIED IDEOGRAPH-55B6 language
PERFORMING ARTS biography
WHITE HEAVY CHECK MARK identifier
ENVELOPE email
LINK SYMBOL profile URL

Users can opt out of single data points by (un)ticking checkboxes off in their User Control Panels. Administrators can decide whether if to use a data point or not from each social network's settings panel.

Synchronization occurs automatically upon each log in. Every social network exposes different data points and this partially depends on the requested scopes. To know more about scopes, continue reading this document.

Avatar and website have a corresponding standard field in MyBB; all the other data points can be matched against a custom profile field of your choice. A global on/off switch and match for each one is available in Flyover's general settings. A more sensitive, provider-specific point-to-field match can be set in every provider's settings panel.

Custom scopes


Your board will constantly ask social networks permission to collect informations about users. Permissions are called scopes in technical language. Hybridauth is configured to get as much informations as possible, therefore it might send lots of scopes which you might not necessarily need.

Flyover lets you set up custom scopes to override Hybridauth's default behavior. This is particularly useful for those social networks such as Facebook and Google who require you to write down a detailed description of how you are using certain permissions. Especially those data points which refer the most to an individual's identity, such as location and birthday, have usually restricted access.

Furthermore, API change over time, seldom very quickly in a way that Hybridauth's authors can't keep up social networks' pace and it ends up being slightly behind the latest allowed scopes. If your application starts to warn you about expiring or invalid scopes, you can exploit custom scopes and fix the issue quickly without waiting for a plugin's update.
Enes Palit and RockoSx like this post