From 813924144b68ea3c9e31dd426a8e5ff0f6051e91 Mon Sep 17 00:00:00 2001 From: Jerome Bakker Date: Wed, 25 Aug 2021 09:50:10 +0200 Subject: [PATCH] fix(bookmarks): unable to save bookmark on PHP 8 fixes #13637 --- mod/bookmarks/actions/bookmarks/save.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/mod/bookmarks/actions/bookmarks/save.php b/mod/bookmarks/actions/bookmarks/save.php index 2dafa43b1ce..5bb297a58d9 100644 --- a/mod/bookmarks/actions/bookmarks/save.php +++ b/mod/bookmarks/actions/bookmarks/save.php @@ -6,9 +6,9 @@ $title = elgg_get_title_input(); $description = get_input('description'); $address = get_input('address'); -$access_id = get_input('access_id'); +$access_id = (int) get_input('access_id'); $tags = get_input('tags'); -$guid = get_input('guid'); +$guid = (int) get_input('guid'); $container_guid = (int) get_input('container_guid', elgg_get_logged_in_user_guid()); elgg_make_sticky_form('bookmarks'); @@ -16,10 +16,10 @@ // don't use elgg_normalize_url() because we don't want // relative links resolved to this site. if ($address && !preg_match("#^((ht|f)tps?:)?//#i", $address)) { - $address = "http://$address"; + $address = "http://{$address}"; } -if (!$title || !$address) { +if (empty($title) || empty($address)) { return elgg_error_response(elgg_echo('bookmarks:save:failed')); } @@ -27,15 +27,16 @@ return elgg_error_response(elgg_echo('bookmarks:save:failed')); } -if ($guid == 0) { +$new = true; +if (empty($guid)) { $bookmark = new ElggBookmark; $bookmark->container_guid = $container_guid; - $new = true; } else { $bookmark = get_entity($guid); if (!$bookmark instanceof ElggBookmark || !$bookmark->canEdit()) { return elgg_error_response(elgg_echo('bookmarks:save:failed')); } + $new = false; } $bookmark->title = $title; @@ -55,7 +56,7 @@ elgg_create_river_item([ 'view' => 'river/object/bookmarks/create', 'action_type' => 'create', - 'object_guid' => $bookmark->getGUID(), + 'object_guid' => $bookmark->guid, ]); }