public string Get([FromUri] int packId, [FromUri] int workId, [FromUri] int studentId)
        {
            var user = GetCurrentUser();

            var pack = db.Packs.FirstOrDefault(p => p.Id == packId);

            if (pack == null)
            {
                ThrowNotFound();
            }

            var course = db.Courses.Find(pack.CourseId);

            if (course.UserId != user.Id)
            {
                ThrowBadRequest();
            }

            WorkThemeCommitService service = new WorkThemeCommitService(db);
            return service.GetStudentProcWorkThemeName(packId, workId, studentId);
        }
        public IHttpActionResult Get(int id)
        {
            var work = db.Works.Find(id);

            var user = GetCurrentUser();

            if (work == null)
            {
                return NotFound();
            }

            var course = db.Courses.Find(work.CourseId);

            if (course.UserId != user.Id)
            {
                return BadRequest();
            }

            WorkThemeCommitService service = new WorkThemeCommitService(db);
            return Json(service.GetThemes(id));
        }
        public IHttpActionResult Post([FromBody]NewThemeData newThemeData)
        {
            var work = db.Works.Find(newThemeData.workId);

            var user = GetCurrentUser();

            if (work == null)
            {
                return NotFound();
            }

            var course = db.Courses.Find(work.CourseId);

            if (course.UserId != user.Id)
            {
                return BadRequest();
            }

            WorkThemeCommitService service = new WorkThemeCommitService(db);
            service.CreateTheme(newThemeData.workId, newThemeData.themeName);
            return Ok();
        }