]> git.mxchange.org Git - friendica.git/commitdiff
Add missing $a->profile initialization in mod/cal
authorHypolite Petovan <hypolite@mrpetovan.com>
Thu, 9 Jul 2020 19:04:30 +0000 (15:04 -0400)
committerHypolite Petovan <hypolite@mrpetovan.com>
Thu, 9 Jul 2020 19:09:07 +0000 (15:09 -0400)
mod/cal.php

index 4b90b02cd845474ea4988d6444428f15e7b4582e..dcfb5db9c840dbf21711996561eb8ef4a10ba443 100644 (file)
@@ -37,17 +37,18 @@ use Friendica\Model\Event;
 use Friendica\Model\Item;
 use Friendica\Model\Profile;
 use Friendica\Module\BaseProfile;
+use Friendica\Network\HTTPException;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Temporal;
 
 function cal_init(App $a)
 {
        if (DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) {
-               throw new \Friendica\Network\HTTPException\ForbiddenException(DI::l10n()->t('Access denied.'));
+               throw new HTTPException\ForbiddenException(DI::l10n()->t('Access denied.'));
        }
 
        if ($a->argc < 2) {
-               throw new \Friendica\Network\HTTPException\ForbiddenException(DI::l10n()->t('Access denied.'));
+               throw new HTTPException\ForbiddenException(DI::l10n()->t('Access denied.'));
        }
 
        Nav::setSelected('events');
@@ -55,7 +56,7 @@ function cal_init(App $a)
        $nick = $a->argv[1];
        $user = DBA::selectFirst('user', [], ['nickname' => $nick, 'blocked' => false]);
        if (!DBA::isResult($user)) {
-               throw new \Friendica\Network\HTTPException\NotFoundException();
+               throw new HTTPException\NotFoundException();
        }
 
        $a->data['user'] = $user;
@@ -67,18 +68,22 @@ function cal_init(App $a)
                return;
        }
 
-       $profile = Profile::getByNickname($nick, $a->profile_uid);
+       $a->profile = Profile::getByNickname($nick, $a->profile_uid);
 
-       $account_type = Contact::getAccountType($profile);
+       if (empty($a->profile)) {
+               throw new HTTPException\NotFoundException(DI::l10n()->t('User not found.'));
+       }
+
+       $account_type = Contact::getAccountType($a->profile);
 
        $tpl = Renderer::getMarkupTemplate('widget/vcard.tpl');
 
        $vcard_widget = Renderer::replaceMacros($tpl, [
-               '$name' => $profile['name'],
-               '$photo' => $profile['photo'],
-               '$addr' => $profile['addr'] ?: '',
+               '$name' => $a->profile['name'],
+               '$photo' => $a->profile['photo'],
+               '$addr' => $a->profile['addr'] ?: '',
                '$account_type' => $account_type,
-               '$about' => BBCode::convert($profile['about']),
+               '$about' => BBCode::convert($a->profile['about']),
        ]);
 
        $cal_widget = Widget\CalendarExport::getHTML();