Пример #1
0
        public async Task <IActionResult> AddHashTag(int linkId, [FromBody] HashTag tag)
        {
            var link = await _context.SiteLinks
                       .Include(l => l.SiteLinkHashTags)
                       .FirstOrDefaultAsync(l => l.Id == linkId);

            if (link is null)
            {
                return(NotFound());
            }

            // TODO: maybe it's better to match tag by name rather then id. MR
            var tagAlreadyExists = link.SiteLinkHashTags
                                   .Select(lt => lt.HashTagId)
                                   .Contains(tag.Id);

            if (tagAlreadyExists)
            {
                return(Ok());
            }

            _context.Attach(link);
            _context.Update(new SiteLinkHashTag
            {
                SiteLinkId = linkId,
                HashTag    = tag,
            });

            await _context.SaveChangesAsync();

            return(Ok());
        }
        public async Task <Environment> AddEnvironment([FromBody] Environment environment)
        {
            // TODO: validate before insert. MR
            var result = _context.Environments.Add(environment);

            await _context.SaveChangesAsync();

            return(result.Entity);
        }
Пример #3
0
        public async Task <IActionResult> CreateAsync(Professor professor)
        {
            _context.Professors.Add(professor);
            await _context.SaveChangesAsync();

            return(Redirect("/Admin/Professors/" + professor.Id));
        }
Пример #4
0
        public async Task <IActionResult> CreateAsync(Semester semester)
        {
            _context.Semesters.Add(semester);
            await _context.SaveChangesAsync();

            return(Redirect("/Admin/Semesters/" + semester.Id));
        }
Пример #5
0
        public async Task <IActionResult> CreateAsync(Major major)
        {
            _context.Majors.Add(major);
            await _context.SaveChangesAsync();

            return(Redirect("/Admin/Majors/" + major.Id));
        }
Пример #6
0
        public async Task <IHttpActionResult> Post(DrillHole drillHole)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            try
            {
                _context.DrillHoles.Add(drillHole);
                await _context.SaveChangesAsync();

                // TODO: Use Web API SignalR Integration
                // https://www.nuget.org/packages/Microsoft.AspNet.WebApi.SignalR/
                using (CommandHub hub = new CommandHub())
                {
                    hub.UpdateDisplay(drillHole);
                }

                return(Ok(drillHole));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
        public async Task <SiteLink> AddSiteLinkToEnvironment(int environmentId, [FromBody] SiteLink link)
        {
            link.EnvironmentId = environmentId;
            var linkEntry = _context.SiteLinks.Add(link);
            await _context.SaveChangesAsync();

            return(linkEntry.Entity);
        }
Пример #8
0
        public async Task <IActionResult> CreateAsync(Account account)
        {
            account.password      = Crypter.Blowfish.Crypt(account.password, Crypter.Blowfish.GenerateSalt());
            account.firstsemester = 1;
            _context.Accounts.Add(account);
            await _context.SaveChangesAsync();

            return(Redirect("/Admin/Students/" + account.Id));
        }
Пример #9
0
        public async Task <IActionResult> CreateAsync(CreateCourseVM coursevm)
        {
            var course = new Course
            {
                name              = coursevm.name,
                number            = coursevm.number,
                description       = coursevm.description,
                credithours       = coursevm.credithours,
                major             = await _context.Majors.FindAsync(coursevm.majorid),
                career            = coursevm.career,
                modeofinstruction = coursevm.modeofinstruction
            };

            _context.Courses.Add(course);
            await _context.SaveChangesAsync();

            return(Redirect("/Admin/Courses/" + course.Id));
        }
Пример #10
0
        public async Task <IActionResult> UpdateLink(int linkId, [FromBody] SiteLink link)
        {
            if (linkId != link.Id)
            {
                return(BadRequest());
            }

            _context.SiteLinks
            .Update(link)
            .UpdateLastModified();

            await _context.SaveChangesAsync();

            return(NoContent());
        }