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; }
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.setNoError(); } } return br; }
public ActionResult FetchImage(string data) { // Authenticate first if (!Auth()) return BaseMessage.createErrorReturn("Authentication failed, please try again", BaseMessage.API_ERROR_INVALID_CREDENTIALS); BaseMessage dataIn = BaseMessage.createFromString(data); CheckInFetchImage cifi = JsonConvert.DeserializeObject<CheckInFetchImage>(dataIn.data); BaseMessage br = new BaseMessage(); if (cifi.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 == cifi.id); if (person.PictureId != null) { ImageData.Image image = null; switch (cifi.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.setNoError(); } } return br; }