Skip to content

Commit 698d139

Browse files
authored
Merge pull request #509 from esokullu/main
Fix and enhance reCAPTCHA enterprise functionality
2 parents 3d645b9 + b722e56 commit 698d139

25 files changed

Lines changed: 683 additions & 657 deletions

test/run.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13216,6 +13216,30 @@ test('extension language dropdowns pin English and Chinese before alphabetical l
1321613216
}
1321713217
});
1321813218

13219+
test('web language dropdowns pin English and Chinese before alphabetical languages', () => {
13220+
const expectedCodes = [
13221+
'en', 'zh',
13222+
'ar', 'bn', 'nl', 'tl', 'fr', 'de', 'he', 'hi', 'id', 'ja', 'ko',
13223+
'ms', 'fa', 'pt', 'ru', 'es', 'th', 'tr', 'uk', 'vi',
13224+
];
13225+
13226+
for (const [label, rel] of [
13227+
['landing template', 'web/build/template.html'],
13228+
['generated landing page', 'web/index.html'],
13229+
['privacy page', 'web/privacy.html'],
13230+
]) {
13231+
const html = fs.readFileSync(path.join(ROOT, rel), 'utf8');
13232+
const select = html.match(/<select\b[^>]*id="lang-dropdown"[^>]*>([\s\S]*?)<\/select>/);
13233+
assert.ok(select, `${label}: language dropdown missing`);
13234+
const codes = [...select[1].matchAll(/<option value="([^"]+)">/g)].map((match) => match[1]);
13235+
assert.deepEqual(
13236+
codes,
13237+
expectedCodes,
13238+
`${label}: language dropdown order should be English, Chinese, then alphabetical by English name`,
13239+
);
13240+
}
13241+
});
13242+
1321913243
test('sidepanel language picker uses the provider-style accessible listbox with bundled SVG flags', async () => {
1322013244
const expectedFlagCodes = {
1322113245
en: 'us', zh: 'cn', ar: 'sa', bn: 'bd', nl: 'nl', tl: 'ph', fr: 'fr', de: 'de',

web/ar/index.html

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2809,27 +2809,27 @@
28092809
<div class="language-picker" id="language-picker">
28102810
<select class="language-select-native" id="lang-dropdown" tabindex="-1" aria-hidden="true" data-current="ar">
28112811
<option value="en">English</option>
2812-
<option value="es">Español</option>
2813-
<option value="fr">Français</option>
2814-
<option value="tr">Türkçe</option>
28152812
<option value="zh">中文</option>
2816-
<option value="ru">Русский</option>
2817-
<option value="uk">Українська</option>
28182813
<option value="ar">العربية</option>
2819-
<option value="ja">日本語</option>
2820-
<option value="ko">한국어</option>
2821-
<option value="id">Bahasa Indonesia</option>
2822-
<option value="th">ไทย</option>
2823-
<option value="ms">Bahasa Melayu</option>
2814+
<option value="bn">বাংলা</option>
2815+
<option value="nl">Nederlands</option>
28242816
<option value="tl">Filipino</option>
2817+
<option value="fr">Français</option>
2818+
<option value="de">Deutsch</option>
28252819
<option value="he">עברית</option>
28262820
<option value="hi">हिन्दी</option>
2821+
<option value="id">Bahasa Indonesia</option>
2822+
<option value="ja">日本語</option>
2823+
<option value="ko">한국어</option>
2824+
<option value="ms">Bahasa Melayu</option>
2825+
<option value="fa">فارسی</option>
28272826
<option value="pt">Português</option>
2827+
<option value="ru">Русский</option>
2828+
<option value="es">Español</option>
2829+
<option value="th">ไทย</option>
2830+
<option value="tr">Türkçe</option>
2831+
<option value="uk">Українська</option>
28282832
<option value="vi">Tiếng Việt</option>
2829-
<option value="bn">বাংলা</option>
2830-
<option value="fa">فارسی</option>
2831-
<option value="nl">Nederlands</option>
2832-
<option value="de">Deutsch</option>
28332833
</select>
28342834
<button class="language-picker-btn" type="button" id="language-picker-btn" aria-label="اختر اللغة" title="اختر اللغة" aria-haspopup="listbox" aria-expanded="false" aria-controls="language-picker-menu">
28352835
<img class="language-picker-flag" id="language-picker-flag" src="/assets/flags/sa.svg" alt="" aria-hidden="true">
@@ -3785,27 +3785,27 @@ <h3>انشر الكلمة، شارك الحبّ</h3>
37853785
<div class="lang-noscript">
37863786
<span>اختر اللغة</span>
37873787
<a href="/" hreflang="en">English</a>
3788-
<a href="/es/" hreflang="es">Español</a>
3789-
<a href="/fr/" hreflang="fr">Français</a>
3790-
<a href="/tr/" hreflang="tr">Türkçe</a>
37913788
<a href="/zh/" hreflang="zh">中文</a>
3792-
<a href="/ru/" hreflang="ru">Русский</a>
3793-
<a href="/uk/" hreflang="uk">Українська</a>
37943789
<a href="/ar/" hreflang="ar">العربية</a>
3795-
<a href="/ja/" hreflang="ja">日本語</a>
3796-
<a href="/ko/" hreflang="ko">한국어</a>
3797-
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798-
<a href="/th/" hreflang="th">ไทย</a>
3799-
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3790+
<a href="/bn/" hreflang="bn">বাংলা</a>
3791+
<a href="/nl/" hreflang="nl">Nederlands</a>
38003792
<a href="/tl/" hreflang="tl">Filipino</a>
3793+
<a href="/fr/" hreflang="fr">Français</a>
3794+
<a href="/de/" hreflang="de">Deutsch</a>
38013795
<a href="/he/" hreflang="he">עברית</a>
38023796
<a href="/hi/" hreflang="hi">हिन्दी</a>
3797+
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798+
<a href="/ja/" hreflang="ja">日本語</a>
3799+
<a href="/ko/" hreflang="ko">한국어</a>
3800+
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3801+
<a href="/fa/" hreflang="fa">فارسی</a>
38033802
<a href="/pt/" hreflang="pt">Português</a>
3803+
<a href="/ru/" hreflang="ru">Русский</a>
3804+
<a href="/es/" hreflang="es">Español</a>
3805+
<a href="/th/" hreflang="th">ไทย</a>
3806+
<a href="/tr/" hreflang="tr">Türkçe</a>
3807+
<a href="/uk/" hreflang="uk">Українська</a>
38043808
<a href="/vi/" hreflang="vi">Tiếng Việt</a>
3805-
<a href="/bn/" hreflang="bn">বাংলা</a>
3806-
<a href="/fa/" hreflang="fa">فارسی</a>
3807-
<a href="/nl/" hreflang="nl">Nederlands</a>
3808-
<a href="/de/" hreflang="de">Deutsch</a>
38093809
</div>
38103810
</div>
38113811
</footer>

web/bn/index.html

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2809,27 +2809,27 @@
28092809
<div class="language-picker" id="language-picker">
28102810
<select class="language-select-native" id="lang-dropdown" tabindex="-1" aria-hidden="true" data-current="bn">
28112811
<option value="en">English</option>
2812-
<option value="es">Español</option>
2813-
<option value="fr">Français</option>
2814-
<option value="tr">Türkçe</option>
28152812
<option value="zh">中文</option>
2816-
<option value="ru">Русский</option>
2817-
<option value="uk">Українська</option>
28182813
<option value="ar">العربية</option>
2819-
<option value="ja">日本語</option>
2820-
<option value="ko">한국어</option>
2821-
<option value="id">Bahasa Indonesia</option>
2822-
<option value="th">ไทย</option>
2823-
<option value="ms">Bahasa Melayu</option>
2814+
<option value="bn">বাংলা</option>
2815+
<option value="nl">Nederlands</option>
28242816
<option value="tl">Filipino</option>
2817+
<option value="fr">Français</option>
2818+
<option value="de">Deutsch</option>
28252819
<option value="he">עברית</option>
28262820
<option value="hi">हिन्दी</option>
2821+
<option value="id">Bahasa Indonesia</option>
2822+
<option value="ja">日本語</option>
2823+
<option value="ko">한국어</option>
2824+
<option value="ms">Bahasa Melayu</option>
2825+
<option value="fa">فارسی</option>
28272826
<option value="pt">Português</option>
2827+
<option value="ru">Русский</option>
2828+
<option value="es">Español</option>
2829+
<option value="th">ไทย</option>
2830+
<option value="tr">Türkçe</option>
2831+
<option value="uk">Українська</option>
28282832
<option value="vi">Tiếng Việt</option>
2829-
<option value="bn">বাংলা</option>
2830-
<option value="fa">فارسی</option>
2831-
<option value="nl">Nederlands</option>
2832-
<option value="de">Deutsch</option>
28332833
</select>
28342834
<button class="language-picker-btn" type="button" id="language-picker-btn" aria-label="ভাষা নির্বাচন করুন" title="ভাষা নির্বাচন করুন" aria-haspopup="listbox" aria-expanded="false" aria-controls="language-picker-menu">
28352835
<img class="language-picker-flag" id="language-picker-flag" src="/assets/flags/bd.svg" alt="" aria-hidden="true">
@@ -3785,27 +3785,27 @@ <h3>কথাটি ছড়িয়ে দিন, ভালবাসা ভ
37853785
<div class="lang-noscript">
37863786
<span>ভাষা নির্বাচন করুন</span>
37873787
<a href="/" hreflang="en">English</a>
3788-
<a href="/es/" hreflang="es">Español</a>
3789-
<a href="/fr/" hreflang="fr">Français</a>
3790-
<a href="/tr/" hreflang="tr">Türkçe</a>
37913788
<a href="/zh/" hreflang="zh">中文</a>
3792-
<a href="/ru/" hreflang="ru">Русский</a>
3793-
<a href="/uk/" hreflang="uk">Українська</a>
37943789
<a href="/ar/" hreflang="ar">العربية</a>
3795-
<a href="/ja/" hreflang="ja">日本語</a>
3796-
<a href="/ko/" hreflang="ko">한국어</a>
3797-
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798-
<a href="/th/" hreflang="th">ไทย</a>
3799-
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3790+
<a href="/bn/" hreflang="bn">বাংলা</a>
3791+
<a href="/nl/" hreflang="nl">Nederlands</a>
38003792
<a href="/tl/" hreflang="tl">Filipino</a>
3793+
<a href="/fr/" hreflang="fr">Français</a>
3794+
<a href="/de/" hreflang="de">Deutsch</a>
38013795
<a href="/he/" hreflang="he">עברית</a>
38023796
<a href="/hi/" hreflang="hi">हिन्दी</a>
3797+
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798+
<a href="/ja/" hreflang="ja">日本語</a>
3799+
<a href="/ko/" hreflang="ko">한국어</a>
3800+
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3801+
<a href="/fa/" hreflang="fa">فارسی</a>
38033802
<a href="/pt/" hreflang="pt">Português</a>
3803+
<a href="/ru/" hreflang="ru">Русский</a>
3804+
<a href="/es/" hreflang="es">Español</a>
3805+
<a href="/th/" hreflang="th">ไทย</a>
3806+
<a href="/tr/" hreflang="tr">Türkçe</a>
3807+
<a href="/uk/" hreflang="uk">Українська</a>
38043808
<a href="/vi/" hreflang="vi">Tiếng Việt</a>
3805-
<a href="/bn/" hreflang="bn">বাংলা</a>
3806-
<a href="/fa/" hreflang="fa">فارسی</a>
3807-
<a href="/nl/" hreflang="nl">Nederlands</a>
3808-
<a href="/de/" hreflang="de">Deutsch</a>
38093809
</div>
38103810
</div>
38113811
</footer>

web/build/template.html

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2557,27 +2557,27 @@
25572557
<div class="language-picker" id="language-picker">
25582558
<select class="language-select-native" id="lang-dropdown" tabindex="-1" aria-hidden="true" data-current="{{locale_code}}">
25592559
<option value="en">English</option>
2560-
<option value="es">Español</option>
2561-
<option value="fr">Français</option>
2562-
<option value="tr">Türkçe</option>
25632560
<option value="zh">中文</option>
2564-
<option value="ru">Русский</option>
2565-
<option value="uk">Українська</option>
25662561
<option value="ar">العربية</option>
2567-
<option value="ja">日本語</option>
2568-
<option value="ko">한국어</option>
2569-
<option value="id">Bahasa Indonesia</option>
2570-
<option value="th">ไทย</option>
2571-
<option value="ms">Bahasa Melayu</option>
2562+
<option value="bn">বাংলা</option>
2563+
<option value="nl">Nederlands</option>
25722564
<option value="tl">Filipino</option>
2565+
<option value="fr">Français</option>
2566+
<option value="de">Deutsch</option>
25732567
<option value="he">עברית</option>
25742568
<option value="hi">हिन्दी</option>
2569+
<option value="id">Bahasa Indonesia</option>
2570+
<option value="ja">日本語</option>
2571+
<option value="ko">한국어</option>
2572+
<option value="ms">Bahasa Melayu</option>
2573+
<option value="fa">فارسی</option>
25752574
<option value="pt">Português</option>
2575+
<option value="ru">Русский</option>
2576+
<option value="es">Español</option>
2577+
<option value="th">ไทย</option>
2578+
<option value="tr">Türkçe</option>
2579+
<option value="uk">Українська</option>
25762580
<option value="vi">Tiếng Việt</option>
2577-
<option value="bn">বাংলা</option>
2578-
<option value="fa">فارسی</option>
2579-
<option value="nl">Nederlands</option>
2580-
<option value="de">Deutsch</option>
25812581
</select>
25822582
<button class="language-picker-btn" type="button" id="language-picker-btn" aria-label="{{t:nav.language_aria}}" title="{{t:nav.language_aria}}" aria-haspopup="listbox" aria-expanded="false" aria-controls="language-picker-menu">
25832583
<img class="language-picker-flag" id="language-picker-flag" src="/assets/flags/{{locale_flag_code}}.svg" alt="" aria-hidden="true">
@@ -3533,27 +3533,27 @@ <h3>{{t:share.title}}</h3>
35333533
<div class="lang-noscript">
35343534
<span>{{t:nav.language_aria}}</span>
35353535
<a href="/" hreflang="en">English</a>
3536-
<a href="/es/" hreflang="es">Español</a>
3537-
<a href="/fr/" hreflang="fr">Français</a>
3538-
<a href="/tr/" hreflang="tr">Türkçe</a>
35393536
<a href="/zh/" hreflang="zh">中文</a>
3540-
<a href="/ru/" hreflang="ru">Русский</a>
3541-
<a href="/uk/" hreflang="uk">Українська</a>
35423537
<a href="/ar/" hreflang="ar">العربية</a>
3543-
<a href="/ja/" hreflang="ja">日本語</a>
3544-
<a href="/ko/" hreflang="ko">한국어</a>
3545-
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3546-
<a href="/th/" hreflang="th">ไทย</a>
3547-
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3538+
<a href="/bn/" hreflang="bn">বাংলা</a>
3539+
<a href="/nl/" hreflang="nl">Nederlands</a>
35483540
<a href="/tl/" hreflang="tl">Filipino</a>
3541+
<a href="/fr/" hreflang="fr">Français</a>
3542+
<a href="/de/" hreflang="de">Deutsch</a>
35493543
<a href="/he/" hreflang="he">עברית</a>
35503544
<a href="/hi/" hreflang="hi">हिन्दी</a>
3545+
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3546+
<a href="/ja/" hreflang="ja">日本語</a>
3547+
<a href="/ko/" hreflang="ko">한국어</a>
3548+
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3549+
<a href="/fa/" hreflang="fa">فارسی</a>
35513550
<a href="/pt/" hreflang="pt">Português</a>
3551+
<a href="/ru/" hreflang="ru">Русский</a>
3552+
<a href="/es/" hreflang="es">Español</a>
3553+
<a href="/th/" hreflang="th">ไทย</a>
3554+
<a href="/tr/" hreflang="tr">Türkçe</a>
3555+
<a href="/uk/" hreflang="uk">Українська</a>
35523556
<a href="/vi/" hreflang="vi">Tiếng Việt</a>
3553-
<a href="/bn/" hreflang="bn">বাংলা</a>
3554-
<a href="/fa/" hreflang="fa">فارسی</a>
3555-
<a href="/nl/" hreflang="nl">Nederlands</a>
3556-
<a href="/de/" hreflang="de">Deutsch</a>
35573557
</div>
35583558
</div>
35593559
</footer>

web/de/index.html

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2809,27 +2809,27 @@
28092809
<div class="language-picker" id="language-picker">
28102810
<select class="language-select-native" id="lang-dropdown" tabindex="-1" aria-hidden="true" data-current="de">
28112811
<option value="en">English</option>
2812-
<option value="es">Español</option>
2813-
<option value="fr">Français</option>
2814-
<option value="tr">Türkçe</option>
28152812
<option value="zh">中文</option>
2816-
<option value="ru">Русский</option>
2817-
<option value="uk">Українська</option>
28182813
<option value="ar">العربية</option>
2819-
<option value="ja">日本語</option>
2820-
<option value="ko">한국어</option>
2821-
<option value="id">Bahasa Indonesia</option>
2822-
<option value="th">ไทย</option>
2823-
<option value="ms">Bahasa Melayu</option>
2814+
<option value="bn">বাংলা</option>
2815+
<option value="nl">Nederlands</option>
28242816
<option value="tl">Filipino</option>
2817+
<option value="fr">Français</option>
2818+
<option value="de">Deutsch</option>
28252819
<option value="he">עברית</option>
28262820
<option value="hi">हिन्दी</option>
2821+
<option value="id">Bahasa Indonesia</option>
2822+
<option value="ja">日本語</option>
2823+
<option value="ko">한국어</option>
2824+
<option value="ms">Bahasa Melayu</option>
2825+
<option value="fa">فارسی</option>
28272826
<option value="pt">Português</option>
2827+
<option value="ru">Русский</option>
2828+
<option value="es">Español</option>
2829+
<option value="th">ไทย</option>
2830+
<option value="tr">Türkçe</option>
2831+
<option value="uk">Українська</option>
28282832
<option value="vi">Tiếng Việt</option>
2829-
<option value="bn">বাংলা</option>
2830-
<option value="fa">فارسی</option>
2831-
<option value="nl">Nederlands</option>
2832-
<option value="de">Deutsch</option>
28332833
</select>
28342834
<button class="language-picker-btn" type="button" id="language-picker-btn" aria-label="Sprache auswählen" title="Sprache auswählen" aria-haspopup="listbox" aria-expanded="false" aria-controls="language-picker-menu">
28352835
<img class="language-picker-flag" id="language-picker-flag" src="/assets/flags/de.svg" alt="" aria-hidden="true">
@@ -3785,27 +3785,27 @@ <h3>Verbreiten Sie es, teilen Sie die Liebe</h3>
37853785
<div class="lang-noscript">
37863786
<span>Sprache auswählen</span>
37873787
<a href="/" hreflang="en">English</a>
3788-
<a href="/es/" hreflang="es">Español</a>
3789-
<a href="/fr/" hreflang="fr">Français</a>
3790-
<a href="/tr/" hreflang="tr">Türkçe</a>
37913788
<a href="/zh/" hreflang="zh">中文</a>
3792-
<a href="/ru/" hreflang="ru">Русский</a>
3793-
<a href="/uk/" hreflang="uk">Українська</a>
37943789
<a href="/ar/" hreflang="ar">العربية</a>
3795-
<a href="/ja/" hreflang="ja">日本語</a>
3796-
<a href="/ko/" hreflang="ko">한국어</a>
3797-
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798-
<a href="/th/" hreflang="th">ไทย</a>
3799-
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3790+
<a href="/bn/" hreflang="bn">বাংলা</a>
3791+
<a href="/nl/" hreflang="nl">Nederlands</a>
38003792
<a href="/tl/" hreflang="tl">Filipino</a>
3793+
<a href="/fr/" hreflang="fr">Français</a>
3794+
<a href="/de/" hreflang="de">Deutsch</a>
38013795
<a href="/he/" hreflang="he">עברית</a>
38023796
<a href="/hi/" hreflang="hi">हिन्दी</a>
3797+
<a href="/id/" hreflang="id">Bahasa Indonesia</a>
3798+
<a href="/ja/" hreflang="ja">日本語</a>
3799+
<a href="/ko/" hreflang="ko">한국어</a>
3800+
<a href="/ms/" hreflang="ms">Bahasa Melayu</a>
3801+
<a href="/fa/" hreflang="fa">فارسی</a>
38033802
<a href="/pt/" hreflang="pt">Português</a>
3803+
<a href="/ru/" hreflang="ru">Русский</a>
3804+
<a href="/es/" hreflang="es">Español</a>
3805+
<a href="/th/" hreflang="th">ไทย</a>
3806+
<a href="/tr/" hreflang="tr">Türkçe</a>
3807+
<a href="/uk/" hreflang="uk">Українська</a>
38043808
<a href="/vi/" hreflang="vi">Tiếng Việt</a>
3805-
<a href="/bn/" hreflang="bn">বাংলা</a>
3806-
<a href="/fa/" hreflang="fa">فارسی</a>
3807-
<a href="/nl/" hreflang="nl">Nederlands</a>
3808-
<a href="/de/" hreflang="de">Deutsch</a>
38093809
</div>
38103810
</div>
38113811
</footer>

0 commit comments

Comments
 (0)