]> git.mxchange.org Git - friendica.git/blobdiff - mod/hcard.php
Merge pull request #7988 from friendica/MrPetovan-notice
[friendica.git] / mod / hcard.php
index 07eb291510653b3d4fd1add4e7b413bba2315dc8..013619bcba6ca94a9aeb0d273cf979f3398e3e1f 100644 (file)
@@ -1,16 +1,24 @@
 <?php
-
-function hcard_init(App $a) {
-
-       $blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false);
+/**
+ * @file mod/hcard.php
+ */
+use Friendica\App;
+use Friendica\Core\Config;
+use Friendica\Core\L10n;
+use Friendica\Core\System;
+use Friendica\Core\Session;
+use Friendica\Model\Contact;
+use Friendica\Model\Profile;
+use Friendica\Model\User;
+
+function hcard_init(App $a)
+{
+       $blocked = Config::get('system', 'block_public') && !Session::isAuthenticated();
 
        if ($a->argc > 1) {
                $which = $a->argv[1];
-       }
-       else {
-               notice( t('No profile') . EOL );
-               $a->error = 404;
-               return;
+       } else {
+               throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('No profile'));
        }
 
        $profile = 0;
@@ -19,36 +27,35 @@ function hcard_init(App $a) {
                $profile = $a->argv[1];
        }
 
-       profile_load($a,$which,$profile);
+       Profile::load($a, $which, $profile);
 
-       if ((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) {
+       if (!empty($a->profile['page-flags']) && ($a->profile['page-flags'] == User::PAGE_FLAGS_COMMUNITY)) {
                $a->page['htmlhead'] .= '<meta name="friendica.community" content="true" />';
        }
-       if (x($a->profile,'openidserver')) {
+       if (!empty($a->profile['openidserver'])) {
                $a->page['htmlhead'] .= '<link rel="openid.server" href="' . $a->profile['openidserver'] . '" />' . "\r\n";
        }
-       if (x($a->profile,'openid')) {
-               $delegate = ((strstr($a->profile['openid'],'://')) ? $a->profile['openid'] : 'http://' . $a->profile['openid']);
+       if (!empty($a->profile['openid'])) {
+               $delegate = ((strstr($a->profile['openid'], '://')) ? $a->profile['openid'] : 'http://' . $a->profile['openid']);
                $a->page['htmlhead'] .= '<link rel="openid.delegate" href="' . $delegate . '" />' . "\r\n";
        }
 
-       if (! $blocked) {
-               $keywords = ((x($a->profile,'pub_keywords')) ? $a->profile['pub_keywords'] : '');
-               $keywords = str_replace(array(',',' ',',,'),array(' ',',',','),$keywords);
+       if (!$blocked) {
+               $keywords = $a->profile['pub_keywords'] ?? '';
+               $keywords = str_replace([',',' ',',,'], [' ',',',','], $keywords);
                if (strlen($keywords)) {
-                       $a->page['htmlhead'] .= '<meta name="keywords" content="' . $keywords . '" />' . "\r\n" ;
+                       $a->page['htmlhead'] .= '<meta name="keywords" content="' . $keywords . '" />' . "\r\n";
                }
        }
 
-       $a->page['htmlhead'] .= '<meta name="dfrn-global-visibility" content="' . (($a->profile['net-publish']) ? 'true' : 'false') . '" />' . "\r\n" ;
-       $a->page['htmlhead'] .= '<link rel="alternate" type="application/atom+xml" href="' . App::get_baseurl() . '/dfrn_poll/' . $which .'" />' . "\r\n" ;
-       $uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->get_hostname() . (($a->path) ? '/' . $a->path : ''));
-       $a->page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . App::get_baseurl() . '/xrd/?uri=' . $uri . '" />' . "\r\n";
-       header('Link: <' . App::get_baseurl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
+       $a->page['htmlhead'] .= '<meta name="dfrn-global-visibility" content="' . (($a->profile['net-publish']) ? 'true' : 'false') . '" />' . "\r\n";
+       $a->page['htmlhead'] .= '<link rel="alternate" type="application/atom+xml" href="' . System::baseUrl() . '/dfrn_poll/' . $which .'" />' . "\r\n";
+       $uri = urlencode('acct:' . $a->profile['nickname'] . '@' . $a->getHostName() . (($a->getURLPath()) ? '/' . $a->getURLPath() : ''));
+       $a->page['htmlhead'] .= '<link rel="lrdd" type="application/xrd+xml" href="' . System::baseUrl() . '/xrd/?uri=' . $uri . '" />' . "\r\n";
+       header('Link: <' . System::baseUrl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
 
-       $dfrn_pages = array('request', 'confirm', 'notify', 'poll');
+       $dfrn_pages = ['request', 'confirm', 'notify', 'poll'];
        foreach ($dfrn_pages as $dfrn) {
-               $a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".App::get_baseurl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
+               $a->page['htmlhead'] .= "<link rel=\"dfrn-{$dfrn}\" href=\"".System::baseUrl()."/dfrn_{$dfrn}/{$which}\" />\r\n";
        }
-
 }