populate new fields

This commit is contained in:
zotlabs 2018-11-05 19:52:30 -08:00
parent fabcf841c9
commit 3b9aedec5f
2 changed files with 47 additions and 16 deletions

View File

@ -10,6 +10,7 @@ use Zotlabs\Access\Permissions;
use Zotlabs\Daemon\Master; use Zotlabs\Daemon\Master;
use Zotlabs\Lib\System; use Zotlabs\Lib\System;
use Zotlabs\Render\Comanche; use Zotlabs\Render\Comanche;
use Zotlabs\Lib\Zotlib;
require_once('include/zot.php'); require_once('include/zot.php');
require_once('include/crypto.php'); require_once('include/crypto.php');
@ -232,6 +233,7 @@ function create_identity($arr) {
$sig = base64url_encode(rsa_sign($guid,$key['prvkey'])); $sig = base64url_encode(rsa_sign($guid,$key['prvkey']));
$hash = make_xchan_hash($guid,$sig); $hash = make_xchan_hash($guid,$sig);
$zhash = Zotlib::make_xchan_hash($guid,$key['pubkey']);
// Force a few things on the short term until we can provide a theme or app with choice // Force a few things on the short term until we can provide a theme or app with choice
@ -265,6 +267,7 @@ function create_identity($arr) {
'channel_guid' => $guid, 'channel_guid' => $guid,
'channel_guid_sig' => $sig, 'channel_guid_sig' => $sig,
'channel_hash' => $hash, 'channel_hash' => $hash,
'channel_portable_id' => $zhash,
'channel_prvkey' => $key['prvkey'], 'channel_prvkey' => $key['prvkey'],
'channel_pubkey' => $key['pubkey'], 'channel_pubkey' => $key['pubkey'],
'channel_pageflags' => intval($pageflags), 'channel_pageflags' => intval($pageflags),
@ -345,11 +348,32 @@ function create_identity($arr) {
if(! $r) if(! $r)
logger('Unable to store hub location'); logger('Unable to store hub location');
$r = hubloc_store_lowlevel(
[
'hubloc_guid' => $guid,
'hubloc_guid_sig' => 'sha256.' . $sig,
'hubloc_hash' => $zhash,
'hubloc_addr' => channel_reddress($ret['channel']),
'hubloc_primary' => intval($primary),
'hubloc_url' => z_root(),
'hubloc_url_sig' => 'sha256.' . base64url_encode(rsa_sign(z_root(),$ret['channel']['channel_prvkey'])),
'hubloc_host' => App::get_hostname(),
'hubloc_callback' => z_root() . '/zot',
'hubloc_sitekey' => get_config('system','pubkey'),
'hubloc_network' => 'zot6',
'hubloc_updated' => datetime_convert()
]
);
if(! $r)
logger('Unable to store hub location');
$newuid = $ret['channel']['channel_id']; $newuid = $ret['channel']['channel_id'];
$r = xchan_store_lowlevel( $r = xchan_store_lowlevel(
[ [
'xchan_hash' => $hash, 'xchan_hash' => $hash,
'xchan_portable_id' => $zhash,
'xchan_guid' => $guid, 'xchan_guid' => $guid,
'xchan_guid_sig' => $sig, 'xchan_guid_sig' => $sig,
'xchan_pubkey' => $key['pubkey'], 'xchan_pubkey' => $key['pubkey'],
@ -2355,6 +2379,7 @@ function channel_store_lowlevel($arr) {
'channel_guid' => ((array_key_exists('channel_guid',$arr)) ? $arr['channel_guid'] : ''), 'channel_guid' => ((array_key_exists('channel_guid',$arr)) ? $arr['channel_guid'] : ''),
'channel_guid_sig' => ((array_key_exists('channel_guid_sig',$arr)) ? $arr['channel_guid_sig'] : ''), 'channel_guid_sig' => ((array_key_exists('channel_guid_sig',$arr)) ? $arr['channel_guid_sig'] : ''),
'channel_hash' => ((array_key_exists('channel_hash',$arr)) ? $arr['channel_hash'] : ''), 'channel_hash' => ((array_key_exists('channel_hash',$arr)) ? $arr['channel_hash'] : ''),
'channel_portable_id' => ((array_key_exists('channel_portable_id',$arr)) ? $arr['channel_portable_id'] : ''),
'channel_timezone' => ((array_key_exists('channel_timezone',$arr)) ? $arr['channel_timezone'] : 'UTC'), 'channel_timezone' => ((array_key_exists('channel_timezone',$arr)) ? $arr['channel_timezone'] : 'UTC'),
'channel_location' => ((array_key_exists('channel_location',$arr)) ? $arr['channel_location'] : ''), 'channel_location' => ((array_key_exists('channel_location',$arr)) ? $arr['channel_location'] : ''),
'channel_theme' => ((array_key_exists('channel_theme',$arr)) ? $arr['channel_theme'] : ''), 'channel_theme' => ((array_key_exists('channel_theme',$arr)) ? $arr['channel_theme'] : ''),

View File

@ -5,8 +5,14 @@ use Zotlabs\Zot6\HTTPSig;
function xchan_store_lowlevel($arr) { function xchan_store_lowlevel($arr) {
if(! $arr['xchan_hash']) {
logger('No xchan_hash');
return false;
}
$store = [ $store = [
'xchan_hash' => ((array_key_exists('xchan_hash',$arr)) ? $arr['xchan_hash'] : ''), 'xchan_hash' => ((array_key_exists('xchan_hash',$arr)) ? $arr['xchan_hash'] : ''),
'xchan_portable_id' => ((array_key_exists('xchan_portable_id',$arr)) ? $arr['xchan_portable_id'] : ''),
'xchan_guid' => ((array_key_exists('xchan_guid',$arr)) ? $arr['xchan_guid'] : ''), 'xchan_guid' => ((array_key_exists('xchan_guid',$arr)) ? $arr['xchan_guid'] : ''),
'xchan_guid_sig' => ((array_key_exists('xchan_guid_sig',$arr)) ? $arr['xchan_guid_sig'] : ''), 'xchan_guid_sig' => ((array_key_exists('xchan_guid_sig',$arr)) ? $arr['xchan_guid_sig'] : ''),
'xchan_pubkey' => ((array_key_exists('xchan_pubkey',$arr)) ? $arr['xchan_pubkey'] : ''), 'xchan_pubkey' => ((array_key_exists('xchan_pubkey',$arr)) ? $arr['xchan_pubkey'] : ''),