package kz.arta.synergy.workflow.mobile.android.forms.general.components.registrychooser;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import java.util.List;

import kz.arta.synergy.workflow.mobile.android.R;
import kz.arta.synergy.workflow.mobile.android.common.utils.Fonts;
import kz.arta.synergy.workflow.mobile.android.registry.RegistryModel;

/**
 * Created by neox on 30.05.16.
 * Адаптер для списка в адресной книге
 */
public class RegistryListAdapter extends ArrayAdapter<RegistryModel> {

    /**
     * Список пользователей
     */
    private List<RegistryModel> registryModel;

    /**
     * Контекст
     */
    private Context context;

    /**
     * Конструктор адаптера списка пользователей
     *
     * @param context контекст приложения
     */
    public RegistryListAdapter(Context context, List<RegistryModel> registryModel) {
        super(context, R.layout.registry_chooser_activity, registryModel);
        this.context = context;
        this.registryModel = registryModel;
    }

    @Override
    public View getView(int position, View someView, ViewGroup arg2) {

        LayoutInflater inflater = LayoutInflater.from(context);

        if (someView == null) {
            someView = inflater.inflate(R.layout.registry_chooser_item, arg2, false);
        }

        LinearLayout content = (LinearLayout) someView.findViewById(R.id.registry_item_content);
        content.setVisibility(View.VISIBLE);

        ImageView icon = (ImageView)content.findViewById(R.id.registry_item_icon);
        TextView text = (TextView)content.findViewById(R.id.registry_item_text);
        text.setTypeface(Fonts.getMedium(context));

        if (registryModel.get(position).getConsistOf() != null) {
            icon.setImageResource(R.drawable.registries_group_icon);
            text.setText(registryModel.get(position).getRegGroupName());
        } else {
            icon.setImageResource(R.drawable.registries_icon);
            text.setText(registryModel.get(position).getRegistryName());
        }

        return someView;
    }
}