package org.petabytes.awesomeblogs.feeds;
import android.content.Context;
import android.support.annotation.NonNull;
import android.text.Html;
import android.view.View;
import android.widget.TextView;
import org.petabytes.api.source.local.Entry;
import org.petabytes.awesomeblogs.AwesomeBlogsApp;
import org.petabytes.awesomeblogs.R;
import org.petabytes.awesomeblogs.summary.SummaryActivity;
import org.petabytes.coordinator.Coordinator;
import java.util.List;
import java.util.Random;
import butterknife.BindView;
import butterknife.OnClick;
class EntryDiagonalCoordinator extends Coordinator {
@BindView(R.id.title_1) TextView titleView1;
@BindView(R.id.title_2) TextView titleView2;
@BindView(R.id.author_1) TextView authorView1;
@BindView(R.id.author_2) TextView authorView2;
private final Context context;
private final List<Entry> entries;
EntryDiagonalCoordinator(@NonNull Context context, @NonNull List<Entry> entries) {
this.context = context;
this.entries = entries;
}
@Override
public void attach(@NonNull View view) {
super.attach(view);
bind(AwesomeBlogsApp.get().api()
.isRead(entries.get(0).getLink()), isRead -> {
titleView1.setText(Html.fromHtml(entries.get(0).getTitle()));
titleView1.setAlpha(isRead ? 0.35f : 1f);
authorView1.setText(Entry.getFormattedAuthorUpdatedAt(entries.get(0)));
});
bind(AwesomeBlogsApp.get().api()
.isRead(entries.get(1).getLink()), isRead -> {
titleView2.setText(Html.fromHtml(entries.get(1).getTitle()));
titleView2.setAlpha(isRead ? 0.65f : 1f);
authorView2.setText(Entry.getFormattedAuthorUpdatedAt(entries.get(1)));
});
setBackground(view);
}
@OnClick(R.id.top_container)
void onTopContainerClick() {
Entry entry = entries.get(0);
context.startActivity(SummaryActivity.intent(context, entry.getLink()));
}
@OnClick(R.id.bottom_container)
void onBottomContainerClick() {
Entry entry = entries.get(1);
context.startActivity(SummaryActivity.intent(context, entry.getLink()));
}
private void setBackground(@NonNull View view) {
switch (new Random(System.identityHashCode(entries.get(0).getTitle())).nextInt(12)) {
case 0: view.setBackgroundResource(R.drawable.background_diagonal_0); break;
case 1: view.setBackgroundResource(R.drawable.background_diagonal_1); break;
case 2: view.setBackgroundResource(R.drawable.background_diagonal_2); break;
case 3: view.setBackgroundResource(R.drawable.background_diagonal_3); break;
case 4: view.setBackgroundResource(R.drawable.background_diagonal_4); break;
case 5: view.setBackgroundResource(R.drawable.background_diagonal_5); break;
case 6: view.setBackgroundResource(R.drawable.background_diagonal_6); break;
case 7: view.setBackgroundResource(R.drawable.background_diagonal_7); break;
case 8: view.setBackgroundResource(R.drawable.background_diagonal_8); break;
case 9: view.setBackgroundResource(R.drawable.background_diagonal_9); break;
case 10: view.setBackgroundResource(R.drawable.background_diagonal_10); break;
case 11: view.setBackgroundResource(R.drawable.background_diagonal_11); break;
}
}
}