getGUID()); $back_url = 'pg/photos/new/' . get_entity($container_guid)->username; // Cache to the session $_SESSION['albumtitle'] = $title; $_SESSION['albumbody'] = $body; $_SESSION['albumtags'] = $tags; // Convert string of tags into a preformatted array $tagarray = string_to_tag_array($tags); // Make sure the title / description aren't blank if (empty($title) || empty($body)) { register_error(elgg_echo("album:blank")); forward(get_input('forward_url', $_SERVER['HTTP_REFERER'])); //failed, so forward to previous page // Otherwise, save the album } else { // Initialise a new ElggObject $album = new ElggObject(); // Tell the system it's an album $album->subtype = "album"; // Set its owner to the current user $album->container_guid = $container_guid; $album->owner_guid = $_SESSION['user']->getGUID(); $album->access_id = $access; // Set its title and description appropriately $album->title = $title; $album->description = $body; // Before we can set metadata, we need to save the album if (!$album->save()) { register_error(elgg_echo("album:error")); forward(get_input('forward_url', $_SERVER['HTTP_REFERER'])); //failed, so forward to previous page } // Now let's add tags. We can pass an array directly to the object property! Easy. if (is_array($tagarray)) { $album->tags = $tagarray; } // add to river (check to make sure we're running > Elgg 1.5 first) if (function_exists('add_to_river')) add_to_river('river/object/album/create', 'create', $album->owner_guid, $album->guid); // Success message system_message(elgg_echo("album:created")); // Remove the album post cache unset($_SESSION['albumtitle']); unset($_SESSION['albumbody']); unset($_SESSION['albumtags']); forward("pg/photos/upload/" . $album->guid); } ?>