public IActionResult Add(Vacancy vacancy)
        {
            if (ModelState.IsValid)
            {
                _vacancyManager.Save(vacancy);
                return(RedirectToAction(nameof(Index)));
            }

            return(View());
        }
Esempio n. 2
0
        public IActionResult Post([FromBody] Vacancy vacancy)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            vacancyManager.Save(vacancy);

            return(CreatedAtAction(nameof(Get), new { id = vacancy.Id }, vacancy));
        }
Esempio n. 3
0
        public async Task <IActionResult> AddVacancy(NewVacancyRequest request)
        {
            var user = _userManager.GetBySecretKey(request.Key);

            if (user == null)
            {
                return(Forbid());
            }

            var vacancy = new DAL.Vacancy
            {
                Title       = request.Title,
                Description = request.Description,
                Contact     = request.Contact,
                UserId      = user.Id,
                CategoryId  = request.CategoryId,
                Date        = DateTime.Now,
                Active      = true,
                Content     = request.Content,
                Image       = null,
                Url         = null,
            };

            vacancy = await _vacancyManager.Save(vacancy);

            if (vacancy != null)
            {
                var model = new VacancyViewModel(vacancy, _settings.WebSiteUrl);

                foreach (var crossPostManager in _crossPostManagers)
                {
                    await crossPostManager.Send(request.CategoryId, request.Comment, model.ShareUrl);
                }

                return(Created(new Uri(model.ShareUrl), model));
            }

            return(BadRequest());
        }