[feedback] IJPL-160988 Fix country detection in Windows

(cherry picked from commit 61aa33a65627a5e844eef3b6d74c082e83b53d78)

IJ-CR-147241

GitOrigin-RevId: c3e2e063fc5d1e449ede35f40acf5c1240e64803
This commit is contained in:
Yuriy Artamonov
2024-10-21 22:19:31 +02:00
committed by intellij-monorepo-bot
parent 9ee23bc464
commit 6e3f9c776d
3 changed files with 13 additions and 2 deletions

View File

@@ -42,5 +42,6 @@
<orderEntry type="module" module-name="intellij.platform.statistics" />
<orderEntry type="module" module-name="intellij.platform.core.ui" />
<orderEntry type="module" module-name="intellij.platform.ide.internal" />
<orderEntry type="library" name="jna" level="project" />
</component>
</module>

View File

@@ -1,3 +1,3 @@
notification.pirates.request.content=Please take this 10-minute survey to help us improve your JetBrains IDE experience and have the chance \
to win a prize in our raffle: a one-year JetBrains All Products Pack subscription or a $50 Amazon Gift Card or an equivalent value on Tmall.
notification.pirates.request.title=Tell us about your experience!
notification.pirates.request.title=Have the chance to win a prize!

View File

@@ -9,6 +9,7 @@ import com.intellij.openapi.application.impl.ApplicationInfoImpl
import com.intellij.openapi.components.service
import com.intellij.openapi.project.DumbAwareAction
import com.intellij.openapi.project.Project
import com.intellij.openapi.util.SystemInfo
import com.intellij.platform.feedback.ExternalFeedbackSurveyConfig
import com.intellij.platform.feedback.ExternalFeedbackSurveyType
import com.intellij.platform.feedback.FeedbackSurvey
@@ -18,6 +19,8 @@ import com.intellij.util.PlatformUtils
import com.intellij.util.io.URLUtil.encodeURIComponent
import com.intellij.util.system.OS
import com.intellij.util.withQuery
import com.sun.jna.platform.win32.Advapi32Util
import com.sun.jna.platform.win32.WinReg
import kotlinx.datetime.LocalDate
import kotlinx.datetime.Month
import java.net.URI
@@ -53,8 +56,15 @@ private class SoftwareAccessibilitySurveyConfig : ExternalFeedbackSurveyConfig {
override fun getUrlToSurvey(project: Project): String {
val uri = URI.create("https://surveys.jetbrains.com/s3/jetbrains-ide-experience-survey")
val region = if (SystemInfo.isWindows) {
Advapi32Util.registryGetStringValue(WinReg.HKEY_CURRENT_USER, "Control Panel\\International\\Geo", "Name") ?: "unknown"
}
else {
System.getProperty("user.country", "unknown")
}
val os = encodeURIComponent(OS.CURRENT.toString().lowercase())
val country = encodeURIComponent(System.getProperty("user.country", "unknown"))
val country = encodeURIComponent(region)
val lang = encodeURIComponent(System.getProperty("user.language", "unknown"))
val version = encodeURIComponent(ApplicationInfo.getInstance().fullVersion)
val product = encodeURIComponent(ApplicationInfoImpl.getShadowInstanceImpl().build.productCode)