public function SmartIpLocation::save in Smart IP 8.2
Same name and namespace in other branches
- 8.4 src/SmartIpLocation.php \Drupal\smart_ip\SmartIpLocation::save()
- 8.3 src/SmartIpLocation.php \Drupal\smart_ip\SmartIpLocation::save()
Saves the Smart IP location data to user data and session (for anonymous, saves to session only).
Overrides SmartIpLocationInterface::save
File
- src/
SmartIpLocation.php, line 189 - Contains \Drupal\smart_ip\SmartIpLocation.
Class
- SmartIpLocation
- Implements wrapper and utility methods for Smart IP's data location.
Namespace
Drupal\smart_ipCode
public function save() {
$user = \Drupal::currentUser();
$data['location'] = $this->allData;
// Allow other modules to modify country list via hook_smart_ip_user_save_alter()
\Drupal::moduleHandler()
->alter('smart_ip_user_save', $user, $data);
// Save the Smart IP location in current user's session
SmartIp::setSession('smart_ip', $data);
if ($user
->id() != 0) {
/** @var \Drupal\user\UserData $userData */
$userData = \Drupal::service('user.data');
// Save the Smart IP location to current user's user_data
$userData
->set('smart_ip', $user
->id(), 'geoip_location', $data);
}
}