There are 4 factors which have impact on the checkbox:
Xdb.Enabled
setting
Xdb.Tracking.Enabled
setting
Analytics.AutoDetectBots
setting
- and result of
XdbSettings.HasValidLicense
call.
If I remember correctly, if you can open /sitecore/client/Applications/ExperienceAnalytics/Dashboard
url without errors, that means that license is valid for xDB.
Have you changed any of the settings or license file after you tried Forms Editor for the first time? Maybe it's cached that checkbox should be disabled?
You can try the following url
/formbuilder/load?id=&sc_formmode=new&sc_formlang=en&sc_site=shell&_=SOME_RANDOM_VALUE
and see the source of the response. It's not easy to read it but you should see something like
isRobotDetectionAvailable":true,"
or false
.
If you see true
in response, try new incognito browser or potentially even recycle Sitecore.
I checked that in Sitecore 10.1.1 FormViewModel
depends on IRobotDetection
. Check in showconfig if you have an implementation of IRobotDetection
registered, most probably like that:
<register
serviceType="Sitecore.ExperienceForms.Tracking.IRobotDetection, Sitecore.ExperienceForms"
implementationType="Sitecore.ExperienceForms.Analytics.Tracking.RobotDetection, Sitecore.ExperienceForms.Analytics"
lifetime="Transient"
patch:source="Sitecore.ExperienceForms.Tracker.config"/>
In Sitecore 10.1.0 there is no IRobotDetection
. Instead there is RobotDetectionHelper
which uses the following code:
public static bool IsRobotDetectionAvailable =>
Settings.GetBoolSetting("Xdb.Enabled", false) &&
Settings.GetBoolSetting("Xdb.Tracking.Enabled", false) &&
Settings.GetBoolSetting("Analytics.AutoDetectBots", false);
You may create a test page or just try it in debug to see what are the values of those setting in your web app and which of them is causing issues.