Example #1
0
        public ActionResult AddFromDomain(string paramJson)
        {
            List <USER> _lstU   = new List <USER>();
            var         lstUser = paramJson.Split('|');

            foreach (string user in lstUser)
            {
                var    field    = user.Split(';');
                string username = field[0];
                var    ck       = database.USERS.Where(ta => ta.Username.ToUpper().Equals(username.ToUpper())).Count();
                if (ck == 0)
                {
                    USER u = new USER();
                    u.Username    = field[0];
                    u.DisplayName = field[1];
                    u.OU          = field[2];
                    u.Email       = field[3];
                    u.GUID        = new Guid(field[4]);
                    database.USERS.Add(u);
                    database.SaveChanges();
                }
            }

            return(Json(new { mess = "User list already added successfully !" }));
        }
Example #2
0
 public ActionResult Create(Region r)
 {
     if (r != null)
     {
         db.Regions.Add(r);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     else
     {
         return(View());
     }
 }
Example #3
0
        public ActionResult UploadFiles(FileModel _model, string Folders)
        {
            var Identity = (IdentityUser)Session["Identity"];

            if (ModelState.IsValid)
            {
                foreach (HttpPostedFileBase file in _model.files)
                {
                    if (file != null)
                    {
                        int     _idFolder = Convert.ToInt32(Folders);
                        Folders _folder   = database.Folders.Where(ta => ta.ID == _idFolder).SingleOrDefault();
                        _model.folder = _folder.Name;
                        var    InputFileName = Path.GetFileName(file.FileName);
                        string path          = _model.folder + "/";
                        bool   exists        = System.IO.Directory.Exists(Server.MapPath(path));
                        if (!exists)
                        {
                            System.IO.Directory.CreateDirectory(Server.MapPath(path));
                        }
                        var ServerSavePath = Path.Combine(Server.MapPath(path) + InputFileName);
                        file.SaveAs(ServerSavePath);
                        string p     = path + InputFileName;
                        FILE   _file = database.FILES.Where(f => f.path.Equals(p)).FirstOrDefault();
                        if (_file != null)
                        {
                            _file.updated_at = System.DateTime.Now;
                            database.SaveChanges();
                        }
                        else
                        {
                            //Folders last_item = database.Folders.Where(ta=>ta.Cate !=2).OrderByDescending(ta => ta.ID).Take(1).Single();
                            int idFolder = Convert.ToInt32(Folders);
                            //Folders _folder = database.Folders.Where(ta => ta.ID == idFolder).SingleOrDefault();
                            FILE _f = new FILE();
                            _f.path       = InputFileName;
                            _f.userId     = Identity.UserId;
                            _f.created_at = System.DateTime.Now;
                            _f.idFolders  = idFolder;
                            database.FILES.Add(_f);


                            database.SaveChanges();
                        }
                        ViewBag.UploadStatus = _model.files.Count().ToString() + " files uploaded successfully.";
                    }
                }
            }
            return(RedirectToAction("Index"));
        }
Example #4
0
        public ActionResult Delete(int id)
        {
            Folders _folder = database.Folders.Find(id);

            database.Entry(_folder).State = EntityState.Deleted;
            database.SaveChanges();
            //string path =  _folder.Name + "/";
            //if (System.IO.File.Exists(Server.MapPath(path)))
            //{
            //    DirectoryInfo dir = new DirectoryInfo(Server.MapPath(path));
            //    dir.GetFiles("*", SearchOption.AllDirectories).ToList().ForEach(file => file.Delete());
            //    Directory.Delete(Server.MapPath(_folder.Name),true);
            //}
            return(RedirectToAction("Index"));
        }
 public ActionResult Create(Signatures sig)
 {
     if (sig != null && ModelState.IsValid)
     {
         var Identity = (IdentityUser)Session["Identity"];
         sig.UserID     = Identity.UserName;
         sig.UpdateTime = DateTime.Now.ToString();
         db.Signatures.Add(sig);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     else
     {
         return(View());
     }
 }
 public ActionResult Create(Templates temMail)
 {
     if (temMail != null && ModelState.IsValid)
     {
         temMail.CreationTime = DateTime.Now.ToShortDateString();
         var Identity = (IdentityUser)Session["Identity"];
         temMail.CreatedBy = Identity.UserName;
         temMail.Active    = true;
         db.Templates.Add(temMail);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     else
     {
         return(View());
     }
 }
Example #7
0
        public ActionResult Delete(int id)
        {
            LOG_ACCESS log = database.LOG_ACCESS.Find(id);

            database.Entry(log).State = EntityState.Deleted;
            database.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public ActionResult Create(PERMISSION _permission)
        {
            if (_permission.PermissionDescription == null)
            {
                ModelState.AddModelError("Permission Description", "Permission Description must be entered");
            }

            if (ModelState.IsValid)
            {
                database.PERMISSIONS.Add(_permission);
                database.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(_permission));
        }
Example #9
0
        public ActionResult Create(ROLE _role)
        {
            if (_role.RoleDescription == null)
            {
                ModelState.AddModelError("Role Description", "Role Description must be entered");
            }
            USER user = database.USERS.Where(r => r.User_Id == _Identity.UserId).FirstOrDefault();

            if (ModelState.IsValid)
            {
                database.ROLES.Add(_role);
                database.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.List_boolNullYesNo = StringHelper.List_boolNullYesNo();
            return(View(_role));
        }
Example #10
0
        public override void OnAuthorization(AuthorizationContext filterContext)
        {
            // format permission : controller-action
            string             requiredPermission = String.Format("{0}-{1}", filterContext.ActionDescriptor.ControllerDescriptor.ControllerName, filterContext.ActionDescriptor.ActionName);
            var                Identity           = (IdentityUser)filterContext.HttpContext.Session["Identity"];
            MassMailsDbContext database           = new MassMailsDbContext();

            if (Identity != null)
            {
                LOG_ACCESS log = new LOG_ACCESS();
                log.page       = requiredPermission;
                log.created_at = System.DateTime.Now;
                log.User_Id    = Identity.UserId;
                AuthUser requestingUser = new AuthUser(Identity.UserId);
                if (!requestingUser.HasPermission(requiredPermission) & !requestingUser.IsSysAdmin)
                {
                    log.status = false;
                    database.LOG_ACCESS.Add(log);
                    database.SaveChanges();

                    filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary {
                        { "action", "Index" }, { "controller", "Unauthorised" }
                    });
                }
                else
                {
                    log.status = true;
                    database.LOG_ACCESS.Add(log);
                    database.SaveChanges();
                }
            }
            else
            {
                filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary {
                    { "action", "Index" }, { "controller", "Login" }, { "returnUrl", filterContext.HttpContext.Request.RawUrl }
                });
            }
        }
Example #11
0
        public ActionResult SendMails(string To, string Cc, string Bcc, string Files, string Sub, string Bod, string Temp, string AddCC, string AddBCC)
        {
            To = To.Replace("\n", ""); Cc = Cc.Replace("\n", ""); Bcc = Bcc.Replace("\n", "");
            List <SendMails> LstMail = new List <SendMails>();

            _Identity = (IdentityUser)Session["Identity"];
            if (!String.IsNullOrEmpty(To))
            {
                List <string> npp = To.Split('[').ToList();

                foreach (var item in npp)
                {
                    if (item != "")
                    {
                        SendMails     _Mail = new SendMails();
                        List <string> s     = item.Split(']').ToList();
                        string        code  = s[0];
                        _Mail.DistributorCode = code;
                        if (s[1] != "")
                        {
                            _Mail.toAddress = s[1];
                            //if (!String.IsNullOrEmpty(Files) && !Files.Equals("-- Please select --"))
                            if (!String.IsNullOrEmpty(Files))
                            {
                                int id     = Convert.ToInt32(Files);
                                var folder = db.Folders.Where(ta => ta.ID == id).SingleOrDefault();
                                _Mail.AttachedFolder = folder.Path;
                            }
                        }

                        LstMail.Add(_Mail);
                    }
                }
            }
            if (!String.IsNullOrEmpty(Cc))
            {
                List <string> npp = Cc.Split('[').ToList();

                foreach (var item in npp)
                {
                    if (item != "")
                    {
                        SendListMails _Mail = new SendListMails();
                        List <string> s     = item.Split(']').ToList();
                        string        code  = s[0];
                        var           dt    = LstMail.Where(ta => ta.DistributorCode.Equals(code)).SingleOrDefault();
                        if (s[1] != "")
                        {
                            dt.ccAddress = s[1];
                            if (!String.IsNullOrEmpty(AddCC))
                            {
                                dt.ccAddress = dt.ccAddress + AddCC;
                            }
                        }
                        else
                        {
                            dt.ccAddress = AddCC;
                        }
                    }
                }
            }
            else
            {
                List <string> npp = To.Split('[').ToList();

                foreach (var item in npp)
                {
                    if (item != "")
                    {
                        SendMails     _Mail = new SendMails();
                        List <string> s     = item.Split(']').ToList();
                        string        code  = s[0];
                        _Mail.DistributorCode = code;
                        var dt = LstMail.Where(ta => ta.DistributorCode.Equals(code)).SingleOrDefault();

                        if (!String.IsNullOrEmpty(AddCC))
                        {
                            dt.ccAddress = AddCC;
                        }
                    }
                }
            }
            if (!String.IsNullOrEmpty(Bcc))
            {
                List <string> npp = Bcc.Split('[').ToList();

                foreach (var item in npp)
                {
                    if (item != "")
                    {
                        SendListMails _Mail = new SendListMails();
                        List <string> s     = item.Split(']').ToList();
                        string        code  = s[0];
                        var           dtBcc = LstMail.Where(ta => ta.DistributorCode.Equals(code)).SingleOrDefault();
                        if (s[1] != "")
                        {
                            dtBcc.bccAddress = s[1];
                            if (!String.IsNullOrEmpty(AddBCC))
                            {
                                dtBcc.bccAddress = dtBcc.bccAddress + AddBCC;
                            }
                        }
                        else
                        {
                            if (!String.IsNullOrEmpty(AddBCC))
                            {
                                dtBcc.bccAddress = AddBCC;
                            }
                        }
                    }
                }
            }
            else
            {
                List <string> npp = To.Split('[').ToList();

                foreach (var item in npp)
                {
                    if (item != "")
                    {
                        SendMails     _Mail = new SendMails();
                        List <string> s     = item.Split(']').ToList();
                        string        code  = s[0];
                        _Mail.DistributorCode = code;
                        var dt = LstMail.Where(ta => ta.DistributorCode.Equals(code)).SingleOrDefault();

                        if (!String.IsNullOrEmpty(AddBCC))
                        {
                            dt.bccAddress = AddBCC;
                        }
                    }
                }
            }


            var config = db.SMTPProfiles.ToList();

            #region Xu ly luu vao queue mails database
            foreach (var item in LstMail)
            {
                var        dis     = db.Distributors.Where(ta => ta.Code == item.DistributorCode).SingleOrDefault();
                string     BodTemp = Bod.Replace("#DistributorName", dis.Name);
                QueueMails _m      = new FCV_DutchLadyMail_Model.Models.QueueMails();
                _m.SMTPProfile     = 1;
                _m.DistributorCode = item.DistributorCode;
                _m.toAddress       = item.toAddress;
                _m.ccAddress       = item.ccAddress;
                _m.bccAddress      = item.bccAddress;
                _Identity          = (IdentityUser)Session["Identity"];
                _m.fromName        = _Identity.FullName;
                _m.fromAddress     = _Identity.Address;
                _m.SentBy          = _Identity.UserName;


                var    Body = HttpUtility.HtmlDecode(BodTemp);
                string s    = "<meta http-equiv=\"Content-Type\"  content=\"text/html charset=UTF-8\" />";
                _m.Body           = s + Body;
                _m.Subject        = Sub;
                _m.QueueTime      = DateTime.Now;
                _m.AttachedFolder = item.AttachedFolder;
                try
                {
                    db.QueueMails.Add(_m);
                    db.SaveChanges();
                }
                catch (Exception ex) { }
            }
            #endregion
            Session.Add("CountGet", 0);
            TempData["MessageCount"] = LstMail.Count + " emails sent to queue !";
            return(RedirectToAction("SendMails"));
        }
        public ActionResult ImportExcel()
        {
            HttpFileCollectionBase files      = Request.Files;
            HttpPostedFileBase     FileUpload = files[0];
            List <string>          data       = new List <string>();

            if (FileUpload != null)
            {
                // tdata.ExecuteCommand("truncate table OtherCompanyAssets");
                if (FileUpload.ContentType == "application/vnd.ms-excel" || FileUpload.ContentType == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
                {
                    string filename = FileUpload.FileName;
                    //string targetpath = Server.MapPath("~/Files/Excel");
                    string targetpath = "D:/MassMail/ImportFiles/";
                    FileUpload.SaveAs(targetpath + filename);
                    string pathToExcelFile  = targetpath + filename;
                    var    connectionString = "";
                    if (filename.EndsWith(".xls"))
                    {
                        connectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=Excel 8.0;", pathToExcelFile);
                    }
                    else if (filename.EndsWith(".xlsx"))
                    {
                        connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", pathToExcelFile);
                    }

                    var adapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString);
                    var ds      = new DataSet();

                    adapter.Fill(ds, "ExcelTable");

                    DataTable dtable = ds.Tables["ExcelTable"];

                    string sheetName = "Sheet1";

                    var            excelFile = new ExcelQueryFactory(pathToExcelFile);
                    var            dataExcel = from a in excelFile.Worksheet <DistributorModel>(sheetName) select a;
                    List <Contact> Contacts  = new List <Contact>();

                    foreach (var item in dataExcel)
                    {
                        try
                        {
                            if (item.Code != "")
                            {
                                DistributorModel TU = new DistributorModel();
                                TU.Name        = item.Name;
                                TU.Address     = item.Address;
                                TU.ID          = item.ID;
                                TU.Code        = item.Code;
                                TU.AdminMail   = item.AdminMail;
                                TU.SEMail      = item.SEMail;
                                TU.AcMail      = item.AcMail;
                                TU.ManagerMail = item.ManagerMail;
                                TU.Region      = item.Region;
                                TU.State       = true;
                                db.Distributors.Add(TU);
                                db.SaveChanges();
                            }
                        }

                        catch (DbEntityValidationException ex)
                        {
                            foreach (var entityValidationErrors in ex.EntityValidationErrors)
                            {
                                foreach (var validationError in entityValidationErrors.ValidationErrors)
                                {
                                    Response.Write("Property: " + validationError.PropertyName + " Error: " + validationError.ErrorMessage);
                                }
                            }
                        }
                    }
                    //deleting excel file from folder
                    if ((System.IO.File.Exists(pathToExcelFile)))
                    {
                        System.IO.File.Delete(pathToExcelFile);
                    }
                    return(PartialView("_GetListContacts", Contacts.ToList()));
                }
            }
            return(View());
        }
 public ActionResult Index(MailConfig r)
 {
     db.Entry(r).State = EntityState.Modified;
     db.SaveChanges();
     return(RedirectToAction("Index"));
 }
        public ActionResult ImportContactList(FileModel _model)
        {
            int id       = Convert.ToInt32(_model.folder);
            var Identity = (IdentityUser)Session["Identity"];
            HttpPostedFileBase FileUpload = _model.files[0];

            if (ModelState.IsValid)
            {
                if (FileUpload != null)
                {
                    // tdata.ExecuteCommand("truncate table OtherCompanyAssets");
                    if (FileUpload.ContentType == "application/vnd.ms-excel" || FileUpload.ContentType == "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
                    {
                        string nameFolder    = db.ContactLists.Where(ta => ta.ID == id).SingleOrDefault().Name;
                        var    InputFileName = Path.GetFileName(FileUpload.FileName);
                        string path          = "/Files/ContactList/" + nameFolder + "/";
                        bool   exists        = System.IO.Directory.Exists(Server.MapPath(path));
                        if (!exists)
                        {
                            System.IO.Directory.CreateDirectory(Server.MapPath(path));
                        }
                        var ServerSavePath = Path.Combine(Server.MapPath(path) + InputFileName);
                        FileUpload.SaveAs(ServerSavePath);

                        ViewBag.UploadStatus = _model.files.Count().ToString() + " files uploaded successfully.";
                        string pathToExcelFile  = Server.MapPath(path) + FileUpload.FileName;
                        var    connectionString = "";
                        if (InputFileName.EndsWith(".xls"))
                        {
                            connectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=Excel 8.0;", pathToExcelFile);
                        }
                        else if (InputFileName.EndsWith(".xlsx"))
                        {
                            connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", pathToExcelFile);
                        }

                        var adapter = new OleDbDataAdapter("SELECT * FROM [Excel_ContactList$]", connectionString);
                        var ds      = new DataSet();

                        adapter.Fill(ds, "ExcelTable");

                        DataTable dtable = ds.Tables["ExcelTable"];

                        string sheetName = "Excel_ContactList";

                        var            excelFile = new ExcelQueryFactory(pathToExcelFile);
                        var            dataExcel = from a in excelFile.Worksheet <Contact>(sheetName) select a;
                        List <Contact> Contacts  = new List <Contact>();

                        var _contactRemove = db.Contacts.Where(ta => ta.ContactListID == id).ToList();
                        if (_contactRemove.Count > 0)
                        {
                            foreach (var item in _contactRemove)
                            {
                                db.Contacts.Remove(item);
                                db.SaveChanges();
                            }
                            var ContactList = db.ContactLists.Where(ta => ta.ID == id).SingleOrDefault();
                            ContactList.ID                 = ContactList.ID;
                            ContactList.Name               = ContactList.Name;
                            ContactList.Remarks            = ContactList.Remarks;
                            ContactList.Description        = ContactList.Description;
                            ContactList.CreatedBy          = ContactList.CreatedBy;
                            ContactList.LastUpdatedBy      = Identity.UserName;
                            ContactList.LastUpdateTime     = DateTime.Now;
                            ContactList.LastImportFileName = InputFileName;
                            db.Entry(ContactList).State    = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();
                        }

                        foreach (var item in dataExcel)
                        {
                            try
                            {
                                if (item.Email != "")
                                {
                                    Contact TU = new Contact();
                                    TU.Name          = item.Name;
                                    TU.Address       = item.Address;
                                    TU.Email         = item.Email;
                                    TU.Phone         = item.Phone;
                                    TU.Remarks       = item.Remarks;
                                    TU.Company       = item.Company;
                                    TU.ContactListID = id;
                                    db.Contacts.Add(TU);
                                    db.SaveChanges();
                                    Contacts.Add(TU);
                                }
                            }

                            catch (DbEntityValidationException ex)
                            {
                                foreach (var entityValidationErrors in ex.EntityValidationErrors)
                                {
                                    foreach (var validationError in entityValidationErrors.ValidationErrors)
                                    {
                                        Response.Write("Property: " + validationError.PropertyName + " Error: " + validationError.ErrorMessage);
                                    }
                                }
                            }
                        }
                    }
                }
            }
            return(RedirectToAction("Details", new { id = id }));
        }