|
From: <var...@us...> - 2021-12-06 17:47:57
|
Revision: 10741
http://sourceforge.net/p/phpwiki/code/10741
Author: vargenau
Date: 2021-12-06 17:47:56 +0000 (Mon, 06 Dec 2021)
Log Message:
-----------
PageTrail plugin: check it is a wiki page (to avoid wrong links in PhotoAlbum)
Modified Paths:
--------------
trunk/lib/plugin/PageTrail.php
Modified: trunk/lib/plugin/PageTrail.php
===================================================================
--- trunk/lib/plugin/PageTrail.php 2021-12-06 17:16:51 UTC (rev 10740)
+++ trunk/lib/plugin/PageTrail.php 2021-12-06 17:47:56 UTC (rev 10741)
@@ -73,24 +73,31 @@
// Get name of the current page we are on
$thispage = $request->getArg('pagename');
- $Pages = $request->session->get("PageTrail");
- if (!is_array($Pages)) {
- $Pages = array();
+ $pages = $request->session->get("PageTrail");
+ if (!is_array($pages)) {
+ $pages = array();
}
- if (!isset($Pages[0]) or ($duplicates || ($thispage != $Pages[0]))) {
- array_unshift($Pages, $thispage);
- $request->session->set("PageTrail", $Pages);
+ $wikipages = array();
+ foreach ($pages as $page) {
+ if ($dbi->isWikiPage($page)) {
+ $wikipages[] = $page;
+ }
}
- $numberlinks = min(count($Pages), $numberlinks);
+ if (!isset($wikipages[0]) or ($duplicates || ($thispage != $wikipages[0]))) {
+ array_unshift($wikipages, $thispage);
+ $request->session->set("PageTrail", $wikipages);
+ }
+
+ $numberlinks = min(count($wikipages), $numberlinks);
if (!$invisible and $numberlinks) {
$html = HTML::span(array('class' => 'pagetrail'));
- $html->pushContent(WikiLink($Pages[$numberlinks - 1], 'auto'));
+ $html->pushContent(WikiLink($wikipages[$numberlinks - 1], 'auto'));
for ($i = $numberlinks - 2; $i >= 0; $i--) {
- if (!empty($Pages[$i]))
+ if (!empty($wikipages[$i]))
$html->pushContent(PAGETRAIL_ARROW,
- WikiLink($Pages[$i], 'auto'));
+ WikiLink($wikipages[$i], 'auto'));
}
return $html;
} else {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|