public PresenceEventBo(bool init)
 {
     if (init)
     {
         EventBo  = new EventBo(true);
         PersonBo = new PersonBo(true);
     }
 }
        public PersonBo GetByUserId(int idUser)
        {
            ABLib.DAL.Sql.SqlParametersCollection oSqlParameters = new ABLib.DAL.Sql.SqlParametersCollection();
            oSqlParameters.Add("IdUser", idUser, SqlDbType.Int);

            PersonBo personBo = this.FillLst(this.SqlDbStoredProcedureDAL.ExecWithResultDt("Person_GetByUderId", oSqlParameters)).FirstOrDefault();

            return(personBo);
        }
 public int Add(PersonBo personBo, int idUser)
 {
     if (this.PersonSql == null)
     {
         return(0);
     }
     else
     {
         return(this.PersonSql.Add(personBo, idUser));
     }
 }
        public AllViewModel GetDataUser()
        {
            int      idUser   = new AccountController().GetIdUserFromCookieConnection(HttpContext);
            PersonBo personBo = personManager.GetByUserId(idUser);

            AllViewModel allViewModel = new AllViewModel();

            allViewModel.PeopleSearchingVM = new PeopleSearchingViewModel();

            allViewModel.PeopleSearchingVM.ResearchRoommateBo = researchRoommateManager.GetByPersonId(personBo.IdPerson);
            allViewModel.PeopleSearchingVM.LstPlaceBo         = placeManager.GetByResearchRoommateId(allViewModel.PeopleSearchingVM.ResearchRoommateBo.IdResearchRoommate);

            return(allViewModel);
        }
        public int Add(PersonBo personBo, int idUser)
        {
            ABLib.DAL.Sql.SqlParametersCollection oSqlParameters = new ABLib.DAL.Sql.SqlParametersCollection();
            oSqlParameters.AddIdOut("IdPerson");
            oSqlParameters.Add("IdUser", idUser, SqlDbType.Int);
            oSqlParameters.Add("FirstName", personBo.FirstName, SqlDbType.NVarChar);
            oSqlParameters.Add("LastName", personBo.LastName, SqlDbType.NVarChar);
            oSqlParameters.Add("Civility", personBo.Civility, SqlDbType.TinyInt);
            oSqlParameters.Add("Country", personBo.Country, SqlDbType.NVarChar);
            oSqlParameters.Add("DateBorn", personBo.DateBorn, SqlDbType.Date);
            oSqlParameters.Add("Activity", personBo.Activity, SqlDbType.TinyInt);
            oSqlParameters.Add("PhoneCode", personBo.PhoneCode, SqlDbType.NVarChar);
            oSqlParameters.Add("PhoneNumber", personBo.PhoneNumber, SqlDbType.NVarChar);
            oSqlParameters.Add("ContactType", personBo.ContactType, SqlDbType.TinyInt);
            oSqlParameters.Add("PersonnalityDescription", personBo.PersonnalityDescription, SqlDbType.NVarChar);
            oSqlParameters.Add("DateInscription", DateTime.Now, SqlDbType.DateTime);
            oSqlParameters.Add("DateLastActivity", DateTime.Now, SqlDbType.DateTime);

            this.SqlDbStoredProcedureDAL.Add(personBo, "IdPerson", 0, "Person_Add", oSqlParameters);

            return(personBo.IdPerson);
        }
        //[HttpPost]
        //[MultiSubmitAttribute(Name = "action", Argument = "Valid_Update")]
        /// <summary>
        /// L'utilisateur souhaite mettre à jour son annonce de recherche
        /// </summary>
        /// <param name="AllVM"></param>
        /// <returns></returns>
        public ActionResult Valid_Update(AllViewModel AllVM)
        {
            if (ModelState.IsValid)
            {
                FormsAuthenticationTicket ticket = (HttpContext.User.Identity as FormsIdentity).Ticket;
                int      idUser   = Convert.ToInt32(ticket.UserData);
                PersonBo personBo = personManager.GetByUserId(idUser);

                if (personBo.IdPerson != 0 && ModelState.IsValid)
                {
                    AddOrUpdate(AllVM.PeopleSearchingVM, personBo.IdPerson, (int)TypeOperation.Update);

                    ViewData["titlePopup"] = "Publication d'une annonce de recherche";
                    ViewData["textPopup"]  = "Votre annonce de recherche a bien été créée.";

                    return(PartialView("~/Views/Shared/CommunPage/Read_ModalPopupAddUpd.cshtml"));
                }
            }

            @ViewData["ModalState"] = false;
            ViewData["operation"]   = "Subscribe";
            return(PartialView("~/Views/PeopleSearching/AddUpd_ModalPeopleSearch.cshtml", AllVM));
        }
        /// <summary>
        /// L'utilisteur à déja un compte et souhaite creer une annonce de recherche
        /// </summary>
        /// <param name="AllVM"></param>
        /// <returns></returns>
        public ActionResult Valid_AddToUser(AllViewModel AllVM)
        {
            //Probleme, le modelState recupere les nom & prénom
            if (ModelState.IsValid)
            {
                int      idUser   = new AccountController().GetIdUserFromCookieConnection(HttpContext);
                PersonBo personBo = personManager.GetByUserId(idUser);

                if (personBo.IdPerson != 0 && ModelState.IsValid)
                {
                    AddOrUpdate(AllVM.PeopleSearchingVM, personBo.IdPerson, (int)TypeOperation.Add);

                    ViewData["titlePopup"] = "Publication d'une annonce de recherche";
                    ViewData["textPopup"]  = "Votre annonce de recherche a bien été créée.";

                    return(PartialView("~/Views/Shared/CommunPage/Read_ModalPopupAddUpd.cshtml"));
                }
            }

            @ViewData["ModalState"] = false;
            ViewData["operation"]   = "Subscribe";
            return(PartialView("~/Views/PeopleSearching/AddUpd_ModalPeopleSearch.cshtml", AllVM));
        }
        private List <PersonBo> FillLst(DataTable pdtDataTable)
        {
            List <PersonBo> lstItems = new List <PersonBo>();

            try
            {
                PersonBo personBo = null;

                foreach (DataRow dr in pdtDataTable.Rows)
                {
                    personBo = new PersonBo
                    {
                        IdPerson                = ABLib.Databases.GetInt32(dr, "IdPerson"),
                        FirstName               = ABLib.Databases.GetString(dr, "FirstName"),
                        LastName                = ABLib.Databases.GetString(dr, "LastName"),
                        Civility                = ABLib.Databases.GetByte(dr, "Civility"),
                        Country                 = ABLib.Databases.GetString(dr, "Country"),
                        DateBorn                = ABLib.Databases.GetDateTime(dr, "DateBorn"),
                        Activity                = ABLib.Databases.GetByte(dr, "Activity"),
                        PhoneCode               = ABLib.Databases.GetString(dr, "PhoneCode"),
                        PhoneNumber             = ABLib.Databases.GetString(dr, "PhoneNumber"),
                        ContactType             = ABLib.Databases.GetByte(dr, "ContactType"),
                        PersonnalityDescription = ABLib.Databases.GetString(dr, "PersonnalityDescription"),
                        DateInscription         = ABLib.Databases.GetDateTime(dr, "DateInscription"),
                        DateLastActivity        = ABLib.Databases.GetDateTime(dr, "DateLastActivity")
                    };

                    lstItems.Add(personBo);
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(lstItems);
        }