Szukałem sposobu wyświetlenia tylko bieżącego tygodnia i następnego tygodnia w widoku miesiąca dla FullCalendar. Jak na razie wygląda na to, że został zaproponowany jako funkcja dla nadchodzącej wersji, ale czy w międzyczasie ktoś mógł ją zhakować?Wyświetl 2 tygodnie w jQuery FullCalendar
UPDATE
Dzięki za sugestię Doomsday, udało mi się utworzyć widok niestandardowy, który pokazuje 2 tygodnie, począwszy od bieżącego tygodnia. Zmieniasz widoczną datę rozpoczęcia do dnia dzisiejszego i zmieniając liczbę wierszy do 2.
function TwoWeeksView(element, calendar) {
var t = this;
// exports
t.render = render;
// imports
BasicView.call(t, element, calendar, 'month');
var opt = t.opt;
var renderBasic = t.renderBasic;
var formatDate = calendar.formatDate;
function render(date, delta) {
if (delta) {
addMonths(date, delta);
date.setDate(1);
}
var start = cloneDate(date, true);
start.setDate(1);
var end = addMonths(cloneDate(start), 1);
//var visStart = cloneDate(start);
var visStart = date;
var visEnd = cloneDate(end);
var firstDay = opt('firstDay');
var nwe = opt('weekends') ? 0 : 1;
if (nwe) {
skipWeekend(visStart);
skipWeekend(visEnd, -1, true);
}
addDays(visStart, -((visStart.getDay() - Math.max(firstDay, nwe) + 7) % 7));
addDays(visEnd, (7 - visEnd.getDay() + Math.max(firstDay, nwe)) % 7);
var rowCnt = Math.round((visEnd - visStart)/(DAY_MS * 7));
if (opt('weekMode') == 'fixed') {
addDays(visEnd, (6 - rowCnt) * 7);
//rowCnt = 6;
rowCnt = 2;
}
t.title = formatDate(start, opt('titleFormat'));
t.start = start;
t.end = end;
t.visStart = visStart;
t.visEnd = visEnd;
renderBasic(6, rowCnt, nwe ? 5 : 7, true);
}
}
Czy masz szansę na stworzenie [jsFiddle] (http://www.jsfiddle.net) tego rozwiązania? To jest dokładnie to, co próbuję teraz zrobić, ale nie mogę go uruchomić. – Michael
@Michael Mam to działa dla mnie. Potrzebowałem również tego dokładnego rozwiązania. Prawdopodobnie jest to trochę za późno, ale największą rzeczą, jaką zauważyłem tutaj, jest to, że obiekt fcViews nie został zaktualizowany o widok podwójny, aby był dostępny do użytku. Musisz dodać: 'fcViews.twoweek = TweoweekView; Funkcja TwoweekView (element, kalendarz) {' – Eric