From: brettp Date: Fri, 28 Aug 2009 20:06:42 +0000 (+0000) Subject: Fixes #1196: ElggEntity::disable() now accepts a 2nd arg for recursive. New users... X-Git-Url: https://gitweb.fluxo.info/?a=commitdiff_plain;h=775a5f08c501acc565c69659022bc31052677485;p=lorea%2Felgg.git Fixes #1196: ElggEntity::disable() now accepts a 2nd arg for recursive. New users are not recursively disabled for plugins that need to create entities owned by the new user upon entity creation. git-svn-id: https://code.elgg.org/elgg/trunk@3450 36083f99-b078-4883-b0ff-0f9b5a30f544 --- diff --git a/actions/register.php b/actions/register.php index 27d9ca23f..75721822c 100644 --- a/actions/register.php +++ b/actions/register.php @@ -55,7 +55,9 @@ request_user_validation($guid); if (!$new_user->admin) - $new_user->disable('new_user'); // Now disable if not an admin + $new_user->disable('new_user', false); // Now disable if not an admin + // Don't do a recursive disable. Any entities owned by the user at this point + // are products of plugins that system_message(sprintf(elgg_echo("registerok"),$CONFIG->sitename)); diff --git a/engine/lib/entities.php b/engine/lib/entities.php index 19d9051e3..b8c92ec42 100644 --- a/engine/lib/entities.php +++ b/engine/lib/entities.php @@ -691,10 +691,11 @@ * Disable this entity. * * @param string $reason Optional reason + * @param bool $recursive Recursively disable all contained entities? */ - public function disable($reason = "") + public function disable($reason = "", $recursive = true) { - return disable_entity($this->get('guid'), $reason); + return disable_entity($this->get('guid'), $reason, $recursive); } /**