alpha 0.0.1
[DHBWCampusApp.git] / app / src / main / java / de / dhbwloe / campusapp / fragments / VorlesungsplanGroupsListAdapter.java
1 package de.dhbwloe.campusapp.fragments;
2
3 import android.content.Context;
4 import android.view.LayoutInflater;
5 import android.view.View;
6 import android.view.ViewGroup;
7 import android.widget.ArrayAdapter;
8 import android.widget.LinearLayout;
9 import android.widget.TextView;
10
11 import java.util.ArrayList;
12
13 import de.dhbwloe.campusapp.CampusAppContext;
14 import de.dhbwloe.campusapp.R;
15
16 /**
17  * Created by pk910 on 20.02.2016.
18  */
19 public class VorlesungsplanGroupsListAdapter extends ArrayAdapter<VorlesungsplanGroupsListItem> {
20     private Context context;
21     private int layoutResourceId;
22     private ArrayList<VorlesungsplanGroupsListItem> data = new ArrayList<VorlesungsplanGroupsListItem>();
23
24     public VorlesungsplanGroupsListAdapter(Context context, int layoutResourceId, ArrayList<VorlesungsplanGroupsListItem> data) {
25         super(context, layoutResourceId, data);
26         this.layoutResourceId = layoutResourceId;
27         this.context = context;
28         this.data = data;
29     }
30
31     @Override
32     public View getView(int position, View convertView, ViewGroup parent) {
33         View row = convertView;
34         RecordHolder holder = null;
35
36         if (row == null) {
37             LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
38             row = inflater.inflate(layoutResourceId, parent, false);
39
40             holder = new RecordHolder(row);
41             row.setTag(holder);
42         } else {
43             holder = (RecordHolder) row.getTag();
44         }
45
46         final VorlesungsplanGroupsListAdapter that = this;
47         final VorlesungsplanGroupsListItem item = data.get(position);
48
49         holder.groupName.setText(item.getGroupName());
50         holder.nextEvent.setText(item.getNextEvent());
51         holder.lastEvent.setText(item.getLastEvent());
52
53         String klausurDate = item.getNextKlausurEvent();
54         if(klausurDate == null)
55             klausurDate = CampusAppContext.getInstance().getResString(R.string.vorlesungsplan_groups_noklausur);
56
57         holder.klausurEvent.setText(klausurDate);
58         
59         return row;
60     }
61
62     static class RecordHolder {
63         TextView groupName;
64         TextView nextEvent;
65         TextView lastEvent;
66         TextView klausurEvent;
67         TextView klausurName;
68
69         public RecordHolder(View view) {
70             this.groupName = (TextView) view.findViewById(R.id.courseTitle);
71             this.nextEvent = (TextView) view.findViewById(R.id.nextEvent);
72             this.lastEvent = (TextView) view.findViewById(R.id.lastEvent);
73             this.klausurEvent = (TextView) view.findViewById(R.id.klausurEvent);
74             this.klausurName = (TextView) view.findViewById(R.id.klausurName);
75         }
76     }
77 }