Version 4.7.0

This commit is contained in:
Neo committed 2025-12-19 16:00:35 -08:00
1 parent 517a5e1f70
commit 8ba7d43898
1933 files changed
+65613 -11332

No files matched your search

@@ -26,6 +26,14 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
* [Content\Controller] Class
*/
protected static $contentModel = 'IPS\core\Statuses\Status';
/**
* @brief These properties are used to specify datalayer context properties.
*
*/
public static $dataLayerContext = array(
'community_area' => [ 'value' => 'profile', 'odkUpdate' => 'true']
);
/**
* Main execute entry point - used to override breadcrumb
@@ -372,6 +380,27 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
NULL,
\IPS\Db::LOW_PRIORITY
);
/* Data Layer Stuff */
if ( \IPS\Settings::i()->core_datalayer_enabled )
{
try
{
$groupName = \IPS\Member\Group::load( $this->member->member_group_id )->formattedName;
}
catch ( \UnderflowException $e )
{
$groupName = null;
}
$properties = array(
'profile_group' => $groupName,
'profile_group_id' => $this->member->member_group_id ?: null,
'profile_id' => \intval( $this->member->member_id ) ?: null,
'profile_name' => $this->member->name ?: null,
'view_location' => 'page',
);
\IPS\core\DataLayer::i()->addEvent( 'social_view', $properties );
}
/* Get visitor data */
$visitors = $this->member->profileVisitors;
@@ -986,6 +1015,26 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
{
$this->_saveMember( $form, $values );
/* Data Layer Stuff */
if ( \IPS\Settings::i()->core_datalayer_enabled )
{
try
{
$groupName = \IPS\Member\Group::load( $this->member->member_group_id )->formattedName;
}
catch ( \UnderflowException $e )
{
$groupName = null;
}
$properties = array(
'profile_group' => $groupName,
'profile_group_id' => $this->member->member_group_id ?: null,
'profile_id' => \intval( $this->member->member_id ) ?: null,
'profile_name' => $this->member->name ?: null,
);
\IPS\core\DataLayer::i()->addEvent( 'social_update', $properties );
}
\IPS\Output::i()->redirect( $this->member->url() );
}
@@ -1968,7 +2017,7 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
$currentClass = $types[ $currentType ];
/* Build Output */
$url = \IPS\Http\Url::internal( "app=core&module=members&controller=profile&id={$this->member->member_id}&do=reputation&type={$currentType}", 'front', 'profile_reputation', array( $this->member->members_seo_name ) );
$url = \IPS\Http\Url::internal( "app=core&module=members&controller=profile&id={$this->member->member_id}&do=solutions&type={$currentType}", 'front', 'profile_solutions', array( $this->member->members_seo_name ) );
$table = new \IPS\Helpers\Table\Content( $currentClass, $url, NULL, NULL, \IPS\Content\Hideable::FILTER_AUTOMATIC, 'read', FALSE );
$table->joinContainer = TRUE;
@@ -2006,7 +2055,7 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
* @return void
*/
protected function recognize()
{
{
$class = \IPS\Request::i()->content_class;
$id = \IPS\Request::i()->content_id;
@@ -2041,27 +2090,27 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
$message = NULL;
if ( $this->member->todaysRecognizePoints() and $this->member->todaysRecognizeBadges() )
{
$message = \IPS\Member::loggedIn()->language()->addToStack('recognize_points_so_far_both', NULL, [
$message = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_both', FALSE, [
'sprintf' => [
$this->member->name,
\IPS\Member::loggedIn()->language()->addToStack('recognize_points_pluralize', NULL, [ 'sprintf' => [ $this->member->todaysRecognizePoints() ], 'pluralize' => [ $this->member->todaysRecognizePoints() ] ]),
\IPS\Member::loggedIn()->language()->addToStack('recognize_badges_pluralize', NULL, [ 'sprintf' => [ $this->member->todaysRecognizeBadges() ], 'pluralize' => [ $this->member->todaysRecognizeBadges() ] ]),
\IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_pluralize', FALSE, [ 'sprintf' => [ $this->member->todaysRecognizePoints() ], 'pluralize' => [ $this->member->todaysRecognizePoints() ] ]),
\IPS\Member::loggedIn()->language()->addToStack( 'recognize_badges_pluralize', FALSE, [ 'sprintf' => [ $this->member->todaysRecognizeBadges() ], 'pluralize' => [ $this->member->todaysRecognizeBadges() ] ]),
] ] );
}
else if ( $this->member->todaysRecognizePoints() )
{
$message = \IPS\Member::loggedIn()->language()->addToStack('recognize_points_so_far_single', NULL, [
$message = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_single', FALSE, [
'sprintf' => [
$this->member->name,
\IPS\Member::loggedIn()->language()->addToStack('recognize_points_pluralize', NULL, [ 'sprintf' => [ $this->member->todaysRecognizePoints() ], 'pluralize' => [ $this->member->todaysRecognizePoints() ] ])
\IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_pluralize', FALSE, [ 'sprintf' => [ $this->member->todaysRecognizePoints() ], 'pluralize' => [ $this->member->todaysRecognizePoints() ] ])
] ] );
}
else if ( $this->member->todaysRecognizeBadges() )
{
$message = \IPS\Member::loggedIn()->language()->addToStack('recognize_points_so_far_single', NULL, [
$message = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_single', FALSE, [
'sprintf' => [
$this->member->name,
\IPS\Member::loggedIn()->language()->addToStack('recognize_points_pluralize', NULL, [ 'sprintf' => [ $this->member->todaysRecognizeBadges() ], 'pluralize' => [ $this->member->todaysRecognizeBadges() ] ])
\IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_pluralize', FALSE, [ 'sprintf' => [ $this->member->todaysRecognizeBadges() ], 'pluralize' => [ $this->member->todaysRecognizeBadges() ] ])
] ] );
}
@@ -2072,11 +2121,11 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
$maxPoints = \IPS\Settings::i()->achievements_recognize_max_per_user_day - $this->member->todaysRecognizePoints();
if ( $maxPoints > 0 )
{
$message .= \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_limit', NULL, ['sprintf' => [$this->member->name, $maxPoints]] );
$message .= \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_limit', FALSE, ['sprintf' => [$this->member->name, $maxPoints]] );
}
else
{
$message .= \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_limit_none', NULL, ['sprintf' => [$this->member->name]] );
$message .= \IPS\Member::loggedIn()->language()->addToStack( 'recognize_points_so_far_limit_none', FALSE, ['sprintf' => [$this->member->name]] );
$disabled = TRUE;
}
@@ -2112,7 +2161,7 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
$form->add( new \IPS\Helpers\Form\Text( 'recognize_message', NULL, FALSE ) );
$form->add( new \IPS\Helpers\Form\YesNo( 'recognize_public', TRUE, FALSE ) );
\IPS\Member::loggedIn()->language()->words['recognize_message_desc'] = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_message__desc', NULL, [ 'sprintf' => [ $content->author()->name ] ] );
\IPS\Member::loggedIn()->language()->words['recognize_message_desc'] = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_message__desc', FALSE, [ 'sprintf' => [ $content->author()->name ] ] );
if ( $values = $form->values() )
{
if ( ! $values['recognize_badge'] and ! $values['recognize_points'] )
@@ -2134,7 +2183,7 @@ class _profile extends \IPS\Helpers\CoverPhoto\Controller
}
}
\IPS\Output::i()->title = \IPS\Member::loggedIn()->language()->addToStack('recognize_author', NULL, [ 'sprintf' => [ $content->author()->name ] ] );
\IPS\Output::i()->title = \IPS\Member::loggedIn()->language()->addToStack( 'recognize_author', FALSE, [ 'sprintf' => [ $content->author()->name ] ] );
\IPS\Output::i()->output = $form->customTemplate( array( \IPS\Theme::i()->getTemplate( 'forms', 'core' ), 'popupTemplate' ) );
}
catch( \Exception $e )