protected void BtnCreateUpdateEvent_Click(object sender, EventArgs e) { List <GoogleCalendarAppointmentModel> GoogleCalendarAppointmentModelList = new List <GoogleCalendarAppointmentModel>(); List <GoogleTokenModel> GoogleTokenModelList = new List <GoogleTokenModel>(); GoogleCalendarAppointmentModel GoogleCalendarAppointmentModelObj = new GoogleCalendarAppointmentModel(); GoogleTokenModel GoogleTokenModelObj = new GoogleTokenModel(); #region populate GoogleAppointment values GoogleCalendarAppointmentModelObj.EventID = "1"; GoogleCalendarAppointmentModelObj.EventTitle = string.IsNullOrEmpty(TxtTitle.Text) == false ? TxtTitle.Text : "New Event from google api"; GoogleCalendarAppointmentModelObj.EventStartTime = Convert.ToDateTime(TxtStartTime.Text); GoogleCalendarAppointmentModelObj.EventEndTime = Convert.ToDateTime(TxtEndTime.Text); //Giving the proper location so you can view on the map in google calendar GoogleCalendarAppointmentModelObj.EventLocation = "Seincomp, Buenos Aires"; GoogleCalendarAppointmentModelObj.EventDetails = string.IsNullOrEmpty(TxtEventDetails.Text) == false ? TxtEventDetails.Text : "New Details"; GoogleCalendarAppointmentModelList.Add(GoogleCalendarAppointmentModelObj); #endregion #region populate GoogleToken values if (XmlDoc.HasChildNodes == false) { XmlDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); } GoogleTokenModelObj.Access_Token = XmlDoc.DocumentElement.SelectSingleNode("//User[@UserID='1']").Attributes[AccessToken].Value; GoogleTokenModelObj.Refresh_Token = XmlDoc.DocumentElement.SelectSingleNode("//User[@UserID='1']").Attributes[RefreshToken].Value; GoogleTokenModelList.Add(GoogleTokenModelObj); #endregion #region Add event to google calendar if (GoogleCalendarManager.AddUpdateDeleteEvent(GoogleCalendarAppointmentModelList, GoogleTokenModelList, 0) == true) { if (XmlDoc.HasChildNodes == false) { XmlDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); } //save data in DB / xml XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventTitle"].Value = GoogleCalendarAppointmentModelObj.EventTitle; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventStartTime"].Value = GoogleCalendarAppointmentModelObj.EventStartTime.ToString(); XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventEndTime"].Value = GoogleCalendarAppointmentModelObj.EventEndTime.ToString(); XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventLocation"].Value = GoogleCalendarAppointmentModelObj.EventLocation; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventDetails"].Value = GoogleCalendarAppointmentModelObj.EventDetails; XmlDoc.Save(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); LblMessage.Text = "Event Created / updated successfully. Go to <a href='https://www.google.com/calendar/' target='blank'>Google Calendar</a> to view your event "; BtnDeleteEvent.Enabled = true; } #endregion }
//private void PopulateDDLEvent() //{ // if (XmlDoc.HasChildNodes == false) // { // XmlDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); // } // XmlNodeList AllEventNodes = XmlDoc.DocumentElement.SelectNodes("//Events/Event"); // if (AllEventNodes != null && AllEventNodes.Count > 0) // { // foreach (XmlNode XmlNodeObj in AllEventNodes) // { // DDLEvent.Items.Add(new ListItem(XmlNodeObj.Attributes["EventTitle"].Value, XmlNodeObj.Attributes["EventID"].Value)); // } // } //} //protected void DDLEvent_SelectedIndexChanged(object sender, EventArgs e) //{ // if (DDLEvent.SelectedIndex != 0) // { // HdnEventID.Value = DDLEvent.SelectedValue; // } //} protected void BtnDeleteEvent_Click(object sender, EventArgs e) { List <GoogleCalendarAppointmentModel> GoogleCalendarAppointmentModelList = new List <GoogleCalendarAppointmentModel>(); List <GoogleTokenModel> GoogleTokenModelList = new List <GoogleTokenModel>(); GoogleCalendarAppointmentModel GoogleCalendarAppointmentModelObj = new GoogleCalendarAppointmentModel(); GoogleTokenModel GoogleTokenModelObj = new GoogleTokenModel(); #region populate GoogleAppointment values GoogleCalendarAppointmentModelObj.EventID = "1"; GoogleCalendarAppointmentModelObj.DeleteAppointment = true; GoogleCalendarAppointmentModelList.Add(GoogleCalendarAppointmentModelObj); #endregion #region populate GoogleToken values if (XmlDoc.HasChildNodes == false) { XmlDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); } GoogleTokenModelObj.Access_Token = XmlDoc.DocumentElement.SelectSingleNode("//User[@UserID='1']").Attributes[AccessToken].Value; GoogleTokenModelObj.Refresh_Token = XmlDoc.DocumentElement.SelectSingleNode("//User[@UserID='1']").Attributes[RefreshToken].Value; GoogleTokenModelList.Add(GoogleTokenModelObj); #endregion if (GoogleCalendarManager.AddUpdateDeleteEvent(GoogleCalendarAppointmentModelList, GoogleTokenModelList, 0) == true) { if (XmlDoc.HasChildNodes == false) { XmlDoc.Load(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); } //save data in DB / xml XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventTitle"].Value = ""; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventStartTime"].Value = ""; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventEndTime"].Value = ""; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventLocation"].Value = ""; XmlDoc.DocumentElement.SelectSingleNode("//Event").Attributes["EventDetails"].Value = ""; XmlDoc.Save(AppDomain.CurrentDomain.BaseDirectory + "App_Data\\XMLfile.xml"); LblMessage.Text = "Event deleted successfully. Go to <a href='https://www.google.com/calendar/' target='blank'>Google Calendar</a> to view your event "; BtnDeleteEvent.Enabled = false; } }
// brisenje na nastan protected void DeleteEventMethod() { List <GoogleCalendarAppointmentModel> GoogleCalendarAppointmentModelList = new List <GoogleCalendarAppointmentModel>(); List <GoogleTokenModel> GoogleTokenModelList = new List <GoogleTokenModel>(); GoogleCalendarAppointmentModel GoogleCalendarAppointmentModelObj = new GoogleCalendarAppointmentModel(); GoogleTokenModel GoogleTokenModelObj = new GoogleTokenModel(); #region populate GoogleAppointment values GoogleCalendarAppointmentModelObj.EventID = ViewState["eventID"].ToString(); GoogleCalendarAppointmentModelObj.DeleteAppointment = true; GoogleCalendarAppointmentModelList.Add(GoogleCalendarAppointmentModelObj); #endregion #region populate GoogleToken values SqlConnection konekcija = new SqlConnection(); konekcija.ConnectionString = ConfigurationManager.ConnectionStrings["mojaKonekcija"].ConnectionString; SqlCommand komanda = new SqlCommand(); komanda.Connection = konekcija; komanda.CommandText = "SELECT * FROM Users WHERE UserName=@UserName"; komanda.Parameters.Add("@UserName", (string)Session["UserName"]); try { konekcija.Open(); SqlDataReader citac = komanda.ExecuteReader(); while (citac.Read()) { GoogleTokenModelObj.Access_Token = (string)citac["AccessToken"]; GoogleTokenModelObj.Refresh_Token = (string)citac["RefreshToken"]; } citac.Close(); } catch (Exception ex) { lblMessage.Text = ex.ToString(); } finally { konekcija.Close(); } GoogleTokenModelList.Add(GoogleTokenModelObj); #endregion if (GoogleCalendarManager.AddUpdateDeleteEvent(GoogleTokenModelList, GoogleCalendarAppointmentModelList, 0) == true) { //save data in DB SqlConnection konekcija2 = new SqlConnection(); konekcija2.ConnectionString = ConfigurationManager.ConnectionStrings["mojaKonekcija"].ConnectionString; SqlCommand komanda2 = new SqlCommand(); komanda2.Connection = konekcija2; komanda2.CommandText = "DELETE FROM Events WHERE UserName=@username AND EventID=@EventID"; komanda2.Parameters.Add("@username", (string)Session["UserName"]); komanda2.Parameters.Add("@EventID", (string)ViewState["eventID"]); try { konekcija2.Open(); komanda2.ExecuteNonQuery(); } catch (Exception ex) { lblMessage.Text = ex.ToString(); } finally { konekcija2.Close(); FillGridView(); } } }
// zacuvuvanje i azuriranje na nastan protected void btnSaveUpdate_Click(object sender, EventArgs e) { ///// mm/dd//yyyy lblMessage.Text = ""; string[] separator1 = { "/" }; string [] startdate = txtStartDate.Text.ToString().Split(separator1, StringSplitOptions.None); string[] enddate = txtEndDate.Text.ToString().Split(separator1, StringSplitOptions.None); int starthour = Convert.ToInt16(lstboxStartHour.SelectedValue.ToString()); int startminutes = Convert.ToInt16(lstboxStartMinutes.SelectedValue.ToString()); int endhour = Convert.ToInt16(lstboxEndHours.SelectedValue.ToString()); int endminute = Convert.ToInt16(lstboxEndMinutes0.SelectedValue.ToString()); DateTime StartDateTime = new DateTime(Convert.ToInt16(startdate[2]), Convert.ToInt16(startdate[0]), Convert.ToInt16(startdate[1]), starthour, startminutes, 0); DateTime EndDateTime = new DateTime(Convert.ToInt16(enddate[2]), Convert.ToInt16(enddate[0]), Convert.ToInt16(enddate[1]), endhour, endminute, 0); //ako startDatetime e postaro od momentot na save if (DateTime.Compare(DateTime.Now, StartDateTime) > 0) { lblDateMessage.Text = "Start Date-Time Should be Later from Now !!!"; } else { int rez = DateTime.Compare(StartDateTime, EndDateTime); if (rez == 0) { lblErorEntryMessages.Text = "Star Date-time and End Date-time are equal !!!"; } else if (rez > 0) { lblErorEntryMessages.Text = "Start Date-time is Later than End Date-time"; } else { // prodolzi da azuriras List <GoogleCalendarAppointmentModel> GoogleCalendarAppointmentModelList = new List <GoogleCalendarAppointmentModel>(); List <GoogleTokenModel> GoogleTokenModelList = new List <GoogleTokenModel>(); GoogleCalendarAppointmentModel GoogleCalendarAppointmentModelObj = new GoogleCalendarAppointmentModel(); GoogleTokenModel GoogleTokenModelObj = new GoogleTokenModel(); string eventnumber = ""; if (ViewState["access"].ToString() == "update") { eventnumber = ViewState["eventID"].ToString(); gridViewEvent.SelectedIndex = -1; } else if (ViewState["access"].ToString() == "insert") { eventnumber = MaxEventID().ToString(); ViewState["eventID"] = eventnumber; } else { lblSuccessfullUpdateSave.Text = "Error in decision=ViewState insert or update "; } // ViewState["eventID"] = eventnumber.ToString(); #region populate GoogleAppointment values GoogleCalendarAppointmentModelObj.EventID = eventnumber; GoogleCalendarAppointmentModelObj.EventTitle = txtTitleEvent.Text.Trim(); GoogleCalendarAppointmentModelObj.EventStartTime = StartDateTime; GoogleCalendarAppointmentModelObj.EventEndTime = EndDateTime; if (txtRemainder1.Text != "") { GoogleCalendarAppointmentModelObj.Remainder1 = ddlRemainder1.SelectedValue.Trim() + " " + txtRemainder1.Text.Trim() + " " + ddltimeRemainder1.SelectedValue.Trim(); } else { GoogleCalendarAppointmentModelObj.Remainder1 = ""; } if (txtRemainder2.Text != "") { GoogleCalendarAppointmentModelObj.Remainder2 = ddlRemainder2.SelectedValue.Trim() + " " + txtRemainder2.Text.Trim() + " " + ddltimeRemainder2.SelectedValue.Trim(); } else { GoogleCalendarAppointmentModelObj.Remainder2 = ""; } //Giving the proper location so you can view on the map in google calendar if (chkBoxLocation.Checked) { GoogleCalendarAppointmentModelObj.EventLocation = hfCoordinates.Value; } else { GoogleCalendarAppointmentModelObj.EventLocation = ""; }; if (chkBoxTransport.Checked && (ddlTransport.SelectedIndex != -1)) { GoogleCalendarAppointmentModelObj.EventTransport = ddlTransport.SelectedValue; } else { GoogleCalendarAppointmentModelObj.EventTransport = ""; } if (chkBoxWeather.Checked) { GoogleCalendarAppointmentModelObj.Weather = "yes"; } else { GoogleCalendarAppointmentModelObj.Weather = "no"; }; GoogleCalendarAppointmentModelObj.EventDetails = txtEventDescription.Text.Trim(); GoogleCalendarAppointmentModelList.Add(GoogleCalendarAppointmentModelObj); #endregion #region populate GoogleToken values SqlConnection konekcija = new SqlConnection(); konekcija.ConnectionString = ConfigurationManager.ConnectionStrings["mojaKonekcija"].ConnectionString; SqlCommand komanda = new SqlCommand(); komanda.Connection = konekcija; komanda.CommandText = "SELECT * FROM Users WHERE UserName=@UserName"; komanda.Parameters.Add("@UserName", (string)Session["UserName"]); try { konekcija.Open(); SqlDataReader citac = komanda.ExecuteReader(); while (citac.Read()) { GoogleTokenModelObj.Access_Token = (string)citac["AccessToken"]; GoogleTokenModelObj.Refresh_Token = (string)citac["RefreshToken"]; } citac.Close(); } catch (Exception ex) { lblMessage.Text = ex.ToString(); } finally { konekcija.Close(); } GoogleTokenModelList.Add(GoogleTokenModelObj); #endregion #region Add event to google calendar if (GoogleCalendarManager.AddUpdateDeleteEvent(GoogleTokenModelList, GoogleCalendarAppointmentModelList, 0) == true) { SqlConnection konekcija2 = new SqlConnection(); konekcija2.ConnectionString = ConfigurationManager.ConnectionStrings["mojaKonekcija"].ConnectionString; SqlCommand komanda2 = new SqlCommand(); komanda2.Connection = konekcija2; string successstring = "????"; if (ViewState["access"].ToString() == "insert") { komanda2.CommandText = "INSERT INTO [Events] (UserName, EventTitle,EventStartTime,EventEndTime,EventLocation,EventDetails,EventRemainder1,EventRemainder2,EventTransport,Weather) VALUES(@username,@EventTitle,@EventStartTime,@EventEndTime,@EventLocation,@EventDetails,@EventRemainder1,@EventRemainder2,@EventTransport,@Weather)"; komanda2.Parameters.Add("@username", (string)Session["UserName"]); komanda2.Parameters.Add("@EventTitle", GoogleCalendarAppointmentModelObj.EventTitle); komanda2.Parameters.Add("@EventStartTime", GoogleCalendarAppointmentModelObj.EventStartTime); komanda2.Parameters.Add("@EventEndTime", GoogleCalendarAppointmentModelObj.EventEndTime); komanda2.Parameters.Add("@EventLocation", GoogleCalendarAppointmentModelObj.EventLocation); komanda2.Parameters.Add("@EventDetails", GoogleCalendarAppointmentModelObj.EventDetails); komanda2.Parameters.Add("@EventRemainder1", GoogleCalendarAppointmentModelObj.Remainder1); komanda2.Parameters.Add("@EventRemainder2", GoogleCalendarAppointmentModelObj.Remainder2); komanda2.Parameters.Add("@EventTransport", GoogleCalendarAppointmentModelObj.EventTransport); komanda2.Parameters.Add("@Weather", GoogleCalendarAppointmentModelObj.Weather); } else if (ViewState["access"].ToString() == "update") { komanda2.CommandText = "UPDATE Events SET EventTitle=@EventTitle,EventStartTime=@EventStartTime,EventEndTime=@EventEndTime,EventLocation=@EventLocation,EventDetails=@EventDetails,EventRemainder1=@EventRemainder1,EventRemainder2=@EventRemainder2,EventTransport=@EventTransport,Weather=@Weather WHERE UserName=@UserName AND EventID=@EventID"; komanda2.Parameters.Add("@EventTitle", GoogleCalendarAppointmentModelObj.EventTitle); komanda2.Parameters.Add("@EventStartTime", GoogleCalendarAppointmentModelObj.EventStartTime); komanda2.Parameters.Add("@EventEndTime", GoogleCalendarAppointmentModelObj.EventEndTime); komanda2.Parameters.Add("@EventLocation", GoogleCalendarAppointmentModelObj.EventLocation); komanda2.Parameters.Add("@EventDetails", GoogleCalendarAppointmentModelObj.EventDetails); komanda2.Parameters.Add("@EventRemainder1", GoogleCalendarAppointmentModelObj.Remainder1); komanda2.Parameters.Add("@EventRemainder2", GoogleCalendarAppointmentModelObj.Remainder2); komanda2.Parameters.Add("@EventTransport", GoogleCalendarAppointmentModelObj.EventTransport); komanda2.Parameters.Add("@Weather", GoogleCalendarAppointmentModelObj.Weather); komanda2.Parameters.Add("@UserName", (string)Session["UserName"]); komanda2.Parameters.Add("@EventID", GoogleCalendarAppointmentModelObj.EventID); } try { konekcija2.Open(); komanda2.ExecuteNonQuery(); } catch (Exception ex) { lblMessage.Text = ex.ToString(); } finally { konekcija2.Close(); if (ViewState["access"].ToString() == "update") { successstring = "Updated"; CleanFieldsInNewEvents(); btnSaveUpdate.Enabled = false; btnDeleteEvent.Enabled = false; } else if (ViewState["access"].ToString() == "insert") { successstring = "Created"; btnDeleteEvent.Enabled = true; } ; lblSuccessfullUpdateSave.Text = "Event " + successstring + " successfully. Go to <a href='https://www.google.com/calendar/' target='blank'>Google Calendar</a> to view your event "; } btnDeleteEvent.Enabled = true; if (ViewState["access"].ToString() == "update") { FillGridView(); } } #endregion } } }