package com.sharefaith.thesharefaithapp.models;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

/**
 * Created by Anthony on 11/4/16.
 * Model for Calendar day
 */

public class SFDayModel
{
    public int mDayOfMonth;
    public int mDayOfWeek;
    /** Is this day in the current calendar month */
    public boolean mIsCurrentMonth;
    public int mMonth;
    public int mYear;
    /** Array of events for day */
    public JSONArray mEvents;
    /** Array of event models */
    public SFCalendarEventModel[] mCalendarEvents;
    /** Event Data */
    private JSONObject mEvent;

    /**
     * Constructor
     * @param day
     * @param dayOfWeek
     * @param currentMonth
     * @param month
     * @param year
     * @param events
     */
    public SFDayModel( int day, int dayOfWeek, boolean currentMonth, int month, int year, String events )
    {
        this.mDayOfMonth = day;
        this.mDayOfWeek = dayOfWeek;
        this.mIsCurrentMonth = currentMonth;
        this.mMonth = month;
        this.mYear = year;
        if( events != null && events.length() > 0 )
        {
            try
            {
                this.mEvents = new JSONArray( events );
                this.mCalendarEvents = new SFCalendarEventModel[this.mEvents.length()];
                //Log.d("mtag","Day: " + this.mDayOfMonth );
                for( int i = 0; i < this.mEvents.length(); i++ )
                {
                    this.mEvent = new JSONObject( this.mEvents.get(i).toString() );
                    this.mCalendarEvents[i] = new SFCalendarEventModel( this.mEvent );
                }
               //Log.d("mtag","Day Model " + this.mDayOfMonth + " event: " + this.mEvents.toString() );
            } catch (JSONException e)
            {
                e.printStackTrace();
            }
        }
        else
        {
            mCalendarEvents = null;
            //Log.d("mtag","No events for day " + this.mDayOfMonth );
        }

    }
}
