示例#1
0
        //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;
                }
            }
        }
示例#2
0
        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;
        }