4 * Description: Display membership date in profile
6 * Author: Mike Macgirvin <http://macgirvin.com/profile/mike>
10 use Friendica\Core\Hook;
12 use Friendica\Util\DateTimeFormat;
14 function membersince_install()
16 Hook::register('profile_advanced', 'addon/membersince/membersince.php', 'membersince_display');
19 function membersince_display(Friendica\App $a, &$b)
21 if ($a->getCurrentTheme() == 'frio') {
23 $doc = new DOMDocument();
24 $doc->loadHTML(mb_convert_encoding($b, 'HTML-ENTITIES', 'UTF-8'));
26 $elm = $doc->getElementById('aprofile-fullname');
28 $div = $doc->createElement('div');
29 $div->setAttribute('id','aprofile-membersince');
30 $div->setAttribute('class','col-lg-12 col-md-12 col-sm-12 col-xs-12 aprofile');
32 // The seperator line.
33 $hr = $doc->createElement('hr','');
34 $hr->setAttribute('class','profile-separator');
37 $label = $doc->createElement('div', DI::l10n()->t('Member since:'));
38 $label->setAttribute('class', 'col-lg-4 col-md-4 col-sm-4 col-xs-12 profile-label-name text-muted');
40 // The div for the register date of the profile owner.
41 $entry = $doc->createElement('div', DateTimeFormat::local($a->profile['register_date']));
42 $entry->setAttribute('class', 'col-lg-8 col-md-8 col-sm-8 col-xs-12 profile-entry');
44 $div->appendChild($hr);
45 $div->appendChild($label);
46 $div->appendChild($entry);
47 $elm->parentNode->insertBefore($div, $elm->nextSibling);
49 $b = $doc->saveHTML();
52 $b = preg_replace('/<\/dl>/', "</dl>\n\n\n<dl id=\"aprofile-membersince\" class=\"aprofile\">\n<dt>" . DI::l10n()->t('Member since:') . "</dt>\n<dd>" . DateTimeFormat::local($a->profile['register_date']) . "</dd>\n</dl>", $b, 1);