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; }
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)); }
public static void DeleteImage(int id, StudentHelperContext dbContext) { Image image = dbContext.Images.Find(id); if (image != null) { dbContext.Images.Remove(image); dbContext.SaveChanges(); } }
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) }); }
public StudentExerciseRepository(StudentHelperContext context) : base(context) { }
public CourseRepository(StudentHelperContext context) : base(context) { }
public StudentAssignmentRepository(StudentHelperContext context) : base(context) { }
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); }
public HelpRequestRepository(StudentHelperContext context) { Context = context; }