package com.florianmski.tracktoid.ui.activities; import android.app.Activity; import android.os.Bundle; import com.florianmski.tracktoid.R; import com.florianmski.tracktoid.TraktoidConstants; import com.florianmski.tracktoid.ui.fragments.comments.CommentsEpisodeFragment; import com.florianmski.tracktoid.ui.fragments.comments.CommentsFragment; import com.florianmski.tracktoid.ui.fragments.comments.CommentsMovieFragment; import com.florianmski.tracktoid.ui.fragments.comments.CommentsShowFragment; public class CommentsActivity extends TranslucentActivity { private final static int SHOW = 0, MOVIE = 1, EPISODE = 2; @Override protected int getContentViewId() { return R.layout.activity_comments; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(savedInstanceState == null) { CommentsFragment f; Bundle activityBundle = getIntent().getExtras(); String id = activityBundle.getString(TraktoidConstants.BUNDLE_ID); switch(getIntent().getExtras().getInt(TraktoidConstants.BUNDLE_TABLE)) { case SHOW: f = CommentsShowFragment.newInstance(id); break; case MOVIE: f = CommentsMovieFragment.newInstance(id); break; case EPISODE: int season = activityBundle.getInt(TraktoidConstants.BUNDLE_SEASON); int episode = activityBundle.getInt(TraktoidConstants.BUNDLE_EPISODE); f = CommentsEpisodeFragment.newInstance(id, season, episode); break; default: throw new UnsupportedOperationException(); } getSupportFragmentManager().beginTransaction().replace(R.id.fragment_comments, f, null).commit(); } } public static void launchShow(Activity a, String traktId) { launchActivity(a, CommentsActivity.class, getBundle(traktId, SHOW)); } public static void launchMovie(Activity a, String traktId) { launchActivity(a, CommentsActivity.class, getBundle(traktId, MOVIE)); } public static void launchEpisode(Activity a, String traktId, int season, int episode) { Bundle b = getBundle(traktId, EPISODE); b.putInt(TraktoidConstants.BUNDLE_SEASON, season); b.putInt(TraktoidConstants.BUNDLE_EPISODE, episode); launchActivity(a, CommentsActivity.class, b); } private static Bundle getBundle(String traktId, int type) { Bundle b = new Bundle(); b.putString(TraktoidConstants.BUNDLE_ID, traktId); b.putInt(TraktoidConstants.BUNDLE_TABLE, type); return b; } }