public void updateEventOccurrence(int id, WebEventOccurrence webEventOccurrence)
 {
     EventOccurrence eventOccurrence = db.EventOccurrences.SingleOrDefault(u => u.id == id);
     if (eventOccurrence != null && me.type == "admin")
     {
         eventOccurrence.isActive = webEventOccurrence.isActive;
         eventOccurrence.type = webEventOccurrence.type;
         eventOccurrence.description = webEventOccurrence.description;
         eventOccurrence.date = webEventOccurrence.date;
         db.SaveChanges();
     }
     else
     {
         throw new PermissionDeniedException();
     }
 }
        public HttpResponseMessage PostEventOccurrence(WebEventOccurrence eventOccurrence)
        {
            if (!ModelState.IsValid || eventOccurrence == null)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
            }

            try
            {
                int id = repo.addEventOccurrence(eventOccurrence);
                return Request.CreateResponse(HttpStatusCode.Created, id);
            }
            catch (Exception e)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest, e);
            }
        }
        public int addEventOccurrence(WebEventOccurrence webEventOccurrence)
        {
            if (me.type == "admin")
            {
                EventOccurrence eventOccurrence = new EventOccurrence();
                eventOccurrence.isActive = webEventOccurrence.isActive;
                eventOccurrence.type = webEventOccurrence.type;
                eventOccurrence.description = webEventOccurrence.description;
                eventOccurrence.date = webEventOccurrence.date;
                db.EventOccurrences.Add(eventOccurrence);
                db.SaveChanges();

                return eventOccurrence.id;
            }
            else
            {
                throw new PermissionDeniedException();
            }
        }
        public HttpResponseMessage PutEventOccurrence(int id, WebEventOccurrence eventOccurrence)
        {
            if (!ModelState.IsValid || eventOccurrence == null || id != eventOccurrence.id)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest, ModelState);
            }

            try
            {
                repo.updateEventOccurrence(id, eventOccurrence);
                return Request.CreateResponse(HttpStatusCode.OK, id);
            }
            catch (Exception e)
            {
                return Request.CreateResponse(HttpStatusCode.BadRequest, e);
            }
        }