forked from j62/ctbrec
Implement login and token balance
This commit is contained in:
parent
50c38d16a7
commit
8f5c7ac9c4
|
@ -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);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue