diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/dir_fns.php | 51 | ||||
-rw-r--r-- | include/directory.php | 2 | ||||
-rw-r--r-- | include/zot.php | 1 |
3 files changed, 53 insertions, 1 deletions
diff --git a/include/dir_fns.php b/include/dir_fns.php index 683ed9e5b..2ed9b0280 100644 --- a/include/dir_fns.php +++ b/include/dir_fns.php @@ -1,6 +1,57 @@ <?php +require_once('include/permissions.php'); + function find_upstream_directory($dirmode) { return ''; } +function syncdirs($uid) { + + $p = q("select channel.channel_hash, profile.* from profile left join channel on channel_id = uid where uid = %d and is_default = 1", + intval($uid) + ); + + $profile = array(); + + if($p) { + $hash = $p[0]['channel_hash']; + + $profile['description'] = $p[0]['pdesc']; + $profile['birthday'] = $p[0]['dob']; + $profile['gender'] = $p[0]['gender']; + $profile['marital'] = $p[0]['marital']; + $profile['sexual'] = $p[0]['sexual']; + $profile['locale'] = $p[0]['locality']; + $profile['region'] = $p[0]['region']; + $profile['postcode'] = $p[0]['postal_code']; + $profile['country'] = $p[0]['country_name']; + if($p[0]['keywords']) { + $tags = array(); + $k = explode(' ',$p[0]['keywords']); + if($k) + foreach($k as $kk) + if(trim($kk)) + $tags[] = trim($kk); + if($tags) + $profile['keywords'] = $tags; + } + + if(perm_is_allowed($uid,'','view_profile')) { + import_directory_profile($hash,$profile); + + } + else { + // they may have made it private + $r = q("delete from xprof where xprof_hash = '%s' limit 1", + dbesc($hash) + ); + $r = q("delete from xtag where xtag_hash = '%s'", + dbesc($hash) + ); + } + } + + // TODO send refresh zots to downstream directory servers +} + diff --git a/include/directory.php b/include/directory.php index 105686ca7..d1862cb57 100644 --- a/include/directory.php +++ b/include/directory.php @@ -17,7 +17,7 @@ function directory_run($argv, $argc){ $dirmode = DIRECTORY_MODE_NORMAL; if(($dirmode == DIRECTORY_MODE_PRIMARY) || ($dirmode == DIRECTORY_MODE_STANDALONE)) { - // syncdirs(); + syncdirs($argv[1]); return; } diff --git a/include/zot.php b/include/zot.php index f4568fc2f..4d3817a4f 100644 --- a/include/zot.php +++ b/include/zot.php @@ -1055,6 +1055,7 @@ function import_directory_profile($hash,$profile) { dbesc($arr['xprof_country']) ); } + return; } |