protected static function GoogleAnalyticsAdminSettingsForm::validateCreateFieldName in Google Analytics 8.2
Checks whether a field name is valid.
Parameters
string $name: The option value entered by the user.
Return value
string|null The error message if the specified value is invalid, NULL otherwise.
1 call to GoogleAnalyticsAdminSettingsForm::validateCreateFieldName()
- GoogleAnalyticsAdminSettingsForm::validateCreateFieldValues in src/
Form/ GoogleAnalyticsAdminSettingsForm.php - The #element_validate callback for create only fields.
File
- src/
Form/ GoogleAnalyticsAdminSettingsForm.php, line 950
Class
- GoogleAnalyticsAdminSettingsForm
- Configure Google_Analytics settings for this site.
Namespace
Drupal\google_analytics\FormCode
protected static function validateCreateFieldName($name) {
// List of supported field names:
// https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#create
$create_only_fields = [
'allowAnchor',
'alwaysSendReferrer',
'clientId',
'cookieName',
'cookieDomain',
'cookieExpires',
'legacyCookieDomain',
'legacyHistoryImport',
'sampleRate',
'siteSpeedSampleRate',
'storage',
'useAmpClientId',
];
if ($name == 'name') {
return t('Create only field name %name is a disallowed field name. Changing the <em>Tracker Name</em> is currently not supported.', [
'%name' => $name,
]);
}
if ($name == 'allowLinker') {
return t('Create only field name %name is a disallowed field name. Please select <em>Multiple top-level domains</em> under <em>Tracking scope > Domains</em> to enable cross domain tracking.', [
'%name' => $name,
]);
}
if ($name == 'userId') {
return t('Create only field name %name is a disallowed field name. Please enable <em>Track User ID</em> under <em>Tracking scope > Users</em>.', [
'%name' => $name,
]);
}
if (!in_array($name, $create_only_fields)) {
return t('Create only field name %name is an unknown field name. Field names are case sensitive. Please see <a href=":url">create only fields</a> documentation for supported field names.', [
'%name' => $name,
':url' => 'https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#create',
]);
}
}