Last active
November 8, 2019 14:39
-
-
Save Pebblo/c09ff7a1ee5ac618a41771a901661814 to your computer and use it in GitHub Desktop.
Remove the promotion input field for specific tickets
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php //Please do not include the opening PHP tag if you already have one | |
function tw_remove_promo_input_for_specific_tkts( $before_payment_options) { | |
//If the promotions add-on is not active we don't need any of this to run. | |
if( class_exists('EEM_Promotion') ) { | |
$checkout = EE_Registry::instance()->SSN->checkout(); | |
if ( $checkout instanceof EE_Checkout ) { | |
$transaction = $checkout->transaction; | |
if ( $transaction instanceof EE_Transaction ) { | |
//Create an array to hold the event ID's. | |
$TKT_IDs = array(); | |
//Pull the Ticket ID's from the registrations. | |
foreach ( $transaction->registrations() as $registration ) { | |
if ( $registration instanceof EE_Registration ) { | |
$ticket = $registration->ticket(); | |
$TKT_IDs[] = $ticket->ID(); | |
} | |
} | |
//We only need each event ID once. | |
$TKT_IDs = array_unique($TKT_IDs); | |
// Set the ID's of the tickets that should remove the promotion field. | |
$no_promo_tkts = array( 25 ); | |
if( array_intersect($TKT_IDs, $no_promo_tkts) ) { | |
//If any of the tickets in the cart martch the ID's set in $no_promo_tkts then remove the promo intput. | |
remove_filter('FHEE__EE_SPCO_Reg_Step_Payment_Options___display_payment_options__before_payment_options', array('EED_Promotions', 'add_promotions_form_inputs') ); | |
} | |
} | |
} | |
} | |
return $before_payment_options; | |
} | |
add_filter('FHEE__EE_SPCO_Reg_Step_Payment_Options___display_payment_options__before_payment_options', 'tw_remove_promo_input_for_specific_tkts', 9 ); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment