Fix Yiffstar
authorNiki Roo <niki@nikiroo.be>
Sat, 25 May 2019 17:57:48 +0000 (19:57 +0200)
committerNiki Roo <niki@nikiroo.be>
Sat, 25 May 2019 17:57:48 +0000 (19:57 +0200)
src/be/nikiroo/fanfix/supported/YiffStar.java

index 92d44fe9beaa9f997c6d1375af2f4c332b0ee496..121f97dc35b449dbf4014a7d19c6d51e0f876cc4 100644 (file)
@@ -26,7 +26,6 @@ import be.nikiroo.utils.StringUtils;
  * @author niki
  */
 class YiffStar extends BasicSupport_Deprecated {
-
        @Override
        public String getSourceName() {
                return "YiffStar";
@@ -80,10 +79,13 @@ class YiffStar extends BasicSupport_Deprecated {
 
                if (login != null && !login.isEmpty() && password != null
                                && !password.isEmpty()) {
+
                        Map<String, String> post = new HashMap<String, String>();
-                       post.put("sfLoginUsername", login);
-                       post.put("sfLoginPassword", password);
+                       post.put("LoginForm[sfLoginUsername]", login);
+                       post.put("LoginForm[sfLoginPassword]", password);
                        post.put("YII_CSRF_TOKEN", "");
+                       post.put("yt1", "Login");
+                       post.put("returnUrl", "/");
 
                        // Cookies will actually be retained by the cache manager once
                        // logged in
@@ -97,8 +99,10 @@ class YiffStar extends BasicSupport_Deprecated {
        public URL getCanonicalUrl(URL source) {
                try {
                        if (source.getPath().startsWith("/view")) {
-                               source = new URL(source.toString() + "/guest");
-                               InputStream in = Instance.getCache().open(source, this, false);
+                               source = guest(source.toString());
+                               // NO CACHE because we don't want the NotLoggedIn message later
+                               InputStream in = Instance.getCache().openNoCache(source, this,
+                                               null, null, null);
                                String line = getLine(in, "/browse/folder/", 0);
                                if (line != null) {
                                        String[] tab = line.split("\"");