function wc_display_yotpo_admin_page() { if (function_exists('current_user_can') && !current_user_can('manage_options')) { die(__('')); } if (wc_yotpo_compatible()) { if (isset($_POST['log_in_button'])) { wc_display_yotpo_settings(); } elseif (isset($_POST['yotpo_settings'])) { check_admin_referer('yotpo_settings_form'); wc_proccess_yotpo_settings(); wc_display_yotpo_settings(); } elseif (isset($_POST['yotpo_register'])) { check_admin_referer('yotpo_registration_form'); $success = wc_proccess_yotpo_register(); if ($success) { wc_display_yotpo_settings($success); } else { wc_display_yotpo_register(); } } elseif (isset($_POST['yotpo_past_orders'])) { wc_yotpo_send_past_orders(); wc_display_yotpo_settings(); } else { $yotpo_settings = get_option('yotpo_settings', wc_yotpo_get_degault_settings()); if (empty($yotpo_settings['app_key']) && empty($yotpo_settings['secret'])) { wc_display_yotpo_register(); } else { wc_display_yotpo_settings(); } } } else { if (version_compare(phpversion(), '5.2.0') < 0) { echo '<h1>Yotpo plugin requires PHP 5.2.0 above.</h1><br>'; } if (!function_exists('curl_init')) { echo '<h1>Yotpo plugin requires cURL library.</h1><br>'; } } }
function wc_yotpo_map($order_id) { $yotpo_settings = get_option('yotpo_settings', wc_yotpo_get_degault_settings()); $secret = $yotpo_settings['secret']; $app_key = $yotpo_settings['app_key']; if (!empty($app_key) && !empty($secret) && wc_yotpo_compatible()) { try { $purchase_data = wc_yotpo_get_single_map_data($order_id); if (!is_null($purchase_data) && is_array($purchase_data)) { require_once plugin_dir_path(__FILE__) . 'lib/yotpo-api/Yotpo.php'; $yotpo_api = new Yotpo($app_key, $secret); $get_oauth_token_response = $yotpo_api->get_oauth_token(); if (!empty($get_oauth_token_response) && !empty($get_oauth_token_response['access_token'])) { $purchase_data['utoken'] = $get_oauth_token_response['access_token']; $purchase_data['platform'] = 'woocommerce'; $response = $yotpo_api->create_purchase($purchase_data); } } } catch (Exception $e) { error_log($e->getMessage()); } } }