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"));