2011-10-18 08:36:14 +02:00
|
|
|
<?php
|
|
|
|
/**
|
|
|
|
* Name: MemberSince
|
|
|
|
* Description: Display membership date in profile
|
2018-02-06 18:26:34 +01:00
|
|
|
* Version: 1.1
|
2011-10-18 08:36:14 +02:00
|
|
|
* Author: Mike Macgirvin <http://macgirvin.com/profile/mike>
|
2018-02-09 21:26:48 +01:00
|
|
|
* Status: Unsupported
|
2011-10-18 08:36:14 +02:00
|
|
|
*/
|
2018-01-25 03:29:09 +01:00
|
|
|
|
2022-06-23 07:45:39 +02:00
|
|
|
use Friendica\App;
|
2018-12-26 08:28:16 +01:00
|
|
|
use Friendica\Core\Hook;
|
2020-01-18 22:07:06 +01:00
|
|
|
use Friendica\DI;
|
2018-01-27 03:39:02 +01:00
|
|
|
use Friendica\Util\DateTimeFormat;
|
2011-10-18 08:36:14 +02:00
|
|
|
|
2018-01-20 14:57:41 +01:00
|
|
|
function membersince_install()
|
|
|
|
{
|
2018-12-26 08:28:16 +01:00
|
|
|
Hook::register('profile_advanced', 'addon/membersince/membersince.php', 'membersince_display');
|
2018-01-20 14:57:41 +01:00
|
|
|
}
|
2011-10-18 08:36:14 +02:00
|
|
|
|
2023-01-14 03:16:09 +01:00
|
|
|
function membersince_display(array &$b)
|
2018-01-20 14:57:41 +01:00
|
|
|
{
|
2023-01-14 03:16:09 +01:00
|
|
|
if (DI::app()->getCurrentTheme() == 'frio') {
|
2018-02-06 18:24:03 +01:00
|
|
|
// Works in Frio.
|
|
|
|
$doc = new DOMDocument();
|
2018-02-07 17:01:27 +01:00
|
|
|
$doc->loadHTML(mb_convert_encoding($b, 'HTML-ENTITIES', 'UTF-8'));
|
2011-10-18 08:36:14 +02:00
|
|
|
|
2018-02-06 18:24:03 +01:00
|
|
|
$elm = $doc->getElementById('aprofile-fullname');
|
|
|
|
|
|
|
|
$div = $doc->createElement('div');
|
|
|
|
$div->setAttribute('id','aprofile-membersince');
|
|
|
|
$div->setAttribute('class','col-lg-12 col-md-12 col-sm-12 col-xs-12 aprofile');
|
|
|
|
|
|
|
|
// The seperator line.
|
|
|
|
$hr = $doc->createElement('hr','');
|
|
|
|
$hr->setAttribute('class','profile-separator');
|
|
|
|
|
|
|
|
// The label div.
|
2020-01-18 20:52:33 +01:00
|
|
|
$label = $doc->createElement('div', DI::l10n()->t('Member since:'));
|
2018-02-06 18:24:03 +01:00
|
|
|
$label->setAttribute('class', 'col-lg-4 col-md-4 col-sm-4 col-xs-12 profile-label-name text-muted');
|
|
|
|
|
|
|
|
// The div for the register date of the profile owner.
|
2023-01-14 03:16:09 +01:00
|
|
|
$entry = $doc->createElement('div', DateTimeFormat::local(DI::app()->profile['register_date']));
|
2018-02-06 18:24:03 +01:00
|
|
|
$entry->setAttribute('class', 'col-lg-8 col-md-8 col-sm-8 col-xs-12 profile-entry');
|
|
|
|
|
|
|
|
$div->appendChild($hr);
|
|
|
|
$div->appendChild($label);
|
|
|
|
$div->appendChild($entry);
|
2018-02-07 14:34:30 +01:00
|
|
|
$elm->parentNode->insertBefore($div, $elm->nextSibling);
|
2018-02-06 18:24:03 +01:00
|
|
|
|
|
|
|
$b = $doc->saveHTML();
|
|
|
|
} else {
|
|
|
|
// Works in Vier.
|
2023-01-14 03:16:09 +01:00
|
|
|
$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(DI::app()->profile['register_date']) . "</dd>\n</dl>", $b, 1);
|
2018-02-06 18:24:03 +01:00
|
|
|
}
|
2018-01-20 14:57:41 +01:00
|
|
|
}
|