include re-organisation and more doco, post_to_red fix ampersands in categories

This commit is contained in:
friendica 2013-12-04 00:19:29 -08:00
parent 7187c493e1
commit d8903f09f5
7 changed files with 62 additions and 59 deletions

View File

@ -609,8 +609,8 @@ function get_item_elements($x) {
// once, and after that your hub knows them. Sure some info is in the post, but it's only a transit identifier
// and not enough info to be able to look you up from your hash - which is the only thing stored with the post.
if(import_author_xchan($x['author']))
$arr['author_xchan'] = base64url_encode(hash('whirlpool',$x['author']['guid'] . $x['author']['guid_sig'], true));
if(($xchan_hash = import_author_xchan($x['author'])) !== false)
$arr['author_xchan'] = $xchan_hash;
else
return array();
@ -618,8 +618,8 @@ function get_item_elements($x) {
if($arr['author_xchan'] === base64url_encode(hash('whirlpool',$x['owner']['guid'] . $x['owner']['guid_sig'], true)))
$arr['owner_xchan'] = $arr['author_xchan'];
else {
if(import_author_xchan($x['owner']))
$arr['owner_xchan'] = base64url_encode(hash('whirlpool',$x['owner']['guid'] . $x['owner']['guid_sig'], true));
if(($xchan_hash = import_author_xchan($x['owner'])) !== false)
$arr['owner_xchan'] = $xchan_hash;
else
return array();
}
@ -657,21 +657,18 @@ function get_item_elements($x) {
function import_author_xchan($x) {
$r = q("select hubloc_url from hubloc where hubloc_guid = '%s' and hubloc_guid_sig = '%s' and (hubloc_flags & %d) limit 1",
dbesc($x['guid']),
dbesc($x['guid_sig']),
intval(HUBLOC_FLAGS_PRIMARY)
);
$arr = array('xchan' => $x, 'xchan_hash' => '');
call_hooks('import_author_xchan',$arr);
if($arr['xchan_hash'])
return $arr['xchan_hash'];
if($r) {
logger('import_author_xchan: in cache', LOGGER_DEBUG);
return true;
if((! array_key_exists('network', $x)) || ($x['network'] === 'zot')) {
return import_author_zot($x);
}
logger('import_author_xchan: entry not in cache - probing: ' . print_r($x,true), LOGGER_DEBUG);
// TODO: create xchans for other common and/or aligned networks
$them = array('hubloc_url' => $x['url'],'xchan_guid' => $x['guid'], 'xchan_guid_sig' => $x['guid_sig']);
return zot_refresh($them);
return false;
}
function encode_item($item) {
@ -785,6 +782,7 @@ function encode_item_xchan($xchan) {
$ret['name'] = $xchan['xchan_name'];
$ret['address'] = $xchan['xchan_addr'];
$ret['url'] = $xchan['hubloc_url'];
$ret['network'] = $xchan['xchan_network'];
$ret['photo'] = array('mimetype' => $xchan['xchan_photo_mimetype'], 'src' => $xchan['xchan_photo_m']);
$ret['guid'] = $xchan['xchan_guid'];
$ret['guid_sig'] = $xchan['xchan_guid_sig'];
@ -977,18 +975,16 @@ function get_mail_elements($x) {
if($x['attach'])
$arr['attach'] = activity_sanitise($x['attach']);
if(import_author_xchan($x['from']))
$arr['from_xchan'] = base64url_encode(hash('whirlpool',$x['from']['guid'] . $x['from']['guid_sig'], true));
if(($xchan_hash = import_author_xchan($x['from'])) !== false)
$arr['from_xchan'] = $xchan_hash;
else
return array();
if(import_author_xchan($x['to']))
$arr['to_xchan'] = base64url_encode(hash('whirlpool',$x['to']['guid'] . $x['to']['guid_sig'], true));
if(($xchan_hash = import_author_xchan($x['to'])) !== false)
$arr['to_xchan'] = $xchan_hash;
else
return array();
return $arr;
}
@ -998,8 +994,8 @@ function get_profile_elements($x) {
$arr = array();
if(import_author_xchan($x['from']))
$arr['xprof_hash'] = base64url_encode(hash('whirlpool',$x['from']['guid'] . $x['from']['guid_sig'], true));
if(($xchan_hash = import_author_xchan($x['from'])) !== false)
$arr['xprof_hash'] = $xchan_hash;
else
return array();

View File

@ -863,8 +863,6 @@ function import_xchan($arr,$ud_flags = 1) {
}
}
if($changed) {
$guid = random_string() . '@' . get_app()->get_hostname();
update_modtime($xchan_hash,$guid,$arr['address'],$ud_flags);
@ -2103,3 +2101,24 @@ function get_rpost_path($observer) {
}
function import_author_zot($x) {
$hash = base64url_encode(hash('whirlpool',$x['guid'] . $x['guid_sig'], true));
$r = q("select hubloc_url from hubloc where hubloc_guid = '%s' and hubloc_guid_sig = '%s' and (hubloc_flags & %d) limit 1",
dbesc($x['guid']),
dbesc($x['guid_sig']),
intval(HUBLOC_FLAGS_PRIMARY)
);
if($r) {
logger('import_author_zot: in cache', LOGGER_DEBUG);
return $hash;
}
logger('import_author_zot: entry not in cache - probing: ' . print_r($x,true), LOGGER_DEBUG);
$them = array('hubloc_url' => $x['url'],'xchan_guid' => $x['guid'], 'xchan_guid_sig' => $x['guid_sig']);
if(zot_refresh($them))
return $hash;
return false;
}

View File

@ -1,5 +1,14 @@
<?php
require_once('include/contact_widgets.php');
require_once('include/items.php');
require_once("include/bbcode.php");
require_once('include/security.php');
require_once('include/conversation.php');
require_once('include/acl_selectors.php');
require_once('include/permissions.php');
function channel_init(&$a) {
$which = null;
@ -37,8 +46,6 @@ function channel_init(&$a) {
function channel_aside(&$a) {
require_once('include/contact_widgets.php');
require_once('include/items.php');
if(! $a->profile['profile_uid'])
return;
@ -64,16 +71,6 @@ function channel_content(&$a, $update = 0, $load = false) {
$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));
// }
// }
// }
$datequery = ((x($_GET,'dend') && is_a_date_arg($_GET['dend'])) ? notags($_GET['dend']) : '');
$datequery2 = ((x($_GET,'dbegin') && is_a_date_arg($_GET['dbegin'])) ? notags($_GET['dbegin']) : '');
@ -81,16 +78,6 @@ function channel_content(&$a, $update = 0, $load = false) {
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');
require_once('include/permissions.php');
$category = ((x($_REQUEST,'cat')) ? $_REQUEST['cat'] : '');
$groups = array();

View File

@ -196,9 +196,9 @@ function post_init(&$a) {
} else {
logger('mod_zot: magic-auth failure - not authenticated: ' . $x[0]['xchan_addr']);
q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_addr = '%s'",
q("update hubloc set hubloc_status = (hubloc_status | %d ) where hubloc_id = %d ",
intval(HUBLOC_RECEIVE_ERROR),
dbesc($x[0]['xchan_addr'])
intval($x[0]['hubloc_id'])
);
}

View File

@ -1,4 +1,12 @@
<?php
<?php /** @file */
require_once('include/contact_widgets.php');
require_once('include/items.php');
require_once("include/bbcode.php");
require_once('include/security.php');
require_once('include/conversation.php');
require_once('include/acl_selectors.php');
function profile_init(&$a) {
@ -45,8 +53,6 @@ function profile_init(&$a) {
function profile_aside(&$a) {
require_once('include/contact_widgets.php');
require_once('include/items.php');
profile_create_sidebar($a);
@ -60,11 +66,6 @@ function profile_content(&$a, $update = 0) {
}
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();

View File

@ -96,7 +96,7 @@ function post_to_red_post($post_id) {
foreach($terms as $term) {
if(strlen($cats))
$cats .= ',';
$cats .= $term->name;
$cats .= htmlspecialchars_decode($term->name, ENT_COMPAT);
}
}

View File

@ -1 +1 @@
2013-12-03.516
2013-12-04.517