public ActionResult FetchImage(string data) { // Authenticate first var result = AuthenticateUser(); if (!result.IsValid) { return(AuthorizationError(result)); } BaseMessage dataIn = BaseMessage.createFromString(data); MobilePostFetchImage mpfi = JsonConvert.DeserializeObject <MobilePostFetchImage>(dataIn.data); BaseMessage br = new BaseMessage(); if (mpfi.id == 0) { return(br.setData("The ID for the person cannot be set to zero")); } br.data = "The picture was not found."; var person = DbUtil.Db.People.SingleOrDefault(pp => pp.PeopleId == mpfi.id); if (person.PictureId != null) { Image image = null; switch (mpfi.size) { case 0: // 50 x 50 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.ThumbId); break; case 1: // 120 x 120 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.SmallId); break; case 2: // 320 x 400 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.MediumId); break; case 3: // 570 x 800 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.LargeId); break; } if (image != null) { br.data = Convert.ToBase64String(image.Bits); br.count = 1; br.error = 0; } } return(br); }
public ActionResult FetchImage(string data) { // Authenticate first var authError = Authenticate(); if (authError != null) { return(authError); } // Check to see if type matches BaseMessage dataIn = BaseMessage.createFromString(data); if (dataIn.type != BaseMessage.API_TYPE_PERSON_IMAGE_REFRESH) { return(BaseMessage.createTypeErrorReturn()); } // Everything is in order, start the return MobilePostFetchImage mpfi = JsonConvert.DeserializeObject <MobilePostFetchImage>(dataIn.data); BaseMessage br = new BaseMessage(); if (mpfi.id == 0) { return(br.setData("The ID for the person cannot be set to zero")); } br.data = "The picture was not found."; br.type = BaseMessage.API_TYPE_PERSON_IMAGE_REFRESH; var person = DbUtil.Db.People.SingleOrDefault(pp => pp.PeopleId == mpfi.id); if (person.PictureId != null) { ImageData.Image image = null; switch (mpfi.size) { case 0: // 50 x 50 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.ThumbId); break; case 1: // 120 x 120 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.SmallId); break; case 2: // 320 x 400 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.MediumId); break; case 3: // 570 x 800 image = ImageData.DbUtil.Db.Images.SingleOrDefault(i => i.Id == person.Picture.LargeId); break; } if (image != null) { br.data = Convert.ToBase64String(image.Bits); br.count = 1; br.error = 0; } } return(br); }