diff --git a/CHANGELOG.md b/CHANGELOG.md
index 17ae47a58..6207aa1e7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,9 @@
### v1.14.17
+**v1.14.17.3** *(2020-04-19)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.17.3/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.17.3/builds/4chan-X-noupdate.crx)]
+- Fix captcha loading issue when captcha language option is used. #2531
+
**v1.14.17.2** *(2020-04-16)* - [[Userscript](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.17.2/builds/4chan-X-noupdate.user.js)] [[Chrome extension](https://raw.githubusercontent.com/ccd0/4chan-x/1.14.17.2/builds/4chan-X-noupdate.crx)]
- Add hcaptcha.com and subdomains to Javascript Whitelist so that captcha on Cloudflare security check operates properly. #2584
diff --git a/builds/4chan-X-beta.crx b/builds/4chan-X-beta.crx
index 1f6349f7d..e39487330 100644
Binary files a/builds/4chan-X-beta.crx and b/builds/4chan-X-beta.crx differ
diff --git a/builds/4chan-X-beta.meta.js b/builds/4chan-X-beta.meta.js
index 930c2a94d..298e8c2fa 100644
--- a/builds/4chan-X-beta.meta.js
+++ b/builds/4chan-X-beta.meta.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X beta
-// @version 1.14.17.2
+// @version 1.14.17.3
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
diff --git a/builds/4chan-X-beta.user.js b/builds/4chan-X-beta.user.js
index a1090a9f3..dc706c098 100644
--- a/builds/4chan-X-beta.user.js
+++ b/builds/4chan-X-beta.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X beta
-// @version 1.14.17.2
+// @version 1.14.17.3
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -215,7 +215,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.17.2',
+ VERSION: '1.14.17.3',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -23523,10 +23523,10 @@ Captcha = {};
if (Conf['captchaLanguage'].trim() || Conf['Captcha Fixes']) {
if ((ref = location.hostname) === 'boards.4chan.org' || ref === 'boards.4channel.org') {
return $.onExists(doc, '#captchaFormPart', function(node) {
- return $.onExists(node, 'iframe', Captcha.replace.iframe);
+ return $.onExists(node, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
});
} else {
- return $.onExists(doc, 'iframe', Captcha.replace.iframe);
+ return $.onExists(doc, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
}
}
},
@@ -23542,7 +23542,7 @@ Captcha = {};
$.rm(original);
insert = function() {
span.innerHTML = noscript.textContent;
- return Captcha.replace.iframe($('iframe', span));
+ return Captcha.replace.iframe($('iframe[src^="https://www.google.com/recaptcha/"]', span));
};
if ((toggle = $('#togglePostFormLink a, #form-link'))) {
return $.on(toggle, 'click', insert);
@@ -23810,7 +23810,7 @@ Captcha = {};
$.queueTask((function(_this) {
return function() {
var iframe;
- if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe', _this.nodes.container))) {
+ if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe[src^="https://www.google.com/recaptcha/"]', _this.nodes.container))) {
iframe.focus();
return QR.focus();
}
@@ -23884,7 +23884,7 @@ Captcha = {};
ref = mutation.addedNodes;
for (j = 0, len1 = ref.length; j < len1; j++) {
node = ref[j];
- if ((iframe = $.x('./descendant-or-self::iframe', node))) {
+ if ((iframe = $.x('./descendant-or-self::iframe[starts-with(@src, "https://www.google.com/recaptcha/")]', node))) {
this.setupIFrame(iframe);
}
if ((textarea = $.x('./descendant-or-self::textarea', node))) {
diff --git a/builds/4chan-X-noupdate.crx b/builds/4chan-X-noupdate.crx
index 802729b83..f3f7fef3f 100644
Binary files a/builds/4chan-X-noupdate.crx and b/builds/4chan-X-noupdate.crx differ
diff --git a/builds/4chan-X-noupdate.user.js b/builds/4chan-X-noupdate.user.js
index 1ad5bb9ea..608932059 100644
--- a/builds/4chan-X-noupdate.user.js
+++ b/builds/4chan-X-noupdate.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X
-// @version 1.14.17.2
+// @version 1.14.17.3
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -215,7 +215,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.17.2',
+ VERSION: '1.14.17.3',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -23523,10 +23523,10 @@ Captcha = {};
if (Conf['captchaLanguage'].trim() || Conf['Captcha Fixes']) {
if ((ref = location.hostname) === 'boards.4chan.org' || ref === 'boards.4channel.org') {
return $.onExists(doc, '#captchaFormPart', function(node) {
- return $.onExists(node, 'iframe', Captcha.replace.iframe);
+ return $.onExists(node, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
});
} else {
- return $.onExists(doc, 'iframe', Captcha.replace.iframe);
+ return $.onExists(doc, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
}
}
},
@@ -23542,7 +23542,7 @@ Captcha = {};
$.rm(original);
insert = function() {
span.innerHTML = noscript.textContent;
- return Captcha.replace.iframe($('iframe', span));
+ return Captcha.replace.iframe($('iframe[src^="https://www.google.com/recaptcha/"]', span));
};
if ((toggle = $('#togglePostFormLink a, #form-link'))) {
return $.on(toggle, 'click', insert);
@@ -23810,7 +23810,7 @@ Captcha = {};
$.queueTask((function(_this) {
return function() {
var iframe;
- if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe', _this.nodes.container))) {
+ if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe[src^="https://www.google.com/recaptcha/"]', _this.nodes.container))) {
iframe.focus();
return QR.focus();
}
@@ -23884,7 +23884,7 @@ Captcha = {};
ref = mutation.addedNodes;
for (j = 0, len1 = ref.length; j < len1; j++) {
node = ref[j];
- if ((iframe = $.x('./descendant-or-self::iframe', node))) {
+ if ((iframe = $.x('./descendant-or-self::iframe[starts-with(@src, "https://www.google.com/recaptcha/")]', node))) {
this.setupIFrame(iframe);
}
if ((textarea = $.x('./descendant-or-self::textarea', node))) {
diff --git a/builds/4chan-X.crx b/builds/4chan-X.crx
index 1526b4b2f..c4f5953b2 100644
Binary files a/builds/4chan-X.crx and b/builds/4chan-X.crx differ
diff --git a/builds/4chan-X.meta.js b/builds/4chan-X.meta.js
index a86cd8497..30de07bcd 100644
--- a/builds/4chan-X.meta.js
+++ b/builds/4chan-X.meta.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X
-// @version 1.14.17.2
+// @version 1.14.17.3
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js
index d4cff4a53..2e9d1c00d 100644
--- a/builds/4chan-X.user.js
+++ b/builds/4chan-X.user.js
@@ -1,6 +1,6 @@
// ==UserScript==
// @name 4chan X
-// @version 1.14.17.2
+// @version 1.14.17.3
// @minGMVer 1.14
// @minFFVer 26
// @namespace 4chan-X
@@ -215,7 +215,7 @@ docSet = function() {
};
g = {
- VERSION: '1.14.17.2',
+ VERSION: '1.14.17.3',
NAMESPACE: '4chan X.',
sites: Object.create(null),
boards: Object.create(null)
@@ -23523,10 +23523,10 @@ Captcha = {};
if (Conf['captchaLanguage'].trim() || Conf['Captcha Fixes']) {
if ((ref = location.hostname) === 'boards.4chan.org' || ref === 'boards.4channel.org') {
return $.onExists(doc, '#captchaFormPart', function(node) {
- return $.onExists(node, 'iframe', Captcha.replace.iframe);
+ return $.onExists(node, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
});
} else {
- return $.onExists(doc, 'iframe', Captcha.replace.iframe);
+ return $.onExists(doc, 'iframe[src^="https://www.google.com/recaptcha/"]', Captcha.replace.iframe);
}
}
},
@@ -23542,7 +23542,7 @@ Captcha = {};
$.rm(original);
insert = function() {
span.innerHTML = noscript.textContent;
- return Captcha.replace.iframe($('iframe', span));
+ return Captcha.replace.iframe($('iframe[src^="https://www.google.com/recaptcha/"]', span));
};
if ((toggle = $('#togglePostFormLink a, #form-link'))) {
return $.on(toggle, 'click', insert);
@@ -23810,7 +23810,7 @@ Captcha = {};
$.queueTask((function(_this) {
return function() {
var iframe;
- if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe', _this.nodes.container))) {
+ if (_this.nodes.container && d.activeElement === _this.nodes.counter && (iframe = $('iframe[src^="https://www.google.com/recaptcha/"]', _this.nodes.container))) {
iframe.focus();
return QR.focus();
}
@@ -23884,7 +23884,7 @@ Captcha = {};
ref = mutation.addedNodes;
for (j = 0, len1 = ref.length; j < len1; j++) {
node = ref[j];
- if ((iframe = $.x('./descendant-or-self::iframe', node))) {
+ if ((iframe = $.x('./descendant-or-self::iframe[starts-with(@src, "https://www.google.com/recaptcha/")]', node))) {
this.setupIFrame(iframe);
}
if ((textarea = $.x('./descendant-or-self::textarea', node))) {
diff --git a/builds/4chan-X.zip b/builds/4chan-X.zip
index d3164a61e..35fb3f526 100644
Binary files a/builds/4chan-X.zip and b/builds/4chan-X.zip differ
diff --git a/builds/updates-beta.json b/builds/updates-beta.json
index 300cf2d0c..222a660dc 100644
--- a/builds/updates-beta.json
+++ b/builds/updates-beta.json
@@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": {
"updates": [
{
- "version": "1.14.17.2",
+ "version": "1.14.17.3",
"update_link": "https://www.4chan-x.net/builds/4chan-X-beta.crx"
}
]
diff --git a/builds/updates-beta.xml b/builds/updates-beta.xml
index ed2dc4b78..403ade524 100644
--- a/builds/updates-beta.xml
+++ b/builds/updates-beta.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/builds/updates.json b/builds/updates.json
index e8dcb086a..26aba22c8 100644
--- a/builds/updates.json
+++ b/builds/updates.json
@@ -3,7 +3,7 @@
"4chan-x@4chan-x.net": {
"updates": [
{
- "version": "1.14.17.2",
+ "version": "1.14.17.3",
"update_link": "https://www.4chan-x.net/builds/4chan-X.crx"
}
]
diff --git a/builds/updates.xml b/builds/updates.xml
index 273f05ab8..13339d219 100644
--- a/builds/updates.xml
+++ b/builds/updates.xml
@@ -1,7 +1,7 @@
-
+
diff --git a/version.json b/version.json
index 7defb9dbf..6e8c8217f 100644
--- a/version.json
+++ b/version.json
@@ -1,4 +1,4 @@
{
- "version": "1.14.17.2",
- "date": "2020-04-16T10:28:31.442Z"
+ "version": "1.14.17.3",
+ "date": "2020-04-19T20:32:21.455Z"
}
\ No newline at end of file