From 001f1042f4b4005aba449359adad2f834c716fb9 Mon Sep 17 00:00:00 2001 From: Jafea7 <73450040+Jafea7@users.noreply.github.com> Date: Fri, 26 Sep 2025 18:08:10 +1000 Subject: [PATCH] v25.09.26 --- CHANGELOG.md | 8 ++++++ client/pom.xml | 2 +- common/pom.xml | 2 +- .../sites/chaturbate/ChaturbateModel.java | 26 ++++++++++--------- .../sites/stripchat/StripchatModel.java | 22 +++++++++------- master/pom.xml | 2 +- server/pom.xml | 2 +- 7 files changed, 39 insertions(+), 25 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ed99913a..25461392 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,14 @@ If this version doesn't do what you want, don't use it ... simple. Changes from 0xb00bface's v5.3.0 version. +25.09.26 +======================== +* Added BongaCams URL entry warning +* Added model online detection for CGF search, sends name instead of image URL if offline + Note: Sending name for FC2 will fail to find matches (Japanese), DC cannot send URL to preview image (wrong mimetype). +* Implement PAC (Proxy Auto Configuration) +* Fix CheckURL for SC (WinkRU) + 25.09.15 ======================== * Add missing UserAgent parameter to minimal-browser call for some sites diff --git a/client/pom.xml b/client/pom.xml index b90db95a..d94eb50f 100644 --- a/client/pom.xml +++ b/client/pom.xml @@ -8,7 +8,7 @@ ctbrec master - 25.9.15 + 25.9.26 ../master diff --git a/common/pom.xml b/common/pom.xml index 6084edad..90699af2 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -8,7 +8,7 @@ ctbrec master - 25.9.15 + 25.9.26 ../master diff --git a/common/src/main/java/ctbrec/sites/chaturbate/ChaturbateModel.java b/common/src/main/java/ctbrec/sites/chaturbate/ChaturbateModel.java index 972cb4c1..2c0803c1 100644 --- a/common/src/main/java/ctbrec/sites/chaturbate/ChaturbateModel.java +++ b/common/src/main/java/ctbrec/sites/chaturbate/ChaturbateModel.java @@ -383,21 +383,23 @@ public class ChaturbateModel extends AbstractModel { @Override public boolean exists() throws IOException { - Request req = new Request.Builder() // @formatter:off - .url(getUrl()) - .header(USER_AGENT, Config.getInstance().getSettings().httpUserAgent) - .header(ACCEPT_LANGUAGE, Locale.ENGLISH.getLanguage()) - .build(); // @formatter:on + Request req = new Request.Builder() + .url(getUrl()) + .header("Accept", "*/*") + .header("Accept-Language", Locale.ENGLISH.getLanguage()) + .header("User-Agent", Config.getInstance().getSettings().httpUserAgent) + .header("Referer", getUrl()) + .header("Origin", getSite().getBaseUrl()) + .build(); try (Response response = getSite().getHttpClient().execute(req)) { - if (!response.isSuccessful() && response.code() == 404) { + if (response.code() == 404) { return false; - } else { - String body = response.body().string(); - boolean banned = body.contains("This room has been banned"); - boolean deleted = body.contains("This account has been deleted"); - boolean redirectedToRoot = Objects.equals("/", response.request().url().encodedPath()); - return !(banned || deleted || redirectedToRoot); } + String body = response.body().string(); + boolean banned = body.contains("This room has been banned"); + boolean deleted = body.contains("This account has been deleted"); + boolean redirectedToRoot = Objects.equals("/", response.request().url().encodedPath()); + return !banned && !deleted && !redirectedToRoot; } } diff --git a/common/src/main/java/ctbrec/sites/stripchat/StripchatModel.java b/common/src/main/java/ctbrec/sites/stripchat/StripchatModel.java index 054104ca..db202e4d 100644 --- a/common/src/main/java/ctbrec/sites/stripchat/StripchatModel.java +++ b/common/src/main/java/ctbrec/sites/stripchat/StripchatModel.java @@ -426,17 +426,21 @@ public class StripchatModel extends AbstractModel { @Override public boolean exists() throws IOException { - JSONObject jsonResponse = getModelInfo(); - if (jsonResponse.optString("error").equals("Not Found")) { - log.info("Model not found: {}", getName()); - return false; - } - if (jsonResponse.has("user")) { - JSONObject user = jsonResponse.getJSONObject("user"); - if (isBanned(user)) { - log.info("Model inactive or deleted: {}", getName()); + try { + JSONObject jsonResponse = getModelInfo(); + if (jsonResponse.has("user")) { + JSONObject user = jsonResponse.getJSONObject("user").getJSONObject("user"); + if (isBanned(user)) { + log.info("Model inactive or deleted: {}", getName()); + return false; + } + } + } catch (HttpException e) { + if (e.getResponseCode() == 404) { + log.info("Model not found: {}", getName()); return false; } + throw e; } return true; } diff --git a/master/pom.xml b/master/pom.xml index 49362cbe..dd2eea60 100644 --- a/master/pom.xml +++ b/master/pom.xml @@ -11,7 +11,7 @@ ctbrec master pom - 25.9.15 + 25.9.26 ../common diff --git a/server/pom.xml b/server/pom.xml index d6ec8477..819d1c38 100644 --- a/server/pom.xml +++ b/server/pom.xml @@ -8,7 +8,7 @@ ctbrec master - 25.9.15 + 25.9.26 ../master