Multiple fixes in the code Doug wrote for 7.3 - Calendar / DateTime / Event
- fix: Calendar now reports proper product ID on iCal feed
- fix: Calendar now tries to use the feed ID when sending uid of event on iCal
feeds (to prevent over-propagation of events shared between calendars).
- fix: Bug in AssetLineage->getLineage documentation.
- rfe: Event now has a template var to toggle if an event only lasts one day
- rfe: WebGUI::DateTime->toMysql now automatically adjusts to UTC. NOTE:
toMysqlDate and toMysqlTime do NOT adjust for timezones. If you are
using them you must adjust manually.
- fix: Bug in WebGUI::DateTime documentation
- fix: Calendar default date of "first event" or "last event" now works.
- fix: Calendar now handles Events that have ' in titles appropriately.
- rfe: Added a "dateSpan" Event template variable that will show a properly
formatted date/time span depending on how the event's start and end are.
This commit is contained in:
parent
5a26e4f2d8
commit
cdaef9d5e3
5 changed files with 134 additions and 50 deletions
|
|
@ -358,18 +358,23 @@ Event object.
|
|||
sub getEventNext
|
||||
{
|
||||
my $self = shift;
|
||||
my $db = $self->session->db;
|
||||
|
||||
my $where = 'Event.startDate > "'.$self->get("startDate").'" || (Event.startDate = "'.$self->get("startDate").'" && ';
|
||||
|
||||
# All day events must either look for null time or greater than 00:00:00
|
||||
if ($self->isAllDay)
|
||||
{
|
||||
$where .= "(Event.startTime IS NULL && assetData.title > '".$self->get("title")."') || Event.startTime >= '00:00:00'";
|
||||
$where .= "(Event.startTime IS NULL "
|
||||
. "&& assetData.title > ".$db->quote($self->get("title")).") "
|
||||
. "|| Event.startTime >= '00:00:00'";
|
||||
}
|
||||
# Non all-day events must look for greater than time
|
||||
else
|
||||
{
|
||||
$where .= "(Event.startTime = '".$self->get("startTime")."' && assetData.title > '".$self->get("title")."') || Event.startTime > '".$self->get("startTime")."'";
|
||||
$where .= "(Event.startTime = '".$self->get("startTime")."' "
|
||||
. "&& assetData.title > ".$db->quote($self->get("title")).")"
|
||||
. "|| Event.startTime > '".$self->get("startTime")."'";
|
||||
}
|
||||
$where .= ")";
|
||||
|
||||
|
|
@ -403,18 +408,22 @@ object.
|
|||
sub getEventPrev
|
||||
{
|
||||
my $self = shift;
|
||||
my $db = $self->session->db;
|
||||
|
||||
my $where = 'Event.startDate < "'.$self->get("startDate").'" || (Event.startDate = "'.$self->get("startDate").'" && ';
|
||||
|
||||
# All day events must either look for null time or greater than 00:00:00
|
||||
if ($self->isAllDay)
|
||||
{
|
||||
$where .= "(Event.startTime IS NULL && assetData.title < '".$self->get("title")."')";
|
||||
$where .= "(Event.startTime IS NULL "
|
||||
. "&& assetData.title < ".$db->quote($self->get("title")).")";
|
||||
}
|
||||
# Non all-day events must look for greater than time
|
||||
else
|
||||
{
|
||||
$where .= "(Event.startTime = '".$self->get("startTime")."' && assetData.title < '".$self->get("title")."') || Event.startTime < '".$self->get("startTime")."'";
|
||||
$where .= "(Event.startTime = '".$self->get("startTime")."' "
|
||||
. "&& assetData.title < ".$db->quote($self->get("title")).")"
|
||||
. "|| Event.startTime < '".$self->get("startTime")."'";
|
||||
}
|
||||
$where .= ")";
|
||||
|
||||
|
|
@ -1258,8 +1267,22 @@ sub getTemplateVars
|
|||
|
||||
|
||||
$var{isAllDay} = $self->isAllDay;
|
||||
$var{isOneDay} = 1 if ($var{isAllDay} && $var{startDateDmy} eq $var{endDateDmy});
|
||||
|
||||
|
||||
# Make a Friendly date span
|
||||
$var{dateSpan} = $var{startDateDayName}.", "
|
||||
. $var{startDateMonthName}." "
|
||||
. $var{startDateDayOfMonth}." "
|
||||
. ( !$var{isAllDay} ? $var{startDateHour}.":".$var{startDateMinute}." ".$var{startDateM} : "" )
|
||||
. ( !$var{isOneDay} ?
|
||||
' • '
|
||||
. $var{endDateDayName}.", "
|
||||
.$var{endDateMonthName}." "
|
||||
.$var{endDateDayOfMonth}." "
|
||||
. ( !$var{isAllDay} ? $var{endDateHour}.":".$var{endDateMinute}." ".$var{endDateM} : "")
|
||||
: "");
|
||||
|
||||
# Make some friendly URLs
|
||||
$dtStart->truncate(to=>"day");
|
||||
$var{"urlDay"} = $self->getParent->getUrl("type=day;start=".$dtStart->toMysql);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue