From 086c5cca63d3488d40f5dac6a506d0ae03461d66 Mon Sep 17 00:00:00 2001 From: ben Date: Wed, 2 Apr 2008 16:55:20 +0000 Subject: Blog posting git-svn-id: https://code.elgg.org/elgg/trunk@373 36083f99-b078-4883-b0ff-0f9b5a30f544 --- mod/blog/actions/add.php | 64 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 mod/blog/actions/add.php (limited to 'mod/blog/actions') diff --git a/mod/blog/actions/add.php b/mod/blog/actions/add.php new file mode 100644 index 000000000..21c871e16 --- /dev/null +++ b/mod/blog/actions/add.php @@ -0,0 +1,64 @@ + + * @copyright Curverider Ltd 2008 + * @link http://elgg.org/ + */ + + // Make sure we're logged in (send us to the front page if not) + if (!isloggedin()) forward(); + + // Get input data + $title = get_input('blogtitle'); + $body = get_input('blogbody'); + $tags = get_input('blogtags'); + + // Cache to the session + $_SESSION['blogtitle'] = $title; + $_SESSION['blogbody'] = $body; + $_SESSION['blogtags'] = $tags; + + // Make sure the title / description aren't blank + if (empty($title) || empty($body)) { + register_error(elgg_echo("blog:blank")); + forward("mod/blog/add.php"); + + // Otherwise, save the blog post + } else { + + // Initialise a new ElggObject + $blog = new ElggObject(); + // Tell the system it's a blog post + $blog->subtype = "blog"; + // Set its owner to the current user + $blog->owner_guid = $_SESSION['user']->getGUID(); + // For now, set its access to public (we'll add an access dropdown shortly) + $blog->access_id = 2; + // Set its title and description appropriately + $blog->title = $title; + $blog->description = $body; + // Before we can set metadata, we need to save the blog post + if (!$blog->save()) { + register_error(elgg_echo("blog:error")); + forward("mod/blog/add.php"); + } + // Now let's add tags. We can pass an array directly to setMetaData! + // Not very painful. + if (is_array($tags) && sizeof($tags) > 0) { + $blog->tags = $tags; + } + // Success message + system_message(elgg_echo("blog:posted")); + // Remove the blog post cache + unset($_SESSION['blogtitle']); unset($_SESSION['blogbody']); unset($_SESSION['blogtags']); + // Forward to the main blog page + forward("mod/blog/?username=" . $_SESSION['user']->username); + + } + +?> \ No newline at end of file -- cgit v1.2.3