2727import com .blogspot .e_kanivets .moneytracker .activity .NavDrawerActivity ;
2828import com .blogspot .e_kanivets .moneytracker .activity .ReportActivity ;
2929import com .blogspot .e_kanivets .moneytracker .adapter .RecordAdapter ;
30+ import com .blogspot .e_kanivets .moneytracker .controller .PeriodController ;
3031import com .blogspot .e_kanivets .moneytracker .controller .RecordController ;
3132import com .blogspot .e_kanivets .moneytracker .helper .DbHelper ;
3233import com .blogspot .e_kanivets .moneytracker .helper .MtHelper ;
@@ -55,6 +56,7 @@ public class RecordsFragment extends Fragment implements View.OnClickListener, O
5556 private TextView tvToDate ;
5657
5758 private RecordController recordController ;
59+ private PeriodController periodController ;
5860
5961 public static RecordsFragment newInstance () {
6062 RecordsFragment fragment = new RecordsFragment ();
@@ -71,6 +73,7 @@ public RecordsFragment() {
7173 public void onCreate (@ Nullable Bundle savedInstanceState ) {
7274 super .onCreate (savedInstanceState );
7375
76+ periodController = new PeriodController ();
7477 recordController = new RecordController (new DbHelper (getActivity ()), MtHelper .getInstance ());
7578 }
7679
@@ -104,13 +107,15 @@ public boolean onContextItemSelected(MenuItem item) {
104107
105108 switch (item .getItemId ()) {
106109 case R .id .edit :
107- Record record = recordController .getRecords ().get (info .position );
110+ Record record = recordController .
111+ getRecords (periodController .getPeriod ()).get (info .position );
108112 if (record .isIncome ())
109113 startAddIncomeActivity (record , AddIncomeActivity .Mode .MODE_EDIT );
110114 else startAddExpenseActivity (record , AddExpenseActivity .Mode .MODE_EDIT );
111115 return true ;
112116 case R .id .delete :
113- recordController .deleteRecordById (recordController .getRecords ().get (info .position ).getId ());
117+ recordController .deleteRecord (recordController .
118+ getRecords (periodController .getPeriod ()).get (info .position ));
114119 return true ;
115120 default :
116121 return super .onContextItemSelected (item );
@@ -130,6 +135,7 @@ public void onClick(View view) {
130135
131136 case R .id .btn_report :
132137 Intent intent = new Intent (getActivity (), ReportActivity .class );
138+ intent .putExtra (ReportActivity .KEY_PERIOD , periodController .getPeriod ());
133139 startActivity (intent );
134140 break ;
135141
@@ -156,19 +162,19 @@ public void onItemSelected(AdapterView<?> parent, View view, int position, long
156162 switch (position ) {
157163 // Day period
158164 case 0 :
159- MtHelper . getInstance () .setPeriod (PeriodHelper .getInstance ().getDayPeriod ());
165+ periodController .setPeriod (PeriodHelper .getInstance ().getDayPeriod ());
160166 break ;
161167 // Week period
162168 case 1 :
163- MtHelper . getInstance () .setPeriod (PeriodHelper .getInstance ().getWeekPeriod ());
169+ periodController .setPeriod (PeriodHelper .getInstance ().getWeekPeriod ());
164170 break ;
165171 // Month period
166172 case 2 :
167- MtHelper . getInstance () .setPeriod (PeriodHelper .getInstance ().getMonthPeriod ());
173+ periodController .setPeriod (PeriodHelper .getInstance ().getMonthPeriod ());
168174 break ;
169175 // Year period
170176 case 3 :
171- MtHelper . getInstance () .setPeriod (PeriodHelper .getInstance ().getYearPeriod ());
177+ periodController .setPeriod (PeriodHelper .getInstance ().getYearPeriod ());
172178 break ;
173179 default :
174180 break ;
@@ -178,8 +184,8 @@ public void onItemSelected(AdapterView<?> parent, View view, int position, long
178184
179185 MtHelper .getInstance ().update ();
180186
181- tvFromDate .setText (MtHelper . getInstance () .getFirstDay ());
182- tvToDate .setText (MtHelper . getInstance () .getLastDay ());
187+ tvFromDate .setText (periodController .getFirstDay ());
188+ tvToDate .setText (periodController .getLastDay ());
183189 }
184190
185191 @ Override
@@ -189,7 +195,8 @@ public void onNothingSelected(AdapterView<?> parent) {
189195
190196 @ Override
191197 public void update (Observable observable , Object o ) {
192- listView .setAdapter (new RecordAdapter (getActivity (), recordController .getRecords ()));
198+ listView .setAdapter (new RecordAdapter (getActivity (),
199+ recordController .getRecords (periodController .getPeriod ())));
193200 ((BaseAdapter ) listView .getAdapter ()).notifyDataSetChanged ();
194201 }
195202
@@ -205,8 +212,8 @@ private void initViews(View rootView) {
205212 listView = (ListView ) rootView .findViewById (R .id .listView );
206213
207214 //Set dates of current week
208- tvFromDate .setText (MtHelper . getInstance () .getFirstDay ());
209- tvToDate .setText (MtHelper . getInstance () .getLastDay ());
215+ tvFromDate .setText (periodController .getFirstDay ());
216+ tvToDate .setText (periodController .getLastDay ());
210217
211218 //Set listeners
212219 btnAddIncome .setOnClickListener (RecordsFragment .this );
@@ -215,7 +222,8 @@ private void initViews(View rootView) {
215222 tvToDate .setOnClickListener (RecordsFragment .this );
216223 btnReport .setOnClickListener (RecordsFragment .this );
217224
218- listView .setAdapter (new RecordAdapter (getActivity (), recordController .getRecords ()));
225+ listView .setAdapter (new RecordAdapter (getActivity (),
226+ recordController .getRecords (periodController .getPeriod ())));
219227 ((BaseAdapter ) listView .getAdapter ()).notifyDataSetChanged ();
220228
221229 /* Scroll list to bottom only once at start */
@@ -262,27 +270,27 @@ private void initActionBar() {
262270
263271 private void showChangeFromDateDialog () {
264272 ChangeDateDialog dialog = new ChangeDateDialog (getActivity (),
265- MtHelper . getInstance () .getPeriod ().getFirst (), new ChangeDateDialog .OnDateChangedListener () {
273+ periodController .getPeriod ().getFirst (), new ChangeDateDialog .OnDateChangedListener () {
266274 @ Override
267275 public void OnDataChanged (Date date ) {
268- MtHelper . getInstance () .getPeriod ().setFirst (date );
276+ periodController .getPeriod ().setFirst (date );
269277 MtHelper .getInstance ().update ();
270278
271- tvFromDate .setText (MtHelper . getInstance () .getFirstDay ());
279+ tvFromDate .setText (periodController .getFirstDay ());
272280 }
273281 });
274282 dialog .show ();
275283 }
276284
277285 private void showChangeToDateDialog () {
278286 ChangeDateDialog dialog = new ChangeDateDialog (getActivity (),
279- MtHelper . getInstance () .getPeriod ().getLast (), new ChangeDateDialog .OnDateChangedListener () {
287+ periodController .getPeriod ().getLast (), new ChangeDateDialog .OnDateChangedListener () {
280288 @ Override
281289 public void OnDataChanged (Date date ) {
282- MtHelper . getInstance () .getPeriod ().setLast (date );
290+ periodController .getPeriod ().setLast (date );
283291 MtHelper .getInstance ().update ();
284292
285- tvToDate .setText (MtHelper . getInstance () .getLastDay ());
293+ tvToDate .setText (periodController .getLastDay ());
286294 }
287295 });
288296 dialog .show ();
0 commit comments