diff --git a/src/Module/Admin/Item/Source.php b/src/Module/Admin/Item/Source.php
index f736582fa..6e917eb16 100644
--- a/src/Module/Admin/Item/Source.php
+++ b/src/Module/Admin/Item/Source.php
@@ -33,7 +33,7 @@ class Source extends BaseAdmin
{
parent::content($parameters);
- $guid = basename($_REQUEST['guid'] ?? '') ?: $parameters['guid'];
+ $guid = basename($_REQUEST['guid'] ?? $parameters['guid'] ?? '');
$source = '';
$item_uri = '';
diff --git a/src/Module/Objects.php b/src/Module/Objects.php
index 1658507d5..cbe2e53fe 100644
--- a/src/Module/Objects.php
+++ b/src/Module/Objects.php
@@ -103,6 +103,10 @@ class Objects extends BaseModule
if (empty($parameters['activity']) && ($item['gravity'] != GRAVITY_ACTIVITY)) {
$activity = ActivityPub\Transmitter::createActivityFromItem($item['id'], true);
+ if (empty($activity['type'])) {
+ throw new HTTPException\NotFoundException();
+ }
+
$activity['type'] = $activity['type'] == 'Update' ? 'Create' : $activity['type'];
// Only display "Create" activity objects here, no reshares or anything else
diff --git a/src/Protocol/ActivityPub/Transmitter.php b/src/Protocol/ActivityPub/Transmitter.php
index 7f5f51c38..c1443bc33 100644
--- a/src/Protocol/ActivityPub/Transmitter.php
+++ b/src/Protocol/ActivityPub/Transmitter.php
@@ -1003,10 +1003,10 @@ class Transmitter
* @param integer $item_id
* @param boolean $object_mode Is the activity item is used inside another object?
*
- * @return array of activity
+ * @return false|array
* @throws \Exception
*/
- public static function createActivityFromItem($item_id, $object_mode = false)
+ public static function createActivityFromItem(int $item_id, bool $object_mode = false)
{
Logger::info('Fetching activity', ['item' => $item_id]);
$item = Item::selectFirst([], ['id' => $item_id, 'parent-network' => Protocol::NATIVE_SUPPORT]);
diff --git a/view/theme/vier/theme.php b/view/theme/vier/theme.php
index b57d7dc1c..4d11b1cd4 100644
--- a/view/theme/vier/theme.php
+++ b/view/theme/vier/theme.php
@@ -25,7 +25,10 @@ function vier_init(App $a)
Renderer::setActiveTemplateEngine('smarty3');
- if (!empty($a->argv[0]) && ($a->argv[0] . ($a->argv[1] ?? '')) === ('profile' . ($a->user['nickname'] ?? '')) || $a->argv[0] === 'network' && local_user()) {
+ $args = DI::args();
+
+ if ($args->get(0) === 'profile' && $args->get(1) === ($a->user['nickname'] ?? '') || $args->get(0) === 'network' && local_user()
+ ) {
vier_community_info();
DI::page()['htmlhead'] .= "\n";
@@ -77,7 +80,7 @@ EOT;
// Hide the left menu bar
/// @TODO maybe move this static array out where it should belong?
- if (empty(DI::page()['aside']) && in_array($a->argv[0], ["community", "events", "help", "delegation", "notifications",
+ if (empty(DI::page()['aside']) && in_array($args->get(0), ["community", "events", "help", "delegation", "notifications",
"probe", "webfinger", "login", "invite", "credits"])) {
DI::page()['htmlhead'] .= "";
}