コード例 #1
0
ファイル: language.php プロジェクト: msooon/hubzilla
/**
 * @brief Translate string if translation exists.
 *
 * @param string $s string that should get translated
 * @param string $ctx (optional) context to appear in po file
 * @return translated string if exists, otherwise return $s
 *
 */
function t($s, $ctx = '')
{
    global $a;
    $cs = $ctx ? '__ctx:' . $ctx . '__ ' . $s : $s;
    if (x($a->strings, $cs)) {
        $t = $a->strings[$cs];
        return is_array($t) ? translate_projectname($t[0]) : translate_projectname($t);
    }
    return translate_projectname($s);
}
コード例 #2
0
ファイル: help.php プロジェクト: phellmes/hubzilla
function get_help_content($tocpath = false)
{
    global $lang;
    $doctype = 'markdown';
    $text = '';
    $path = $tocpath !== false ? $tocpath : '';
    if ($tocpath === false && argc() > 1) {
        $path = '';
        for ($x = 1; $x < argc(); $x++) {
            if (strlen($path)) {
                $path .= '/';
            }
            $path .= argv($x);
        }
    }
    if ($path) {
        $title = basename($path);
        if (!$tocpath) {
            \App::$page['title'] = t('Help:') . ' ' . ucwords(str_replace('-', ' ', notags($title)));
        }
        $text = load_doc_file('doc/' . $path . '.md');
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.bb');
            if ($text) {
                $doctype = 'bbcode';
            }
        }
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.html');
            if ($text) {
                $doctype = 'html';
            }
        }
    }
    if ($tocpath && !$text) {
        return '';
    }
    if ($tocpath === false) {
        if (!$text) {
            $text = load_doc_file('doc/Site.md');
            \App::$page['title'] = t('Help');
        }
        if (!$text) {
            $doctype = 'bbcode';
            $text = load_doc_file('doc/main.bb');
            \App::$page['title'] = t('Help');
        }
        if (!$text) {
            header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found'));
            $tpl = get_markup_template("404.tpl");
            return replace_macros($tpl, array('$message' => t('Page not found.')));
        }
    }
    if ($doctype === 'html') {
        $content = $text;
    }
    if ($doctype === 'markdown') {
        require_once 'library/markdown.php';
        # escape #include tags
        $text = preg_replace('/#include/ism', '%%include', $text);
        $content = Markdown($text);
        $content = preg_replace('/%%include/ism', '#include', $content);
    }
    if ($doctype === 'bbcode') {
        require_once 'include/bbcode.php';
        $content = bbcode($text);
        // bbcode retargets external content to new windows. This content is internal.
        $content = str_replace(' target="_blank"', '', $content);
    }
    $content = preg_replace_callback("/#include (.*?)\\;/ism", 'preg_callback_help_include', $content);
    return translate_projectname($content);
}
コード例 #3
0
ファイル: help.php プロジェクト: anmol26s/hubzilla-yunohost
function help_content(&$a)
{
    nav_set_selected('help');
    if ($_REQUEST['search']) {
        $o .= '<div id="help-content" class="generic-content-wrapper">';
        $o .= '<div class="section-title-wrapper">';
        $o .= '<h2>' . t('Documentation Search') . ' - ' . htmlspecialchars($_REQUEST['search']) . '</h2>';
        $o .= '</div>';
        $o .= '<div class="section-content-wrapper">';
        $r = search_doc_files($_REQUEST['search']);
        if ($r) {
            $o .= '<ul class="help-searchlist">';
            foreach ($r as $rr) {
                $dirname = dirname($rr['sid']);
                $fname = basename($rr['sid']);
                $fname = substr($fname, 0, strrpos($fname, '.'));
                $path = trim(substr($dirname, 4), '/');
                $o .= '<li><a href="help/' . ($path ? $path . '/' : '') . $fname . '" >' . ucwords(str_replace('_', ' ', notags($fname))) . '</a><br />' . str_replace('$Projectname', Zotlabs\Project\System::get_platform_name(), substr($rr['text'], 0, 200)) . '...<br /><br /></li>';
            }
            $o .= '</ul>';
            $o .= '</div>';
            $o .= '</div>';
        }
        return $o;
    }
    global $lang;
    $doctype = 'markdown';
    $text = '';
    if (argc() > 1) {
        $path = '';
        for ($x = 1; $x < argc(); $x++) {
            if (strlen($path)) {
                $path .= '/';
            }
            $path .= argv($x);
        }
        $title = basename($path);
        $text = load_doc_file('doc/' . $path . '.md');
        App::$page['title'] = t('Help:') . ' ' . ucwords(str_replace('-', ' ', notags($title)));
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.bb');
            if ($text) {
                $doctype = 'bbcode';
            }
            App::$page['title'] = t('Help:') . ' ' . ucwords(str_replace('_', ' ', notags($title)));
        }
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.html');
            if ($text) {
                $doctype = 'html';
            }
            App::$page['title'] = t('Help:') . ' ' . ucwords(str_replace('-', ' ', notags($title)));
        }
    }
    if (!$text) {
        $text = load_doc_file('doc/Site.md');
        App::$page['title'] = t('Help');
    }
    if (!$text) {
        $doctype = 'bbcode';
        $text = load_doc_file('doc/main.bb');
        App::$page['title'] = t('Help');
    }
    if (!strlen($text)) {
        header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found'));
        $tpl = get_markup_template("404.tpl");
        return replace_macros($tpl, array('$message' => t('Page not found.')));
    }
    if ($doctype === 'html') {
        $content = $text;
    }
    if ($doctype === 'markdown') {
        require_once 'library/markdown.php';
        # escape #include tags
        $text = preg_replace('/#include/ism', '%%include', $text);
        $content = Markdown($text);
        $content = preg_replace('/%%include/ism', '#include', $content);
    }
    if ($doctype === 'bbcode') {
        require_once 'include/bbcode.php';
        $content = bbcode($text);
        // bbcode retargets external content to new windows. This content is internal.
        $content = str_replace(' target="_blank"', '', $content);
    }
    $content = preg_replace_callback("/#include (.*?)\\;/ism", 'preg_callback_help_include', $content);
    return replace_macros(get_markup_template("help.tpl"), array('$title' => t('$Projectname Documentation'), '$content' => translate_projectname($content)));
}
コード例 #4
0
ファイル: help.php プロジェクト: HaakonME/redmatrix
function help_content(&$a)
{
    nav_set_selected('help');
    global $lang;
    $doctype = 'markdown';
    $text = '';
    if (argc() > 1) {
        $path = '';
        for ($x = 1; $x < argc(); $x++) {
            if (strlen($path)) {
                $path .= '/';
            }
            $path .= argv($x);
        }
        $title = basename($path);
        $text = load_doc_file('doc/' . $path . '.md');
        $a->page['title'] = t('Help:') . ' ' . ucwords(str_replace('-', ' ', notags($title)));
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.bb');
            if ($text) {
                $doctype = 'bbcode';
            }
            $a->page['title'] = t('Help:') . ' ' . ucwords(str_replace('_', ' ', notags($title)));
        }
        if (!$text) {
            $text = load_doc_file('doc/' . $path . '.html');
            if ($text) {
                $doctype = 'html';
            }
            $a->page['title'] = t('Help:') . ' ' . ucwords(str_replace('-', ' ', notags($title)));
        }
    }
    if (!$text) {
        $text = load_doc_file('doc/Site.md');
        $a->page['title'] = t('Help');
    }
    if (!$text) {
        $doctype = 'bbcode';
        $text = load_doc_file('doc/main.bb');
        $a->page['title'] = t('Help');
    }
    if (!strlen($text)) {
        header($_SERVER["SERVER_PROTOCOL"] . ' 404 ' . t('Not Found'));
        $tpl = get_markup_template("404.tpl");
        return replace_macros($tpl, array('$message' => t('Page not found.')));
    }
    if ($doctype === 'html') {
        $content = $text;
    }
    if ($doctype === 'markdown') {
        require_once 'library/markdown.php';
        # escape #include tags
        $text = preg_replace('/#include/ism', '%%include', $text);
        $content = Markdown($text);
        $content = preg_replace('/%%include/ism', '#include', $content);
    }
    if ($doctype === 'bbcode') {
        require_once 'include/bbcode.php';
        $content = bbcode($text);
    }
    $content = preg_replace_callback("/#include (.*?)\\;/ism", 'preg_callback_help_include', $content);
    return replace_macros(get_markup_template("help.tpl"), array('$title' => t('$Projectname Documentation'), '$content' => translate_projectname($content)));
}