public ActionResult Edit(int?id)
        {
            ProjectInfo proj = db.ProjectInfo.Where(p => p.ProjectID == (id ?? 0)).FirstOrDefault();

            if (proj == null)
            {
                return(HttpNotFound());
            }
            ProjectLeadInfo pli = db.ProjectLeadInfo.Where(p => p.ProjectID == (id ?? 0)).FirstOrDefault() ?? new ProjectLeadInfo();

            var siteCoID = siteusercompanyid;

            ViewBag.Clients               = new SelectList(db.GetContactsBySiteCoID(siteCoID).ToList(), "ViewID", "Customer");
            ViewBag.Builders              = new SelectList(db.GetBuildersBySiteCoID(siteCoID).ToList(), "ViewID", "Builder");
            ViewBag.ProjectStatus         = new SelectList(db.GetLeadStatusBySiteCoID(siteCoID), "ViewID", "Status");
            ViewBag.Types                 = new SelectList(repo.GetCoLeadTypes(siteCoID), "LeadTypeID", "LeadType");
            ViewBag.Probabilities         = new SelectList(db.GetLeadProbabilityBySiteCoID(siteCoID), "ViewID", "LeadProp");
            ViewBag.Phases                = new SelectList(db.GetLeadStagesBySiteCoID(siteCoID), "ViewID", "LeadStage");
            ViewBag.Priorities            = new SelectList(db.GetLeadRatingsBySiteCoID(siteCoID), "ViewID", "LeadRating");
            ViewBag.Systems               = new SelectList(db.GetLeadSystemsBySiteCoID(siteCoID), "ViewID", "LeadSystems");
            ViewBag.ProjectCommunications = db.GetProjectCommByProjectID(id ?? 0).ToList();

            var siteUsers = db.GetSiteUsersBySiteCoID(siteCoID).ToList();

            ViewBag.SiteUsers = new SelectList(siteUsers, "ViewID", "User", siteusercompanyid);

            LeadModels.NewLead model = new LeadModels.NewLead();

            model = new LeadModels.NewLead()
            {
                Address1      = proj.ProjectAddress1,
                Address2      = proj.ProjectAddress2,
                Budget        = pli.LeadBudget,
                City          = proj.ProjectCity,
                ClientID      = proj.ContactID,
                CloseDate     = pli.LeadCloseDate,
                BuilderID     = proj.BuilderID,
                Site          = proj.Site,
                Lot           = proj.Lot,
                Email         = proj.ProjectEmail,
                Phone         = proj.ProjectPhone,
                JobNumber     = proj.ProjectNumber,
                LeadID        = proj.ProjectID,
                LeadName      = proj.ProjectName,
                LeadPhaseID   = pli.StageID,
                PriorityID    = pli.RatingID,
                ProbabilityID = pli.LeadProbabilityID,
                SalesPersonID = proj.SalesID,
                State         = proj.ProjectState,
                Country       = proj.ProjectCountry,
                StatusID      = proj.ProjectStatusID,
                TypeID        = pli.LeadTypeID,
                Zip           = proj.ProjectZip,
                SystemID      = pli.LeadSystemTypeID
            };

            return(View("_Edit", model));
        }
        public ActionResult Create(int?contactid)
        {
            var siteCoID = siteusercompanyid;

            ViewBag.Clients       = new SelectList(db.GetContactsBySiteCoID(siteCoID).ToList(), "ViewID", "Customer", contactid);
            ViewBag.ProjectStatus = new SelectList(db.GetLeadStatusBySiteCoID(siteCoID), "ViewID", "Status");
            ViewBag.Types         = new SelectList(repo.GetCoLeadTypes(siteCoID), "LeadTypeID", "LeadType");
            ViewBag.Probabilities = new SelectList(db.GetLeadProbabilityBySiteCoID(siteCoID), "ViewID", "LeadProp");
            ViewBag.Phases        = new SelectList(db.GetLeadStagesBySiteCoID(siteCoID), "ViewID", "LeadStage");
            ViewBag.Priorities    = new SelectList(db.GetLeadRatingsBySiteCoID(siteCoID), "ViewID", "LeadRating");
            ViewBag.Systems       = new SelectList(db.GetLeadSystemsBySiteCoID(siteCoID), "ViewID", "LeadSystems");
            ViewBag.Builders      = new SelectList(db.GetBuildersBySiteCoID(siteCoID).ToList(), "ViewID", "Builder", contactid);

            var siteUsers = db.GetSiteUsersBySiteCoID(siteCoID).ToList();

            ViewBag.SiteUsers      = new SelectList(siteUsers, "ViewID", "User", siteuserid);
            ViewBag.ContactAddress = db.GetContactAddressByContactID(contactid).FirstOrDefault();
            LeadModels.NewLead model = new LeadModels.NewLead()
            {
                JobNumber = db.GetNewLeadNumFormat(siteusercompanyid).FirstOrDefault()
            };

            return(View(model));
        }