Seditio Source
Root |
./othercms/dotclear-2.22/admin/help.php
<?php
/**
 * @package Dotclear
 * @subpackage Backend
 *
 * @copyright Olivier Meunier & Association Dotclear
 * @copyright GPL-2.0-only
 *
 * @var dcCore $core
 */
require __DIR__ . '/../inc/admin/prepend.php';

dcPage::check('usage,contentadmin');

$helpPage = function (...$args) {
   
$ret = ['content' => '', 'title' => ''];

    if (empty(
$args)) {
        return
$ret;
    }
    ;

    global
$__resources;
    if (empty(
$__resources['help'])) {
        return
$ret;
    }

   
$content = '';
   
$title   = '';
    foreach (
$args as $v) {
        if (
is_object($v) && isset($v->content)) {
           
$content .= $v->content;

            continue;
        }

        if (!isset(
$__resources['help'][$v])) {
            continue;
        }
       
$f = $__resources['help'][$v];
        if (!
file_exists($f) || !is_readable($f)) {
            continue;
        }

       
$fc = file_get_contents($f);
        if (
preg_match('|<body[^>]*?>(.*?)</body>|ms', $fc, $matches)) {
           
$content .= $matches[1];
            if (
preg_match('|<title[^>]*?>(.*?)</title>|ms', $fc, $matches)) {
               
$title = $matches[1];
            }
        } else {
           
$content .= $fc;
        }
    }

    if (
trim($content) == '') {
        return
$ret;
    }

   
$ret['content'] = $content;
    if (
$title != '') {
       
$ret['title'] = $title;
    }

    return
$ret;
};

$help_page     = !empty($_GET['page']) ? html::escapeHTML($_GET['page']) : 'index';
$content_array = $helpPage($help_page);
if ((
$content_array['content'] == '') || ($help_page == 'index')) {
   
$content_array = $helpPage('index');
}
if (
$content_array['title'] != '') {
   
$breadcrumb = dcPage::breadcrumb(
        [
           
__('Global help')       => $core->adminurl->get('admin.help'),
           
$content_array['title'] => '',
        ]
    );
} else {
   
$breadcrumb = dcPage::breadcrumb(
        [
           
__('Global help') => '',
        ]
    );
}

/* DISPLAY
-------------------------------------------------------- */
dcPage::open(
   
__('Global help'),
   
dcPage::jsPageTabs('first-step'),
   
$breadcrumb
);

echo
$content_array['content'];

// Prevents global help link display
$GLOBALS['__resources']['ctxhelp'] = true;

dcPage::close();