Как я могу отобразить дополнительную информацию о событии в jQuery FullCalendar?Есть ли способ запланировать повторяющиеся события в календаре? - PullRequest
0 голосов
/ 18 июня 2011

Я пишу приложение для бронирования номеров asp.net mvc, в котором я пытаюсь интегрировать полный календарь.поэтому, когда кто-то резервирует комнату для события, он выбирает время для события, присваивает ему название, и система назначает идентификатор резервирования для события.Затем на графике дня мы видим время, отведенное для данного события, и название этого события.Поэтому я хотел бы отображать идентификатор бронирования рядом с временем вместо названия мероприятия, например, «8:00 -10: 00 утра Reservation ID # 123».Является ли это возможным?Нужно ли редактировать основной файл, fullcalendar.js?

Кроме того, есть ли способ запланировать повторяющиеся события в календаре?

Большое спасибо!

1 Ответ

0 голосов
/ 18 июня 2011

Создайте свойство, которое представляет заголовок события, как вы хотите.

Ваше действие контроллера

public JsonResult GetEvents(double start, double end)
{
    //Bunch of work to deal with date format and retrieve data

    var urlHelper = new UrlHelper(ControllerContext.RequestContext);

    var result = from e in eventList
             select
                 new
                     {
                         id = e.EventId,
                         title = e.StartDate.ToString("s") + " - " +
                                                     e.EndDate.ToString("s") + 
                                                     " Reservation ID#" +
                                                     e.ReservationNumber,
                         start = e.StartDate.ToString("s"),
                         end = e.EndDate.ToString("s"),
                         url = urlHelper.Action("Details", "Event", 
                                                     new {id = e.EventId}),
                         color = e.IsActive ? "#2E9AFE" : "#FA5858"
                     };

    var rows = result.ToArray();

    return Json(rows, JsonRequestBehavior.AllowGet);
}

Что касается повторяющихся событий, вы должны создать это самостоятельно. Я в основном создал стандартное действие добавления события CRUD, которое также запрашивало повторения до даты.

Когда вы получите свой список событий обратно, вы можете выполнить итерацию по коллекции, чтобы найти эти события с повторением. Когда вы найдете его, вы должны пройти через процесс определения «виртуальных» повторяющихся событий для добавления. Я в основном определил список дат между настоящим моментом и окончанием повторения, которое должно иметь повторяющееся событие.

Как только у вас будет этот список дат для повторения, создайте новое событие для каждой из них с идентификатором исходного события и всеми остальными подробностями. Таким образом, когда вы нажимаете на событие календаря, они представляют одно и то же событие. Возьмите этот новый список событий, прикрепите его к исходному списку событий, и все готово. Ваш календарь будет отображать повторяющиеся события и не будет мудрее.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...