Adjust window in listView for Calendar. Fixes ug #11183
This commit is contained in:
parent
a4a5403e8c
commit
5510710b53
3 changed files with 70 additions and 13 deletions
|
|
@ -26,6 +26,7 @@
|
|||
- fixed #11176: New upgrade error in 7.6.35 to 7.7.17
|
||||
- fixed #11181: ableToBeFriend label not i18n
|
||||
- fixed #11179: user.CanStartThread missing from help
|
||||
- fixed #11183: Calendar List View
|
||||
|
||||
7.8.2
|
||||
- Added scheduled vendor payout workflow activity. (Special thanks to Martin @ Oqapi)
|
||||
|
|
|
|||
|
|
@ -1291,11 +1291,16 @@ sub viewList {
|
|||
my $session = $self->session;
|
||||
my $i18n = WebGUI::International->new($session,"Asset_Calendar");
|
||||
my $var = $self->getTemplateVars;
|
||||
my $tz = $session->datetime->getTimeZone();
|
||||
|
||||
### Get the events
|
||||
my $dtStart = WebGUI::DateTime->new( $session, $params->{start} )->truncate( to => "day" );
|
||||
my $dtStart = WebGUI::DateTime->new( $session, $params->{start} );
|
||||
$dtStart->set_time_zone($tz);
|
||||
$dtStart->truncate( to => 'day' );
|
||||
my $dtEnd = $dtStart->clone->add( seconds => $self->get('listViewPageInterval') );
|
||||
|
||||
warn 'truncated: '.$dtStart->toDatabase;
|
||||
warn 'end date: '.$dtEnd->toDatabase;
|
||||
my @events
|
||||
= $self->getEventsIn(
|
||||
$dtStart->toDatabase,
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ my $node = WebGUI::Asset->getImportNode($session);
|
|||
|
||||
my $versionTag = WebGUI::VersionTag->getWorking($session);
|
||||
$versionTag->set({name=>"Calendar Test"});
|
||||
WebGUI::Test->tagsToRollback($versionTag);
|
||||
addToCleanup($versionTag);
|
||||
|
||||
my $cal = $node->addChild({className=>'WebGUI::Asset::Wobject::Calendar'});
|
||||
my $windowCal = $node->addChild({
|
||||
|
|
@ -264,7 +264,7 @@ my $coincidentHigh = $windowCal->addChild({
|
|||
|
||||
my $tag2 = WebGUI::VersionTag->getWorking($session);
|
||||
$tag2->commit;
|
||||
WebGUI::Test->tagsToRollback($tag2);
|
||||
addToCleanup($tag2);
|
||||
|
||||
is(scalar @{ $windowCal->getLineage(['children'])}, 13, 'added events to the window calendar');
|
||||
|
||||
|
|
@ -321,7 +321,7 @@ my $endOfWeek = $weekCal->addChild({
|
|||
|
||||
my $tag3 = WebGUI::VersionTag->getWorking($session);
|
||||
$tag3->commit;
|
||||
WebGUI::Test->tagsToRollback($tag3);
|
||||
addToCleanup($tag3);
|
||||
|
||||
my $weekVars = $weekCal->viewWeek({ start => $bday });
|
||||
my @eventBins = ();
|
||||
|
|
@ -401,7 +401,7 @@ my $endOfMonth = $monthCal->addChild({
|
|||
|
||||
my $tag4 = WebGUI::VersionTag->getWorking($session);
|
||||
$tag4->commit;
|
||||
WebGUI::Test->tagsToRollback($tag4);
|
||||
addToCleanup($tag4);
|
||||
|
||||
my $monthVars = $monthCal->viewMonth({ start => $bday });
|
||||
@eventBins = ();
|
||||
|
|
@ -447,7 +447,7 @@ my $dayCal = $node->addChild({
|
|||
title => 'Calendar for doing event span testing, day',
|
||||
});
|
||||
|
||||
$allDayDt = $bday->cloneToUserTimeZone;
|
||||
$allDayDt = $bday->cloneToUserTimeZone;
|
||||
my $nextDayDt = $bday->cloneToUserTimeZone->add(days => 1)->truncate( to => 'day')->add(hours => 19);
|
||||
|
||||
$allDay = $dayCal->addChild({
|
||||
|
|
@ -472,7 +472,7 @@ my $nextDay = $dayCal->addChild({
|
|||
|
||||
my $tag5 = WebGUI::VersionTag->getWorking($session);
|
||||
$tag5->commit;
|
||||
WebGUI::Test->tagsToRollback($tag5);
|
||||
addToCleanup($tag5);
|
||||
|
||||
my $hourVars = $dayCal->viewDay({ start => $nextDayDt });
|
||||
@eventBins = ();
|
||||
|
|
@ -488,6 +488,62 @@ cmp_deeply(
|
|||
'... end of day event in proper bin'
|
||||
);
|
||||
|
||||
######################################################################
|
||||
#
|
||||
# viewList
|
||||
#
|
||||
######################################################################
|
||||
|
||||
my $listCal = $node->addChild({
|
||||
className => 'WebGUI::Asset::Wobject::Calendar',
|
||||
title => 'Calendar for doing event span testing, list',
|
||||
listViewPageInterval => 3600*24*3,
|
||||
});
|
||||
|
||||
$allDayDt = $bday->cloneToUserTimeZone->truncate( to => 'day' );
|
||||
my $prevDayDt = $bday->cloneToUserTimeZone->truncate( to => 'day' )->subtract(days => 1)->add(hours => 19);
|
||||
|
||||
diag $allDayDt->toDatabase;
|
||||
diag $prevDayDt->toDatabase;
|
||||
|
||||
$allDay = $listCal->addChild({
|
||||
className => 'WebGUI::Asset::Event',
|
||||
title => 'An event with explicit times that lasts all day',
|
||||
startDate => $allDayDt->toDatabaseDate,
|
||||
endDate => $allDayDt->clone->add(days => 1)->toDatabaseDate,
|
||||
startTime => $allDayDt->toDatabaseTime,
|
||||
endTime => $allDayDt->clone->add(days => 1)->toDatabaseTime,
|
||||
timeZone => $tz,
|
||||
}, undef, undef, {skipAutoCommitWorkflows => 1});
|
||||
|
||||
my $prevDay = $listCal->addChild({
|
||||
className => 'WebGUI::Asset::Event',
|
||||
title => 'Event at the end of the previous day',
|
||||
startDate => $prevDayDt->toDatabaseDate,
|
||||
endDate => $prevDayDt->toDatabaseDate,
|
||||
startTime => $prevDayDt->toDatabaseTime,
|
||||
endTime => $prevDayDt->clone->add(hours => 1)->toDatabaseTime,
|
||||
timeZone => $tz,
|
||||
}, undef, undef, {skipAutoCommitWorkflows => 1});
|
||||
|
||||
my $tag6 = WebGUI::VersionTag->getWorking($session);
|
||||
$tag6->commit;
|
||||
addToCleanup($tag6);
|
||||
|
||||
my $listVars = $listCal->viewList({ start => $bday });
|
||||
|
||||
@eventBins = ();
|
||||
foreach my $event (@{ $listVars->{events} }) {
|
||||
push @eventBins, $event->{eventAssetId};
|
||||
}
|
||||
|
||||
cmp_deeply(
|
||||
\@eventBins,
|
||||
[ $allDay->getId ],
|
||||
'... correct set of events in list view'
|
||||
);
|
||||
|
||||
|
||||
######################################################################
|
||||
#
|
||||
# getFeeds
|
||||
|
|
@ -501,7 +557,7 @@ my $feedCal = $node->addChild({
|
|||
|
||||
my $feedTag = WebGUI::VersionTag->getWorking($session);
|
||||
$feedTag->set({name=>"Calendar Feed Test"});
|
||||
WebGUI::Test->tagsToRollback($feedTag);
|
||||
addToCleanup($feedTag);
|
||||
$feedTag->commit;
|
||||
|
||||
cmp_deeply(
|
||||
|
|
@ -509,8 +565,3 @@ cmp_deeply(
|
|||
[],
|
||||
'getFeeds: returns an empty array ref with no feeds'
|
||||
);
|
||||
|
||||
TODO: {
|
||||
local $TODO = "Tests to make later";
|
||||
ok(0, 'Lots more to test');
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue