Beispiel #1
0
    public void AddNewEvent()
    {
        // Get all the fields from UI
        String dateTxt = eventControlPanel.transform.Find("DateField").GetComponent<InputField>().text;
        String startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent<InputField>().text;
        String endTimeTxt = eventControlPanel.transform.Find("EndTimeField").GetComponent<InputField>().text;
        String activityTxt = eventControlPanel.transform.Find("ActivityField").GetComponent<InputField>().text;
        String personTxt = eventControlPanel.transform.Find("PersonField").GetComponent<InputField>().text;
        String alarmTxt = eventControlPanel.transform.Find("AlarmField").GetComponent<InputField>().text;
        String locationTxt = eventControlPanel.transform.Find("LocationField").GetComponent<InputField>().text;

        // Add a new bird event according to them
        BirdEvent newEvent = new BirdEvent();

        String[] fixText = dateTxt.Split('.');
        if(fixText[0].Length < 2) fixText[0] = "0" + fixText[0];
        if(fixText[1].Length < 2) fixText[1] = "0" + fixText[1];
        dateTxt = fixText[0] + "." + fixText[1] + "." + fixText[2];

        Debug.Log(dateTxt + " " + startTimeTxt + " " + endTimeTxt);
        newEvent.Date = DateTime.ParseExact(dateTxt, "dd.MM.yyyy", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.StartTime = DateTime.ParseExact(startTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.EndTime = DateTime.ParseExact(endTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.Activity = activityTxt;
        newEvent.Person = personTxt;
        try{
            newEvent.Reminder = int.Parse(alarmTxt);
        } catch (Exception e) {
            newEvent.Reminder = 0;
        }
        newEvent.Location = locationTxt;

        this.GetComponent<SQLHandler>().addEvent(newEvent);
        UpdateCalendar();
    }
Beispiel #2
0
    public void ChangeEventClick(BirdEvent eventData)
    {
        // Open panel according to the click

        InputField dateTxt      = eventControlPanel.transform.Find("DateField").GetComponent <InputField>();
        InputField startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent <InputField>();
        InputField endTimeTxt   = eventControlPanel.transform.Find("EndTimeField").GetComponent <InputField>();
        InputField activityTxt  = eventControlPanel.transform.Find("ActivityField").GetComponent <InputField>();
        InputField personTxt    = eventControlPanel.transform.Find("PersonField").GetComponent <InputField>();
        InputField reminderTxt  = eventControlPanel.transform.Find("AlarmField").GetComponent <InputField>();
        InputField locationTxt  = eventControlPanel.transform.Find("LocationField").GetComponent <InputField>();

        dateTxt.text      = eventData.Date.ToString("dd.MM.yyyy");
        startTimeTxt.text = eventData.StartTime.ToString("HH:mm");
        endTimeTxt.text   = eventData.EndTime.ToString("HH:mm");
        activityTxt.text  = eventData.Activity.ToString();
        personTxt.text    = eventData.Person.ToString();
        reminderTxt.text  = eventData.Reminder.ToString();
        locationTxt.text  = eventData.Location.ToString();

        // Save id of current modified event
        currentEventId = eventData.EventID;

        // Open the EventControlPanel
        eventControlPanel.GetComponent <ShowHide>().hideOrShowSelf();

        eventControlPanel.transform.Find("ChangeButton").gameObject.SetActive(true);
        eventControlPanel.transform.Find("RemoveButton").gameObject.SetActive(true);
        eventControlPanel.transform.Find("SaveButton").gameObject.SetActive(false);
    }
Beispiel #3
0
    /// <summary>
    /// Creates the event panel.
    /// </summary>
    /// <param name="bEvent">Bird event.</param>
    /// <param name="t">Text object</param>
    void CreateEventPanel(BirdEvent bEvent, Text t)
    {
        // The panel that contains hour list
        // Pronbably a bad way to do stuff
        Transform contentPanel = t.transform.parent.parent.FindChild("Scroll View").FindChild("Content Panel");

        foreach (Transform tr in contentPanel)
        {
            String hour = tr.name.Replace("HourPanel", "");
            if (hour.Length < 2)
            {
                hour = "0" + hour;
            }
            DateTime dtHour = DateTime.ParseExact(hour, "HH", System.Globalization.CultureInfo.InvariantCulture);



            // When we're at the end hour
            if (bEvent.EndTime.Hour.CompareTo(dtHour.Hour) == 0)
            {
                // The panel we want to create
                RectTransform ePanel = (RectTransform)Instantiate(eventPanel);
                ePanel.name = "EventPanel";

                // We want to go from the start of end hour to the start of start hour
                // to avoid z-index issues
                ePanel.transform.SetParent(tr.transform, false);

                // This should be changed then going from hours to minutes accuracy
                int hoursBetween = bEvent.EndTime.Hour - bEvent.StartTime.Hour;

                ePanel.offsetMax = new Vector2(ePanel.offsetMax.x, ePanel.offsetMax.y + (28 * hoursBetween));
                Text timeText     = ePanel.transform.Find("TimeText").GetComponent <Text>();
                Text activityText = ePanel.transform.Find("ActivityText").GetComponent <Text>();

                String startHour   = bEvent.StartTime.ToString("HH");
                String startMinute = bEvent.StartTime.ToString("mm");

                String endHour   = bEvent.EndTime.ToString("HH");
                String endMinute = bEvent.EndTime.ToString("mm");

                String startTimeStr = startHour + ":" + startMinute;
                String endTimeStr   = endHour + ":" + endMinute;

                timeText.text     = startTimeStr + " - " + endTimeStr;
                activityText.text = bEvent.Activity;
                ePanel.GetComponent <EventAttributes>().data = bEvent;
                eventPanelArray.Add(ePanel);
            }
        }
    }
Beispiel #4
0
    /// <summary>
    /// Adds the event.
    /// </summary>
    /// <param name="eventData">Event data.</param>
    public void addEvent(BirdEvent eventData)
    {
        currentFunctionType = (int)FunctionTypes.PUT_EVENT;

        String putString = eventData.StartTime.Hour + ":" + eventData.StartTime.Minute + ":00" + " " +
                           eventData.EndTime.Hour + ":" + eventData.EndTime.Minute + ":00" + " " +
                           eventData.Date.Date.ToString("yyyy-MM-dd") + " " +
                           eventData.Location.Replace(" ", "_") + " " +
                           eventData.Person.Replace(" ", "_") + " " +
                           eventData.Activity.Replace(" ", "_") + " " +
                           eventData.Reminder;

        form.AddField("ob_function", "PutEvent");
        form.AddField("ob_param1", putString);
        StartCoroutine("AccessDatabase");
    }
Beispiel #5
0
    public void changeEvent(BirdEvent eventData)
    {
        currentFunctionType = (int)FunctionTypes.GHANGE_EVENT;
        form.AddField( "ob_function", "ChangeEventAll" );

        String putString =  eventData.StartTime.Hour + ":" + eventData.StartTime.Minute + ":00" + " " +
                            eventData.EndTime.Hour + ":" + eventData.EndTime.Minute + ":00" + " " +
                            eventData.Date.Date.ToString("yyyy-MM-dd") + " " +
                            eventData.Location.Replace(" ", "_") + " " +
                            eventData.Person.Replace(" ", "_") + " " +
                            eventData.Activity.Replace(" ", "_") + " " +
                            eventData.Reminder + " " +
                            eventData.EventID;
        form.AddField( "ob_param1", putString);
        StartCoroutine("AccessDatabase");
    }
Beispiel #6
0
    public void AddNewEvent()
    {
        // Get all the fields from UI
        String dateTxt      = eventControlPanel.transform.Find("DateField").GetComponent <InputField>().text;
        String startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent <InputField>().text;
        String endTimeTxt   = eventControlPanel.transform.Find("EndTimeField").GetComponent <InputField>().text;
        String activityTxt  = eventControlPanel.transform.Find("ActivityField").GetComponent <InputField>().text;
        String personTxt    = eventControlPanel.transform.Find("PersonField").GetComponent <InputField>().text;
        String alarmTxt     = eventControlPanel.transform.Find("AlarmField").GetComponent <InputField>().text;
        String locationTxt  = eventControlPanel.transform.Find("LocationField").GetComponent <InputField>().text;


        // Add a new bird event according to them
        BirdEvent newEvent = new BirdEvent();

        String[] fixText = dateTxt.Split('.');
        if (fixText[0].Length < 2)
        {
            fixText[0] = "0" + fixText[0];
        }
        if (fixText[1].Length < 2)
        {
            fixText[1] = "0" + fixText[1];
        }
        dateTxt = fixText[0] + "." + fixText[1] + "." + fixText[2];

        Debug.Log(dateTxt + " " + startTimeTxt + " " + endTimeTxt);
        newEvent.Date      = DateTime.ParseExact(dateTxt, "dd.MM.yyyy", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.StartTime = DateTime.ParseExact(startTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.EndTime   = DateTime.ParseExact(endTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        newEvent.Activity  = activityTxt;
        newEvent.Person    = personTxt;
        try{
            newEvent.Reminder = int.Parse(alarmTxt);
        } catch (Exception e) {
            newEvent.Reminder = 0;
        }
        newEvent.Location = locationTxt;

        this.GetComponent <SQLHandler>().addEvent(newEvent);
        UpdateCalendar();
    }
Beispiel #7
0
    public void ChangeEvent()
    {
        BirdEvent eventData = new BirdEvent();

        // Get all the fields from UI
        String dateTxt      = eventControlPanel.transform.Find("DateField").GetComponent <InputField>().text;
        String startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent <InputField>().text;
        String endTimeTxt   = eventControlPanel.transform.Find("EndTimeField").GetComponent <InputField>().text;
        String activityTxt  = eventControlPanel.transform.Find("ActivityField").GetComponent <InputField>().text;
        String personTxt    = eventControlPanel.transform.Find("PersonField").GetComponent <InputField>().text;
        String alarmTxt     = eventControlPanel.transform.Find("AlarmField").GetComponent <InputField>().text;
        String locationTxt  = eventControlPanel.transform.Find("LocationField").GetComponent <InputField>().text;

        String[] fixText = dateTxt.Split('.');
        if (fixText[0].Length < 2)
        {
            fixText[0] = "0" + fixText[0];
        }
        if (fixText[1].Length < 2)
        {
            fixText[1] = "0" + fixText[1];
        }
        dateTxt = fixText[0] + "." + fixText[1] + "." + fixText[2];

        Debug.Log(dateTxt + " " + startTimeTxt + " " + endTimeTxt);

        eventData.EventID   = currentEventId;
        eventData.Date      = DateTime.ParseExact(dateTxt, "dd.MM.yyyy", System.Globalization.CultureInfo.InvariantCulture);
        eventData.StartTime = DateTime.ParseExact(startTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        eventData.EndTime   = DateTime.ParseExact(endTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        eventData.Activity  = activityTxt;
        eventData.Person    = personTxt;
        eventData.Reminder  = int.Parse(alarmTxt);
        eventData.Location  = locationTxt;

        this.GetComponent <SQLHandler>().changeEvent(eventData);
        UpdateCalendar();

        currentEventId = 0;
    }
Beispiel #8
0
    IEnumerator AccessDatabase()
    {
        loadingPanel.GetComponent <ShowHide>().hideOrShow(loadingPanel.gameObject);
        Text loadingText = loadingPanel.Find("Text").GetComponent <Text>();

        loadingText.text = "Working...";
        Debug.Log("SQLHandler is working...");
        WWW w = new WWW(URL, form);         //here we create a var called 'w' and we sync with our URL and the form

        yield return(w);                    //we wait for the form to check the PHP file, so our game dont just hang

        if (w.error != null)
        {
            Debug.Log(w.error);                 //if there is an error, tell us
        }
        else
        {
            Debug.Log(w.data);
            formText = w.data;                          //here we return the data our PHP told us
            w.Dispose();                                //clear our form in game
        }
        Debug.Log("SQLHandler completed");
        // Handle data
        String[] splittedData = formText.Split(' ');
        if (currentFunctionType == (int)FunctionTypes.GET_ALL)
        {
            int rows       = splittedData.Length / 8;
            int rowIndexer = 0;
            for (int i = 0; i < rows; i++)
            {
                // There's total of 8 fields per row
                // id, starttime, endtime, date, location, person, activity, reminder
                BirdEvent bEvent = new BirdEvent();
                bEvent.EventID   = int.Parse(splittedData[0 + rowIndexer]);
                bEvent.StartTime = DateTime.ParseExact(splittedData[1 + rowIndexer],
                                                       "HH:mm:ss",
                                                       System.Globalization.CultureInfo.InvariantCulture);
                bEvent.EndTime = DateTime.ParseExact(splittedData[2 + rowIndexer],
                                                     "HH:mm:ss",
                                                     System.Globalization.CultureInfo.InvariantCulture);
                bEvent.Date = DateTime.ParseExact(splittedData[3 + rowIndexer],
                                                  "yyyy-MM-dd",
                                                  System.Globalization.CultureInfo.InvariantCulture);
                bEvent.Location = splittedData[4 + rowIndexer].Replace("_", " ");
                bEvent.Person   = splittedData[5 + rowIndexer].Replace("_", " ");
                bEvent.Activity = splittedData[6 + rowIndexer].Replace("_", " ");
                bEvent.Reminder = int.Parse(splittedData[7 + rowIndexer]);
                events.Add(bEvent);
                rowIndexer += 8;
            }
            this.GetComponent <TimeController>().UpdateEventList(events);
            events.Clear();
        }
        loadingPanel.GetComponent <ShowHide>().hideOrShow(loadingPanel.gameObject);

        if (currentFunctionType == (int)FunctionTypes.PUT_EVENT ||
            currentFunctionType == (int)FunctionTypes.DELETE_EVENT ||
            currentFunctionType == (int)FunctionTypes.GHANGE_EVENT)
        {
            this.updateAllEvents();
            this.GetComponent <TimeController>().eventControlPanel.GetComponent <ShowHide>().hideOrShowSelf();
        }
    }
Beispiel #9
0
    /// <summary>
    /// Creates the event panel.
    /// </summary>
    /// <param name="bEvent">Bird event.</param>
    /// <param name="t">Text object</param> 
    void CreateEventPanel(BirdEvent bEvent, Text t)
    {
        // The panel that contains hour list
        // Pronbably a bad way to do stuff
        Transform contentPanel = t.transform.parent.parent.FindChild("Scroll View").FindChild("Content Panel");

        foreach(Transform tr in contentPanel) {

            String hour = tr.name.Replace("HourPanel", "");
            if(hour.Length < 2) {
                hour = "0" + hour;
            }
            DateTime dtHour = DateTime.ParseExact(hour, "HH", System.Globalization.CultureInfo.InvariantCulture);

            // When we're at the end hour
            if(bEvent.EndTime.Hour.CompareTo(dtHour.Hour) == 0) {
                // The panel we want to create
                RectTransform ePanel = (RectTransform)Instantiate(eventPanel);
                ePanel.name = "EventPanel";

                // We want to go from the start of end hour to the start of start hour
                // to avoid z-index issues
                ePanel.transform.SetParent(tr.transform, false);

                // This should be changed then going from hours to minutes accuracy
                int hoursBetween = bEvent.EndTime.Hour - bEvent.StartTime.Hour;

                ePanel.offsetMax = new Vector2(ePanel.offsetMax.x, ePanel.offsetMax.y + (28 * hoursBetween));
                Text timeText = ePanel.transform.Find("TimeText").GetComponent<Text>();
                Text activityText = ePanel.transform.Find("ActivityText").GetComponent<Text>();

                String startHour = bEvent.StartTime.ToString("HH");
                String startMinute = bEvent.StartTime.ToString("mm");

                String endHour = bEvent.EndTime.ToString("HH");
                String endMinute = bEvent.EndTime.ToString("mm");

                String startTimeStr = startHour + ":" + startMinute;
                String endTimeStr = endHour + ":" + endMinute;

                timeText.text = startTimeStr + " - " + endTimeStr;
                activityText.text = bEvent.Activity;
                ePanel.GetComponent<EventAttributes>().data = bEvent;
                eventPanelArray.Add(ePanel);
            }

        }
    }
Beispiel #10
0
    public void ChangeEventClick(BirdEvent eventData)
    {
        // Open panel according to the click

        InputField dateTxt = eventControlPanel.transform.Find("DateField").GetComponent<InputField>();
        InputField startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent<InputField>();
        InputField endTimeTxt = eventControlPanel.transform.Find("EndTimeField").GetComponent<InputField>();
        InputField activityTxt = eventControlPanel.transform.Find("ActivityField").GetComponent<InputField>();
        InputField personTxt = eventControlPanel.transform.Find("PersonField").GetComponent<InputField>();
        InputField reminderTxt = eventControlPanel.transform.Find("AlarmField").GetComponent<InputField>();
        InputField locationTxt = eventControlPanel.transform.Find("LocationField").GetComponent<InputField>();

        dateTxt.text = eventData.Date.ToString("dd.MM.yyyy");
        startTimeTxt.text = eventData.StartTime.ToString("HH:mm");
        endTimeTxt.text = eventData.EndTime.ToString("HH:mm");
        activityTxt.text = eventData.Activity.ToString();
        personTxt.text = eventData.Person.ToString();
        reminderTxt.text = eventData.Reminder.ToString();
        locationTxt.text = eventData.Location.ToString();

        // Save id of current modified event
        currentEventId = eventData.EventID;

        // Open the EventControlPanel
        eventControlPanel.GetComponent<ShowHide>().hideOrShowSelf();

        eventControlPanel.transform.Find("ChangeButton").gameObject.SetActive(true);
        eventControlPanel.transform.Find("RemoveButton").gameObject.SetActive(true);
        eventControlPanel.transform.Find("SaveButton").gameObject.SetActive(false);
    }
Beispiel #11
0
    public void ChangeEvent()
    {
        BirdEvent eventData = new BirdEvent();

        // Get all the fields from UI
        String dateTxt = eventControlPanel.transform.Find("DateField").GetComponent<InputField>().text;
        String startTimeTxt = eventControlPanel.transform.Find("StartTimeField").GetComponent<InputField>().text;
        String endTimeTxt = eventControlPanel.transform.Find("EndTimeField").GetComponent<InputField>().text;
        String activityTxt = eventControlPanel.transform.Find("ActivityField").GetComponent<InputField>().text;
        String personTxt = eventControlPanel.transform.Find("PersonField").GetComponent<InputField>().text;
        String alarmTxt = eventControlPanel.transform.Find("AlarmField").GetComponent<InputField>().text;
        String locationTxt = eventControlPanel.transform.Find("LocationField").GetComponent<InputField>().text;

        String[] fixText = dateTxt.Split('.');
        if(fixText[0].Length < 2) fixText[0] = "0" + fixText[0];
        if(fixText[1].Length < 2) fixText[1] = "0" + fixText[1];
        dateTxt = fixText[0] + "." + fixText[1] + "." + fixText[2];

        Debug.Log(dateTxt + " " + startTimeTxt + " " + endTimeTxt);

        eventData.EventID = currentEventId;
        eventData.Date = DateTime.ParseExact(dateTxt, "dd.MM.yyyy", System.Globalization.CultureInfo.InvariantCulture);
        eventData.StartTime = DateTime.ParseExact(startTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        eventData.EndTime = DateTime.ParseExact(endTimeTxt, "HH:mm", System.Globalization.CultureInfo.InvariantCulture);
        eventData.Activity = activityTxt;
        eventData.Person = personTxt;
        eventData.Reminder = int.Parse(alarmTxt);
        eventData.Location = locationTxt;

        this.GetComponent<SQLHandler>().changeEvent(eventData);
        UpdateCalendar();

        currentEventId = 0;
    }
Beispiel #12
0
    IEnumerator AccessDatabase()
    {
        loadingPanel.GetComponent<ShowHide>().hideOrShow(loadingPanel.gameObject);
        Text loadingText = loadingPanel.Find ("Text").GetComponent<Text>();
        loadingText.text = "Working...";
        Debug.Log ("SQLHandler is working...");
        WWW w = new WWW(URL, form); //here we create a var called 'w' and we sync with our URL and the form
        yield return w; 			//we wait for the form to check the PHP file, so our game dont just hang
        if (w.error != null) {
            Debug.Log(w.error); 	//if there is an error, tell us
        } else {
            Debug.Log(w.data);
            formText = w.data; 		//here we return the data our PHP told us
            w.Dispose(); 			//clear our form in game
        }
        Debug.Log ("SQLHandler completed");
        // Handle data
        String[] splittedData = formText.Split(' ');
        if(currentFunctionType == (int)FunctionTypes.GET_ALL) {
            int rows = splittedData.Length / 8;
            int rowIndexer = 0;
            for(int i = 0; i < rows; i++) {
                // There's total of 8 fields per row
                // id, starttime, endtime, date, location, person, activity, reminder
                BirdEvent bEvent = new BirdEvent();
                bEvent.EventID = int.Parse(splittedData[0 + rowIndexer]);
                bEvent.StartTime = DateTime.ParseExact(	splittedData[1 + rowIndexer],
                                                        "HH:mm:ss",
                                                        System.Globalization.CultureInfo.InvariantCulture);
                bEvent.EndTime = DateTime.ParseExact( splittedData[2 + rowIndexer],
                                                      "HH:mm:ss",
                                                      System.Globalization.CultureInfo.InvariantCulture);
                bEvent.Date = DateTime.ParseExact(	splittedData[3 + rowIndexer],
                                                   "yyyy-MM-dd",
                                                   System.Globalization.CultureInfo.InvariantCulture);
                bEvent.Location = splittedData[4 + rowIndexer].Replace("_", " ");
                bEvent.Person = splittedData[5 + rowIndexer].Replace("_", " ");
                bEvent.Activity = splittedData[6 + rowIndexer].Replace("_", " ");
                bEvent.Reminder = int.Parse(splittedData[7 + rowIndexer]);
                events.Add(bEvent);
                rowIndexer += 8;
            }
            this.GetComponent<TimeController>().UpdateEventList(events);
            events.Clear();
        }
        loadingPanel.GetComponent<ShowHide>().hideOrShow(loadingPanel.gameObject);

        if(	currentFunctionType == (int)FunctionTypes.PUT_EVENT ||
            currentFunctionType == (int)FunctionTypes.DELETE_EVENT ||
           	currentFunctionType == (int)FunctionTypes.GHANGE_EVENT) {
            this.updateAllEvents();
            this.GetComponent<TimeController>().eventControlPanel.GetComponent<ShowHide>().hideOrShowSelf();
        }
    }