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(); }
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); }
/// <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); } } }
/// <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"); }
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"); }
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(); }
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; }
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(); } }
/// <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); } } }
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); }
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; }
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(); } }