Beispiel #1
0
    if ($new_page) {
        // new pages can't expire directly
        if (strtotime($expiration_date) < time()) {
            register_error(elgg_echo("pages_tools:actions:edit:error:expiration_date"));
        }
    } else {
        if (strtotime($expiration_date) < time()) {
            $page->unpublished = true;
        }
    }
}
// save the page
if ($page->save()) {
    elgg_clear_sticky_form("page");
    // unset edit notice
    $page->removePrivateSetting("edit_notice");
    // Now save description as an annotation
    $page->annotate("page", $page->description, $page->access_id);
    system_message(elgg_echo("pages:saved"));
    if ($new_page && !$page->unpublished) {
        elgg_create_river_item(array('view' => 'river/object/page/create', 'action_type' => 'create', 'subject_guid' => $user->getGUID(), 'object_guid' => $page->getGUID()));
    } elseif ($page->getOwnerGUID() != $user->getGUID()) {
        // not the owner edited the page, notify the owner
        $subject = elgg_echo("pages_tools:notify:edit:subject", array($page->title));
        $msg = elgg_echo("pages_tools:notify:edit:message", array($page->title, $user->name, $page->getURL()));
        $params = array('action' => 'edit', 'object' => $page);
        notify_user($page->getOwnerGUID(), $user->getGUID(), $subject, $msg, $params);
    }
    forward($page->getURL());
} else {
    register_error(elgg_echo("pages:error:no_save"));