aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2012-10-29 17:14:02 -0700
committerfriendica <info@friendica.com>2012-10-29 17:14:02 -0700
commite3c2e589794b13e23c1184deeba37e41dbc0144b (patch)
treec7f36aa88f89ffd7afbc97183d0cf3c20c637da8
parenta217c8de98329e97c3706ad4351deecd1c31fbc2 (diff)
downloadvolse-hubzilla-e3c2e589794b13e23c1184deeba37e41dbc0144b.tar.gz
volse-hubzilla-e3c2e589794b13e23c1184deeba37e41dbc0144b.tar.bz2
volse-hubzilla-e3c2e589794b13e23c1184deeba37e41dbc0144b.zip
"profile url" e.g. the wall/stream is now "channel url". "Profile URL" goes to the profile details.
-rw-r--r--boot.php17
-rw-r--r--include/api.php6
-rw-r--r--include/conversation.php14
-rw-r--r--include/delivery.php2
-rw-r--r--include/follow.php2
-rw-r--r--include/gprobe.php2
-rw-r--r--include/html2plain.php2
-rw-r--r--include/identity.php2
-rwxr-xr-xinclude/items.php10
-rw-r--r--include/nav.php6
-rw-r--r--include/notifier.php2
-rw-r--r--include/oauth.php2
-rw-r--r--include/onepoll.php2
-rw-r--r--include/security.php2
-rw-r--r--include/user.php4
-rw-r--r--index.php2
-rw-r--r--js/main.js3
-rw-r--r--mod/auth.php6
-rw-r--r--mod/channel.php256
-rw-r--r--mod/delegate.php2
-rw-r--r--mod/directory.php2
-rw-r--r--mod/friendica.php2
-rw-r--r--mod/invite.php2
-rw-r--r--mod/message.php2
-rw-r--r--mod/msearch.php2
-rw-r--r--mod/network.php2
-rw-r--r--mod/notifications.php4
-rw-r--r--mod/ping.php2
-rw-r--r--mod/profile.php178
-rw-r--r--mod/profile_photo.php2
-rw-r--r--mod/settings.php2
-rw-r--r--mod/update_channel.php (renamed from mod/update_profile.php)6
-rw-r--r--mod/wallmessage.php2
-rw-r--r--mod/xrd.php2
-rw-r--r--version.inc2
35 files changed, 327 insertions, 229 deletions
diff --git a/boot.php b/boot.php
index d7b51867f..c84924e32 100644
--- a/boot.php
+++ b/boot.php
@@ -528,7 +528,7 @@ if(! class_exists('App')) {
// unix style "homedir"
if(substr($this->cmd,0,1) === '~')
- $this->cmd = 'profile/' . substr($this->cmd,1);
+ $this->cmd = 'channel/' . substr($this->cmd,1);
@@ -1772,27 +1772,28 @@ if(! function_exists('profile_tabs')){
if(x($_GET,'tab'))
$tab = notags(trim($_GET['tab']));
- $url = $a->get_baseurl() . '/profile/' . $nickname;
+ $url = $a->get_baseurl() . '/channel/' . $nickname;
+ $pr = $a->get_baseurl() . '/profile/' . $nickname;
$tabs = array(
array(
'label'=>t('Status'),
'url' => $url,
- 'sel' => ((!isset($tab)&&$a->argv[0]=='profile')?'active':''),
+ 'sel' => ((argv(0)=='channel')?'active':''),
'title' => t('Status Messages and Posts'),
'id' => 'status-tab',
),
array(
'label' => t('Profile'),
- 'url' => $url.'?tab=profile',
- 'sel' => ((isset($tab) && $tab=='profile')?'active':''),
+ 'url' => $pr,
+ 'sel' => ((argv(0)=='profile')?'active':''),
'title' => t('Profile Details'),
'id' => 'profile-tab',
),
array(
'label' => t('Photos'),
'url' => $a->get_baseurl() . '/photos/' . $nickname,
- 'sel' => ((!isset($tab)&&$a->argv[0]=='photos')?'active':''),
+ 'sel' => ((argv(0)=='photos')?'active':''),
'title' => t('Photo Albums'),
'id' => 'photo-tab',
),
@@ -1802,7 +1803,7 @@ if(! function_exists('profile_tabs')){
$tabs[] = array(
'label' => t('Events'),
'url' => $a->get_baseurl() . '/events',
- 'sel' =>((!isset($tab)&&$a->argv[0]=='events')?'active':''),
+ 'sel' =>((argv(0)=='events')?'active':''),
'title' => t('Events and Calendar'),
'id' => 'events-tab',
);
@@ -1836,7 +1837,7 @@ function zrl_init(&$a) {
function zrl($s,$force = false) {
if(! strlen($s))
return $s;
- if((! strpos($s,'/profile/')) && (! $force))
+ if((! strpos($s,'/channel/')) && (! $force))
return $s;
if($force && substr($s,-1,1) !== '/')
$s = $s . '/';
diff --git a/include/api.php b/include/api.php
index 6b2fd008b..428c17957 100644
--- a/include/api.php
+++ b/include/api.php
@@ -1011,10 +1011,10 @@
//$include_entities = (x($_REQUEST,'include_entities')?$_REQUEST['include_entities']:false);
- $myurl = $a->get_baseurl() . '/profile/'. $a->user['nickname'];
+ $myurl = $a->get_baseurl() . '/channel/'. $a->user['nickname'];
$myurl = substr($myurl,strpos($myurl,'://')+3);
$myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
- $diasp_url = str_replace('/profile/','/u/',$myurl);
+ $diasp_url = str_replace('/channel/','/u/',$myurl);
if (get_config('system','use_fulltext_engine'))
$sql_extra .= sprintf(" AND `item`.`parent` IN (SELECT distinct(`parent`) from item where (MATCH(`author-link`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(`tag`) AGAINST ('".'"%s"'."' in boolean mode) or MATCH(tag) AGAINST ('".'"%s"'."' in boolean mode))) ",
@@ -1623,7 +1623,7 @@
$start = $page*$count;
- $profile_url = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
+ $profile_url = $a->get_baseurl() . '/channel/' . $a->user['nickname'];
if ($box=="sentbox") {
$sql_extra = "`from-url`='".dbesc( $profile_url )."'";
}
diff --git a/include/conversation.php b/include/conversation.php
index 4238ff586..3c0a0831d 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -397,7 +397,7 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr
// $item_writeable = (($item['writable'] || $item['self']) ? true : false);
$item_writeable = ((local_user() && $channel['channel_hash'] === $item['owner_xchan']) ? true : false);
- if($visiting && $mode == 'profile')
+ if($visiting && $mode == 'channel')
$item_writeable = true;
$show_comment_box = ((($page_writeable) && ($item_writeable)) ? true : false);
@@ -466,7 +466,7 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr
$dislike = ((x($dlike,$item['uri'])) ? format_like($dlike[$item['uri']],$dlike[$item['uri'] . '-l'],'dislike',$item['uri']) : '');
if($toplevelpost) {
- if((! $item['self']) && ($mode !== 'profile')) {
+ if((! $item['self']) && ($mode !== 'channel')) {
if($item['wall']) {
// On the network page, I am the owner. On the display page it will be the profile owner.
@@ -569,7 +569,7 @@ function prepare_threads_body($a, $items, $cmnt_tpl, $page_writeable, $mode, $pr
'$return_path' => '',
'$threaded' => $comments_threaded,
'$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
- '$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
+ '$type' => (($mode === 'channel') ? 'wall-comment' : 'net-comment'),
'$id' => $item['item_id'],
'$parent' => $item['item_id'],
'$qcomment' => $qcomment,
@@ -747,7 +747,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
}
- elseif($mode === 'profile') {
+ elseif($mode === 'channel') {
$profile_owner = $a->profile['profile_uid'];
$page_writeable = can_write_wall($a,$profile_owner);
@@ -757,7 +757,7 @@ function conversation(&$a, $items, $mode, $update, $page_mode = 'traditional') {
// 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.
- $live_update_div = '<div id="live-profile"></div>' . "\r\n"
+ $live_update_div = '<div id="live-channel"></div>' . "\r\n"
. "<script> var profile_uid = " . $a->profile['profile_uid']
. "; var netargs = '?f='; var profile_page = " . $a->pager['page'] . "; </script>\r\n";
}
@@ -1156,7 +1156,7 @@ old code
$osparkle = '';
- if(($toplevelpost) && (! $item['self']) && ($mode !== 'profile')) {
+ if(($toplevelpost) && (! $item['self']) && ($mode !== 'channel')) {
if($item['wall']) {
@@ -1227,7 +1227,7 @@ old code
$comment = replace_macros($cmnt_tpl,array(
'$return_path' => '',
'$jsreload' => (($mode === 'display') ? $_SESSION['return_url'] : ''),
- '$type' => (($mode === 'profile') ? 'wall-comment' : 'net-comment'),
+ '$type' => (($mode === 'channel') ? 'wall-comment' : 'net-comment'),
'$id' => $item['item_id'],
'$parent' => $item['parent'],
'$qcomment' => $qcomment,
diff --git a/include/delivery.php b/include/delivery.php
index 1c6b55164..ed624e79f 100644
--- a/include/delivery.php
+++ b/include/delivery.php
@@ -235,7 +235,7 @@ function delivery_run($argv, $argc){
$atom .= replace_macros($feed_template, array(
'$version' => xmlify(FRIENDICA_VERSION),
- '$feed_id' => xmlify($a->get_baseurl() . '/profile/' . $owner['nickname'] ),
+ '$feed_id' => xmlify($a->get_baseurl() . '/channel/' . $owner['nickname'] ),
'$feed_title' => xmlify($owner['name']),
'$feed_updated' => xmlify(datetime_convert('UTC', 'UTC', $updated . '+00:00' , ATOM_TIME)) ,
'$hub' => $hubxml,
diff --git a/include/follow.php b/include/follow.php
index 8b075c173..55b83820c 100644
--- a/include/follow.php
+++ b/include/follow.php
@@ -45,7 +45,7 @@ function new_contact($uid,$url,$interactive = false) {
if($ret['network'] === NETWORK_DFRN) {
if($interactive) {
if(strlen($a->path))
- $myaddr = bin2hex($a->get_baseurl() . '/profile/' . $a->user['nickname']);
+ $myaddr = bin2hex($a->get_baseurl() . '/channel/' . $a->user['nickname']);
else
$myaddr = bin2hex($a->user['nickname'] . '@' . $a->get_hostname());
diff --git a/include/gprobe.php b/include/gprobe.php
index 5ca42729a..dd6f676bf 100644
--- a/include/gprobe.php
+++ b/include/gprobe.php
@@ -54,7 +54,7 @@ function gprobe_run($argv, $argc){
);
}
if(count($r))
- poco_load(0,0,$r[0]['id'], str_replace('/profile/','/poco/',$r[0]['url']));
+ poco_load(0,0,$r[0]['id'], str_replace('/channel/','/poco/',$r[0]['url']));
return;
}
diff --git a/include/html2plain.php b/include/html2plain.php
index 5631e4954..e5615f8ba 100644
--- a/include/html2plain.php
+++ b/include/html2plain.php
@@ -83,7 +83,7 @@ function collecturls($message) {
$urls = array();
foreach ($result as $treffer) {
// A list of some links that should be ignored
- $list = array("/user/", "/tag/", "/group/", "/profile/", "/search?search=", "/search?tag=", "mailto:", "/u/", "/node/",
+ $list = array("/user/", "/tag/", "/group/", "/profile/", "/channel/", "/search?search=", "/search?tag=", "mailto:", "/u/", "/node/",
"//facebook.com/profile.php?id=", "//plus.google.com/");
foreach ($list as $listitem)
if (strpos($treffer[1], $listitem) !== false)
diff --git a/include/identity.php b/include/identity.php
index e08314f50..196ceece5 100644
--- a/include/identity.php
+++ b/include/identity.php
@@ -119,7 +119,7 @@ function create_identity($arr) {
dbesc($a->get_baseurl() . "/photo/profile/m/{$newuid}"),
dbesc($a->get_baseurl() . "/photo/profile/s/{$newuid}"),
dbesc($ret['channel']['channel_address'] . '@' . $a->get_hostname()),
- dbesc(z_root() . '/profile/' . $ret['channel']['channel_address']),
+ dbesc(z_root() . '/channel/' . $ret['channel']['channel_address']),
dbesc($ret['channel']['channel_name']),
dbesc('zot'),
dbesc(datetime_convert()),
diff --git a/include/items.php b/include/items.php
index 91320ff4e..c2bd69362 100755
--- a/include/items.php
+++ b/include/items.php
@@ -187,7 +187,7 @@ function get_feed_for(&$a, $dfrn_id, $owner_nick, $last_update, $direction = 0)
$atom .= replace_macros($feed_template, array(
'$version' => xmlify(FRIENDICA_VERSION),
- '$feed_id' => xmlify($a->get_baseurl() . '/profile/' . $owner_nick),
+ '$feed_id' => xmlify($a->get_baseurl() . '/channel/' . $owner_nick),
'$feed_title' => xmlify($owner['name']),
'$feed_updated' => xmlify(datetime_convert('UTC', 'UTC', 'now' , ATOM_TIME)) ,
'$hub' => $hubxml,
@@ -1218,7 +1218,7 @@ function tag_deliver($uid,$item_id) {
$item = $i[0];
- $link = normalise_link($a->get_baseurl() . '/profile/' . $u[0]['nickname']);
+ $link = normalise_link($a->get_baseurl() . '/channel/' . $u[0]['nickname']);
$body = preg_replace("/\[share\](.*?)\[\/share\]/ism", '', $item['body']);
@@ -1332,7 +1332,7 @@ function tgroup_check($uid,$item) {
$prvgroup = (($u[0]['page-flags'] == PAGE_PRVGROUP) ? true : false);
- $link = normalise_link($a->get_baseurl() . '/profile/' . $u[0]['nickname']);
+ $link = normalise_link($a->get_baseurl() . '/channel/' . $u[0]['nickname']);
// Diaspora uses their own hardwired link URL in @-tags
// instead of the one we supply with webfinger
@@ -2940,7 +2940,7 @@ function local_delivery($importer,$data) {
);
if(count($myconv)) {
- $importer_url = $a->get_baseurl() . '/profile/' . $importer['nickname'];
+ $importer_url = $a->get_baseurl() . '/channel/' . $importer['nickname'];
// first make sure this isn't our own post coming back to us from a wall-to-wall event
if(! link_compare($datarray['author-link'],$importer_url)) {
@@ -3090,7 +3090,7 @@ function local_delivery($importer,$data) {
break;
}
}
- if($Blink && link_compare($Blink,$a->get_baseurl() . '/profile/' . $importer['nickname'])) {
+ if($Blink && link_compare($Blink,$a->get_baseurl() . '/channel/' . $importer['nickname'])) {
// send a notification
require_once('include/enotify.php');
diff --git a/include/nav.php b/include/nav.php
index a71f97457..02a76b6b4 100644
--- a/include/nav.php
+++ b/include/nav.php
@@ -70,8 +70,8 @@ EOT;
$nav['logout'] = Array('logout',t('Logout'), "", t('End this session'));
// user menu
- $nav['usermenu'][] = Array('profile/' . $channel['channel_address'], t('Status'), "", t('Your posts and conversations'));
- $nav['usermenu'][] = Array('profile/' . $channel['channel_address']. '?tab=profile', t('Profile'), "", t('Your profile page'));
+ $nav['usermenu'][] = Array('channel/' . $channel['channel_address'], t('Status'), "", t('Your posts and conversations'));
+ $nav['usermenu'][] = Array('profile/' . $channel['channel_address'], t('Profile'), "", t('Your profile page'));
$nav['usermenu'][] = Array('photos/' . $channel['channel_address'], t('Photos'), "", t('Your photos'));
$nav['usermenu'][] = Array('events/', t('Events'), "", t('Your events'));
@@ -134,7 +134,7 @@ EOT;
$nav['network'] = array('network', t('Network'), "", t('Conversations from your friends'));
- $nav['home'] = array('profile/' . $channel['channel_address'], t('Home'), "", t('Your posts and conversations'));
+ $nav['home'] = array('channel/' . $channel['channel_address'], t('Home'), "", t('Your posts and conversations'));
if($channel['channel_pageflags'] == PAGE_NORMAL) {
$nav['introductions'] = array('notifications/intros', t('Introductions'), "", t('Friend Requests'));
diff --git a/include/notifier.php b/include/notifier.php
index e997861f3..460257ec0 100644
--- a/include/notifier.php
+++ b/include/notifier.php
@@ -335,7 +335,7 @@ function notifier_run($argv, $argc){
$atom .= replace_macros($feed_template, array(
'$version' => xmlify(FRIENDICA_VERSION),
- '$feed_id' => xmlify($a->get_baseurl() . '/profile/' . $owner['nickname'] ),
+ '$feed_id' => xmlify($a->get_baseurl() . '/channel/' . $owner['nickname'] ),
'$feed_title' => xmlify($owner['name']),
'$feed_updated' => xmlify(datetime_convert('UTC', 'UTC', $updated . '+00:00' , ATOM_TIME)) ,
'$hub' => $hubxml,
diff --git a/include/oauth.php b/include/oauth.php
index 103d4c2fa..99fc16eef 100644
--- a/include/oauth.php
+++ b/include/oauth.php
@@ -148,7 +148,7 @@ class FKOAuth1 extends OAuthServer {
$_SESSION['mobile-theme'] = get_pconfig($record['uid'], 'system', 'mobile_theme');
$_SESSION['authenticated'] = 1;
$_SESSION['page_flags'] = $record['page-flags'];
- $_SESSION['my_url'] = $a->get_baseurl() . '/profile/' . $record['nickname'];
+ $_SESSION['my_url'] = $a->get_baseurl() . '/channel/' . $record['nickname'];
$_SESSION['addr'] = $_SERVER['REMOTE_ADDR'];
//notice( t("Welcome back ") . $record['username'] . EOL);
diff --git a/include/onepoll.php b/include/onepoll.php
index 467bb0f2c..617756953 100644
--- a/include/onepoll.php
+++ b/include/onepoll.php
@@ -173,7 +173,7 @@ function onepoll_run($argv, $argc){
if(((float) $res->dfrn_version > 2.21) && ($contact['poco'] == '')) {
q("update contact set poco = '%s' where id = %d limit 1",
- dbesc(str_replace('/profile/','/poco/', $contact['url'])),
+ dbesc(str_replace('/channel/','/poco/', $contact['url'])),
intval($contact['id'])
);
}
diff --git a/include/security.php b/include/security.php
index dbeeb9177..ea3df2511 100644
--- a/include/security.php
+++ b/include/security.php
@@ -40,7 +40,7 @@ function authenticate_success($user_record, $login_initial = false, $interactive
$_SESSION['theme'] = $user_record['theme'];
$_SESSION['authenticated'] = 1;
$_SESSION['page_flags'] = $user_record['page-flags'];
- $_SESSION['my_url'] = $a->get_baseurl() . '/profile/' . $user_record['nickname'];
+ $_SESSION['my_url'] = $a->get_baseurl() . '/channel/' . $user_record['nickname'];
$_SESSION['my_address'] = $user_record['nickname'] . '@' . substr($a->get_baseurl(),strpos($a->get_baseurl(),'://')+3);
$a->user = $user_record;
diff --git a/include/user.php b/include/user.php
index 99837e357..d71f024d1 100644
--- a/include/user.php
+++ b/include/user.php
@@ -242,8 +242,8 @@ function create_user($arr) {
dbesc($a->get_baseurl() . "/photo/profile/{$newuid}"),
dbesc($a->get_baseurl() . "/photo/avatar/{$newuid}"),
dbesc($a->get_baseurl() . "/photo/micro/{$newuid}"),
- dbesc($a->get_baseurl() . "/profile/$nickname"),
- dbesc(normalise_link($a->get_baseurl() . "/profile/$nickname")),
+ dbesc($a->get_baseurl() . "/channel/$nickname"),
+ dbesc(normalise_link($a->get_baseurl() . "/channel/$nickname")),
dbesc($a->get_baseurl() . "/dfrn_request/$nickname"),
dbesc($a->get_baseurl() . "/dfrn_notify/$nickname"),
dbesc($a->get_baseurl() . "/dfrn_poll/$nickname"),
diff --git a/index.php b/index.php
index a0903fe63..8bf3621bf 100644
--- a/index.php
+++ b/index.php
@@ -309,7 +309,7 @@ if($a->module_loaded) {
if(x($_SESSION,'visitor_home'))
$homebase = $_SESSION['visitor_home'];
elseif(local_user())
- $homebase = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
+ $homebase = $a->get_baseurl() . '/channel/' . $a->user['nickname'];
if(isset($homebase))
$a->page['content'] .= '<script>var homebase="' . $homebase . '" ; </script>';
diff --git a/js/main.js b/js/main.js
index cda011c2e..8153a8b16 100644
--- a/js/main.js
+++ b/js/main.js
@@ -237,9 +237,8 @@
// start live update
if($('#live-network').length) { src = 'network'; liveUpdate(); }
- if($('#live-profile').length) { src = 'profile'; liveUpdate(); }
+ if($('#live-channel').length) { src = 'channel'; liveUpdate(); }
if($('#live-community').length) { src = 'community'; liveUpdate(); }
- if($('#live-notes').length) { src = 'notes'; liveUpdate(); }
if($('#live-display').length) {
if(liking) {
liking = 0;
diff --git a/mod/auth.php b/mod/auth.php
index dae8a0e16..75d5fe545 100644
--- a/mod/auth.php
+++ b/mod/auth.php
@@ -76,7 +76,7 @@ function auth_init(&$a) {
}
}
$profile = $r[0]['nickname'];
- goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/profile/' . $profile);
+ goaway((strlen($destination_url)) ? $destination_url : $a->get_baseurl() . '/channel/' . $profile);
}
goaway(z_root());
@@ -451,14 +451,14 @@ function auth_content(&$a) {
switch($destination_url) {
case 'profile':
- $dest = $a->get_baseurl() . '/profile/' . $profile . '?tab=profile';
+ $dest = $a->get_baseurl() . '/profile/' . $profile ;
break;
case 'photos':
$dest = $a->get_baseurl() . '/photos/' . $profile;
break;
case 'status':
case '':
- $dest = $a->get_baseurl() . '/profile/' . $profile;
+ $dest = $a->get_baseurl() . '/channel/' . $profile;
break;
default:
$dest = $destination_url;
diff --git a/mod/channel.php b/mod/channel.php
new file mode 100644
index 000000000..b484f0f60
--- /dev/null
+++ b/mod/channel.php
@@ -0,0 +1,256 @@
+<?php
+
+function channel_init(&$a) {
+
+ $a->page['htmlhead'] .= '<link rel="alternate" type="application/atom+xml" href="' . $a->get_baseurl() . '/feed/' . $which .'" />' . "\r\n" ;
+
+}
+
+
+function channel_aside(&$a) {
+
+ require_once('include/contact_widgets.php');
+ require_once('include/items.php');
+
+ if(argc() > 1)
+ $which = argv(1);
+ else {
+ notice( t('Requested profile is not available.') . EOL );
+ $a->error = 404;
+ return;
+ }
+
+ $profile = 0;
+ $channel = $a->get_channel();
+
+ if((local_user()) && (argc() > 2) && (argv(2) === 'view')) {
+ $which = $channel['channel_address'];
+ $profile = argv(1);
+ }
+
+ $cat = ((x($_REQUEST,'cat')) ? htmlspecialchars($_REQUEST['cat']) : '');
+
+ profile_load($a,$which,$profile);
+
+ $a->set_widget('archive',posted_date_widget($a->get_baseurl(true) . '/channel/' . $a->profile['nickname'],$a->profile['profile_uid'],true));
+ $a->set_widget('categories',categories_widget($a->get_baseurl(true) . '/channel/' . $a->profile['nickname'],$cat));
+
+}
+
+
+function channel_content(&$a, $update = 0) {
+
+ $category = $datequery = $datequery2 = '';
+
+ if(argc() > 2) {
+ for($x = 2; $x < argc(); $x ++) {
+ if(is_a_date_arg(argv($x))) {
+ if($datequery)
+ $datequery2 = escape_tags(argv($x));
+ else
+ $datequery = escape_tags(argv($x));
+ }
+ }
+ }
+
+ if(get_config('system','block_public') && (! get_account_id()) && (! remote_user())) {
+ return login();
+ }
+
+
+ require_once("include/bbcode.php");
+ require_once('include/security.php');
+ require_once('include/conversation.php');
+ require_once('include/acl_selectors.php');
+ require_once('include/items.php');
+
+ $groups = array();
+
+ $tab = 'posts';
+ $o = '';
+
+ if($update) {
+ // Ensure we've got a profile owner if updating.
+ $a->profile['profile_uid'] = $update;
+ }
+ else {
+ if($a->profile['profile_uid'] == local_user()) {
+ nav_set_selected('home');
+ }
+ }
+
+
+ $contact = null;
+ $remote_contact = false;
+
+ $contact_id = 0;
+
+ if(is_array($_SESSION['remote'])) {
+ foreach($_SESSION['remote'] as $v) {
+ if($v['uid'] == $a->profile['profile_uid']) {
+ $contact_id = $v['cid'];
+ break;
+ }
+ }
+ }
+
+ if($contact_id) {
+ $groups = init_groups_visitor($contact_id);
+ $r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1",
+ intval($contact_id),
+ intval($a->profile['profile_uid'])
+ );
+ if(count($r)) {
+ $contact = $r[0];
+ $remote_contact = true;
+ }
+ }
+
+ if(! $remote_contact) {
+ if(local_user()) {
+ $contact_id = $_SESSION['cid'];
+ $contact = $a->contact;
+ }
+ }
+
+ $is_owner = ((local_user()) && (local_user() == $a->profile['profile_uid']) ? true : false);
+
+ if($a->profile['hidewall'] && (! $is_owner) && (! $remote_contact)) {
+ notice( t('Access to this profile has been restricted.') . EOL);
+ return;
+ }
+
+ if(! $update) {
+
+
+ $o .= profile_tabs($a, $is_owner, $a->profile['channel_address']);
+
+ $o .= common_friends_visitor_widget($a->profile['profile_uid']);
+
+
+ $commpage = (($a->profile['page-flags'] == PAGE_COMMUNITY) ? true : false);
+ $commvisitor = (($commpage && $remote_contact == true) ? true : false);
+
+ $celeb = ((($a->profile['page-flags'] == PAGE_SOAPBOX) || ($a->profile['page-flags'] == PAGE_COMMUNITY)) ? true : false);
+
+ if(can_write_wall($a,$a->profile['profile_uid'])) {
+
+ $x = array(
+ 'is_owner' => $is_owner,
+ 'allow_location' => ((($is_owner || $commvisitor) && $a->profile['allow_location']) ? true : false),
+ 'default_location' => (($is_owner) ? $a->user['default-location'] : ''),
+ 'nickname' => $a->profile['channel_address'],
+ 'lockstate' => (((strlen($a->profile['channel_allow_cid'])) || (strlen($a->profile['channel_allow_gid'])) || (strlen($a->profile['channel_deny_cid'])) || (strlen($a->profile['channel_deny_gid']))) ? 'lock' : 'unlock'),
+ 'acl' => (($is_owner) ? populate_acl($channel, $celeb) : ''),
+ 'bang' => '',
+ 'visitor' => (($is_owner || $commvisitor) ? 'block' : 'none'),
+ 'profile_uid' => $a->profile['profile_uid']
+ );
+
+ $o .= status_editor($a,$x);
+ }
+
+ }
+
+
+ /**
+ * Get permissions SQL - if $remote_contact is true, our remote user has been pre-verified and we already have fetched his/her groups
+ */
+
+ $sql_extra = item_permissions_sql($a->profile['profile_uid'],$remote_contact,$groups);
+
+
+ if($update) {
+
+ $r = q("SELECT distinct(parent) AS `item_id` from item
+ WHERE uid = %d AND item_restrict = 0
+ AND item_flags & %d
+ $sql_extra
+ ORDER BY created DESC",
+ intval($a->profile['profile_uid']),
+ intval(ITEM_WALL)
+ );
+
+ }
+ else {
+
+ if(x($category)) {
+ $sql_extra .= protect_sprintf(file_tag_file_query('item',$category,'category'));
+ }
+
+ if($datequery) {
+ $sql_extra2 .= protect_sprintf(sprintf(" AND item.created <= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery))));
+ }
+ if($datequery2) {
+ $sql_extra2 .= protect_sprintf(sprintf(" AND item.created >= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery2))));
+ }
+
+
+ $a->set_pager_itemspage(40);
+
+ $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
+
+ $r = q("SELECT id AS item_id FROM item
+ WHERE uid = %d AND item_restrict = 0
+ AND item_flags & %d
+ $sql_extra $sql_extra2
+ ORDER BY created DESC $pager_sql ",
+ intval($a->profile['profile_uid']),
+ intval(ITEM_WALL|ITEM_THREAD_TOP)
+
+ );
+
+ }
+
+ if($r && count($r)) {
+
+ $parents_str = ids_to_querystr($r,'item_id');
+
+ $items = q("SELECT `item`.*, `item`.`id` AS `item_id`
+ FROM `item`
+ WHERE `item`.`uid` = %d AND `item`.`item_restrict` = 0
+ AND `item`.`parent` IN ( %s )
+ $sql_extra ",
+ intval($a->profile['profile_uid']),
+ dbesc($parents_str)
+ );
+
+ xchan_query($items);
+ $items = fetch_post_tags($items);
+ $items = conv_sort($items,'created');
+
+ } else {
+ $items = array();
+ }
+
+
+ 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 item_flags = (item_flags ^ %d)
+ WHERE (item_flags & %d) AND (item_flags & %d) AND uid = %d ",
+ intval(ITEM_UNSEEN),
+ intval(ITEM_UNSEEN),
+ intval(ITEM_WALL),
+ intval(local_user())
+ );
+ }
+
+
+ $o .= conversation($a,$items,'channel',$update);
+
+ if(! $update)
+ $o .= alt_pager($a,count($items));
+
+ return $o;
+}
diff --git a/mod/delegate.php b/mod/delegate.php
index 8c5031859..e582b9387 100644
--- a/mod/delegate.php
+++ b/mod/delegate.php
@@ -23,7 +23,7 @@ function delegate_content(&$a) {
if(count($r)) {
$r = q("select id from contact where uid = %d and nurl = '%s' limit 1",
intval(local_user()),
- dbesc(normalise_link($a->get_baseurl() . '/profile/' . $r[0]['nickname']))
+ dbesc(normalise_link($a->get_baseurl() . '/channel/' . $r[0]['nickname']))
);
if(count($r)) {
q("insert into manage ( uid, mid ) values ( %d , %d ) ",
diff --git a/mod/directory.php b/mod/directory.php
index 5744971db..1854a0e62 100644
--- a/mod/directory.php
+++ b/mod/directory.php
@@ -84,7 +84,7 @@ function directory_content(&$a) {
foreach($r as $rr) {
- $profile_link = $a->get_baseurl() . '/profile/' . ((strlen($rr['nickname'])) ? $rr['nickname'] : $rr['profile_uid']);
+ $profile_link = $a->get_baseurl() . '/channel/' . $rr['nickname'];
$pdesc = (($rr['pdesc']) ? $rr['pdesc'] . '<br />' : '');
diff --git a/mod/friendica.php b/mod/friendica.php
index 28807b5b5..276e1c7f5 100644
--- a/mod/friendica.php
+++ b/mod/friendica.php
@@ -12,7 +12,7 @@ function friendica_init(&$a) {
$r = q("SELECT username, nickname FROM user WHERE email='%s' $sql_extra", dbesc($a->config['admin_email']));
$admin = array(
'name' => $r[0]['username'],
- 'profile'=> $a->get_baseurl().'/profile/'.$r[0]['nickname'],
+ 'profile'=> $a->get_baseurl().'/channel/'.$r[0]['nickname'],
);
} else {
$admin = false;
diff --git a/mod/invite.php b/mod/invite.php
index 2dbf93c59..f5cf090e0 100644
--- a/mod/invite.php
+++ b/mod/invite.php
@@ -114,7 +114,7 @@ function invite_content(&$a) {
'$default_message' => t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
. $linktxt
. "\r\n" . "\r\n" . (($invonly) ? t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') .t('Once you have registered, please connect with me via my profile page at:')
- . "\r\n" . "\r\n" . $a->get_baseurl() . '/profile/' . $a->user['nickname']
+ . "\r\n" . "\r\n" . $a->get_baseurl() . '/channel/' . $a->user['nickname']
. "\r\n" . "\r\n" . t('For more information about the Friendica project and why we feel it is important, please visit http://friendica.com') . "\r\n" . "\r\n" ,
'$submit' => t('Submit')
));
diff --git a/mod/message.php b/mod/message.php
index 25b3b2813..d501f3b54 100644
--- a/mod/message.php
+++ b/mod/message.php
@@ -175,7 +175,7 @@ function message_content(&$a) {
return;
}
- $myprofile = $a->get_baseurl(true) . '/profile/' . $a->user['nickname'];
+ $myprofile = $a->get_baseurl(true) . '/channel/' . $a->user['nickname'];
$tpl = get_markup_template('mail_head.tpl');
$header = replace_macros($tpl, array(
diff --git a/mod/msearch.php b/mod/msearch.php
index e8e7d447b..9d587d1e4 100644
--- a/mod/msearch.php
+++ b/mod/msearch.php
@@ -27,7 +27,7 @@ function msearch_post(&$a) {
foreach($r as $rr)
$results[] = array(
'name' => $rr['name'],
- 'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'],
+ 'url' => $a->get_baseurl() . '/channel/' . $rr['nickname'],
'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'],
'tags' => str_replace(array(',',' '),array(' ',' '),$rr['pub_keywords'])
);
diff --git a/mod/network.php b/mod/network.php
index 0d55438c1..b4b736e28 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -563,7 +563,7 @@ function network_content(&$a, $update = 0, $load = false) {
if($conv) {
// find a substring of my profile url that can be normalised
- $myurl = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
+ $myurl = $a->get_baseurl() . '/channel/' . $a->user['nickname'];
$myurl = substr($myurl,strpos($myurl,'://')+3);
$myurl = str_replace('www.','',$myurl);
diff --git a/mod/notifications.php b/mod/notifications.php
index 5bb85085f..8221dd7c3 100644
--- a/mod/notifications.php
+++ b/mod/notifications.php
@@ -338,10 +338,10 @@ function notifications_content(&$a) {
$notif_tpl = get_markup_template('notifications.tpl');
- $myurl = $a->get_baseurl(true) . '/profile/'. $a->user['nickname'];
+ $myurl = $a->get_baseurl(true) . '/channel/'. $a->user['nickname'];
$myurl = substr($myurl,strpos($myurl,'://')+3);
$myurl = str_replace(array('www.','.'),array('','\\.'),$myurl);
- $diasp_url = str_replace('/profile/','/u/',$myurl);
+ $diasp_url = str_replace('/channel/','/u/',$myurl);
$sql_extra .= sprintf(" AND ( `item`.`author-link` regexp '%s' or `item`.`tag` regexp '%s' or `item`.`tag` regexp '%s' ) ",
dbesc($myurl . '$'),
dbesc($myurl . '\\]'),
diff --git a/mod/ping.php b/mod/ping.php
index a679c9342..342726ec1 100644
--- a/mod/ping.php
+++ b/mod/ping.php
@@ -170,7 +170,7 @@ function ping_init(&$a) {
$t4 = dba_timer();
- $myurl = $a->get_baseurl() . '/profile/' . $a->user['nickname'] ;
+ $myurl = $a->get_baseurl() . '/channel/' . $a->user['nickname'] ;
$mails = q("SELECT *, COUNT(*) AS `total` FROM `mail`
WHERE `uid` = %d AND `seen` = 0 AND `from-url` != '%s' ",
intval(local_user()),
diff --git a/mod/profile.php b/mod/profile.php
index 8fdd38ced..68cc53f56 100644
--- a/mod/profile.php
+++ b/mod/profile.php
@@ -28,31 +28,16 @@ function profile_aside(&$a) {
$profile = argv(1);
}
- $cat = ((x($_REQUEST,'cat')) ? htmlspecialchars($_REQUEST['cat']) : '');
-
profile_load($a,$which,$profile);
- $a->set_widget('archive',posted_date_widget($a->get_baseurl(true) . '/profile/' . $a->profile['nickname'],$a->profile['profile_uid'],true));
- $a->set_widget('categories',categories_widget($a->get_baseurl(true) . '/profile/' . $a->profile['nickname'],$cat));
+ $a->set_widget('archive',posted_date_widget($a->get_baseurl(true) . '/channel/' . $a->profile['nickname'],$a->profile['profile_uid'],true));
+ $a->set_widget('categories',categories_widget($a->get_baseurl(true) . '/channel/' . $a->profile['nickname'],$cat));
}
function profile_content(&$a, $update = 0) {
- $category = $datequery = $datequery2 = '';
-
- if(argc() > 2) {
- for($x = 2; $x < argc(); $x ++) {
- if(is_a_date_arg(argv($x))) {
- if($datequery)
- $datequery2 = escape_tags(argv($x));
- else
- $datequery = escape_tags(argv($x));
- }
- }
- }
-
if(get_config('system','block_public') && (! get_account_id()) && (! remote_user())) {
return login();
}
@@ -66,20 +51,13 @@ function profile_content(&$a, $update = 0) {
$groups = array();
- $tab = 'posts';
+ $tab = 'profile';
$o = '';
- if($update) {
- // Ensure we've got a profile owner if updating.
- $a->profile['profile_uid'] = $update;
- }
- else {
- if($a->profile['profile_uid'] == local_user()) {
- nav_set_selected('home');
- }
+ if($a->profile['profile_uid'] == local_user()) {
+ nav_set_selected('home');
}
-
$contact = null;
$remote_contact = false;
@@ -120,149 +98,13 @@ function profile_content(&$a, $update = 0) {
return;
}
- if(! $update) {
-
-
- if(x($_GET,'tab'))
- $tab = notags(trim($_GET['tab']));
-
- $o .= profile_tabs($a, $is_owner, $a->profile['channel_address']);
-
-
- if($tab === 'profile') {
- require_once('include/profile_advanced.php');
- $o .= advanced_profile($a);
- call_hooks('profile_advanced',$o);
- return $o;
- }
-
-
- $o .= common_friends_visitor_widget($a->profile['profile_uid']);
-
-
- $commpage = (($a->profile['page-flags'] == PAGE_COMMUNITY) ? true : false);
- $commvisitor = (($commpage && $remote_contact == true) ? true : false);
-
- $celeb = ((($a->profile['page-flags'] == PAGE_SOAPBOX) || ($a->profile['page-flags'] == PAGE_COMMUNITY)) ? true : false);
-
- if(can_write_wall($a,$a->profile['profile_uid'])) {
-
- $x = array(
- 'is_owner' => $is_owner,
- 'allow_location' => ((($is_owner || $commvisitor) && $a->profile['allow_location']) ? true : false),
- 'default_location' => (($is_owner) ? $a->user['default-location'] : ''),
- 'nickname' => $a->profile['channel_address'],
- 'lockstate' => (((strlen($a->profile['channel_allow_cid'])) || (strlen($a->profile['channel_allow_gid'])) || (strlen($a->profile['channel_deny_cid'])) || (strlen($a->profile['channel_deny_gid']))) ? 'lock' : 'unlock'),
- 'acl' => (($is_owner) ? populate_acl($channel, $celeb) : ''),
- 'bang' => '',
- 'visitor' => (($is_owner || $commvisitor) ? 'block' : 'none'),
- 'profile_uid' => $a->profile['profile_uid']
- );
-
- $o .= status_editor($a,$x);
- }
-
- }
-
-
- /**
- * Get permissions SQL - if $remote_contact is true, our remote user has been pre-verified and we already have fetched his/her groups
- */
-
- $sql_extra = item_permissions_sql($a->profile['profile_uid'],$remote_contact,$groups);
+ $o .= profile_tabs($a, $is_owner, $a->profile['channel_address']);
- if($update) {
-
- $r = q("SELECT distinct(parent) AS `item_id` from item
- WHERE uid = %d AND item_restrict = 0
- AND item_flags & %d
- $sql_extra
- ORDER BY created DESC",
- intval($a->profile['profile_uid']),
- intval(ITEM_WALL)
- );
-
- }
- else {
-
- if(x($category)) {
- $sql_extra .= protect_sprintf(file_tag_file_query('item',$category,'category'));
- }
-
- if($datequery) {
- $sql_extra2 .= protect_sprintf(sprintf(" AND item.created <= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery))));
- }
- if($datequery2) {
- $sql_extra2 .= protect_sprintf(sprintf(" AND item.created >= '%s' ", dbesc(datetime_convert(date_default_timezone_get(),'',$datequery2))));
- }
-
-
- $a->set_pager_itemspage(40);
-
- $pager_sql = sprintf(" LIMIT %d, %d ",intval($a->pager['start']), intval($a->pager['itemspage']));
-
- $r = q("SELECT id AS item_id FROM item
- WHERE uid = %d AND item_restrict = 0
- AND item_flags & %d
- $sql_extra $sql_extra2
- ORDER BY created DESC $pager_sql ",
- intval($a->profile['profile_uid']),
- intval(ITEM_WALL|ITEM_THREAD_TOP)
-
- );
-
- }
-
- if($r && count($r)) {
-
- $parents_str = ids_to_querystr($r,'item_id');
-
- $items = q("SELECT `item`.*, `item`.`id` AS `item_id`
- FROM `item`
- WHERE `item`.`uid` = %d AND `item`.`item_restrict` = 0
- AND `item`.`parent` IN ( %s )
- $sql_extra ",
- intval($a->profile['profile_uid']),
- dbesc($parents_str)
- );
-
- xchan_query($items);
- $items = fetch_post_tags($items);
- $items = conv_sort($items,'created');
-
- } else {
- $items = array();
- }
-
-
- 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 item_flags = (item_flags ^ %d)
- WHERE (item_flags & %d) AND (item_flags & %d) AND uid = %d ",
- intval(ITEM_UNSEEN),
- intval(ITEM_UNSEEN),
- intval(ITEM_WALL),
- intval(local_user())
- );
- }
-
-
- $o .= conversation($a,$items,'profile',$update);
-
- if(! $update)
- $o .= alt_pager($a,count($items));
+ require_once('include/profile_advanced.php');
+ $o .= advanced_profile($a);
+ call_hooks('profile_advanced',$o);
return $o;
+
}
diff --git a/mod/profile_photo.php b/mod/profile_photo.php
index ddefb69e5..e78d2ca6f 100644
--- a/mod/profile_photo.php
+++ b/mod/profile_photo.php
@@ -125,7 +125,7 @@ function profile_photo_post(&$a) {
info( t('Shift-reload the page or clear browser cache if the new photo does not display immediately.') . EOL);
// Update global directory in background
- $url = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
+ $url = $a->get_baseurl() . '/channel/' . $a->user['nickname'];
if($url && strlen(get_config('system','directory_submit_url')))
proc_run('php',"include/directory.php","$url");
diff --git a/mod/settings.php b/mod/settings.php
index 7cbe278a3..cfb0a3b26 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -769,7 +769,7 @@ function settings_content(&$a) {
info( t('Profile is <strong>not published</strong>.') . EOL );
- $subdir = ((strlen($a->get_path())) ? '<br />' . t('or') . ' ' . $a->get_baseurl(true) . '/profile/' . $nickname : '');
+ $subdir = ((strlen($a->get_path())) ? '<br />' . t('or') . ' ' . $a->get_baseurl(true) . '/channel/' . $nickname : '');
$tpl_addr = get_markup_template("settings_nick_set.tpl");
diff --git a/mod/update_profile.php b/mod/update_channel.php
index c4884b30f..08b7bd5d7 100644
--- a/mod/update_profile.php
+++ b/mod/update_channel.php
@@ -7,9 +7,9 @@
*/
-require_once('mod/profile.php');
+require_once('mod/channel.php');
-function update_profile_content(&$a) {
+function update_channel_content(&$a) {
$profile_uid = intval($_GET['p']);
@@ -32,7 +32,7 @@ function update_profile_content(&$a) {
*
*/
- $text = profile_content($a,$profile_uid);
+ $text = channel_content($a,$profile_uid);
$pattern = "/<img([^>]*) src=\"([^\"]*)\"/";
$replace = "<img\${1} dst=\"\${2}\"";
diff --git a/mod/wallmessage.php b/mod/wallmessage.php
index cf349775c..8a1194104 100644
--- a/mod/wallmessage.php
+++ b/mod/wallmessage.php
@@ -68,7 +68,7 @@ function wallmessage_post(&$a) {
info( t('Message sent.') . EOL );
}
-// goaway($a->get_baseurl() . '/profile/' . $user['nickname']);
+// goaway($a->get_baseurl() . '/channel/' . $user['nickname']);
}
diff --git a/mod/xrd.php b/mod/xrd.php
index a718d623d..d22ff4699 100644
--- a/mod/xrd.php
+++ b/mod/xrd.php
@@ -34,7 +34,7 @@ function xrd_init(&$a) {
$o = replace_macros($tpl, array(
'$nick' => $r[0]['nickname'],
'$accturi' => $uri,
- '$profile_url' => $a->get_baseurl() . '/profile/' . $r[0]['nickname'],
+ '$profile_url' => $a->get_baseurl() . '/channel/' . $r[0]['nickname'],
'$hcard_url' => $a->get_baseurl() . '/hcard/' . $r[0]['nickname'],
'$atom' => $a->get_baseurl() . '/dfrn_poll/' . $r[0]['nickname'],
'$zot_post' => $a->get_baseurl() . '/post/' . $r[0]['nickname'],
diff --git a/version.inc b/version.inc
index 860f87211..feff79e46 100644
--- a/version.inc
+++ b/version.inc
@@ -1 +1 @@
-2012-10-28.121
+2012-10-29.122