← Back to team overview

mahara-contributors team mailing list archive

[Bug 1401210] Re: Watching a page with a journal block

 

Thanks for the bug report!

I think I've identified the coding issue that causes this problem.
Whenever an artefact (including a blog post) gets updated, it calls
PluginArtefact::commit(), which fires off a "saveartefact" event
handler, which in turn fires off the "watchlist_record_changes()" method
in lib/activity.php

It then identifies all the pages that the artefact is in, according to
the view_artefact table. The view_artefact table gets populated by the
PluginBlocktype::rebuild_artefact_list() function whenever a block
instance is saved, and it tells the block to look at which artefact's
it's using, which view it's in, and fill that into the table.

Crucially, the "blog" artefact has its own extra code that invokes
rebuild_artefact_list() whenever a blog entry artefact is committed.
But, judging by the comments in the code, it was only written to look at
"journal post" and "journal" blocks, and not to consider the other
journal blocks (recent journal entry, tagged journal entry). And
apparently it's not handling the "journal" block correctly either.

The place this happens is in the blog artefact's own commit() method
(which extends the PluginArtefact::commit() method). So, it should be a
fairly simple matter to fix it there.

** Tags added: snack-sized

-- 
You received this bug notification because you are a member of Mahara
Contributors, which is subscribed to Mahara.
Matching subscriptions: Subscription for all Mahara Contributors -- please ask on #mahara-dev or mahara.org forum before editing or unsubscribing it!
https://bugs.launchpad.net/bugs/1401210

Title:
  Watching a page with a journal block

Status in Mahara ePortfolio:
  Confirmed

Bug description:
  A page of user A is on the watchlist of user B.

  The page contains a journal block. When user A updates is journal by
  adding a new article, the new article is displayed in the page but
  there is no notification to user B that user A has updated is journal.

  This situation is the same with a journal block, a recent journal
  entry block and tagged journal entry block.

  It would be nice either to have the option to add the block to the
  watchlist, specifically or to make sure that when a page is on a
  watchlist all modifications including a new journal entry in a block
  trigger a notification.

To manage notifications about this bug go to:
https://bugs.launchpad.net/mahara/+bug/1401210/+subscriptions


References