Calendar needs to cleanup its feeds when it is deleted
This commit is contained in:
parent
cc569b1b4d
commit
62f3a9b045
3 changed files with 31 additions and 7 deletions
|
|
@ -30,6 +30,8 @@
|
|||
- Fixed a bad module name in the updated WeatherData asset (perlDreamer Consulting, LLC)
|
||||
- File and Image handling via Storage.pm (perlDreamer Consulting, LLC)
|
||||
- Calendar: event details misdirection (perlDreamer Consulting, LLC)
|
||||
- Calendar asset bug, hourly workflow error (Thanks to Chad Kotil (Global
|
||||
Research NOC) for debug help with this)
|
||||
|
||||
7.3.11
|
||||
- Added an option for enabling coverage tests to testCodebase.pl.
|
||||
|
|
|
|||
|
|
@ -21,16 +21,24 @@ my $quiet; # this line required
|
|||
my $session = start(); # this line required
|
||||
|
||||
# upgrade functions go here
|
||||
deleteUnusedIcalFeeds($session);
|
||||
|
||||
finish($session); # this line required
|
||||
|
||||
|
||||
##-------------------------------------------------
|
||||
#sub exampleFunction {
|
||||
# my $session = shift;
|
||||
# print "\tWe're doing some stuff here that you should know about.\n" unless ($quiet);
|
||||
# # and here's our code
|
||||
#}
|
||||
#-------------------------------------------------
|
||||
sub deleteUnusedIcalFeeds {
|
||||
my $session = shift;
|
||||
print "\tDeleting iCal feeds for Calendar that have already been deleted.\n" unless ($quiet);
|
||||
my $calendarAssetIds = $session->db->buildArrayRef('select distinct(assetId) from Calendar');
|
||||
return unless scalar @{ $calendarAssetIds };
|
||||
my $query = sprintf(
|
||||
"DELETE FROM Calendar_feeds WHERE assetId NOT IN (%s)",
|
||||
$session->db->quoteAndJoin($calendarAssetIds)
|
||||
);
|
||||
print $query;
|
||||
$session->db->write($query);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -405,7 +405,7 @@ sub getEditForm {
|
|||
my $form = $self->SUPER::getEditForm;
|
||||
my $i18n = WebGUI::International->new($session,"Asset_Calendar");
|
||||
|
||||
my $tab = $form->addTab("feeds",$i18n->get("feeds"));
|
||||
my $tab = $form->addTab("feeds",$i18n->get("feeds"), 6);
|
||||
$tab->raw("<tr><td>");
|
||||
|
||||
|
||||
|
|
@ -881,7 +881,21 @@ sub processPropertiesFromFormPost {
|
|||
}
|
||||
|
||||
|
||||
####################################################################
|
||||
|
||||
=head2 purge ( )
|
||||
|
||||
Handle Asset specific purge tasks.
|
||||
|
||||
Delete iCal feeds for this Calendar.
|
||||
|
||||
=cut
|
||||
|
||||
sub purge {
|
||||
my $self = shift;
|
||||
$self->session->db->write('delete from Calendar_feeds where assetId=?',[$self->get('assetId')]);
|
||||
$self->SUPER::purge;
|
||||
}
|
||||
|
||||
####################################################################
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue