Fix trans bug

pull/482/head
okjack 2 years ago
parent 48e3ac9408
commit 0ee7c69ffb
  1. 3
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/VodActivity.java
  2. 2
      app/src/main/java/com/fongmi/android/tv/api/config/VodConfig.java
  3. 10
      app/src/main/java/com/fongmi/android/tv/bean/Result.java
  4. 14
      app/src/main/java/com/fongmi/android/tv/bean/Site.java
  5. 3
      app/src/mobile/java/com/fongmi/android/tv/ui/fragment/VodFragment.java

@ -31,7 +31,6 @@ import com.fongmi.android.tv.ui.presenter.TypePresenter;
import com.fongmi.android.tv.utils.KeyUtil;
import com.fongmi.android.tv.utils.ResUtil;
import com.github.catvod.utils.Prefers;
import com.github.catvod.utils.Trans;
import java.util.ArrayList;
import java.util.List;
@ -110,7 +109,7 @@ public class VodActivity extends BaseActivity implements TypePresenter.OnClickLi
private List<Class> getTypes(Result result) {
List<Class> items = new ArrayList<>();
for (String cate : getSite().getCategories()) for (Class item : result.getTypes()) if (Trans.s2t(cate).equals(item.getTypeName())) items.add(item);
for (String cate : getSite().getCategories()) for (Class item : result.getTypes()) if (cate.equals(item.getTypeName())) items.add(item);
return items;
}

@ -197,7 +197,7 @@ public class VodConfig {
if (sites.contains(site)) continue;
site.setApi(parseApi(site.getApi()));
site.setExt(parseExt(site.getExt()));
sites.add(site.sync());
sites.add(site.trans().sync());
}
for (Site site : sites) {
if (site.getKey().equals(config.getHome())) {

@ -70,6 +70,8 @@ public class Result implements Parcelable {
private String format;
@SerializedName("click")
private String click;
@SerializedName("js")
private String js;
@SerializedName("key")
private String key;
@SerializedName("pagecount")
@ -241,6 +243,14 @@ public class Result implements Parcelable {
this.click = click;
}
public String getJs() {
return TextUtils.isEmpty(js) ? "" : js;
}
public void setJs(String js) {
this.js = js;
}
public String getKey() {
return TextUtils.isEmpty(key) ? "" : key;
}

@ -15,10 +15,12 @@ import com.fongmi.android.tv.Setting;
import com.fongmi.android.tv.db.AppDatabase;
import com.fongmi.android.tv.gson.ExtAdapter;
import com.github.catvod.utils.Json;
import com.github.catvod.utils.Trans;
import com.google.gson.JsonElement;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.annotations.SerializedName;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@ -203,6 +205,10 @@ public class Site implements Parcelable {
return categories == null ? Collections.emptyList() : categories;
}
public void setCategories(List<String> categories) {
this.categories = categories;
}
public JsonElement getHeader() {
return header;
}
@ -253,6 +259,14 @@ public class Site implements Parcelable {
return Headers.of(Json.toMap(getHeader()));
}
public Site trans() {
if (Trans.pass()) return this;
List<String> categories = new ArrayList<>();
for (String cate : getCategories()) categories.add(Trans.s2t(cate));
setCategories(categories);
return this;
}
public Site sync() {
Site item = find(getKey());
if (item == null) return this;

@ -59,7 +59,6 @@ import com.fongmi.android.tv.utils.Notify;
import com.fongmi.android.tv.utils.ResUtil;
import com.fongmi.android.tv.utils.UrlUtil;
import com.github.catvod.net.OkHttp;
import com.github.catvod.utils.Trans;
import com.google.common.net.HttpHeaders;
import com.permissionx.guolindev.PermissionX;
@ -183,7 +182,7 @@ public class VodFragment extends BaseFragment implements SiteCallback, FilterCal
private Result handle(Result result) {
List<Class> types = new ArrayList<>();
for (Class type : result.getTypes()) if (result.getFilters().containsKey(type.getTypeId())) type.setFilters(result.getFilters().get(type.getTypeId()));
for (String cate : getSite().getCategories()) for (Class type : result.getTypes()) if (Trans.s2t(cate).equals(type.getTypeName())) types.add(type);
for (String cate : getSite().getCategories()) for (Class type : result.getTypes()) if (cate.equals(type.getTypeName())) types.add(type);
result.setTypes(types);
return result;
}

Loading…
Cancel
Save