// DELETE api/Events/1 public HttpResponseMessage DeleteEvent(int id) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); if (EventPhotosService.IsEventType(ev, EventPhotosService.EVENTTYPE_NEW)) { if (EventsController.ClearEventRelationships(ev, db)) { db.Events.Remove(ev); try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { FotoShoutUtils.Log.LogManager.Error(_logger, ex.ToString()); this.GenerateException(HttpStatusCode.NotFound, ex.Message); } return(Request.CreateResponse(HttpStatusCode.OK, ev)); } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, string.Format(Errors.ERROR_EVENT_CLEARREL, ev.EventName))); } } else { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, string.Format(Errors.ERROR_EVENT_DELETE_ANNOTATED, ev.EventName))); } }
private void UpdateTDO(EventTDO tdo, Event ev) { tdo.EventId = ev.EventId; tdo.Created = ev.Created; tdo.CreatedBy = ev.CreatedBy; tdo.EventVirtualPath = ev.EventVirtualPath; tdo.Thumbnail = AppConfigs.VirtualRoot + EventPhotosService.GetThumbnailUrl(ev.EventId, ev.EventFolder, ev.EventVirtualPath, db); }
// GET api/Events public IEnumerable <EventTDO> GetEvents(string eventType = "") { EventStatus evType = EventPhotosService.GetEventStatus(eventType); HashSet <EventTDO> tdos = new HashSet <EventTDO>(); try { IEnumerable <Event> events = (evType != EventStatus.Undefined) ? db.Events.Where(ev => ev.User.Id == CurrentUser.Id && ev.EventStatus == (byte)evType).Include(e => e.EventOption).OrderBy(ev => ev.EventName).ToList() : db.Events.Where(ev => ev.User.Id == CurrentUser.Id).Include(e => e.EventOption).OrderBy(ev => ev.EventName).ToList(); if (events.Any()) { foreach (Event ev in events) { string error = DirectoryUtils.GenerateDirectories(ev.EventFolder); if (!string.IsNullOrEmpty(error)) { this.GenerateException(HttpStatusCode.InternalServerError, error, _logger); } FotoShoutApi.Services.IO.DirectoryService.GenerateVirtualPath(ev.EventFolder); if (evType != EventStatus.Undefined || EventPhotosService.IsEventType(ev, eventType)) { EventTDO tdo = new EventTDO { EventId = ev.EventId, EventName = ev.EventName, EventDescription = ev.EventDescription, EventDate = ev.EventDate, EventLocation = ev.EventLocation, EventFolder = ev.EventFolder, EventVirtualPath = ev.EventVirtualPath, Created = ev.Created, CreatedBy = ev.CreatedBy, EventOptionId = ev.EventOption.EventOptionId, EventStatus = ev.EventStatus, PublishAlbum = ev.PublishAlbum }; try { string relativeThumbnail = EventPhotosService.GetThumbnailUrl(tdo.EventId, tdo.EventFolder, tdo.EventVirtualPath, db); tdo.Thumbnail = string.IsNullOrEmpty(relativeThumbnail) ? "" : AppConfigs.VirtualRoot + relativeThumbnail; } catch (ObjectNotFoundException) { tdo.Thumbnail = ""; } tdos.Add(tdo); } } } } catch (Exception ex) { FotoShoutUtils.Log.LogManager.Error(_logger, ex.ToString()); this.GenerateException(HttpStatusCode.InternalServerError, ex.Message); } return(tdos); }
public IEnumerable <PhotoTDO> GetUnclaimedPhotos(int id, int page = 0, int pageSize = 12) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetUnclaimedPhotos(ev, page, pageSize)); } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public int GetNumUnclaimedPhotos(int id) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetNumUnclaimedPhotos(ev)); } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public IEnumerable <PhotoTDO> GetPublishedPhotosByGuest(int id, string name) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db, true, true); try { return(EventPhotosService.GetPublishedPhotosByGuest(ev, name, db)); } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public IEnumerable <PhotoTDO> GetSubmittedPhotosByGuest(int id, string name) { LogManager.Info(EventPhotosController._logger, string.Format("Getting submitted photos of the event {0} by {1} ...", id, name)); Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db, true, true); try { return(EventPhotosService.GetSubmittedPhotosByGuest(ev, name, db)); } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public IEnumerable <PhotoTDO> GetPhotos(int id, int page = 0, int pageSize = 12) { LogManager.Info(EventPhotosController._logger, string.Format("Getting photos of the event {0}...", id)); Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db, false, false); try { return(EventPhotosService.GetPhotos(ev)); } catch (Exception ex) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public string GetThumbnailUrl(int id) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(AppConfigs.VirtualRoot + EventPhotosService.GetThumbnailUrl(ev.EventId, ev.EventFolder, ev.EventVirtualPath, db)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public int GetNumProcessedPhotos(int id, string name, string created = null) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db, true, true); try { return(EventPhotosService.GetNumProcessedPhotosByGuest(ev, name, created)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public IEnumerable <PhotoGroupTDO> GetProcessedPhotoGroupsByDate(int id) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetProcessedPhotoGroupsByDate(ev, db)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public IEnumerable <PhotoTDO> GetUnauthorizedPhotos(int id) { LogManager.Info(EventPhotosController._logger, string.Format("Getting unauthorized photos of the event {0}...", id)); Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetUnauthorizedPhotos(ev, db)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.ToString())); } }
public EventDetailsTDO GetProcessedPhotosReporting(int id) { LogManager.Info(EventPhotosController._logger, string.Format("Getting reporting processed photos of the event {0}...", id)); Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetProcessedPhotosReporting(ev, db)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public IEnumerable <PhotoDetailsTDO> GetProcessedPhotosDetailing(int id, string created = null, int page = 0, int pageSize = 12) { LogManager.Info(EventPhotosController._logger, string.Format("Getting details of the processed photos of the event {0}...", id)); Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); try { return(EventPhotosService.GetProcessedPhotosDetailing(ev, created, page, pageSize, db)); } catch (Exception ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.Message)); } }
public HttpResponseMessage SelectPhoto(int id, string filename) { Event ev = EventsController.GetEvent(id, CurrentUser.Id, Request, db); Photo photo = GetPhotoFromId(id) .Where(p => p.Filename.Equals(filename, StringComparison.InvariantCultureIgnoreCase)).SingleOrDefault(); if (photo == null) { string folder = ev.EventFolder.EndsWith(Path.DirectorySeparatorChar.ToString()) ? ev.EventFolder : (ev.EventFolder + Path.DirectorySeparatorChar); string thumbnail = File.Exists(folder + Constants.STR_THUMB + "/" + filename) ? (ev.EventVirtualPath + "/" + Constants.STR_THUMB + "/" + filename) : ""; photo = new Photo { PhotoId = Guid.NewGuid(), Folder = ev.EventFolder, Filename = filename, Image = ev.EventVirtualPath + '/' + filename, Thumbnail = thumbnail, Created = File.GetCreationTime(folder + filename), Event = ev }; ev.Photos.Add(photo); } else if (photo.Status == (byte)PhotoStatus.Selected) { return(Request.CreateResponse(HttpStatusCode.Conflict, string.Format("The {0} photo is editing by someone else.", filename))); } photo.Status = (byte)PhotoStatus.Selected; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { LogManager.Error(EventPhotosController._logger, ex.ToString()); throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, ex.ToString())); } return(Request.CreateResponse(HttpStatusCode.OK, EventPhotosService.GenerateTDO(ev, photo))); }