diff options
| -rw-r--r-- | engine/lib/objects.php | 23 | ||||
| -rw-r--r-- | engine/lib/sites.php | 24 | ||||
| -rw-r--r-- | engine/lib/users.php | 24 | 
3 files changed, 38 insertions, 33 deletions
diff --git a/engine/lib/objects.php b/engine/lib/objects.php index 1914744a6..7c14e8cee 100644 --- a/engine/lib/objects.php +++ b/engine/lib/objects.php @@ -235,17 +235,18 @@  		if ($row)
  		{  			// Core entities row exists and we have access to it -			 -			$result = update_data("UPDATE {$CONFIG->dbprefix}objects_entity set title='$title', description='$description' where guid=$guid"); -			if ($result!=false) -			{ -				// Update succeeded, continue -				$entity = get_entity($guid); -				if (trigger_elgg_event('update',$entity->type,$entity)) { -					return true; -				} else { -					delete_entity($guid); -				} +			if ($exists = get_data_row("select guid from {$CONFIG->dbprefix}objects_entity where guid = {$guid}")) { +				$result = update_data("UPDATE {$CONFIG->dbprefix}objects_entity set title='$title', description='$description' where guid=$guid"); +				if ($result!=false) +				{ +					// Update succeeded, continue +					$entity = get_entity($guid); +					if (trigger_elgg_event('update',$entity->type,$entity)) { +						return true; +					} else { +						$entity->delete(); +					} +				}
  			}  			else  			{ diff --git a/engine/lib/sites.php b/engine/lib/sites.php index 4d3de2794..c8636fdc8 100644 --- a/engine/lib/sites.php +++ b/engine/lib/sites.php @@ -268,17 +268,19 @@  		if ($row)  		{ -			// Exists and you have access to it -			$result = update_data("UPDATE {$CONFIG->dbprefix}sites_entity set name='$name', description='$description', url='$url' where guid=$guid"); -			if ($result!=false) -			{ -				// Update succeeded, continue -				$entity = get_entity($guid); -				if (trigger_elgg_event('update',$entity->type,$entity)) { -					return true; -				} else { -					delete_entity($guid); -				} +			// Exists and you have access to it
 +			if ($exists = get_data_row("select guid from {$CONFIG->dbprefix}sites_entity where guid = {$guid}")) { +				$result = update_data("UPDATE {$CONFIG->dbprefix}sites_entity set name='$name', description='$description', url='$url' where guid=$guid"); +				if ($result!=false) +				{ +					// Update succeeded, continue +					$entity = get_entity($guid); +					if (trigger_elgg_event('update',$entity->type,$entity)) { +						return true; +					} else { +						delete_entity($guid); +					} +				}
  			}  			else  			{ diff --git a/engine/lib/users.php b/engine/lib/users.php index fd5011c9e..5065a633a 100644 --- a/engine/lib/users.php +++ b/engine/lib/users.php @@ -363,17 +363,19 @@  		if ($row)
  		{
  			// Exists and you have access to it - -			$result = update_data("UPDATE {$CONFIG->dbprefix}users_entity set name='$name', username='$username', password='$password', email='$email', language='$language', code='$code', last_action = ". time() ." where guid = {$guid}"); -			if ($result != false) -			{ -				// Update succeeded, continue -				$entity = get_entity($guid); -				if (trigger_elgg_event('update',$entity->type,$entity)) { -					return true; -				} else { -					delete_entity($guid); -				} +
 +			if ($exists = get_data_row("select guid from {$CONFIG->dbprefix}users_entity where guid = {$guid}")) { +				$result = update_data("UPDATE {$CONFIG->dbprefix}users_entity set name='$name', username='$username', password='$password', email='$email', language='$language', code='$code', last_action = ". time() ." where guid = {$guid}"); +				if ($result != false) +				{ +					// Update succeeded, continue +					$entity = get_entity($guid); +					if (trigger_elgg_event('update',$entity->type,$entity)) { +						return true; +					} else { +						$entity->delete(); +					} +				}
  			}  			else  			{  | 
