public static string GenerateJWTToken(string email, DateTime expiration, StudentHelperContext db)
        {
            User user          = db.Users.First(x => x.Email == email);
            var  symmetric_Key = Convert.FromBase64String(SecretKey);
            var  token_Handler = new JwtSecurityTokenHandler();

            var securitytokenDescriptor = new SecurityTokenDescriptor
            {
                Subject = new ClaimsIdentity(new[]
                {
                    new Claim(ClaimTypes.Email, email),
                    new Claim(ClaimTypes.Role, user.Role),
                    new Claim("UserId", user.Id.ToString())
                }),

                Expires = expiration,

                SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(symmetric_Key), SecurityAlgorithms.HmacSha256Signature)
            };

            var stoken = token_Handler.CreateToken(securitytokenDescriptor);
            var token  = token_Handler.WriteToken(stoken);

            return(token);
        }
        private static void ChangeStats(int courseId, int userId, StudentHelperContext db, int votes)
        {
            Course     course     = db.Courses.Find(courseId);
            Popularity popularity = course.PopularityStats.First(p => p.UserDetailsId == userId);

            popularity.Votes = popularity.Votes + votes;
        }
Esempio n. 3
0
        public static string SaveImage(byte[] data, HttpRequestMessage req, StudentHelperContext dbContext)
        {
            var image = new Image {
                ImageData = data
            };

            dbContext.Images.Add(image);
            dbContext.SaveChanges();
            return(string.Format("http://{0}:{1}/api/image/{2}", req.RequestUri.Host, req.RequestUri.Port, image.Id));
        }
Esempio n. 4
0
        public static void DeleteImage(int id, StudentHelperContext dbContext)
        {
            Image image = dbContext.Images.Find(id);

            if (image != null)
            {
                dbContext.Images.Remove(image);
                dbContext.SaveChanges();
            }
        }
Esempio n. 5
0
        public HttpResponseMessage GetImage(int id)
        {
            StudentHelperContext db = new StudentHelperContext();
            Image image             = db.Images.Find(id);

            if (image != null)
            {
                MemoryStream        ms       = new MemoryStream(image.ImageData);
                HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StreamContent(ms)
                };
                response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("image/jpg");
                return(response);
            }
            var errorMessage = string.Format("Image with id = {0} doesn't exists", id);

            return(new HttpResponseMessage(HttpStatusCode.NotFound)
            {
                Content = new StringContent(errorMessage)
            });
        }
Esempio n. 6
0
 public StudentExerciseRepository(StudentHelperContext context) : base(context)
 {
 }
Esempio n. 7
0
 public CourseRepository(StudentHelperContext context) : base(context)
 {
 }
Esempio n. 8
0
 public StudentAssignmentRepository(StudentHelperContext context) : base(context)
 {
 }
Esempio n. 9
0
 public TeacherRepository(StudentHelperContext context) : base(context)
 {
 }
 public static void CommentDisliked(int courseId, int userId, StudentHelperContext db)
 {
     ChangeStats(courseId, userId, db, -1);
 }
 public static void PostLiked(int courseId, int userId, StudentHelperContext db)
 {
     ChangeStats(courseId, userId, db, 3);
 }
Esempio n. 12
0
 public HelpRequestRepository(StudentHelperContext context)
 {
     Context = context;
 }