konto usunięte

Temat: kalendarz na stronie

Witam. Mam pytanko czy używał ktoś może kiedyś kalendarza na stronce, którego demo i dokumentację można znaleźć na poniższych linkach:

http://robmonie.github.com/jquery-week-calendar/full_d...

http://github.com/robmonie/jquery-week-calendar/wiki

???
Rafał Kwaśniak

Rafał Kwaśniak Programista
aplikacji
internetowych

Temat: kalendarz na stronie

Paweł Kaszperuk:
Witam. Mam pytanko czy używał ktoś może kiedyś kalendarza na stronce, którego demo i dokumentację można znaleźć na poniższych linkach:

http://robmonie.github.com/jquery-week-calendar/full_d...

http://github.com/robmonie/jquery-week-calendar/wiki

???

Zgodnie z Twoim pytaniem "uzywalem" podobnego rozwiazania.
Uzywalem, nie znaczy ze wdrazalem.
Pisalem kiedys aplikacje i osoba odpowiedzialna za IU zastosowala takie rozwiazanie - z dobrym skutkiem polaczone to zostalo z kodami serwera i mozna bylo niezle sobie zarzadzac czasem.

konto usunięte

Temat: kalendarz na stronie

Pytam ponieważ mam problem z wyświetleniem wszystkich dodanych eventów do kalendarza, tzn wyświetla mi eventy tylko dla pewnego przedziału czasu a resztę pomija. Spędziłem już kilka dni nad tym i nadal nie mogę tego ogarnąć ;/

konto usunięte

Temat: kalendarz na stronie

Ok. Udało mi się znaleźć przyczynę i osiągnąć to co zamierzałem. Problem był w funkcji w poniższej funkcji w której zakomentowałem stary kod a zmieniłem go swoim:
_findWeekDayForEvent : function(calEvent, $weekDayColumns)
{
var $weekDay;
$weekDayColumns.each(function()
{
if ( $(this).data("startDate").getYear() == calEvent.start.getYear() &&
$(this).data("startDate").getMonth() == calEvent.start.getMonth() &&
$(this).data("startDate").getDate() == calEvent.start.getDate()
)
{
$weekDay = $(this);
return false;
}

/*
if ($(this).data("startDate").getTime() <= calEvent.start.getTime() && $(this).data("endDate").getTime() >= calEvent.end.getTime())
{ $weekDay = $(this);
return false;
}
*/

});
return $weekDay;
}

Założenie jest tylko takie, że każdy event kończy się tego samego dnia co się zaczął.

Musiałem też poprawić funkcję która pozycjonuje event na kalendarzu (zmienić sposób wyliczania milisekund):
_positionEvent : function($weekDay, $calEvent)
{
var options = this.options;
var calEvent = $calEvent.data("calEvent");
var pxPerMillis = $weekDay.height() / options.millisToDisplay;
var firstHourDisplayed = options.businessHours.limitDisplay ? options.businessHours.start : 0;

var startMillis = ((calEvent.start.getHours()*3600*1000) - (firstHourDisplayed *3600*1000) ) + (calEvent.start.getMinutes() * 60 * 1000) + (calEvent.start.getSeconds() * 1000);
var eventMillis = (((calEvent.end.getHours()*3600*1000) - (firstHourDisplayed *3600*1000))+ (calEvent.end.getMinutes() * 60 * 1000) + (calEvent.end.getSeconds() * 1000)) - (((calEvent.start.getHours()*3600*1000) - (firstHourDisplayed *3600*1000)) + (calEvent.start.getMinutes() * 60 * 1000) + (calEvent.start.getSeconds() * 1000));

//var startMillis = calEvent.start.getTime() - new Date(calEvent.start.getFullYear(), calEvent.start.getMonth(), calEvent.start.getDate(), firstHourDisplayed).getTime();
//var eventMillis = calEvent.end.getTime() - calEvent.start.getTime();

var pxTop = pxPerMillis * startMillis;
var pxHeight = pxPerMillis * eventMillis;
$calEvent.css({top: pxTop, height: pxHeight});
}
Ogólnie to zabawa z datą w JS wymiata ;)Paweł Kaszperuk edytował(a) ten post dnia 21.10.10 o godzinie 09:43

Następna dyskusja:

2 pluginy jquery na jednej ...




Wyślij zaproszenie do