Version 4.5.0
This commit is contained in:
1 parent
1a0c7fd3c2
commit
f79dcf067a
3791 files changed
+248032
-76372
No files matched your search
@@ -12,7 +12,7 @@
|
||||
namespace IPS\nexus\extensions\core\MemberSync;
|
||||
|
||||
/* To prevent PHP errors (extending class does not exist) revealing path */
|
||||
if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) )
|
||||
if ( !\defined( '\IPS\SUITE_UNIQUE_KEY' ) )
|
||||
{
|
||||
header( ( isset( $_SERVER['SERVER_PROTOCOL'] ) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0' ) . ' 403 Forbidden' );
|
||||
exit;
|
||||
@@ -31,19 +31,6 @@ class _Nexus
|
||||
*/
|
||||
public function onCreateAccount( $member )
|
||||
{
|
||||
if ( \IPS\Dispatcher::hasInstance() and \IPS\Dispatcher::i()->controllerLocation === 'front' and isset( \IPS\Request::i()->cookie['referred_by'] ) )
|
||||
{
|
||||
$referredBy = \IPS\Member::load( \IPS\Request::i()->cookie['referred_by'] );
|
||||
if ( $referredBy->member_id )
|
||||
{
|
||||
\IPS\Db::i()->insert( 'nexus_referrals', array(
|
||||
'member_id' => $member->member_id,
|
||||
'referred_by' => \IPS\Request::i()->cookie['referred_by'],
|
||||
'amount' => '',
|
||||
) );
|
||||
}
|
||||
}
|
||||
|
||||
if ( $member->email )
|
||||
{
|
||||
\IPS\Db::i()->update( 'nexus_support_requests', array( 'r_member' => $member->member_id ), array( 'r_email=? AND r_member=0', $member->email ) );
|
||||
@@ -94,13 +81,11 @@ class _Nexus
|
||||
*/
|
||||
public function onMerge( $member, $member2 )
|
||||
{
|
||||
\IPS\Db::i()->update( 'nexus_customer_addresses', array( 'member' => $member->member_id ), array( 'member=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_customer_addresses', array( 'member' => $member->member_id ), array( '`member`=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_customer_cards', array( 'card_member' => $member->member_id ), array( 'card_member=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_invoices', array( 'i_member' => $member->member_id ), array( 'i_member=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_purchases', array( 'ps_member' => $member->member_id ), array( 'ps_member=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_purchases', array( 'ps_pay_to' => $member->member_id ), array( 'ps_pay_to=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_referrals', array( 'member_id' => $member->member_id ), array( 'member_id=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_referrals', array( 'referred_by' => $member->member_id ), array( 'referred_by=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_transactions', array( 't_member' => $member->member_id ), array( 't_member=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_alternate_contacts', array( 'main_id' => $member->member_id ), array( 'main_id=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_alternate_contacts', array( 'alt_id' => $member->member_id ), array( 'alt_id=?', $member2->member_id ) );
|
||||
@@ -112,6 +97,8 @@ class _Nexus
|
||||
\IPS\Db::i()->update( 'nexus_support_ratings', array( 'rating_from' => $member->member_id ), array( 'rating_from=?', $member2->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_support_ratings', array( 'rating_staff' => $member->member_id ), array( 'rating_staff=?', $member2->member_id ) );
|
||||
|
||||
\IPS\Db::i()->delete( 'nexus_customer_spend', array( 'spend_member_id=?', $member2->member_id ) );
|
||||
|
||||
/* Account Credit */
|
||||
$customerToKeep = \IPS\nexus\Customer::load( $member->member_id );
|
||||
$creditToKeep = $customerToKeep->cm_credits;
|
||||
@@ -137,11 +124,14 @@ class _Nexus
|
||||
/* Subscription packages */
|
||||
if ( $keepSub = \IPS\nexus\Subscription::loadActiveByMember( $member ) )
|
||||
{
|
||||
if ( $dropSub = \IPS\nexus\Subscription::loadActiveByMember( $member2 ) )
|
||||
if ( $dropSub = \IPS\nexus\Subscription::loadActiveByMember( $member2 ) AND $package = \IPS\nexus\Subscription\Package::load( $dropSub->package_id ) )
|
||||
{
|
||||
$dropSub->removeMember( \IPS\nexus\Customer::load( $member2->member_id ) );
|
||||
$package->removeMember( \IPS\nexus\Customer::load( $member2->member_id ) );
|
||||
}
|
||||
}
|
||||
|
||||
/* Recount total spend */
|
||||
$customerToKeep->recountTotalSpend();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -152,11 +142,11 @@ class _Nexus
|
||||
*/
|
||||
public function onDelete( $member )
|
||||
{
|
||||
\IPS\Db::i()->delete( 'nexus_customer_addresses', array( 'member=?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_customer_addresses', array( '`member`=?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_customer_cards', array( 'card_member=?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_customers', array( 'member_id=?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_referrals', array( 'referred_by=?', $member->member_id ) ); // Don't delete the record for the referrer if this is the referree as that's still relevant for the referree's account
|
||||
\IPS\Db::i()->delete( 'nexus_alternate_contacts', array( 'main_id=? OR alt_id =?', $member->member_id, $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_alternate_contacts', array( 'main_id=?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_alternate_contacts', array( 'alt_id =?', $member->member_id ) );
|
||||
\IPS\Db::i()->delete( 'nexus_support_request_log', array( "rlog_member=?", $member->member_id ) );
|
||||
\IPS\Db::i()->update( 'nexus_support_requests', array( 'r_staff' => 0 ), array( "r_staff=?", $member->member_id ) );
|
||||
|
||||
@@ -179,6 +169,8 @@ class _Nexus
|
||||
|
||||
/* Subscriptions (mop up orphaned members) */
|
||||
\IPS\Db::i()->delete( 'nexus_member_subscriptions', array( "sub_member_id=?", $member->member_id ) );
|
||||
|
||||
\IPS\Db::i()->delete( 'nexus_customer_spend', array( 'spend_member_id=?', $member->member_id ) );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -201,7 +193,7 @@ class _Nexus
|
||||
/* Moving out of an admin group? */
|
||||
if ( $refresh === FALSE AND ( isset( $changes['member_group_id'] ) OR isset( $changes['mgroup_others'] ) ) )
|
||||
{
|
||||
if ( isset( $changes['member_group_id'] ) AND in_array( $changes['member_group_id'], $adminGroups ) )
|
||||
if ( isset( $changes['member_group_id'] ) AND \in_array( $changes['member_group_id'], $adminGroups ) )
|
||||
{
|
||||
$refresh = TRUE;
|
||||
}
|
||||
@@ -210,7 +202,7 @@ class _Nexus
|
||||
{
|
||||
foreach( explode( ',', $changes['mgroup_others'] ) AS $group )
|
||||
{
|
||||
if ( in_array( $group, $adminGroups ) )
|
||||
if ( \in_array( $group, $adminGroups ) )
|
||||
{
|
||||
$refresh = TRUE;
|
||||
break;
|
||||
|
||||
Reference in new issue
Block a user