package com.abewy.android.apps.klyph.adapter.fql;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.abewy.android.apps.klyph.R;
import com.abewy.android.apps.klyph.adapter.KlyphAdapter;
import com.abewy.android.apps.klyph.adapter.holder.ElementTimelineHolder;
import com.abewy.android.apps.klyph.core.fql.Group;
import com.abewy.android.apps.klyph.core.graph.GraphObject;
import com.abewy.android.apps.klyph.core.util.AttrUtil;
import com.abewy.android.apps.klyph.widget.coverImage.GroupCoverImageView;
public class GroupTimelineAdapter extends KlyphAdapter
{
private int placeHolder = -1;
public GroupTimelineAdapter()
{
super();
}
@Override
protected int getLayout()
{
return R.layout.item_group_timeline;
}
@Override
public boolean isEnabled(GraphObject object)
{
return false;
}
@Override
protected void attachHolder(View view)
{
ImageView elementCoverImage = (ImageView) view.findViewById(R.id.element_cover_image);
ImageView elementProfileImage = (ImageView) view.findViewById(R.id.element_profile_image);
TextView elementDetail1 = (TextView) view.findViewById(R.id.element_detail_1);
TextView elementDetail2 = (TextView) view.findViewById(R.id.element_detail_2);
TextView elementDetail3 = (TextView) view.findViewById(R.id.element_detail_3);
TextView elementDetail4 = (TextView) view.findViewById(R.id.element_detail_4);
TextView likes = (TextView) view.findViewById(R.id.likes);
TextView talkAbout = (TextView) view.findViewById(R.id.talk_about);
view.setTag(new ElementTimelineHolder(elementCoverImage, elementProfileImage, elementDetail1, elementDetail2,
elementDetail3, elementDetail4, likes, talkAbout));
}
@Override
protected void mergeViewWithData(View view, final GraphObject data)
{
super.mergeViewWithData(view, data);
ElementTimelineHolder holder = (ElementTimelineHolder) view.getTag();
Group group = (Group) data;
if (placeHolder == -1)
placeHolder = AttrUtil.getResourceId(getContext(holder.getElementCoverImage()), R.attr.squarePlaceHolderIcon);
holder.getElementProfileImage().setVisibility(View.GONE);
// group can have no cover image
String source = group.getPic_cover().getSource();
if (source != null && source.length() > 0)
{
GroupCoverImageView groupCoverImageView = (GroupCoverImageView) holder.getElementCoverImage();
groupCoverImageView.setOffset(group.getPic_cover().getOffset_y());
loadImage(holder.getElementCoverImage(), source, placeHolder, true);
}
else
{
holder.getElementCoverImage().setImageResource(placeHolder);
}
holder.getElementDetail1().setText(group.getDescription());
holder.getElementDetail1().setVisibility(View.VISIBLE);
holder.getElementDetail2().setVisibility(View.GONE);
holder.getElementDetail3().setVisibility(View.GONE);
holder.getElementDetail4().setVisibility(View.GONE);
if (group.getEmail().length() > 0)
{
holder.getLikes().setText(group.getEmail());
holder.getLikes().setVisibility(View.VISIBLE);
}
else
{
holder.getLikes().setVisibility(View.GONE);
}
if (group.getWebsite().length() > 0)
{
holder.getTalkAbout().setText(group.getWebsite());
holder.getTalkAbout().setVisibility(View.VISIBLE);
}
else
{
holder.getTalkAbout().setVisibility(View.GONE);
}
}
}