Version 5.0.13

This commit is contained in:
Neo committed 2025-12-19 19:04:57 -08:00
1 parent b89858b2ff
commit 5efe744c5f
1407 files changed
+69690 -30177

No files matched your search

@@ -18,6 +18,7 @@ use DOMXpath;
use Exception;
use IPS\Api\OAuthClient;
use IPS\Application;
use IPS\core\DataLayer;
use IPS\core\ShareLinks\Service;
use IPS\DateTime;
use IPS\Db;
@@ -37,12 +38,14 @@ use IPS\Helpers\Form\Text;
use IPS\Helpers\Form\YesNo;
use IPS\Helpers\Wizard;
use IPS\Http\Url;
use IPS\Log;
use IPS\Login;
use IPS\Login\Exception as LoginException;
use IPS\Login\Handler;
use IPS\Login\Success;
use IPS\Member;
use IPS\Member\Device;
use IPS\Member\Group;
use IPS\Member\PrivacyAction;
use IPS\Member\ProfileStep;
use IPS\MFA\MFAHandler;
@@ -61,6 +64,7 @@ use UnderflowException;
use function count;
use function defined;
use function in_array;
use function intval;
use function is_array;
use function is_numeric;
use function is_string;
@@ -194,10 +198,6 @@ class settings extends Controller
'title' => 'email_address',
'url' => Url::internal( "app=core&module=system&controller=settings&area=email", "front", "settings_email" )
];
if( Member::loggedIn()->members_bitoptions['email_messages_bounce'] )
{
$tabs['email']['warning'] = true;
}
}
/* Can change password? */
@@ -424,7 +424,6 @@ class settings extends Controller
$form->class = 'ipsForm_collapseTablet';
$currentEmail = htmlspecialchars( Member::loggedIn()->email, ENT_DISALLOWED, 'UTF-8', FALSE );
$form->addDummy( 'current_email', Member::loggedIn()->members_bitoptions["email_messages_bounce"] ? Theme::i()->getTemplate( 'global', 'core' )->memberEmailBlockedMessage( $currentEmail ) : $currentEmail );
$form->add( new FormEmail(
'new_email',
'',
@@ -989,6 +988,10 @@ class settings extends Controller
$row = Db::i()->select( '*', PrivacyAction::$databaseTable, $where )->first();
PrivacyAction::constructFromData( $row )->delete();
Member::loggedIn()->logHistory( 'core', 'privacy', [ 'type' => 'account_deletion_cancelled' ] );
if ( DataLayer::enabled() )
{
DataLayer::i()->addEvent( 'account_deletion_canceled', [] );
}
Output::i()->redirect( Url::internal( 'app=core&module=system&controller=settings&area=mfa', 'front'), 'account_deletion_cancelled' );
}
catch( UnderflowException $e )
@@ -1010,6 +1013,12 @@ class settings extends Controller
$request = PrivacyAction::getDeletionRequestByMemberAndKey( Member::loggedIn(), $key );
$request->confirmAccountDeletion();
/* Add data layer event */
if ( DataLayer::enabled() )
{
DataLayer::i()->addEvent( 'account_deletion_requested', [] );
}
Output::i()->redirect( $this->url->setQueryString( 'area','mfa'), 'account_deletion_confirmed' );
}
catch ( OutOfRangeException $e )
@@ -1350,6 +1359,30 @@ class settings extends Controller
}
catch( BadMethodCallException $e ){}
}
/* Data Layer Event */
if ( $oldName !== $values['new_username'] and DataLayer::enabled() )
{
try
{
$groupName = Group::load( Member::loggedIn()->member_group_id )->formattedName;
}
catch ( UnderflowException $e )
{
$groupName = null;
}
$properties = array(
'profile_group' => $groupName,
'profile_group_id' => Member::loggedIn()->member_group_id ?: null,
'profile_id' => intval( Member::loggedIn()->member_id ) ?: null,
'profile_name' => Member::loggedIn()->name ?: null,
'updated_custom_fields' => false,
'updated_profile_name' => DataLayer::i()->includeSSOForMember() ? [ 'old' => $oldName, 'new' => $values['new_username'] ] : true,
'updated_profile_photo' => false,
'updated_profile_coverphoto' => false,
);
DataLayer::i()->addEvent( 'social_update', $properties );
}
/* Redirect */
Output::i()->redirect( Url::internal( 'app=core&module=system&controller=settings&area=username', 'front', 'settings_username' ), 'username_changed' );