forked from j62/ctbrec
1
0
Fork 0

Implement login and token balance

This commit is contained in:
0xboobface 2019-04-15 19:17:41 +02:00
parent 50c38d16a7
commit 8f5c7ac9c4
1 changed files with 29 additions and 31 deletions

View File

@ -44,7 +44,7 @@ public class Flirt4Free extends AbstractSite {
@Override @Override
public String getBuyTokensLink() { public String getBuyTokensLink() {
return BASE_URI; return getAffiliateLink();
} }
@Override @Override
@ -58,28 +58,26 @@ public class Flirt4Free extends AbstractSite {
@Override @Override
public Double getTokenBalance() throws IOException { public Double getTokenBalance() throws IOException {
return 0d; if (!credentialsAvailable()) {
// if (!credentialsAvailable()) { throw new IOException("Account settings not available");
// throw new IOException("Account settings not available"); }
// }
// login();
// String username = Config.getInstance().getSettings().camsodaUsername;
// String url = BASE_URI + "/api/v1/user/" + username; String url = Flirt4Free.BASE_URI + "/my-account/";
// Request request = new Request.Builder().url(url).build(); Request request = new Request.Builder()
// try(Response response = getHttpClient().execute(request)) { .url(url)
// if(response.isSuccessful()) { .header("User-Agent", Config.getInstance().getSettings().httpUserAgent)
// JSONObject json = new JSONObject(response.body().string()); .build();
// if(json.has("user")) { try(Response response = getHttpClient().execute(request)) {
// JSONObject user = json.getJSONObject("user"); if(response.isSuccessful()) {
// if(user.has("tokens")) { String body = response.body().string();
// return (double) user.getInt("tokens"); String text = HtmlParser.getText(body, "span[class~=user-credit-amount] strong");
// } return Double.parseDouble(text);
// } } else {
// } else { throw new RuntimeException("Tokens not found in response");
// throw new HttpException(response.code(), response.message()); }
// } }
// }
// throw new RuntimeException("Tokens not found in response");
} }
@Override @Override
@ -89,7 +87,7 @@ public class Flirt4Free extends AbstractSite {
@Override @Override
public HttpClient getHttpClient() { public HttpClient getHttpClient() {
if(httpClient == null) { if (httpClient == null) {
httpClient = new Flirt4FreeHttpClient(); httpClient = new Flirt4FreeHttpClient();
} }
return httpClient; return httpClient;
@ -101,14 +99,14 @@ public class Flirt4Free extends AbstractSite {
@Override @Override
public void shutdown() { public void shutdown() {
if(httpClient != null) { if (httpClient != null) {
httpClient.shutdown(); httpClient.shutdown();
} }
} }
@Override @Override
public boolean supportsTips() { public boolean supportsTips() {
return false; return true;
} }
@Override @Override
@ -126,10 +124,10 @@ public class Flirt4Free extends AbstractSite {
String url = BASE_URI + "/search/?query=" + URLEncoder.encode(q, "utf-8"); String url = BASE_URI + "/search/?query=" + URLEncoder.encode(q, "utf-8");
Request req = new Request.Builder() Request req = new Request.Builder()
.url(url) .url(url)
.addHeader("User-Agent", Config.getInstance().getSettings().httpUserAgent) .header("User-Agent", Config.getInstance().getSettings().httpUserAgent)
.build(); .build();
try(Response response = getHttpClient().execute(req)) { try (Response response = getHttpClient().execute(req)) {
if(response.isSuccessful()) { if (response.isSuccessful()) {
List<Model> result = new ArrayList<>(); List<Model> result = new ArrayList<>();
String body = response.body().string(); String body = response.body().string();
Elements modelLinks = HtmlParser.getTags(body, "form#advanced_search h4 a.common-link"); Elements modelLinks = HtmlParser.getTags(body, "form#advanced_search h4 a.common-link");
@ -157,7 +155,7 @@ public class Flirt4Free extends AbstractSite {
@Override @Override
public boolean credentialsAvailable() { public boolean credentialsAvailable() {
String username = Config.getInstance().getSettings().camsodaUsername; String username = Config.getInstance().getSettings().flirt4freeUsername;
return username != null && !username.trim().isEmpty(); return username != null && !username.trim().isEmpty();
} }
@ -170,7 +168,7 @@ public class Flirt4Free extends AbstractSite {
}; };
for (String p : patterns) { for (String p : patterns) {
Matcher m = Pattern.compile(p).matcher(url); Matcher m = Pattern.compile(p).matcher(url);
if(m.matches()) { if (m.matches()) {
String modelName = m.group(1); String modelName = m.group(1);
return createModel(modelName); return createModel(modelName);
} }