EhViewer v1.9.7.7版本的 MD5 值为:828893cd54837a794dab17a02809e194

以下内容为反编译后的 EhUrl.java 源代码,内容仅作参考


package com.hippo.ehviewer.client;

import com.hippo.ehviewer.Settings;
import com.hippo.network.UrlBuilder;
import java.util.List;
import java.util.ListIterator;
import okhttp3.HttpUrl;
public class EhUrl {
    public static final String API_E = "https://e-hentai.org/api.php";
    public static final String API_EX = "https://exhentai.org/api.php";
    public static final String API_SIGN_IN = "https://forums.e-hentai.org/index.php?act=Login&CODE=01";
    public static final String DOMAIN_E = "e-hentai.org";
    public static final String DOMAIN_EX = "exhentai.org";
    public static final String DOMAIN_LOFI = "lofi.e-hentai.org";
    public static final String HOME_E = "https://e-hentai.org/home.php";
    public static final String HOME_EX = "https://exhentai.org/home.php";
    public static final String HOST_E = "https://e-hentai.org/";
    public static final String HOST_EX = "https://exhentai.org/";
    public static final String ORIGIN_E = "https://e-hentai.org";
    public static final String ORIGIN_EX = "https://exhentai.org";
    public static final String REFERER_E = "https://e-hentai.org";
    public static final String REFERER_EX = "https://exhentai.org";
    public static final int SITE_E = 0;
    public static final int SITE_EX = 1;
    public static final String URL_FAVORITES_E = "https://e-hentai.org/favorites.php";
    public static final String URL_FAVORITES_EX = "https://exhentai.org/favorites.php";
    public static final String URL_FORUMS = "https://forums.e-hentai.org/";
    public static final String URL_IMAGE_SEARCH_E = "https://upload.e-hentai.org/image_lookup.php";
    public static final String URL_IMAGE_SEARCH_EX = "https://exhentai.org/upload/image_lookup.php";
    public static final String URL_MY_TAGS_E = "https://e-hentai.org/mytags";
    public static final String URL_MY_TAGS_EX = "https://exhentai.org/mytags";
    public static final String URL_NEWS_E = "https://e-hentai.org/news.php";
    public static final String URL_POPULAR_E = "https://e-hentai.org/popular";
    public static final String URL_POPULAR_EX = "https://exhentai.org/popular";
    private static final String URL_PREFIX_THUMB_E = "https://ehgt.org/";
    private static final String URL_PREFIX_THUMB_EX = "https://exhentai.org/t/";
    public static final String URL_REGISTER = "https://forums.e-hentai.org/index.php?act=Reg&CODE=00";
    public static final String URL_SIGN_IN = "https://forums.e-hentai.org/index.php?act=Login";
    public static final String URL_TOP_LIST_E = "https://e-hentai.org/toplist.php";
    public static final String URL_TOP_LIST_EX = "https://exhentai.org/toplist.php";
    public static final String URL_UCONFIG_E = "https://e-hentai.org/uconfig.php";
    public static final String URL_UCONFIG_EX = "https://exhentai.org/uconfig.php";
    public static final String URL_WATCHED_E = "https://e-hentai.org/watched";
    public static final String URL_WATCHED_EX = "https://exhentai.org/watched";

    public static String getEhNewsUrl() {
        return URL_NEWS_E;
    }

    public static String getHomeUrl() {
        return HOME_E;
    }

    public static String getTopListUrl() {
        return URL_TOP_LIST_E;
    }

    public static String getGalleryDetailUrl(long j, String str) {
        return getGalleryDetailUrl(j, str, 0, false);
    }

    public static String getHost() {
        return Settings.getGallerySite() != 1 ? HOST_E : HOST_EX;
    }

    public static String getMyTag() {
        return Settings.getGallerySite() != 1 ? URL_MY_TAGS_E : URL_MY_TAGS_EX;
    }

    public static String getFavoritesUrl() {
        return Settings.getGallerySite() != 1 ? URL_FAVORITES_E : URL_FAVORITES_EX;
    }

    public static String getApiUrl() {
        return Settings.getGallerySite() != 1 ? API_E : API_EX;
    }

    public static String getReferer() {
        return Settings.getGallerySite() != 1 ? "https://e-hentai.org" : "https://exhentai.org";
    }

    public static String getOrigin() {
        return Settings.getGallerySite() != 1 ? "https://e-hentai.org" : "https://exhentai.org";
    }

    public static String getUConfigUrl() {
        return Settings.getGallerySite() != 1 ? URL_UCONFIG_E : URL_UCONFIG_EX;
    }

    public static String getMyTagsUrl() {
        return Settings.getGallerySite() != 1 ? URL_MY_TAGS_E : URL_MY_TAGS_EX;
    }

    public static String getGalleryDetailUrl(long j, String str, int i, boolean z) {
        UrlBuilder urlBuilder = new UrlBuilder(getHost() + "g/" + j + '/' + str + '/');
        if (i != 0) {
            urlBuilder.addQuery("p", Integer.valueOf(i));
        }
        if (z) {
            urlBuilder.addQuery("hc", 1);
        }
        return urlBuilder.build();
    }

    public static String getPageUrl(long j, int i, String str) {
        return getHost() + "s/" + str + '/' + j + '-' + (i + 1);
    }

    public static String getAddFavorites(long j, String str) {
        return getHost() + "gallerypopups.php?gid=" + j + "&t=" + str + "&act=addfav";
    }

    public static String getDownloadArchive(long j, String str, String str2) {
        return getHost() + "archiver.php?gid=" + j + "&token=" + str + "&or=" + str2;
    }

    public static String getTagDefinitionUrl(String str) {
        return "https://ehwiki.org/wiki/" + str.replace(' ', '_');
    }

    public static String getPopularUrl() {
        return Settings.getGallerySite() != 1 ? URL_POPULAR_E : URL_POPULAR_EX;
    }

    public static String getImageSearchUrl() {
        return Settings.getGallerySite() != 1 ? URL_IMAGE_SEARCH_E : URL_IMAGE_SEARCH_EX;
    }

    public static String getWatchedUrl() {
        return Settings.getGallerySite() != 1 ? URL_WATCHED_E : URL_WATCHED_EX;
    }

    public static String getThumbUrlPrefix() {
        Settings.getGallerySite();
        return URL_PREFIX_THUMB_E;
    }

    public static String getFixedPreviewThumbUrl(String str) {
        List<String> pathSegments;
        HttpUrl parse = HttpUrl.parse(str);
        if (parse == null || (pathSegments = parse.pathSegments()) == null || pathSegments.size() < 3) {
            return str;
        }
        ListIterator<String> listIterator = pathSegments.listIterator(pathSegments.size());
        if (listIterator.hasPrevious()) {
            String previous = listIterator.previous();
            if (listIterator.hasPrevious()) {
                String previous2 = listIterator.previous();
                if (listIterator.hasPrevious()) {
                    String previous3 = listIterator.previous();
                    if (previous == null || previous2 == null || previous3 == null || !previous.startsWith(previous3) || !previous.startsWith(previous2, previous3.length())) {
                        return str;
                    }
                    return getThumbUrlPrefix() + previous3 + "/" + previous2 + "/" + previous;
                }
                return str;
            }
            return str;
        }
        return str;
    }
}