Beispiel #1
0
function pages_tplkw_page($vars)
{
    global $messages;
    $output = '';
    if (!isset($vars[1])) {
        $msg = "{{page}} keyword error, must provied a page name. e.g. {{page:Main}}";
        if (page_owner() == $_SESSION['userid']) {
            // show error to page owner
            $messages[] = $msg;
        }
        trigger_error($msg, E_USER_WARNING);
    } else {
        if (isset($vars[2])) {
            $page_id = $vars[2];
            $page_name = pages_build_uri($page_id);
            $username = $vars[1];
            // main site content
            if ($username == 'content') {
                $user_id = -1;
            } else {
                $user_id = (int) user_info_username('ident', $username);
            }
            if (empty($user_id)) {
                $msg = "{{page}} keyword error, invalid username: {$username}";
                if (page_owner() == $_SESSION['userid']) {
                    // show error to page owner
                    $messages[] = $msg;
                }
                trigger_error($msg, E_USER_WARNING);
            } else {
                $page_url = pages_url($page_name, 'pages::page', $user_id);
            }
        } else {
            $page_id = $vars[1];
            $page_name = pages_build_uri($page_id);
            $page_url = pages_url($page_name, 'pages::page', page_owner());
        }
        // return html link
        if (isset($page_url)) {
            $output = pages_html_a($page_url, $page_id);
        }
    }
    return $output;
}
function pages_create_page($page)
{
    global $messages;
    if (!is_object($page)) {
        trigger_error(__FUNCTION__ . ": invalid argument (page: is not an object)", E_USER_ERROR);
    }
    if (empty($page->title) || empty($page->content)) {
        trigger_error(__FUNCTION__ . ": invalid argument (page title or content empty)", E_USER_ERROR);
    }
    if (empty($page->name)) {
        $page->name = $page->title;
    }
    if (empty($page->uri)) {
        $page->uri = pages_build_uri($page->name);
    }
    $rs = insert_record('pages', $page);
    if ($rs) {
        $page->ident = $rs;
        return $page;
    } else {
        return false;
    }
}