package com.dozuki.ifixit.model.search;
import android.content.Context;
import android.content.Intent;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.dozuki.ifixit.App;
import com.dozuki.ifixit.R;
import com.dozuki.ifixit.model.guide.GuideInfo;
import com.dozuki.ifixit.util.transformations.RoundedTransformation;
import com.dozuki.ifixit.ui.guide.view.GuideViewActivity;
import com.dozuki.ifixit.util.ImageSizes;
import com.dozuki.ifixit.util.PicassoUtils;
import java.io.Serializable;
public class GuideSearchResult implements SearchResult, Serializable {
private static final long serialVersionUID = -2464223423335L;
private GuideInfo mGuideInfo;
public GuideSearchResult(GuideInfo guideInfo) {
mGuideInfo = guideInfo;
}
@Override
public View buildView(View v, LayoutInflater inflater, ViewGroup container) {
final Context context = container.getContext();
if (v == null) {
v = inflater.inflate(getLayout(), container, false);
}
v.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(v.getContext(), GuideViewActivity.class);
intent.putExtra(GuideViewActivity.GUIDEID, mGuideInfo.mGuideid);
v.getContext().startActivity(intent);
}
});
((TextView)v.findViewById(R.id.guide_title)).setText(mGuideInfo.mTitle);
((TextView)v.findViewById(R.id.guide_author)).setText(
App.get().getString(R.string.by_author, mGuideInfo.mAuthorName));
ImageView thumbnail = (ImageView)v.findViewById(R.id.guide_thumbnail);
if (mGuideInfo.hasImage()) {
String imagePath = mGuideInfo.getImagePath(ImageSizes.stepThumb);
PicassoUtils.with(context)
.load(imagePath)
.transform(new RoundedTransformation(4, 0))
.error(R.drawable.no_image)
.into(thumbnail);
} else {
PicassoUtils.with(context).load(R.drawable.no_image).into(thumbnail);
}
return v;
}
@Override
public int getLayout() {
return R.layout.guide_search_result_row;
}
}