diff options
author | zotlabs <mike@macgirvin.com> | 2018-03-12 20:54:55 -0700 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2018-03-12 20:54:55 -0700 |
commit | ab1d47b36f21e5881900d9d805f4f7876f1c472f (patch) | |
tree | 5d0de385738ebb2fc332b38ff4a59f0cf4f1ca68 /include | |
parent | 34399b8b47d9a85eb3c4095392ab994792257d88 (diff) | |
download | volse-hubzilla-ab1d47b36f21e5881900d9d805f4f7876f1c472f.tar.gz volse-hubzilla-ab1d47b36f21e5881900d9d805f4f7876f1c472f.tar.bz2 volse-hubzilla-ab1d47b36f21e5881900d9d805f4f7876f1c472f.zip |
unicode/emoji usernames. Warning: experimental feature, unstable, untested, disabled by default, use at your own risk, may not federate to other platforms and protocols. May not clone correctly. Bug reports which neglect to include detailed roubleshooting information and patches/pull requests will be ignored.
Diffstat (limited to 'include')
-rw-r--r-- | include/channel.php | 4 | ||||
-rw-r--r-- | include/text.php | 16 |
2 files changed, 18 insertions, 2 deletions
diff --git a/include/channel.php b/include/channel.php index a754d3504..c94f5c657 100644 --- a/include/channel.php +++ b/include/channel.php @@ -1234,7 +1234,7 @@ function profile_load($nickname, $profile = '') { ); if($z) { $p[0]['picdate'] = $z[0]['xchan_photo_date']; - $p[0]['reddress'] = str_replace('@','@',$z[0]['xchan_addr']); + $p[0]['reddress'] = str_replace('@','@',unpunify($z[0]['xchan_addr'])); } // fetch user tags if this isn't the default profile @@ -1255,7 +1255,7 @@ function profile_load($nickname, $profile = '') { App::$profile = $p[0]; App::$profile_uid = $p[0]['profile_uid']; - App::$page['title'] = App::$profile['channel_name'] . " - " . channel_reddress(App::$profile); + App::$page['title'] = App::$profile['channel_name'] . " - " . unpunify(channel_reddress(App::$profile)); App::$profile['permission_to_view'] = $can_view_profile; diff --git a/include/text.php b/include/text.php index 6675043e6..c1e064857 100644 --- a/include/text.php +++ b/include/text.php @@ -3318,3 +3318,19 @@ function featured_sort($a,$b) { $s2 = substr($b,strpos($b,'id='),20); return(strcmp($s1,$s2)); } + + +function punify($s) { + require_once('vendor/simplepie/simplepie/idn/idna_convert.class.php'); + $x = new idna_convert(['encoding' => 'utf8']); + return $x->encode($s); + +} + +function unpunify($s) { + require_once('vendor/simplepie/simplepie/idn/idna_convert.class.php'); + $x = new idna_convert(['encoding' => 'utf8']); + return $x->decode($s); + +} + |