public function DrupalGapController::drupalgapSystemConnect in DrupalGap 8.2
1 string reference to 'DrupalGapController::drupalgapSystemConnect'
File
- src/
Controller/ DrupalGapController.php, line 174 - Contains \Drupal\drupalgap\Controller\DrupalGapController.
Class
- DrupalGapController
- Returns responses for DrupalGap module routes.
Namespace
Drupal\drupalgap\ControllerCode
public function drupalgapSystemConnect() {
$response = new Response();
// @see https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Session!AccountProxyInterface.php/interface/AccountProxyInterface/8
$user = \Drupal::currentUser();
$_account = $user
->getAccount();
$account = new \stdClass();
$account->uid = $_account
->id();
$account->name = $_account
->getUsername();
$account->roles = $_account
->getRoles();
foreach ($_account as $key => $value) {
$account->{$key} = $value;
}
unset($account->pass);
if (!$_account
->hasPermission('administer users')) {
unset($account->init);
}
if (!$_account
->isAuthenticated()) {
$account->roles = array(
'anonymous user',
);
}
$json = array(
'user' => $account,
'remote_addr' => $_SERVER['REMOTE_ADDR'],
);
$response
->setContent(json_encode($json));
$response->headers
->set('Content-Type', 'application/json');
return $response;
}