From: <var...@us...> - 2022-02-17 19:17:26
|
Revision: 11005 http://sourceforge.net/p/phpwiki/code/11005 Author: vargenau Date: 2022-02-17 19:17:24 +0000 (Thu, 17 Feb 2022) Log Message: ----------- Implement function getWikiPageLinks for lib/plugin/IncludePages.php Modified Paths: -------------- trunk/lib/plugin/IncludePages.php Modified: trunk/lib/plugin/IncludePages.php =================================================================== --- trunk/lib/plugin/IncludePages.php 2022-02-16 18:24:08 UTC (rev 11004) +++ trunk/lib/plugin/IncludePages.php 2022-02-17 19:17:24 UTC (rev 11005) @@ -46,6 +46,38 @@ ); } + function getWikiPageLinks($argstr, $basepage) + { + $args = $this->getArgs($argstr); + if (is_string($args['exclude']) and !empty($args['exclude'])) { + $exclude = explodePageList($args['exclude']); + } elseif (is_array($args['exclude'])) { + $exclude = $args['exclude']; + } else { + $exclude = array(); + } + if (is_string($args['pages']) and !empty($args['pages'])) { + $pages = explodePageList($args['pages']); + } elseif (is_array($args['pages'])) { + $pages = $args['pages']; + } else { + $pages = array(); + } + $pages = array_diff($pages, $exclude); + $links = array(); + global $request; + $dbi = $request->_dbi; + foreach($pages as $page) { + $page_handle = $dbi->getPage($page); + $pagelinks = $page_handle->getPageLinks(); + while ($link_handle = $pagelinks->next()) { + $linkname = $link_handle->getName(); + $links[] = array('linkto' => $linkname); + } + } + return $links; + } + /** * @param WikiDB $dbi * @param string $argstr This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |