blob: b5cde3c951e326fb871bc6588382a16932a9279e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
package com.camilstaps.taize;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.camilstaps.common.Date;
import com.camilstaps.common.Listener;
/**
* Created by camilstaps on 8-4-15.
*/
public class DailyReadingFragment extends Fragment {
private SharedPreferences.OnSharedPreferenceChangeListener sharedPreferenceChangeListener;
private View rootView;
private Context context;
private Date date;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// The last two arguments ensure LayoutParams are inflated
// properly.
rootView = inflater.inflate(R.layout.pager_content, container, false);
context = container.getContext();
Bundle args = getArguments();
int dateOffset = args.getInt("dateOffset", 0);
date = new Date();
date.subtractDays(dateOffset);
setupContent();
return rootView;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
sharedPreferenceChangeListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
switch (key) {
case "dailyreadings":
case "dailyreadingbible":
setupContent();
break;
}
}
};
PreferenceManager.getDefaultSharedPreferences(context).registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
protected void setupContent() {
setDailyReading();
setDailyReadingBibleText();
}
private void setDailyReading() {
Taize.getDailyReading(context, new Listener<DailyReading>() {
@Override
public void success(DailyReading data) {
((TextView) rootView.findViewById(R.id.textDailyReading)).setText(data.getTextWithoutReference());
BibleText bt = data.getBibleReference();
if (bt != null)
((TextView) rootView.findViewById(R.id.refDailyReadingBibleText)).setText(bt.toString());
}
@Override
public void failure() {
((TextView) rootView.findViewById(R.id.textDailyReading)).setText("No reading found.");
}
}, date);
String niceDate = date.toNiceString(context);
niceDate = niceDate.substring(0,1).toUpperCase() + niceDate.substring(1);
((TextView) rootView.findViewById(R.id.dateDailyReading)).setText(niceDate);
}
private void setDailyReadingBibleText() {
Taize.getDailyReadingBibleText(context, new Listener<String>() {
@Override
public void success(String data) {
((TextView) rootView.findViewById(R.id.textDailyReadingBibleText)).setText(data);
}
@Override
public void failure() {
((TextView) rootView.findViewById(R.id.textDailyReadingBibleText)).setText("No bible text found.");
}
}, date);
}
}
|