Check if the board in a postlinkable thread exists

multisite
Floens 10 years ago
parent d14af8c5ef
commit 90e8c7f3e6
  1. 14
      Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java

@ -28,6 +28,7 @@ import org.floens.chan.chan.ChanUrls;
import org.floens.chan.core.database.DatabaseManager; import org.floens.chan.core.database.DatabaseManager;
import org.floens.chan.core.http.DeleteHttpCall; import org.floens.chan.core.http.DeleteHttpCall;
import org.floens.chan.core.http.ReplyManager; import org.floens.chan.core.http.ReplyManager;
import org.floens.chan.core.manager.BoardManager;
import org.floens.chan.core.manager.WatchManager; import org.floens.chan.core.manager.WatchManager;
import org.floens.chan.core.model.ChanThread; import org.floens.chan.core.model.ChanThread;
import org.floens.chan.core.model.History; import org.floens.chan.core.model.History;
@ -37,8 +38,8 @@ import org.floens.chan.core.model.Post;
import org.floens.chan.core.model.PostImage; import org.floens.chan.core.model.PostImage;
import org.floens.chan.core.model.PostLinkable; import org.floens.chan.core.model.PostLinkable;
import org.floens.chan.core.model.SavedReply; import org.floens.chan.core.model.SavedReply;
import org.floens.chan.core.pool.LoaderPool;
import org.floens.chan.core.pool.LoadablePool; import org.floens.chan.core.pool.LoadablePool;
import org.floens.chan.core.pool.LoaderPool;
import org.floens.chan.core.settings.ChanSettings; import org.floens.chan.core.settings.ChanSettings;
import org.floens.chan.ui.adapter.PostAdapter; import org.floens.chan.ui.adapter.PostAdapter;
import org.floens.chan.ui.adapter.PostsFilter; import org.floens.chan.ui.adapter.PostsFilter;
@ -74,6 +75,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
private WatchManager watchManager; private WatchManager watchManager;
private DatabaseManager databaseManager; private DatabaseManager databaseManager;
private ReplyManager replyManager; private ReplyManager replyManager;
private BoardManager boardManager;
private ThreadPresenterCallback threadPresenterCallback; private ThreadPresenterCallback threadPresenterCallback;
@ -91,6 +93,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
watchManager = Chan.getWatchManager(); watchManager = Chan.getWatchManager();
databaseManager = Chan.getDatabaseManager(); databaseManager = Chan.getDatabaseManager();
replyManager = Chan.getReplyManager(); replyManager = Chan.getReplyManager();
boardManager = Chan.getBoardManager();
} }
public void bindLoadable(Loadable loadable) { public void bindLoadable(Loadable loadable) {
@ -478,10 +481,13 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
threadPresenterCallback.openLink((String) linkable.value); threadPresenterCallback.openLink((String) linkable.value);
} else if (linkable.type == PostLinkable.Type.THREAD) { } else if (linkable.type == PostLinkable.Type.THREAD) {
PostLinkable.ThreadLink link = (PostLinkable.ThreadLink) linkable.value; PostLinkable.ThreadLink link = (PostLinkable.ThreadLink) linkable.value;
Loadable thread = LoadablePool.getInstance().obtain(new Loadable(link.board, link.threadId));
thread.markedNo = link.postId;
threadPresenterCallback.showThread(thread); if (boardManager.getBoardExists(link.board)) {
Loadable thread = LoadablePool.getInstance().obtain(new Loadable(link.board, link.threadId));
thread.markedNo = link.postId;
threadPresenterCallback.showThread(thread);
}
} }
} }

Loading…
Cancel
Save