]> git.mxchange.org Git - friendica.git/blobdiff - mod/profile.php
New option to enable and disable the "share" element
[friendica.git] / mod / profile.php
index b33b181de1b1b7332611799ac225d366c12fd48a..25871c24059d3c77cf3dd0062eeed152014dd668 100644 (file)
@@ -1,6 +1,7 @@
 <?php
 
 require_once('include/contact_widgets.php');
+require_once('include/redir.php');
 
 
 function profile_init(&$a) {
@@ -8,12 +9,10 @@ function profile_init(&$a) {
        if(! x($a->page,'aside'))
                $a->page['aside'] = '';
 
-       $blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false);
-
        if($a->argc > 1)
                $which = $a->argv[1];
        else {
-               $r = q("select nickname from user where blocked = 0 and account_expired = 0 and verified = 1 order by rand() limit 1");
+               $r = q("select nickname from user where blocked = 0 and account_expired = 0 and account_removed = 0 and verified = 1 order by rand() limit 1");
                if(count($r)) {
                        goaway($a->get_baseurl() . '/profile/' . $r[0]['nickname']);
                }
@@ -30,9 +29,13 @@ function profile_init(&$a) {
                $which = $a->user['nickname'];
                $profile = $a->argv[1];         
        }
+       else {
+               auto_redir($a, $which);
+       }
 
        profile_load($a,$which,$profile);
 
+       $blocked = (((get_config('system','block_public')) && (! local_user()) && (! remote_user())) ? true : false);
        $userblock = (($a->profile['hidewall'] && (! local_user()) && (! remote_user())) ? true : false);
 
        if((x($a->profile,'page-flags')) && ($a->profile['page-flags'] == PAGE_COMMUNITY)) {
@@ -239,7 +242,7 @@ function profile_content(&$a, $update = 0) {
                        $sql_extra2 .= protect_sprintf(sprintf(" AND item.created >= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery2))));
                }
 
-               if(! get_pconfig($a->profile['profile_uid'],'system','alt_pager')) {
+               if( (! get_config('alt_pager', 'global')) && (! get_pconfig($a->profile['profile_uid'],'system','alt_pager')) ) {
                    $r = q("SELECT COUNT(*) AS `total`
                            FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                            WHERE `item`.`uid` = %d AND `item`.`visible` = 1 AND `item`.`deleted` = 0
@@ -309,16 +312,6 @@ function profile_content(&$a, $update = 0) {
                $o .= get_events();
        }
 
-       if((! $update) && ($tab === 'posts')) {
-
-               // This is ugly, but we can't pass the profile_uid through the session to the ajax updater,
-               // because browser prefetching might change it on us. We have to deliver it with the page.
-
-               $o .= '<div id="live-profile"></div>' . "\r\n";
-               $o .= "<script> var profile_uid = " . $a->profile['profile_uid'] 
-                       . "; var netargs = '?f='; var profile_page = " . $a->pager['page'] . "; </script>\r\n";
-       }
-
 
        if($is_owner) {
                $r = q("UPDATE `item` SET `unseen` = 0 
@@ -330,12 +323,12 @@ function profile_content(&$a, $update = 0) {
        $o .= conversation($a,$items,'profile',$update);
 
        if(! $update) {
-         if(! get_pconfig($a->profile['profile_uid'],'system','alt_pager')) {
-                       $o .= paginate($a);
-               }
-               else {
-                       $o .= alt_pager($a,count($items));
-               }
+               if( get_config('alt_pager', 'global') || get_pconfig($a->profile['profile_uid'],'system','alt_pager') ) {
+                       $o .= alt_pager($a,count($items));
+               }
+               else {
+                       $o .= paginate($a);
+               }
        }
 
        return $o;