beta 0.1.1
[DHBWCampusApp.git] / app / src / main / java / de / dhbwloe / campusapp / fragments / VorlesungsplanExams.java
1 package de.dhbwloe.campusapp.fragments;
2
3
4 import android.os.Bundle;
5 import android.support.v4.app.Fragment;
6 import android.view.LayoutInflater;
7 import android.view.View;
8 import android.view.ViewGroup;
9 import android.widget.ListView;
10
11 import java.util.ArrayList;
12 import java.util.Date;
13
14 import de.dhbwloe.campusapp.CampusAppFragment;
15 import de.dhbwloe.campusapp.R;
16 import de.dhbwloe.campusapp.vorlesungen.CourseEvent;
17 import de.dhbwloe.campusapp.vorlesungen.CourseGroup;
18
19 /**
20  * A simple {@link Fragment} subclass.
21  */
22 public class VorlesungsplanExams extends CampusAppFragment implements Vorlesungsplan.VorlesungsplanFragment {
23     private String coursename;
24     private View view;
25     private VorlesungsplanExamsListAdapter listAdapter;
26     private ArrayList<VorlesungsplanExamsListItem> listItems = new ArrayList<VorlesungsplanExamsListItem>();
27
28     public VorlesungsplanExams() {
29         // Required empty public constructor
30     }
31
32
33     @Override
34     public View onCreateView(LayoutInflater inflater, ViewGroup container,
35                              Bundle savedInstanceState) {
36         String kursTag = AppContext.getDatabaseManager().getRuntimeCache("CourseName");
37         if(kursTag == null || kursTag.isEmpty())
38             return null;
39         coursename = kursTag;
40
41         view = inflater.inflate(R.layout.fragment_vorlesungsplan_exams, container, false);
42
43         ListView listView = (ListView) view.findViewById(R.id.listView);
44         listAdapter = new VorlesungsplanExamsListAdapter(view.getContext(), R.layout.fragment_vorlesungsplan_exams_exam, listItems);
45         listView.setAdapter(listAdapter);
46
47         return view;
48     }
49
50     @Override
51     public void setActive() {
52
53     }
54
55     @Override
56     public void onResume() {
57         super.onResume();
58         if(coursename != null)
59             updateCoursesList();
60     }
61
62     private void updateCoursesList() {
63         long now = (new Date()).getTime()/1000;
64
65         CourseEvent[] events = AppContext.getDatabaseManager().getCourseExamEvents(coursename, now, now + (86400 * 30 * 3)); // next 3 month
66         listItems.clear();
67         for(CourseEvent event : events) {
68
69             VorlesungsplanExamsListItem item = new VorlesungsplanExamsListItem(
70                     event.getEventId(),
71                     coursename,
72                     event.getEventTitle(),
73                     event.getEventLocation(),
74                     event.getEventFrom(),
75                     event.getEventTo(),
76                     1
77             );
78             listItems.add(item);
79         }
80         if(listAdapter != null)
81             listAdapter.notifyDataSetChanged();
82     }
83
84 }