diff options
Diffstat (limited to 'app/src/main/java/com/camilstaps/taize/DailyReadingFragment.java')
-rw-r--r-- | app/src/main/java/com/camilstaps/taize/DailyReadingFragment.java | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/app/src/main/java/com/camilstaps/taize/DailyReadingFragment.java b/app/src/main/java/com/camilstaps/taize/DailyReadingFragment.java new file mode 100644 index 0000000..cc774f7 --- /dev/null +++ b/app/src/main/java/com/camilstaps/taize/DailyReadingFragment.java @@ -0,0 +1,99 @@ +package com.camilstaps.taize; + +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; + + View rootView; + + @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); + + //Bundle args = getArguments(); + //((TextView) rootView.findViewById(R.id.pager_content_text)).setText(args.getString("text")); + + 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(getActivity()).registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener); + } + + protected void setupContent() { + setDailyReading(); + setDailyReadingBibleText(); + + Log.d("MAIN", "Setting up content"); + } + + private void setDailyReading() { + Date date = new Date(); + + Taize.getDailyReading(getActivity(), 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); + + ((TextView) rootView.findViewById(R.id.dateDailyReading)).setText(date.toNiceString(getActivity())); + } + + private void setDailyReadingBibleText() { + Taize.getDailyReadingBibleText(getActivity(), 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."); + } + }); + } + +} |