diff options
Diffstat (limited to 'Zotlabs/Module/Profiles.php')
-rw-r--r-- | Zotlabs/Module/Profiles.php | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/Zotlabs/Module/Profiles.php b/Zotlabs/Module/Profiles.php index 19a642a83..e166c3c19 100644 --- a/Zotlabs/Module/Profiles.php +++ b/Zotlabs/Module/Profiles.php @@ -191,7 +191,7 @@ class Profiles extends \Zotlabs\Web\Controller { } } - function post() { + function post() { if(! local_channel()) { notice( t('Permission denied.') . EOL); @@ -243,6 +243,7 @@ class Profiles extends \Zotlabs\Web\Controller { check_form_security_token_redirectOnErr('/profiles', 'profile_edit'); + $is_default = (($orig[0]['is_default']) ? 1 : 0); $profile_name = notags(trim($_POST['profile_name'])); @@ -315,6 +316,43 @@ class Profiles extends \Zotlabs\Web\Controller { $hide_friends = ((intval($_POST['hide_friends'])) ? 1: 0); + + $orig_vcard = (($orig[0]['profile_vcard']) ? \Sabre\VObject\Reader::read($orig[0]['profile_vcard']) : null); + + $channel = \App::get_channel(); + + $default_vcard_cat = ((defined('DEFAULT_VCARD_CAT')) ? DEFAULT_VCARD_CAT : 'HOME'); + + $defcard = [ + 'fn' => $name, + 'title' => $pdesc, + 'photo' => $channel['xchan_photo_l'], + 'adr' => [], + 'adr_type' => [ $default_vcard_cat ], + 'tel' => [], + 'tel_type' => [ $default_vcard_cat ], + 'email' => [], + 'email_type' => [ $default_vcard_cat ], + 'impp' => [], + 'impp_type' => [ $default_vcard_cat ], + 'url' => [], + 'url_type' => [ $default_vcard_cat ] + ]; + + $defcard['adr'][] = [ + 0 => '', + 1 => '', + 2 => $address, + 3 => $locality, + 4 => $region, + 5 => $postal_code, + 6 => $country_name + ]; + + + $profile_vcard = update_vcard($defcard,$orig_vcard); + + require_once('include/text.php'); linkify_tags($a, $likes, local_channel()); linkify_tags($a, $dislikes, local_channel()); @@ -511,7 +549,8 @@ class Profiles extends \Zotlabs\Web\Controller { romance = '%s', employment = '%s', education = '%s', - hide_friends = %d + hide_friends = %d, + profile_vcard = '%s' WHERE id = %d AND uid = %d", dbesc($profile_name), dbesc($name), @@ -546,6 +585,7 @@ class Profiles extends \Zotlabs\Web\Controller { dbesc($work), dbesc($education), intval($hide_friends), + dbesc($profile_vcard), intval(argv(1)), intval(local_channel()) ); |