'.implode('', $nTmpNodeList).'');
}
if(!empty($nContentListXml)){
if(!function_exists('_getListHtml_abbf8155d488c2d7f2a0e32a652b27f7')){
function _getListHtml_abbf8155d488c2d7f2a0e32a652b27f7($innerText, $nNodes, $contentEndLevel) {
$blockHtml = '';
if(empty($contentEndLevel) || ($contentEndLevel < -1)) {
$contentEndLevel = -1;
}
// 最後のフォルダ/ページのインデックスを取得
$lastIndex = count($nNodes->node) - 1;
if($contentEndLevel >= 0 && (int)$nNodes['level'] > $contentEndLevel) {
$lastIndex = 0;
}
// $startNode番から$endNode番までの node を取得
$_startNode = 0;
if((int)$nNodes['level'] == 1) {
$_startNode = 0;
}
// endNode=フォルダ、ページ、リンクページ
$_endNode = $lastIndex;
if((int)$nNodes['level'] == 1) {
if(-1 >= 0 && -1 <= $lastIndex) {
$_endNode = -1;
}
}
// endPage=ページ、リンクページ
$_endPage = $_startNode;
for($i = $_startNode; $i <= $_endNode; $i++) {
if(isset($nNodes->node[$i]['type']) && ($nNodes->node[$i]['type'] == 'page' || $nNodes->node[$i]['type'] == 'link_page') ) {
$_endPage = $i;
}
}
$innerPages = explode(' ', $nNodes['pages']);
for($i = $_startNode; $i <= $_endPage; $i++) {
if(isset($nNodes->node[$i]['type']) && ($nNodes->node[$i]['type'] == 'page' || $nNodes->node[$i]['type'] == 'link_page') ) {
// 各フラグ設定
$isFirstNode = false;
$isLastNode = false;
$isIndexPageNode = false;
if($contentEndLevel < 0 || (int)$nNodes['level'] <= $contentEndLevel) {
if( !(isset($nNodes->node[$i]->close) && ($nNodes->node[$i]->close == 'close')) ) {
if($i == $_startNode) {
$isFirstNode = true;
}
if($i == $_endPage) {
$isLastNode = true;
}
if($i == 0) {
$isIndexPageNode = true;
}
}
}
$node = $nNodes->node[$i];
if($node['type'] == 'page') {
if($isIndexPageNode && in_array(9894, $innerPages)) {
$node->active = 'active';
}
if($node->id == 9894) {
$node->active = 'active';
$node->page_active = 'active';
}
}
if((int)$nNodes['level'] >= 1) {
$blockHtml .= ' '; // CPタグより左側の文字列を取得
}
if(
('lfolder_name' === 'lfirst' && $isFirstNode) || // 1ノード目の場合
('lfolder_name' === 'lno_first' && !$isFirstNode) || // 1ノード目以外の場合
('lfolder_name' === 'lmiddle' && (!$isFirstNode && !$isLastNode) ) || // 中間ノードの場合
('lfolder_name' === 'lno_middle' && ($isFirstNode || $isLastNode) ) || // 中間ノード以外の場合
('lfolder_name' === 'llast' && $isLastNode) || // 最終ノードの場合
('lfolder_name' === 'lno_last' && !$isLastNode) || // 最終ノード以外の場合
('lfolder_name' === 'lindex' && $isIndexPageNode) || // インデックスページノードの場合
('lfolder_name' === 'lno_index' && !$isIndexPageNode) ) { // インデックスページノード以外の場合
// フォルダノード、ページノード共通
if((int)$nNodes['level'] >= 1) {
$blockHtml .= '';
}
}
elseif('lfolder_name' === 'lrecurse') {
if(-1 == $contentEndLevel || (int)$nNodes['level'] <= $contentEndLevel) {
if(($i + 1) <= $_endNode && isset($nNodes->node[$i + 1]['type']) && ($nNodes->node[$i + 1]['type'] == 'folder')) {
for($j = $i + 1; $j <= $_endNode; $j++) {
if(isset($nNodes->node[$j]['type']) && ($nNodes->node[$j]['type'] == 'folder')) {
if(isset($nNodes->node[$j]->node)) {
// 表示最下部のフォルダインデックスはファイル名称にフォルダ名称を設定
$isOpen = true;
if((int)$nNodes['level'] == $contentEndLevel && isset($nNodes->node[$j]->node[0]) && isset($nNodes->node[$j]->node[0]->folder_name)) {
$isOpen = false;
}
if(isset($nNodes->node[$j]->node[0]->close) && ($nNodes->node[$j]->node[0]->close == 'close')) {
$isOpen = false;
}
if(!$isOpen) {
$nNodes->node[$j]->node[0]->name = (string)$nNodes->node[$j]->node[0]->folder_name;
}
$blockHtml .= _getListHtml_abbf8155d488c2d7f2a0e32a652b27f7($innerText, $nNodes->node[$j], $contentEndLevel);
}
}
else {
break;
}
}
}
}
}
else {
// ページノード&公開の場合
if((int)$nNodes['level'] >= 1) {
$html = ''; // ブロックパーツのHTMLを取得
if($html !=='') {
$blockHtml .= $html;
}
else {
$blockHtml .= ''.mb_convert_encoding(htmlspecialchars($node->folder_dir_name),'UTF-8','UTF-8').'';
}
}
}
if((int)$nNodes['level'] >= 1) {
$blockHtml .= ''; // CPタグより右側の文字列を取得
}
if(
('llevel' === 'lfirst' && $isFirstNode) || // 1ノード目の場合
('llevel' === 'lno_first' && !$isFirstNode) || // 1ノード目以外の場合
('llevel' === 'lmiddle' && (!$isFirstNode && !$isLastNode) ) || // 中間ノードの場合
('llevel' === 'lno_middle' && ($isFirstNode || $isLastNode) ) || // 中間ノード以外の場合
('llevel' === 'llast' && $isLastNode) || // 最終ノードの場合
('llevel' === 'lno_last' && !$isLastNode) || // 最終ノード以外の場合
('llevel' === 'lindex' && $isIndexPageNode) || // インデックスページノードの場合
('llevel' === 'lno_index' && !$isIndexPageNode) ) { // インデックスページノード以外の場合
// フォルダノード、ページノード共通
if((int)$nNodes['level'] >= 1) {
$blockHtml .= '';
}
}
elseif('llevel' === 'lrecurse') {
if(-1 == $contentEndLevel || (int)$nNodes['level'] <= $contentEndLevel) {
if(($i + 1) <= $_endNode && isset($nNodes->node[$i + 1]['type']) && ($nNodes->node[$i + 1]['type'] == 'folder')) {
for($j = $i + 1; $j <= $_endNode; $j++) {
if(isset($nNodes->node[$j]['type']) && ($nNodes->node[$j]['type'] == 'folder')) {
if(isset($nNodes->node[$j]->node)) {
// 表示最下部のフォルダインデックスはファイル名称にフォルダ名称を設定
$isOpen = true;
if((int)$nNodes['level'] == $contentEndLevel && isset($nNodes->node[$j]->node[0]) && isset($nNodes->node[$j]->node[0]->folder_name)) {
$isOpen = false;
}
if(isset($nNodes->node[$j]->node[0]->close) && ($nNodes->node[$j]->node[0]->close == 'close')) {
$isOpen = false;
}
if(!$isOpen) {
$nNodes->node[$j]->node[0]->name = (string)$nNodes->node[$j]->node[0]->folder_name;
}
$blockHtml .= _getListHtml_abbf8155d488c2d7f2a0e32a652b27f7($innerText, $nNodes->node[$j], $contentEndLevel);
}
}
else {
break;
}
}
}
}
}
else {
// ページノード&公開の場合
if((int)$nNodes['level'] >= 1) {
$html = ''; // ブロックパーツのHTMLを取得
if($html !=='') {
$blockHtml .= $html;
}
else {
$blockHtml .= ''.mb_convert_encoding(htmlspecialchars($node->level),'UTF-8','UTF-8').'';
}
}
}
if((int)$nNodes['level'] >= 1) {
$blockHtml .= ''; // CPタグより右側の文字列を取得
}
}
}
return $blockHtml;
}
}
if(isset($nContentListXml->node) && isset($nContentListXml['level'])) {
if(!isset($contentEndLevel)) {
$contentEndLevel = 0;
}
$node = $nContentListXml->node;
echo _getListHtml_abbf8155d488c2d7f2a0e32a652b27f7(' '.mb_convert_encoding(htmlspecialchars($node->folder_dir_name),'UTF-8','UTF-8').''.mb_convert_encoding(htmlspecialchars($node->level),'UTF-8','UTF-8').'', $nContentListXml, $contentEndLevel);
}
unset($contentEndLevel);
}
?>
">
node as $node) {
if(isset($node['type']) && $node['type'] == 'page' && $isExist === false) {
$nTmpNodeList[] = $node->asXml();
$isExist = true;
}
elseif(isset($node['type']) && $node['type'] == 'folder') {
_getTopicPath($node, $nTmpNodeList);
}
}
}
}
}
}
$nTmpNodeList = array();
_getTopicPath($nMasterContentListXml, $nTmpNodeList);
$nContentListXml = new SimpleXmlElement(''.implode('', $nTmpNodeList).'');
}
if(!empty($nContentListXml)){
if(!function_exists('_getListHtml_3b20e11684713ba146907acdb1d5d36f')){
function _getListHtml_3b20e11684713ba146907acdb1d5d36f($innerText, $nNodes, $contentEndLevel) {
$blockHtml = '';
if(empty($contentEndLevel) || ($contentEndLevel < -1)) {
$contentEndLevel = -1;
}
// 最後のフォルダ/ページのインデックスを取得
$lastIndex = count($nNodes->node) - 1;
if($contentEndLevel >= 0 && (int)$nNodes['level'] > $contentEndLevel) {
$lastIndex = 0;
}
// $startNode番から$endNode番までの node を取得
$_startNode = 0;
if((int)$nNodes['level'] == 1) {
$_startNode = 0;
}
// endNode=フォルダ、ページ、リンクページ
$_endNode = $lastIndex;
if((int)$nNodes['level'] == 1) {
if(-1 >= 0 && -1 <= $lastIndex) {
$_endNode = -1;
}
}
// endPage=ページ、リンクページ
$_endPage = $_startNode;
for($i = $_startNode; $i <= $_endNode; $i++) {
if(isset($nNodes->node[$i]['type']) && ($nNodes->node[$i]['type'] == 'page' || $nNodes->node[$i]['type'] == 'link_page') ) {
$_endPage = $i;
}
}
$innerPages = explode(' ', $nNodes['pages']);
for($i = $_startNode; $i <= $_endPage; $i++) {
if(isset($nNodes->node[$i]['type']) && ($nNodes->node[$i]['type'] == 'page' || $nNodes->node[$i]['type'] == 'link_page') ) {
// 各フラグ設定
$isFirstNode = false;
$isLastNode = false;
$isIndexPageNode = false;
if($contentEndLevel < 0 || (int)$nNodes['level'] <= $contentEndLevel) {
if( !(isset($nNodes->node[$i]->close) && ($nNodes->node[$i]->close == 'close')) ) {
if($i == $_startNode) {
$isFirstNode = true;
}
if($i == $_endPage) {
$isLastNode = true;
}
if($i == 0) {
$isIndexPageNode = true;
}
}
}
$node = $nNodes->node[$i];
if($node['type'] == 'page') {
if($isIndexPageNode && in_array(9894, $innerPages)) {
$node->active = 'active';
}
if($node->id == 9894) {
$node->active = 'active';
$node->page_active = 'active';
}
}
if((int)$nNodes['level'] >= 1) {
$blockHtml .= '-
'; // CPタグより右側の文字列を取得
}
if(
('lfolder_title' === 'lfirst' && $isFirstNode) || // 1ノード目の場合
('lfolder_title' === 'lno_first' && !$isFirstNode) || // 1ノード目以外の場合
('lfolder_title' === 'lmiddle' && (!$isFirstNode && !$isLastNode) ) || // 中間ノードの場合
('lfolder_title' === 'lno_middle' && ($isFirstNode || $isLastNode) ) || // 中間ノード以外の場合
('lfolder_title' === 'llast' && $isLastNode) || // 最終ノードの場合
('lfolder_title' === 'lno_last' && !$isLastNode) || // 最終ノード以外の場合
('lfolder_title' === 'lindex' && $isIndexPageNode) || // インデックスページノードの場合
('lfolder_title' === 'lno_index' && !$isIndexPageNode) ) { // インデックスページノード以外の場合
// フォルダノード、ページノード共通
if((int)$nNodes['level'] >= 1) {
$blockHtml .= '';
}
}
elseif('lfolder_title' === 'lrecurse') {
if(-1 == $contentEndLevel || (int)$nNodes['level'] <= $contentEndLevel) {
if(($i + 1) <= $_endNode && isset($nNodes->node[$i + 1]['type']) && ($nNodes->node[$i + 1]['type'] == 'folder')) {
for($j = $i + 1; $j <= $_endNode; $j++) {
if(isset($nNodes->node[$j]['type']) && ($nNodes->node[$j]['type'] == 'folder')) {
if(isset($nNodes->node[$j]->node)) {
// 表示最下部のフォルダインデックスはファイル名称にフォルダ名称を設定
$isOpen = true;
if((int)$nNodes['level'] == $contentEndLevel && isset($nNodes->node[$j]->node[0]) && isset($nNodes->node[$j]->node[0]->folder_name)) {
$isOpen = false;
}
if(isset($nNodes->node[$j]->node[0]->close) && ($nNodes->node[$j]->node[0]->close == 'close')) {
$isOpen = false;
}
if(!$isOpen) {
$nNodes->node[$j]->node[0]->name = (string)$nNodes->node[$j]->node[0]->folder_name;
}
$blockHtml .= _getListHtml_3b20e11684713ba146907acdb1d5d36f($innerText, $nNodes->node[$j], $contentEndLevel);
}
}
else {
break;
}
}
}
}
}
else {
// ページノード&公開の場合
if((int)$nNodes['level'] >= 1) {
$html = ''; // ブロックパーツのHTMLを取得
if($html !=='') {
$blockHtml .= $html;
}
else {
$blockHtml .= ''.mb_convert_encoding(htmlspecialchars($node->folder_name),'UTF-8','UTF-8').'';
}
}
}
if((int)$nNodes['level'] >= 1) {
$blockHtml .= '
'; // CPタグより右側の文字列を取得
}
}
}
return $blockHtml;
}
}
if(isset($nContentListXml->node) && isset($nContentListXml['level'])) {
if(!isset($contentEndLevel)) {
$contentEndLevel = 0;
}
$node = $nContentListXml->node;
echo _getListHtml_3b20e11684713ba146907acdb1d5d36f('-
'.mb_convert_encoding(htmlspecialchars($node->folder_name),'UTF-8','UTF-8').'
', $nContentListXml, $contentEndLevel);
}
unset($contentEndLevel);
}
?>
-
258v