public ActionResult EditUser(AspNetUsers aspNetUsers, string role) { if (!ModelState.IsValid) { return(View(aspNetUsers)); } if (!Utilities.IsEmailValid(aspNetUsers.Email)) { ViewBag.Message = "Invalid email address"; return(View("EditUser", aspNetUsers)); } using (var db = new InnosixEntities()) { var oldUserRoleId = UserManager.FindById(aspNetUsers.Id).Roles.SingleOrDefault()?.RoleId; if (role != oldUserRoleId) { var oldUserRole = db.AspNetRoles.Single(x => x.Id == oldUserRoleId).Name; UserManager.RemoveFromRole(aspNetUsers.Id, oldUserRole); var newRole = db.AspNetRoles.Single(x => x.Id == role).Name; UserManager.AddToRole(aspNetUsers.Id, newRole); } db.Entry(aspNetUsers).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("EditUser")); }
public ActionResult Edit([Bind(Include = "Id,Address1,Address2,Address3,Zip,City,CountryId,CompanyEmail,CompanyName,CompanyPhone,LegalSuffix,CompanyWebsite,LogoUrl,RegistrationNumber")] TCBasicInfo tcBasicInfo) { if (!ModelState.IsValid) { return(View(tcBasicInfo)); } if (!Utilities.IsEmailValid(tcBasicInfo.CompanyEmail)) { ViewBag.Message = "Invalid email address"; PopulateCountryDropDownList(tcBasicInfo.CountryId); return(View("Edit", tcBasicInfo)); } if (!Utilities.ValidUrl(tcBasicInfo.CompanyWebsite)) { ViewBag.Message = "Invalid website url"; PopulateCountryDropDownList(tcBasicInfo.CountryId); return(View("Edit", tcBasicInfo)); } tcBasicInfo.CompanyWebsite = Utilities.CreateValidUrl(tcBasicInfo.CompanyWebsite); using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcBasicInfo.Id).LastUpdated = DateTime.Now; db.Entry(tcBasicInfo).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("Edit")); }
public ActionResult DeleteAccount() { var userId = User.Identity.GetUserId(); using (var db = new InnosixEntities()) { var user = UserManager.FindById(userId); var userToTc = db.AspNetUsersToTC .FirstOrDefault(tc => tc.AspNetUserId == userId); if (userToTc != null) { var tcBasicInfo = db.TCBasicInfo .Include(x => x.TCActive) .First(x => x.Id == userToTc.TCid); tcBasicInfo.TCActive.IsActive = false; db.Entry(tcBasicInfo).State = EntityState.Modified; db.AspNetUsersToTC.Remove(userToTc); db.SaveChanges(); } AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); UserManager.Delete(user); } return(View("DeleteAccountMessage")); }
public ActionResult EditPortfolioItem([Bind(Include = "Id,TCid,StageId,NextMoveId,NextMoveDate,ResponsibleEmail,ResponsibleName,OpportunityDate,Comment")] PortfolioItem portfolioItem, long portfolioId) { if (!ModelState.IsValid) { return(EditPortfolioItem(portfolioItem.Id, portfolioItem.TCid, portfolioId)); } if (!Utilities.IsEmailValid(portfolioItem.ResponsibleEmail)) { ViewBag.Message = "Invalid email address"; return(View("EditPortfolioItem", new PortfolioItemViewModel { TcBasicInfo = _techCompanyService.GetTcWithChildren(portfolioItem.TCid), PortfolioItem = portfolioItem, Stages = GetStages() })); } using (var db = new InnosixEntities()) { db.Entry(portfolioItem).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("PortfolioItems", new { id = portfolioId })); }
public ActionResult PassOwnerShipAccept() { using (var db = new InnosixEntities()) using (var transaction = db.Database.BeginTransaction()) { try { var userId = User.Identity.GetUserId(); var tcId = db.AspNetUsersToTC.First(x => x.AspNetUserId == userId).TCid; var usersToTc = db.AspNetUsersToTC.First(x => x.AspNetUserId == userId && x.TCid == tcId); var claim = db.AspNetUsersTcClaim.First(x => x.TCid == tcId); if (claim == null) { return(RedirectToAction("Index", "Manage")); } usersToTc.AspNetUserId = claim.AspNetUserId; db.AspNetUsersTcClaim.Remove(claim); db.Entry(usersToTc).State = EntityState.Modified; db.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } } return(RedirectToAction("Index", "Manage")); }
public ActionResult EditContact(TCContact tcContact) { if (!ModelState.IsValid) { return(View(tcContact)); } if (!Utilities.IsEmailValid(tcContact.ContactPersonEmail)) { ViewBag.Message = "Invalid email address"; return(View("EditContact", tcContact)); } using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcContact.TCid).LastUpdated = DateTime.Now; var tcContactExists = db.TCContact.Any(x => x.TCid == tcContact.TCid); if (tcContactExists) { db.Entry(tcContact).State = EntityState.Modified; } else { db.TCContact.Add(tcContact); } db.SaveChanges(); } return(RedirectToAction("EditContact")); }
public ActionResult EditIdealPartner(TCIdealPartner tcIdealPartner) { if (!ModelState.IsValid) { return(View(tcIdealPartner)); } using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcIdealPartner.TCid).LastUpdated = DateTime.Now; var tcIdealPartnerExists = db.TCIdealPartner.Any(x => x.TCid == tcIdealPartner.TCid); if (tcIdealPartnerExists) { db.Entry(tcIdealPartner).State = EntityState.Modified; } else { db.TCIdealPartner.Add(tcIdealPartner); } db.SaveChanges(); } return(RedirectToAction("EditIdealPartner")); }
public ActionResult EditBusinessInfo(TCBusinessInfo tcBusinessInfo) { if (!ModelState.IsValid) { return(View(tcBusinessInfo)); } using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcBusinessInfo.TCid).LastUpdated = DateTime.Now; var tcBusinessInfoExists = db.TCBusinessInfo.Any(x => x.TCid == tcBusinessInfo.TCid); if (tcBusinessInfoExists) { db.Entry(tcBusinessInfo).State = EntityState.Modified; } else { db.TCBusinessInfo.Add(tcBusinessInfo); } db.SaveChanges(); } return(RedirectToAction("EditBusinessInfo")); }
public void UpdateTcRating(TCRating tcRating) { using (var db = new InnosixEntities()) { tcRating.RatingDate = DateTime.Now; db.Entry(tcRating).State = EntityState.Modified; db.SaveChanges(); } }
public void UpdateTcBasicInfo(TCBasicInfo tcBasicInfo) { using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcBasicInfo.Id).LastUpdated = DateTime.Now; db.Entry(tcBasicInfo).State = EntityState.Modified; db.SaveChanges(); } }
public ActionResult AcceptAdditionalTag(string tagName) { using (var db = new InnosixEntities()) using (var transaction = db.Database.BeginTransaction()) { try { var tags = db.TechTag; if (tags.Any(t => t.TagName == tagName)) { ViewBag.Message = $"Tag with name: {tagName}, already exists"; return(View("AdditionalTags")); } var newTag = new TechTag { TagName = tagName }; db.TechTag.Add(newTag); db.SaveChanges(); var tcsWithAddTag = db.TCBasicInfo.Include(t => t.TCTechnology) .Where(t => t.TCTechnology.AdditionalTechTags.Contains(tagName)) .ToList(); foreach (var tc in tcsWithAddTag) { var tagList = tc.TCTechnology.AdditionalTechTags.Split(',').Select(t => t.Trim()).ToList(); tagList.Remove(tagName); tc.TCTechnology.AdditionalTechTags = string.Join(",", tagList); db.Entry(tc).State = EntityState.Modified; var newTagId = db.TechTag.First(t => t.TagName == tagName).Id; tc.TechTagToTC.Add(new TechTagToTC { TechTagId = newTagId }); db.SaveChanges(); } transaction.Commit(); } catch (Exception ex) { ViewData["EditError"] = ex.Message; transaction.Rollback(); } ViewBag.Message = $"Tag with name: {tagName}, added"; return(View("AdditionalTags")); } }
public ActionResult UpdateTag(TechTag tag) { if (!ModelState.IsValid) { return(View("Index")); } using (var db = new InnosixEntities()) { db.Entry(tag).State = EntityState.Modified; db.SaveChanges(); } return(RedirectToAction("Index")); }
public void UpdateTcBusinessInfo(TCBusinessInfo tcBusinessInfo) { using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcBusinessInfo.TCid).LastUpdated = DateTime.Now; var tcBusinessInfoExists = db.TCBusinessInfo.Any(x => x.TCid == tcBusinessInfo.TCid); if (tcBusinessInfoExists) { db.Entry(tcBusinessInfo).State = EntityState.Modified; } else { db.TCBusinessInfo.Add(tcBusinessInfo); } db.SaveChanges(); } }
public void UpdateTcContact(TCContact tcContact) { using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcContact.TCid).LastUpdated = DateTime.Now; var tcContactExists = db.TCContact.Any(x => x.TCid == tcContact.TCid); if (tcContactExists) { db.Entry(tcContact).State = EntityState.Modified; } else { db.TCContact.Add(tcContact); } db.SaveChanges(); } }
public void UpdateTcIdealPartner(TCIdealPartner tcIdealPartner) { using (var db = new InnosixEntities()) { db.TCGeneral.Find(tcIdealPartner.TCid).LastUpdated = DateTime.Now; var tcIdealPartnerExists = db.TCIdealPartner.Any(x => x.TCid == tcIdealPartner.TCid); if (tcIdealPartnerExists) { db.Entry(tcIdealPartner).State = EntityState.Modified; } else { db.TCIdealPartner.Add(tcIdealPartner); } db.SaveChanges(); } }
public ActionResult PortfolioItemsGridViewPartialDelete(long id, long portfolioId) { using (var db = new InnosixEntities()) using (var transaction = db.Database.BeginTransaction()) { try { var model = db.PortfolioItem; if (id < 0) { return(PortfolioItemsGridViewPartial(portfolioId)); } var itemInPortfolios = db.PortfolioToPortfolioItem .Where(x => x.PortfolioItemId == id); db.PortfolioToPortfolioItem.RemoveRange(itemInPortfolios); var item = model.FirstOrDefault(it => it.Id == id); if (item != null) { model.Remove(item); } db.SaveChanges(); var portfolio = db.Portfolio.Find(portfolioId); portfolio.NrOfTCs = portfolio.NrOfTCs - 1; db.Entry(portfolio).State = EntityState.Modified; db.SaveChanges(); transaction.Commit(); } catch (Exception ex) { ViewData["EditError"] = ex.Message; transaction.Rollback(); } return(PortfolioItemsGridViewPartial(portfolioId)); } }
public ActionResult AddToPortfolio(long id, long portfolioId) { using (var db = new InnosixEntities()) using (var transaction = db.Database.BeginTransaction()) { try { var newItem = new PortfolioItem { TCid = id, OpportunityDate = DateTime.Now }; db.PortfolioItem.Add(newItem); db.SaveChanges(); var newItemToPortfolio = new PortfolioToPortfolioItem { PortfolioId = portfolioId, PortfolioItemId = newItem.Id }; db.PortfolioToPortfolioItem.Add(newItemToPortfolio); db.SaveChanges(); ViewBag.Message = "Added company to portfolio"; var portfolio = db.Portfolio.Find(portfolioId); portfolio.NrOfTCs = portfolio.NrOfTCs + 1; db.Entry(portfolio).State = EntityState.Modified; db.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); } return(AddCompanyToPortfolio(id)); } }
private void RemoveUserTc(string id) { using (var db = new InnosixEntities()) { var userToTc = db.AspNetUsersToTC .FirstOrDefault(tc => tc.AspNetUserId == id); if (userToTc == null) { return; } var tcBasicInfo = db.TCBasicInfo .Include(x => x.TCActive) .First(x => x.Id == userToTc.TCid); tcBasicInfo.TCActive.IsActive = false; db.Entry(tcBasicInfo).State = EntityState.Modified; db.AspNetUsersToTC.Remove(userToTc); db.SaveChanges(); } }
public void UpdateTcTechnology(TCTechnology tcTechnology, int[] tagIds, int[] techDomainIds) { using (var db = new InnosixEntities()) { var tcTagIds = db.TechTagToTC.Where(t => t.TCid == tcTechnology.TCid); db.TechTagToTC.RemoveRange(tcTagIds); foreach (var tagId in tagIds) { db.TechTagToTC.Add(new TechTagToTC { TCid = tcTechnology.TCid, TechTagId = tagId }); } var tcTechDomains = db.TechDomainToTC.Where(t => t.TCid == tcTechnology.TCid); db.TechDomainToTC.RemoveRange(tcTechDomains); foreach (var techDomainId in techDomainIds) { db.TechDomainToTC.Add(new TechDomainToTC { TCid = tcTechnology.TCid, TechDomainId = techDomainId }); } db.TCGeneral.Find(tcTechnology.TCid).LastUpdated = DateTime.Now; var tcTechnologyExists = db.TCTechnology.Any(x => x.TCid == tcTechnology.TCid); if (tcTechnologyExists) { db.Entry(tcTechnology).State = EntityState.Modified; } else { db.TCTechnology.Add(tcTechnology); } db.SaveChanges(); } }
public ActionResult EditTechnology([Bind(Include = "TCid,AdditionalTechTags,Patents,OtherIpNotPatented,TechnologySectorId")] TCTechnology tCTechnology, int[] tagIds, int[] techDomainIds) { if (!ModelState.IsValid) { return(View(tCTechnology)); } if (tagIds == null || tagIds.Length < 3) { ViewBag.Message = "Required minimum 3 tags"; return(EditTechnology()); } if (techDomainIds == null || techDomainIds.Length == 0 || techDomainIds.Length > 3) { ViewBag.Message = "Required minimum 1 tech domain and maximum of 3"; return(EditTechnology()); } if (!string.IsNullOrWhiteSpace(tCTechnology.AdditionalTechTags)) { var additionalTagList = tCTechnology.AdditionalTechTags.Split(',').Select(t => t.Trim()).ToList(); tCTechnology.AdditionalTechTags = string.Join(",", additionalTagList); } using (var db = new InnosixEntities()) { var tcTagIds = db.TechTagToTC.Where(t => t.TCid == tCTechnology.TCid); db.TechTagToTC.RemoveRange(tcTagIds); foreach (var tagId in tagIds) { db.TechTagToTC.Add(new TechTagToTC { TCid = tCTechnology.TCid, TechTagId = tagId }); } var tcTechDomains = db.TechDomainToTC.Where(t => t.TCid == tCTechnology.TCid); db.TechDomainToTC.RemoveRange(tcTechDomains); foreach (var techDomainId in techDomainIds) { db.TechDomainToTC.Add(new TechDomainToTC { TCid = tCTechnology.TCid, TechDomainId = techDomainId }); } db.TCGeneral.Find(tCTechnology.TCid).LastUpdated = DateTime.Now; var tcTechnologyExists = db.TCTechnology.Any(x => x.TCid == tCTechnology.TCid); if (tcTechnologyExists) { db.Entry(tCTechnology).State = EntityState.Modified; } else { db.TCTechnology.Add(tCTechnology); } db.SaveChanges(); } return(RedirectToAction("EditTechnology")); }