Last active
July 9, 2016 22:33
-
-
Save hiddenkirby/f370007d52067f34100d8ec26549e554 to your computer and use it in GitHub Desktop.
This file contains hidden or 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
// hooking woocommerce purchase to updating the users sub level | |
function get_package_title_from_product_slug($product_slug) { | |
// fastest way is manual way... also shittiest way .. very fragile | |
_log('getting package title for: ' + $product_slug); | |
switch ($product_slug) { | |
case 'agent-1-property': | |
$result = 'Agent (1 property)'; | |
break; | |
case 'agent-5-property': | |
$result = 'Agent (5 properties)'; | |
break; | |
case 'agent-1-yr': | |
$result = 'Agent (unlimited)'; | |
break; | |
case 'homeowner-3-mo': | |
$result = 'Homeowner (3 mo)'; | |
break; | |
case 'homeowner-6-mo': | |
$result = 'Homeowner (6 mo)'; | |
break; | |
case 'homeowner-1-yr': | |
$result = 'Homeowner (12 mo)'; | |
break; | |
default: | |
$result = 'Homeseeker'; | |
} | |
_log('Returning package title as: ' + $result); | |
return $result; | |
} | |
function woocommerce_to_update_user_sub($order_id = ''){ | |
//get product slug from order_id | |
_log('Order id: ' + $order_id); | |
$order = WC_Order::get_order($order_id); | |
_log('Order: ' + $order); | |
$items = $order.get_items(); | |
_log('Items: ' + $items); | |
$product_slug = $items[0]->$order_item_name; | |
_log('Product slug: ' + $product_slug); | |
// need $wc_package_title from wc slug | |
$wc_package_title = get_package_title_from_product_slug($product_slug); | |
$packages = Horizon_Packages_Logic::get_packages_choices(); | |
_log('Packages: ' + $packages); | |
foreach ( $packages as $package_id => $package_title ){ | |
if ($wc_package_title == $package_title){ | |
_log('Setting package to: ' + $wc_package_title); | |
$user_id = get_current_user_id(); | |
_log('User id: ' + $user_id); | |
//$user_id, $package_id required | |
do_action('horizon_update_user_subscription', $user_id, $package_id ); | |
} | |
} | |
} | |
add_action('woocommerce_payment_complete', 'woocommerce_to_update_user_sub'); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment