예제 #1
0
 public override void DeleteSiteContent(int siteId)
 {
     if (Log.IsDebugEnabled)
     {
         Log.Debug($"Deleting content by site id {siteId}");
     }
     ReservationEvent.DeleteBySite(siteId);
 }
예제 #2
0
        public ActionResult Delete(int id, ReservationEventModel REM)
        {
            ReservationEvent RE = resEvSer.GetById(id);


            resEvSer.Delete(RE);
            resEvSer.Commit();
            return(RedirectToAction("ReservationPerUser"));
        }
예제 #3
0
        /// <summary> Deletes the event. </summary>
        /// <param name="requestForm"> The request form. </param>
        /// <returns> System.String. </returns>
        private string DeleteEvent(NameValueCollection requestForm)
        {
            var itemId = requestForm["iid"].SafeParse <int>();

            return(itemId.HasValue
                ? (ReservationEvent.DeleteByItemID(itemId.Value)
                    ? JsonConvert.SerializeObject(new { success = true, message = "Your reservation was accuessfully added." })
                    : $"Unable to find reservation id {itemId.Value}.")
                : "Unable to find reservation.");
        }
예제 #4
0
        //GET: ReservationEvent/Edit/5
        public ActionResult Edit(int id)
        {
            ReservationEvent      RE  = resEvSer.GetById(id);
            ReservationEventModel REM = new ReservationEventModel
            {
                ReservationStatus = RE.ReservationStatus,
                ticketsNumber     = RE.ticketsNumber,
                unitPrice         = RE.unitPrice
            };

            return(View(REM));
        }
예제 #5
0
        // GET: ReservationEvent/Delete/5
        public ActionResult Delete(int id)
        {
            ReservationEvent RE = resEvSer.GetById(id);

            if (RE == null)
            {
                return(HttpNotFound());
            }
            ReservationEventModel REM = new ReservationEventModel
            {
                ReservationStatus = RE.ReservationStatus,
                ticketsNumber     = RE.ticketsNumber,
                unitPrice         = RE.unitPrice,
            };

            return(View(REM));
        }
예제 #6
0
        public ActionResult Edit(int id, ReservationEventModel REM)
        {
            ReservationEvent RE = resEvSer.GetById(id);

            try
            {
                resEvSer.Update(RE);
                UpdateModel(RE);

                resEvSer.Commit();
                return(RedirectToAction("ReservationPerUser"));
            }
            catch
            {
                return(View(RE));
            }
        }
예제 #7
0
        public ActionResult Create(ReservationEventModel REM, int id)
        {
            ReservationEvent RE = new ReservationEvent
            {
                IdEvent           = id,
                IdSimpleUser      = User.Identity.GetUserId(),
                ticketsNumber     = REM.ticketsNumber,
                unitPrice         = REM.unitPrice,
                ReservationStatus = REM.ReservationStatus
            };



            resEvSer.Add(RE);
            resEvSer.Commit();
            resEvSer.Dispose();

            return(RedirectToAction("ReservationPerUser"));
        }
예제 #8
0
        /// <summary> Gets the events. </summary>
        /// <param name="context"> The context. </param>
        /// <returns> System.String. </returns>
        private string GetEvents(HttpContext context)
        {
            DateTime start;

            if (DateTime.TryParse(context.Request.QueryString["start"], out start))
            {
                DateTime end;
                if (DateTime.TryParse(context.Request.QueryString["end"], out end))
                {
                    int moduleId;
                    if (int.TryParse(context.Request.QueryString["mid"], out moduleId))
                    {
                        var set = ReservationEvent.GetEvents(moduleId, start, end);
                        return(JsonConvert.SerializeObject(ConvertToReservationRows(set), Formatting.Indented));
                    }
                }
            }

            return("");
        }
예제 #9
0
        /// <summary> Adds the event. </summary>
        /// <param name="requestForm"> The request form. </param>
        /// <returns> System.String. </returns>
        private string AddEvent(NameValueCollection requestForm)
        {
            var start = requestForm["start"].SafeParse <DateTime>();
            var end   = requestForm["end"].SafeParse <DateTime>();
            var mid   = requestForm["mid"].SafeParse <int>();
            var mguid = requestForm["mguid"].SafeParse <Guid>();
            var uid   = requestForm["uid"].SafeParse <int>();
            var uguid = requestForm["uguid"].SafeParse <Guid>();

            if (start.HasValue && end.HasValue && mid.HasValue && uid.HasValue && mguid.HasValue && uguid.HasValue)
            {
                var moduleSettings = ModuleSettings.GetModuleSettings(mid.Value);
                var reservation    = new ReservationEvent
                {
                    ModuleId        = mid.Value,
                    ModuleGuid      = mguid.Value,
                    Title           = requestForm["title"],
                    Description     = requestForm["description"] ?? $"Reservation for {requestForm["title"]}",
                    ImageName       = "",
                    StartDate       = start.Value,
                    EndDate         = end.Value.AddDays(1),
                    Location        = moduleSettings["Location"]?.ToString() ?? "",
                    Latitude        = moduleSettings["Latitude"]?.ToString() ?? "",
                    Longitude       = moduleSettings["Longitude"]?.ToString() ?? "",
                    UserId          = uid.Value,
                    UserGuid        = uguid.Value,
                    LastModUserGuid = uguid.Value,
                    LastModUserId   = uid.Value,
                    LastModUtc      = DateTime.UtcNow
                };
                reservation.Save();
                return(JsonConvert.SerializeObject(new { success = true, message = "Your reservation was successfully added." }));
            }

            return("Unable to Add Event: Missing data");
        }
 public override void DeleteContent(int moduleId, Guid moduleGuid)
 {
     ReservationEvent.DeleteByModule(moduleId);
 }
예제 #11
0
        // GET: ReservationEvent/Details/5
        public ActionResult Details(int id)
        {
            ReservationEvent RE = resEvSer.GetById(id);

            return(View(RE));
        }
예제 #12
0
        /// <summary> Rebuilds the index. </summary>
        /// <param name="pageSettings"> The page settings. </param>
        /// <param name="indexPath"> The index path. </param>
        public override void RebuildIndex(PageSettings pageSettings, string indexPath)
        {
            if (WebConfigSettings.DisableSearchIndex)
            {
                return;
            }
            if (pageSettings == null)
            {
                return;
            }

            //don't index pending/unpublished pages
            if (pageSettings.IsPending)
            {
                return;
            }

            Log.Info("ReservationEventIndexBuilderProvider indexing page - " + pageSettings.PageName);

            try
            {
                var reservationFeature = new ModuleDefinition(reservationFeatureGuid);
                var pageModules        = PageModule.GetPageModulesByPage(pageSettings.PageId);
                var dataTable          = ReservationEvent.GetEventsByPage(pageSettings.SiteId, pageSettings.PageId);

                foreach (DataRow row in dataTable.Rows)
                {
                    var indexItem = new IndexItem
                    {
                        SiteId              = pageSettings.SiteId,
                        PageId              = pageSettings.PageId,
                        PageName            = pageSettings.PageName,
                        PageIndex           = pageSettings.PageIndex,
                        ViewRoles           = pageSettings.AuthorizedRoles,
                        ModuleViewRoles     = row["ViewRoles"].ToString(),
                        FeatureId           = reservationFeatureGuid.ToString(),
                        FeatureName         = reservationFeature.FeatureName,
                        FeatureResourceFile = reservationFeature.ResourceFile,
                        ItemId              = Convert.ToInt32(row["ItemID"], CultureInfo.InvariantCulture),
                        ModuleId            = Convert.ToInt32(row["ModuleID"], CultureInfo.InvariantCulture),
                        ModuleTitle         = row["ModuleTitle"].ToString(),
                        Title      = row["Title"].ToString(),
                        Content    = row["Description"].ToString(),
                        ViewPage   = "Reservations/Details.aspx",
                        CreatedUtc = Convert.ToDateTime(row["CreatedDate"]),
                        LastModUtc = Convert.ToDateTime(row["LastModUtc"])
                    };

                    // lookup publish dates
                    foreach (var pageModule in pageModules)
                    {
                        if (indexItem.ModuleId == pageModule.ModuleId)
                        {
                            indexItem.PublishBeginDate = pageModule.PublishBeginDate;
                            indexItem.PublishEndDate   = pageModule.PublishEndDate;
                        }
                    }

                    IndexHelper.RebuildIndex(indexItem, indexPath);

                    if (Log.IsDebugEnabled)
                    {
                        Log.Debug("Indexed " + indexItem.Title);
                    }
                }
            }
            catch (System.Data.Common.DbException ex)
            {
                Log.Error(ex);
            }
        }
예제 #13
0
        /// <summary> Indexes the item. </summary>
        /// <param name="reservationEvent"> The reservation event. </param>
        private static void IndexItem(ReservationEvent reservationEvent)
        {
            if (WebConfigSettings.DisableSearchIndex || reservationEvent == null)
            {
                return;
            }

            try
            {
                var module             = new Module(reservationEvent.ModuleId);
                var reservationFeature = new ModuleDefinition(reservationFeatureGuid);

                // get list of pages where this module is published
                var pageModules = PageModule.GetPageModulesByModule(reservationEvent.ModuleId);

                foreach (var pageModule in pageModules)
                {
                    var pageSettings = new PageSettings(reservationEvent.SiteId, pageModule.PageId);

                    //don't index pending/unpublished pages
                    if (pageSettings.IsPending)
                    {
                        continue;
                    }

                    var indexItem = new IndexItem
                    {
                        SiteId              = reservationEvent.SiteId,
                        PageId              = pageSettings.PageId,
                        PageName            = pageSettings.PageName,
                        ViewRoles           = pageSettings.AuthorizedRoles,
                        ModuleViewRoles     = module.ViewRoles,
                        ItemId              = reservationEvent.ItemId,
                        ModuleId            = reservationEvent.ModuleId,
                        ViewPage            = "Reservation/Details.aspx",
                        FeatureId           = reservationFeatureGuid.ToString(),
                        FeatureName         = reservationFeature.FeatureName,
                        FeatureResourceFile = reservationFeature.ResourceFile,
                        ModuleTitle         = module.ModuleTitle,
                        Title            = reservationEvent.Title,
                        Content          = reservationEvent.Description,
                        PublishBeginDate = pageModule.PublishBeginDate,
                        PublishEndDate   = pageModule.PublishEndDate,
                        CreatedUtc       = reservationEvent.CreatedDate,
                        LastModUtc       = reservationEvent.LastModUtc
                    };

                    if (reservationEvent.SearchIndexPath.Length > 0)
                    {
                        indexItem.IndexPath = reservationEvent.SearchIndexPath;
                    }

                    IndexHelper.RebuildIndex(indexItem);
                }

                if (Log.IsDebugEnabled)
                {
                    Log.Debug("Indexed " + reservationEvent.Title);
                }
            }
            catch (System.Data.Common.DbException ex)
            {
                Log.Error("ReservationEventIndexBuilderProvider.IndexItem", ex);
            }
        }