beta 0.1.1
[DHBWCampusApp.git] / app / src / main / java / de / dhbwloe / campusapp / fragments / DashboardNewsDhbw.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.RelativeLayout;
10 import android.widget.TextView;
11
12 import java.util.Collections;
13 import java.util.Comparator;
14 import java.util.Date;
15
16 import de.dhbwloe.campusapp.R;
17
18 /**
19  * A simple {@link Fragment} subclass.
20  */
21 public class DashboardNewsDhbw extends News {
22     private View newsEntryPanel;
23     private View newsNonePanel;
24
25     public DashboardNewsDhbw() {
26         // Required empty public constructor
27     }
28
29
30     @Override
31     public View onCreateView(LayoutInflater inflater, ViewGroup container,
32                              Bundle savedInstanceState) {
33
34         oFragmentView = new RelativeLayout(inflater.getContext());
35         newsEntryPanel = inflater.inflate(R.layout.fragment_dashboard_news_entry, container, false);
36         newsNonePanel = inflater.inflate(R.layout.fragment_dashboard_news_none, container, false);
37
38         return oFragmentView;
39     }
40
41     @Override
42     public void onResume() {
43         super.onResume();
44
45         refreshStuvNews();
46     }
47
48     private void refreshStuvNews() {
49         loadNewsSource("DHBW", true);
50
51         Collections.sort(newsListItems, new Comparator<NewsListItem>() {
52             @Override
53             public int compare(NewsListItem item2, NewsListItem item1) {
54                 long now = (new Date()).getTime() / 1000;
55                 return (int) (item2.getTimeDifference(now) - item1.getTimeDifference(now));
56             }
57         });
58
59         RelativeLayout container = (RelativeLayout) oFragmentView;
60         container.removeAllViews();
61
62         if(newsListItems.size() > 0) {
63             container.addView(newsEntryPanel);
64
65             TextView dateView = (TextView) newsEntryPanel.findViewById(R.id.newsDate);
66             TextView titleView = (TextView) newsEntryPanel.findViewById(R.id.newsTitle);
67             NewsListItem newsItem = newsListItems.get(0);
68
69             dateView.setText(newsItem.getFormatedDate());
70             titleView.setText(newsItem.getTitle());
71         } else
72             container.addView(newsNonePanel);
73     }
74
75 }