Fixed in the next release. A lot of links were improperly tracked:
Code:
Fixed Bug: [i#6339] incorrect prefix in link sortkey leading to Special:Unused* false positives [since: 4.1.7] [lite: no]
Fixed Bug: existing links become untracked when saving a page w/ no changes [since: 4.1.6] [lite: no]
This results in, after upgrading, all pages having no links/images recorded until they are edited again. After editing, the link keys don't match the keys on the target page, so the target page doesn't know it has received a link.
In
src/addons/vw/vw/_core/controller/dm/page/vw.php, find:
Code:
if (!$this->instance->get_info('skip_links'))
{
$this->process_links();
}
if (
// or if we even need a new revision at all
$this->warrants_revision($lastrevision)
)
Replace with:
Code:
$warranted = $this->warrants_revision($lastrevision);
$this->instance->set_info('is_revision_warranted', $warranted);
if (!$this->instance->get_info('skip_links'))
{
$this->process_links();
}
if ($warranted)
Find:
Code:
if (!$this->linkdm OR !$this->is_edit_current())
{
if ($this->instance->get_info('clear_links'))
{
$link = array(
'contenttypeid' => vw_Hard_Core::model('ContentType')->one('vw_Page'),
'contentid' => $this->instance->get('pageid')
);
$dm = vw_Hard_Core::controller('DM')->create('Link', 'SILENT');
$dm->set_info('is_automated', 1);
$dm->set_existing($link);
$dm->instance->controller->set_batch_condition();
$dm->delete();
unset($dm);
}
return;
}
Replace with:
Code:
if (!$this->linkdm AND $this->instance->get_info('clear_links'))
{
$link = array(
'contenttypeid' => vw_Hard_Core::model('ContentType')->one('vw_Page'),
'contentid' => $this->instance->get('pageid')
);
$dm = vw_Hard_Core::controller('DM')->create('Link', 'SILENT');
$dm->set_info('is_automated', 1);
$dm->set_existing($link);
$dm->instance->controller->set_batch_condition();
$dm->delete();
unset($dm);
}
if (!$this->linkdm OR !$this->is_edit_current())
{
return;
}
Find:
Code:
else if (!$this->instance->get_existing('revisionid'))
{
return true;
}
AFTER it, add:
Code:
$warranted = $this->instance->get_info('is_revision_warranted');
if ($warranted === false)
{
return true;
}
In
src/addons/vw/vw/_core/controller/dm/batch/vw.php, find:
Code:
$dm->setr($field, $value);
Replace with:
Code:
$dm->set($field, $value);