<?php
/**
 * @name Subpages
 * @version 0.1
 * @author Thomas Heuer <projekte@thomas-heuer.eu>
 * @license Public Domain, use as you like.
 * @param &exclude comma-separated list of document-ids
 * 
 * This is a Wayfinder wrapper, to display an on-page menu,
 * containing all child-docs if there any
 */

if(!isset($modx)) return '';

/* setup vars */
$exclude = !empty($exclude) ? (is_array($exclude) ? $exclude : explode(',', str_replace(' ', '', $exclude))) : null;
$id = $modx->resource->get('id');
if(!is_null($exclude) && in_array($id, $exclude)) return '';

$output = '';
$parents = $modx->getParentIds($id);
$parentCount = count($parents);
$parent = array_shift($parents);
$childCount = count($modx->getChildIds($id));

/* get submenu */
if($parentCount > 1 || $childCount > 0)
{
	$output .= '<hr noshade="noshade" />';
	
	if($parentCount > 1 && $childCount > 0)
	{
		$output .= $modx->runSnippet('Wayfinder',array(
			'startId' => $parent,
		));
	}
	elseif($parentCount > 1 && $childCount == 0)
	{
		$output .= $modx->runSnippet('Wayfinder',array(
			'startId' => $parent,
			'excludeDocs' => $id
		));
	}
	elseif($parentCount == 1 && $childCount > 1)
	{
		$output .= $modx->runSnippet('Wayfinder',array(
			'startId' => $id,
		));
	}	
}

return $output;
