示例#1
0
        public ActionResult AddMeeting(Meeting user)
        {
            // int EmpId = Convert.ToInt32(Session["EmpId"]);
            if (ModelState.IsValid)
            {
                IdaDBEntities db = new IdaDBEntities();
                user.TDate    = DateTime.Now;
                user.EmpId    = Convert.ToInt32(Session["EmpId"]);
                user.ClientId = null;
                db.Meetings.Add(user);
                db.SaveChanges();
                switch (user.MeetingId)
                {
                case -1:
                    break;

                case -2:
                    break;

                default:
                    SendEmail(user);
                    break;
                }
            }
            else
            {
                ViewBag.MessageError = "Error!!";
            }
            return(RedirectToAction("Meeting", "Staff"));
        }
示例#2
0
        public void SendEmail(Meeting user)
        {
            using (var ctx = new IdaDBEntities())
            {
                var StartDate   = ctx.Database.SqlQuery <DateTime>("select StartDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var EndDate     = ctx.Database.SqlQuery <DateTime>("SELECT EndDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Subject     = ctx.Database.SqlQuery <string>("SELECT Subject from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Description = ctx.Database.SqlQuery <string>("SELECT Description from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();

                //var apiKey = Environment.GetEnvironmentVariable("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");
                var apiKey = ("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");

                var client       = new SendGridClient(apiKey);
                var from         = new EmailAddress("*****@*****.**", "Meeting Invitation");
                var Emailsubject = "Meeting Invitation";

                foreach (var address in user.NewClientEmail.Split(new[] { "," }, StringSplitOptions.RemoveEmptyEntries))
                {
                    var to = new EmailAddress(address);

                    var    plainTextContent = "Meeting Invitation";
                    string htmlContent      = "Dear Sir/Ma’am,";
                    htmlContent += "<br /><br />You are being invited to the meeting by Izingodla Engineering.";
                    htmlContent += "<br /><br /> Subject : " + Subject + "";
                    htmlContent += "<br /> Location : " + Description + "";
                    htmlContent += "<br /> Start Time : " + StartDate + "";
                    htmlContent += "<br /> End Time : " + EndDate + "";
                    htmlContent += "<br /><br /> We would be awaiting your esteemed presence in the meeting. Please feel free to contact us anytime, if you require any change in the meeting schedule.";
                    htmlContent += "<br /><br />Thanks <br /> Izingodla Team";
                    var msg      = MailHelper.CreateSingleEmail(from, to, Emailsubject, plainTextContent, htmlContent);
                    var response = client.SendEmailAsync(msg);
                }
            }
        }
 public List <AssignedPM> GetPM(DateTime afterDate)
 {
     using (IdaDBEntities db = new IdaDBEntities())
     {
         return(db.AssignedPMs.Where(a => a.DateAssigned > afterDate).OrderByDescending(a => a.DateAssigned).ToList());
     }
 }
示例#4
0
        public void SendEmail(Meeting user)
        {
            using (var ctx = new IdaDBEntities())
            {
                var MeetingNo   = ctx.Database.SqlQuery <string>("SELECT MeetingNo from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var StartDate   = ctx.Database.SqlQuery <DateTime>("select StartDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var EndDate     = ctx.Database.SqlQuery <DateTime>("SELECT EndDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Subject     = ctx.Database.SqlQuery <string>("SELECT Subject from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Description = ctx.Database.SqlQuery <string>("SELECT Description from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();

                if (string.IsNullOrWhiteSpace(user.MeetingId.ToString()))
                {
                    ViewBag.Message = "Email required!!!!";
                }

                Guid          activationCode = Guid.NewGuid();
                IdaDBEntities usersEntities  = new IdaDBEntities();
                usersEntities.Tbl_UserActivation.Add(new Tbl_UserActivation
                {
                    ClientId       = user.MeetingId,
                    ActivationCode = activationCode
                });
                usersEntities.SaveChanges();
                using (MailMessage mm = new MailMessage("*****@*****.**", user.NewClientEmail))
                {
                    try
                    {
                        mm.Subject = "Meeting Invitation";
                        string body = "Dear Sir/Ma'am,";
                        body         += "<br /><br />You are being invited to the meeting by Izingodla Engineering.";
                        body         += "<br /><br /><b>Meeting ID: </b>" + MeetingNo;
                        body         += "<br /><br />Subject: " + Subject;
                        body         += "<br /><br />Start Time: " + StartDate;
                        body         += "<br /><br />End Time: " + EndDate;
                        body         += "<br /><br />Location: " + Description;
                        body         += "<br /><br />Please click the following link if you won't be available";
                        body         += "<br /><a href = '" + string.Format("{0}://{1}/Employees/Feedback/{2}", Request.Url.Scheme, Request.Url.Authority, null) + "'>Click here to give feedback.</a>";
                        body         += "<br /><br /> We would be awaiting your esteemed presence in the meeting. Please feel free to contact us anytime, if you require any change in the meeting schedule.";
                        body         += "<br /><br />Thanks <br /> Izingodla Team";
                        mm.Body       = body;
                        mm.IsBodyHtml = true;
                        SmtpClient smtp = new SmtpClient();
                        smtp.Host      = "smtp.gmail.com";
                        smtp.EnableSsl = true;
                        NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "izingodla@123");
                        smtp.UseDefaultCredentials = true;
                        smtp.Credentials           = NetworkCred;
                        smtp.Port = 8889;
                        smtp.Send(mm);
                    }
                    catch (SmtpException)
                    {
                        ViewBag.ErrorMessage = "Server Error";
                    }
                }
            }
        }
示例#5
0
 public JsonResult GetMeetings()
 {
     using (IdaDBEntities dc = new IdaDBEntities())
     {
         var meetings = dc.Meetings.ToList();
         return(new JsonResult {
             Data = meetings, JsonRequestBehavior = JsonRequestBehavior.AllowGet
         });
     }
 }
        public ActionResult Progress()
        {
            IdaDBEntities sample     = new IdaDBEntities();
            var           getEmpList = sample.Employees.ToList();

            SelectList list = new SelectList(getEmpList, "Name", "Surname");

            ViewBag.EmployeeList = list;

            return(View(db.Tasks.ToList()));
        }
示例#7
0
        public ActionResult ForgotPassword(User tb)//Forgot password
        {
            if (ModelState.IsValid)
            {
                IdaDBEntities db   = new IdaDBEntities();
                var           user = (from userlist in db.Users
                                      where userlist.Username == tb.Username
                                      select new
                {
                    userlist.UserId,
                    userlist.Username,
                    userlist.Password,
                }).ToList();
                if (user.FirstOrDefault() == null)
                {
                    ViewBag.MessageError = "System cannot recognise your emai!!";
                }
                else if (user.FirstOrDefault() != null)
                {
                    Session["Username"] = user.FirstOrDefault().Username;
                    Session["UserId"]   = user.FirstOrDefault().UserId;
                    Session["Password"] = user.FirstOrDefault().Password;
                    string message = string.Empty;
                    switch (tb.UserId)
                    {
                    case -1:
                        message = "";
                        break;

                    case -2:
                        message = "";
                        break;

                    default:
                        message = "Password sent successful.\\nUser Id: " + tb.UserId.ToString();
                        SendPasswordToEmail(tb);
                        break;
                    }
                    ViewBag.MessageSuccess = "Password sent!! Please check your email";
                }
                else
                {
                    ModelState.AddModelError("", "Invalid Email Provided");
                }
            }
            return(View());
        }
        public ActionResult SignUp(Client model)
        {
            User u = new User();

            var user = new IdaDBEntities();

            using (var context = new IdaDBEntities())
            {
                context.Clients.Add(model);
                u.Username = model.Email;
                u.Password = model.Password;
                u.ClientId = model.ClientId;
                context.Users.Add(u);
                context.SaveChanges();
            }
            return(RedirectToAction("Login"));
        }
示例#9
0
        public void SendEmail(Meeting user)
        {
            using (var ctx = new IdaDBEntities())
            {
                var StartDate   = ctx.Database.SqlQuery <DateTime>("select StartDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var EndDate     = ctx.Database.SqlQuery <DateTime>("SELECT EndDate from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Subject     = ctx.Database.SqlQuery <string>("SELECT Subject from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();
                var Description = ctx.Database.SqlQuery <string>("SELECT Description from Meeting where TDate=(SELECT MAX(TDate) FROM Meeting)").SingleOrDefault();

                if (string.IsNullOrWhiteSpace(user.MeetingId.ToString()))
                {
                    ViewBag.Message = "Email required!!!!";
                }

                Guid          activationCode = Guid.NewGuid();
                IdaDBEntities usersEntities  = new IdaDBEntities();
                usersEntities.Tbl_UserActivation.Add(new Tbl_UserActivation
                {
                    ClientId       = user.MeetingId,
                    ActivationCode = activationCode
                });
                usersEntities.SaveChanges();
                using (MailMessage mm = new MailMessage("*****@*****.**", user.NewClientEmail))
                {
                    mm.Subject = "Meeting Invitation";
                    string body = "Dear Sir/Ma'am,";
                    body         += "<br /><br />You are being invited to the meeting by Izingodla Engineering.";
                    body         += "<br /><br />Subject: " + Subject;
                    body         += "<br /><br />Start Time: " + StartDate;
                    body         += "<br /><br />End Time: " + EndDate;
                    body         += "<br /><br />Location: " + Description;
                    body         += "<br /><br />  We would be awaiting your esteemed presence in the meeting. Please feel free to contact us anytime, if you require any change in the meeting schedule.";
                    body         += "<br /><br />Thanks <br /> Izingodla Team";
                    mm.Body       = body;
                    mm.IsBodyHtml = true;
                    SmtpClient smtp = new SmtpClient();
                    smtp.Host      = "smtp.gmail.com";
                    smtp.EnableSsl = true;
                    NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "izingodla@123");
                    smtp.UseDefaultCredentials = true;
                    smtp.Credentials           = NetworkCred;
                    smtp.Port = 587;
                    smtp.Send(mm);
                }
            }
        }
示例#10
0
        private void SendPasswordToEmail(User user)//Send password to user email address
        {
            try
            {
                if (string.IsNullOrWhiteSpace(user.Username))
                {
                    ViewBag.Message = "Email required!!!!";
                }
                string pass     = Session["Password"].ToString();
                long   Password = long.Parse(pass);
                string Username = Session["Username"].ToString();

                Guid          activationCode = Guid.NewGuid();
                IdaDBEntities usersEntities  = new IdaDBEntities();
                usersEntities.Tbl_UserActivation.Add(new Tbl_UserActivation
                {
                    ClientId       = user.UserId,
                    ActivationCode = activationCode
                });
                usersEntities.SaveChanges();
                using (MailMessage mm = new MailMessage("*****@*****.**", user.Username))
                {
                    mm.Subject = "Password Recovery";
                    string body = "Hello " + Username + ",";
                    body         += "<br /><br />Your password is:" + Password + "";
                    body         += "<br /><br />Please click the following link to login to your account";
                    body         += "<br /><a href = '" + string.Format("{0}://{1}/Account/Login/{2}", Request.Url.Scheme, Request.Url.Authority, activationCode) + "'>Click here to login to your account.</a>";
                    body         += "<br /><br />Thanks";
                    mm.Body       = body;
                    mm.IsBodyHtml = true;
                    SmtpClient smtp = new SmtpClient();
                    smtp.Host      = "smtp.gmail.com";
                    smtp.EnableSsl = true;
                    NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "izingodla@123");
                    smtp.UseDefaultCredentials = true;
                    smtp.Credentials           = NetworkCred;
                    smtp.Port = 587;
                    smtp.Send(mm);
                }
            }
            catch (Exception ex)
            {
                ViewBag.Message = "Error" + ex.Message;
            }
        }
示例#11
0
        public ActionResult ActivationPassword()
        {
            ViewBag.Message = "Invalid Password.";
            if (RouteData.Values["id"] != null)
            {
                Guid               activationCode = new Guid(RouteData.Values["id"].ToString());
                IdaDBEntities      usersEntities  = new IdaDBEntities();
                Tbl_UserActivation userActivation = usersEntities.Tbl_UserActivation.Where(p => p.ActivationCode == activationCode).FirstOrDefault();
                if (userActivation != null)
                {
                    usersEntities.Tbl_UserActivation.Remove(userActivation);
                    usersEntities.SaveChanges();
                    ViewBag.Message = "Password successful.";
                }
            }

            return(View());
        }
示例#12
0
        private void SendActivationEmail(Client user)//send account activation email to user after registration
        {
            Guid          activationCode = Guid.NewGuid();
            IdaDBEntities usersEntities  = new IdaDBEntities();

            usersEntities.Tbl_UserActivation.Add(new Tbl_UserActivation
            {
                ClientId       = user.ClientId,
                ActivationCode = activationCode
            });;
            usersEntities.SaveChanges();

            using (MailMessage mm = new MailMessage("*****@*****.**", user.Email))
            {
                try
                {
                    mm.Subject = "Account Activation";
                    string body = "Hello " + user.Name + ",";
                    body         += "<br /><br />Please click the following link to activate your account";
                    body         += "<br /><a href = '" + string.Format("{0}://{1}/Account/Login/{2}", Request.Url.Scheme, Request.Url.Authority, activationCode) + "'>Click here to activate your account.</a>";
                    body         += "<br /><br />Thanks";
                    mm.Body       = body;
                    mm.IsBodyHtml = true;
                    SmtpClient smtp = new SmtpClient();
                    smtp.Host      = "smtp.gmail.com";
                    smtp.EnableSsl = true;
                    NetworkCredential NetworkCred = new NetworkCredential("*****@*****.**", "izingodla@123");
                    smtp.UseDefaultCredentials = true;
                    smtp.Credentials           = NetworkCred;
                    smtp.Port = 587;
                    smtp.Send(mm);
                }
                catch (SmtpException)
                {
                    ViewBag.ErrorMessage = "Email entered does not exist";
                }

                //To fix the smt error use link bellow
                //https://stackoverflow.com/questions/20906077/gmail-error-the-smtp-server-requires-a-secure-connection-or-the-client-was-not
                //mvc charts
                //https://canvasjs.com/asp-net-mvc-charts/
                //GmailAccount is => [email protected] -- Password is => booking@123
            }
        }
 public JsonResult GetMeetings(int?id)
 {
     id = Convert.ToInt32(Session["ClientId"]);
     using (IdaDBEntities dc = new IdaDBEntities())
     {
         var            meetings = dc.Meetings.ToList();
         List <Meeting> meet     = new List <Meeting>();
         foreach (var item in meetings)
         {
             if (item.ClientId == id)
             {
                 meet.Add(item);
             }
         }
         return(new JsonResult {
             Data = meet, JsonRequestBehavior = JsonRequestBehavior.AllowGet
         });
     }
 }