protected function ApiSettingsForm::moduleActivationConnectFbAccount in Facebook Instant Articles 3.x
Same name and namespace in other branches
- 8.2 src/Form/ApiSettingsForm.php \Drupal\fb_instant_articles\Form\ApiSettingsForm::moduleActivationConnectFbAccount()
Generates state of FB account connection for Module Activation section.
Parameters
array $form: FAPI array.
string $app_id: Facebook application id.
string $app_secret: Facebook application secret.
Return value
array FAPI array.
1 call to ApiSettingsForm::moduleActivationConnectFbAccount()
- ApiSettingsForm::moduleActivationBuildForm in src/
Form/ ApiSettingsForm.php - Generate the module activation section of the settings form.
File
- src/
Form/ ApiSettingsForm.php, line 236
Class
- ApiSettingsForm
- Facebook Instant Articles API form.
Namespace
Drupal\fb_instant_articles\FormCode
protected function moduleActivationConnectFbAccount(array $form, $app_id, $app_secret) {
$fb = new Facebook([
'app_id' => $app_id,
'app_secret' => $app_secret,
'default_graph_version' => 'v2.5',
]);
$permissions = [
'pages_show_list',
'pages_manage_instant_articles',
];
$helper = $fb
->getRedirectLoginHelper();
$redirect_uri = Url::fromRoute('fb_instant_articles.login_callback', [], [
'absolute' => TRUE,
])
->toString();
$login_url = $helper
->getLoginUrl($redirect_uri, $permissions);
$form['module_activation'] = [
'#type' => 'details',
'#title' => $this
->t('Module activation'),
'#open' => TRUE,
];
$form['module_activation']['app_settings'] = [
'#markup' => '
<p>' . $this
->t('Your Facebook App ID is <strong>@app_id</strong>. <a href="?edit=fb_app_settings">Update Facebook app id</a>.', [
'@app_id' => $app_id,
]) . '</p>
<p>' . $this
->t('Login to Facebook and then select the Facebook Page where you will publish Instant Articles.') . '</p>
',
];
$form['module_activation']['login_button'] = [
'#markup' => '<p>' . $this
->t('<a class="button button--secondary" href="@login_url">Login with Facebook</a>', [
'@login_url' => $login_url,
]) . '</p>',
];
return $form;
}