//Email Dept Manager and User protected void emailDetails(TestProject.request RequestInfo) { DateTime StartDateTime = Convert.ToDateTime(RequestInfo.startDate + RequestInfo.startTime); DateTime EndDateTime = Convert.ToDateTime(RequestInfo.endDate + RequestInfo.endTime); string userEmail; string supervisorEmail; TestProject.userAccount user1; using (var PCTContext = new PCTEntities()) { user1 = (from ua in PCTContext.userAccounts join u in PCTContext.employees on ua.emp_id equals u.ID where ua.ID.ToString() == current_user select ua).First(); userEmail = user1.email; string supervisor_id = user1.supervisor.ToString(); //get supervisors email var selectSupervisor = (from s in PCTContext.userAccounts where s.ID.ToString() == supervisor_id select s).First(); supervisorEmail = selectSupervisor.email; //hardcode Request :( string type; if (RequestInfo.requestType_id.ToString() == "0") { type = "Personal"; } else { type = "Vacation"; } string lunchInfo; if (MultiView1.ActiveViewIndex == 2) { lunchInfo = "YES"; } else { if (LunchCheckBoxPD.Checked) { lunchInfo = "YES " + lunch.Text + " Minutes"; } else { lunchInfo = "NO "; } } // Create email message string emailMessage = ""; emailMessage += "<html>"; emailMessage += " <head>"; emailMessage += " <style>"; emailMessage += " h1{margin: 0;}"; emailMessage += " p{margin: 0; height: auto;}"; emailMessage += " </style>"; emailMessage += " </head>"; emailMessage += " <body>"; emailMessage += " <h1>Request off Submission Details:</h1>"; emailMessage += " <h2>Employee: " + user1.first_name + " " + user1.last_name + "<br />Department: " + deptDropDownList.SelectedItem.ToString() + "</h2>"; emailMessage += " <h3>Request Info:<h3>"; emailMessage += "<p>Start Date/Time: " + StartDateTime + "<br />End Date/Time: " + EndDateTime + "<br />Type: " + type + "<br />Request Submitted: " + RequestInfo.submitted + "<br/>Comments: " + RequestInfo.comments; emailMessage += "<br />Total Hours: " + RequestInfo.totalHours + "<br/>Status: " + RequestInfo.status + "<br />Lunch included? " + lunchInfo + "</p>"; emailMessage += " </body>"; emailMessage += "</html>"; MailMessage Usermessage = new MailMessage(); MailMessage Supervisormessage = new MailMessage(); SmtpClient smtpClient = new SmtpClient(); string msg = string.Empty; try { MailAddress fromAddress = new MailAddress("*****@*****.**"); //Customize user message Usermessage.From = fromAddress; //Usermessage.To.Add(userEmail); Usermessage.To.Add("*****@*****.**"); Usermessage.Subject = "Request Off Confirmation Email"; Usermessage.IsBodyHtml = true; Usermessage.Body = emailMessage; //Customize supervisor message Supervisormessage.From = fromAddress; //Supervisormessage.To.Add(supervisorEmail); Supervisormessage.To.Add("*****@*****.**"); Supervisormessage.Subject = "New Request Off"; Supervisormessage.IsBodyHtml = true; Supervisormessage.Body = emailMessage; //message.Attachments.Add(new Attachment(Server.MapPath("uploads/Appointment2.ics"))); smtpClient.Host = "smtp.gmail.com"; smtpClient.Port = 587; smtpClient.EnableSsl = true; //smtpClient.UseDefaultCredentials = true; smtpClient.Credentials = new System.Net.NetworkCredential("*****@*****.**", "Regscan1234"); smtpClient.Send(Usermessage); smtpClient.Send(Supervisormessage); //litAlert.Text = "Successful"; } catch (Exception ex) { throw ex; //litAlert.Text = ex.Message; } } }
private void CreateCalEvent(TestProject.request request) { //Get details of request string userEmail; //string supervisorEmail; string fullname; TestProject.userAccount user1; using (var Googlecontext = new PCTEntities()) { user1 = (from ua in Googlecontext.userAccounts join u in Googlecontext.employees on ua.emp_id equals u.ID where ua.ID.ToString() == request.userAccount_id.ToString() select ua).First(); userEmail = user1.email; fullname = (user1.first_name + " " + user1.last_name + " Off - Pending"); string supervisor_id = user1.supervisor.ToString(); //get supervisors email var selectSupervisor = (from s in Googlecontext.userAccounts where s.ID.ToString() == supervisor_id select s).First(); //supervisorEmail = selectSupervisor.email; } var certificate = new X509Certificate2(@"C:\Users\glinn\Source\Repos\TestProject\TestProject\SeniorProject-ee5b3ab2ec84.p12", "notasecret", X509KeyStorageFlags.Exportable); var serviceAccountEmail = "*****@*****.**"; ServiceAccountCredential credential = new ServiceAccountCredential( new ServiceAccountCredential.Initializer(serviceAccountEmail) { Scopes = scopes }.FromCertificate(certificate)); // Create the service. CalendarService service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = "SeniorProject", }); Google.Apis.Calendar.v3.Data.Event calEvent = new Google.Apis.Calendar.v3.Data.Event(); //Title of the event calEvent.Summary = fullname; calEvent.ColorId = "5"; //calEvent.Description = ""; //Department calEvent.Location = deptDropDownList.SelectedItem.ToString(); if (fullday == true) { DateTime newform = Convert.ToDateTime(request.startDate); DateTime newform2 = Convert.ToDateTime(request.startDate); calEvent.Start = new Google.Apis.Calendar.v3.Data.EventDateTime { DateTime = newform }; calEvent.End = new Google.Apis.Calendar.v3.Data.EventDateTime { DateTime = newform2 }; //new Google.Apis.Calendar.v3.Data.EventDateTime { DateTime = request.startDate.ToString("yyyy-mm-dd") } } else { calEvent.Start = new Google.Apis.Calendar.v3.Data.EventDateTime { DateTime = request.startDate + request.startTime }; calEvent.End = new Google.Apis.Calendar.v3.Data.EventDateTime { DateTime = request.endDate + request.endTime }; } //calEvent.Attendees = //calEvent.Attendees = new Google.Apis.Calendar.v3.Data.EventAttendee[] //{ //new Google.Apis.Calendar.v3.Data.EventAttendee() { Email = "*****@*****.**"}, //new Google.Apis.Calendar.v3.Data.EventAttendee() { Email = "*****@*****.**"} //}; var newEventRequest = service.Events.Insert(calEvent, "*****@*****.**"); var eventResult = newEventRequest.Execute(); //get event id insertedEventId = eventResult.Id; }