/**
  *  1.13. GoUrl Payment Box
  */
 public static function pmpro_gourl_cryptocoin_payment($order, $invoice = false)
 {
     global $gourl, $pmpro_currency, $current_user, $wpdb;
     $tmp = "";
     if (!$order) {
         $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
         $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__('The GoUrl payment plugin was called to process a payment but could not retrieve the order details for orderID %s. Cannot continue!', GOURLPMP), $order_id) . "</div>";
         return $tmp;
     }
     if ($order->gateway != "gourl") {
         return false;
     }
     // Initialize
     // ------------------------
     if (class_exists('gourlclass') && defined('GOURL') && is_object($gourl)) {
         $payments = $gourl->payments();
         // Activated Payments
         $coin_names = $gourl->coin_names();
         // All Coins
         $languages = $gourl->languages();
         // All Languages
     } else {
         $payments = array();
         $coin_names = array();
         $languages = array();
     }
     $defcoin = pmpro_getOption("gourl_defcoin");
     if (!in_array($defcoin, array_keys($payments))) {
         $defcoin = current(array_keys($payments));
     }
     $deflang = pmpro_getOption("gourl_deflang");
     if (!in_array($deflang, array_keys($languages))) {
         $deflang = current(array_keys($languages));
     }
     $emultiplier = str_replace("%", "", pmpro_getOption("gourl_emultiplier"));
     if (!$emultiplier || !is_numeric($emultiplier) || $emultiplier <= 0) {
         $emultiplier = "1.00";
     }
     $iconwidth = str_replace("px", "", pmpro_getOption("gourl_iconwidth"));
     if (!$iconwidth || !is_numeric($iconwidth) || $iconwidth < 30 || $iconwidth > 250) {
         $iconwidth = 60;
     }
     $iconwidth = $iconwidth . "px";
     // Current Order
     // -----------------
     $order_id = $order->id;
     $order_total = $order->total;
     $order_currency = $pmpro_currency;
     $order_user_id = $order->user_id;
     // Security
     // -------------
     if (!$order_id) {
         $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
         $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__('The GoUrl payment plugin was called to process a payment but could not retrieve the order details for orderID %s. Cannot continue!', GOURLPMP), $order_id) . "</div>";
     } elseif ($order_user_id && $order_user_id != get_current_user_id() && !current_user_can('manage_options')) {
         return false;
     } elseif (!class_exists('gourlclass') || !defined('GOURL') || !is_object($gourl)) {
         $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
         $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__("Please try a different payment method. Admin need to install and activate wordpress plugin <a href='%s'>GoUrl Bitcoin Gateway for Wordpress</a> to accept Bitcoin/Altcoin Payments online.", GOURLPMP), "https://gourl.io/bitcoin-wordpress-plugin.html") . "</div>";
     } elseif (!$payments || !$defcoin || true === version_compare(PMPRO_VERSION, '1.8.4', '<') || true === version_compare(GOURL_VERSION, '1.3.3', '<') || array_key_exists($order_currency, $coin_names) && !array_key_exists($order_currency, $payments)) {
         $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
         $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try a different payment method or contact us if you need assistance (GoUrl Bitcoin Plugin not configured / %s not activated)', GOURLPMP), !$payments || !$defcoin || !isset($coin_names[$order_currency]) ? __("Cryptocurrency", GOURLPMP) : $coin_names[$order_currency]) . "</div>";
     } else {
         $plugin = "gourlpmpro";
         $amount = $order_total;
         $currency = $order_currency;
         $orderID = "order" . $order_id;
         $userID = $order_user_id;
         $period = "NOEXPIRY";
         $language = $deflang;
         $coin = $coin_names[$defcoin];
         $affiliate_key = "gourl";
         $crypto = array_key_exists($currency, $coin_names);
         if (!$userID) {
             $userID = "guest";
         }
         // allow guests to make payments
         if (!$userID) {
             $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
             $tmp .= "<div align='center'><a href='" . wp_login_url(get_permalink()) . "'>\n\t\t\t\t\t<img style='border:none;box-shadow:none;' title='" . __('You need first to login or register on the website to make Bitcoin/Altcoin Payments', GOURLPMP) . "' vspace='10'\n\t\t\t\t\tsrc='" . $gourl->box_image() . "' border='0'></a></div>";
         } elseif ($amount <= 0) {
             $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
             $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__("This order's amount is '%s' - it cannot be paid for. Please contact us if you need assistance.", GOURLPMP), $amount . " " . $currency) . "</div>";
         } else {
             // Exchange (optional)
             // --------------------
             if ($currency != "USD" && !$crypto) {
                 $amount = gourl_convert_currency($currency, "USD", $amount);
                 if ($amount <= 0) {
                     $tmp .= '<h2>' . __('Information', GOURLPMP) . '</h2>' . PHP_EOL;
                     $tmp .= "<div class='pmpro_message pmpro_error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try later or use a different payment method. Cannot receive exchange rates for %s/USD from Google Finance', GOURLPMP), $currency) . "</div>";
                 } else {
                     $currency = "USD";
                 }
             }
             if (!$crypto) {
                 $amount = $amount * $emultiplier;
             }
             // Payment Box
             // ------------------
             if ($amount > 0) {
                 // crypto payment gateway
                 $result = $gourl->cryptopayments($plugin, $amount, $currency, $orderID, $period, $language, $coin, $affiliate_key, $userID, $iconwidth);
                 if (!$result["is_paid"]) {
                     // trial used before
                     if ($userID != "guest" && get_option(GOURL . "PMPRO_FREE_" . $userID . "_" . $order->membership_id)) {
                         $tmp .= ($invoice ? "<br>" : "") . "<i>" . sprintf(__('Free Trial already used on %s', GOURLPMP), get_option(GOURL . "PMPRO_FREE_" . $userID . "_" . $order->membership_id)) . ".</i>";
                     }
                     $tmp .= '<br><h3>' . __('Pay Now -', GOURLPMP) . '</h3>' . PHP_EOL;
                 }
                 if ($result["error"]) {
                     $tmp .= "<div class='pmpro_message pmpro_error'>" . __("Sorry, but there was an error processing your order. Please try a different payment method.", GOURLPMP) . "<br/>" . $result["error"] . "</div>";
                 } else {
                     // display payment box or successful payment result
                     $tmp .= $result["html_payment_box"];
                     if ($order_user_id == get_current_user_id()) {
                         // payment received
                         if ($result["is_paid"]) {
                             if ($invoice) {
                                 $tmp .= "<div align='center'>" . __('Thank you for your membership.', GOURLPMP) . "</div>";
                             } else {
                                 $tmp .= "<div align='center'>" . sprintf(__('Thank you for your membership to %s.<br>Your %s membership is now active.', GOURLPMP), get_bloginfo("name"), $current_user->membership_level->name) . "</div>";
                             }
                         }
                         if (!$invoice) {
                             $tmp .= "<br><br><div align='center'><a href=" . pmpro_url("account") . ">" . __('View Your Membership Account', GOURLPMP) . " &rarr;</a>";
                         }
                     }
                 }
             }
         }
     }
     $tmp .= "<br><br>";
     return $tmp;
 }
 public function cryptocoin_payment($order_id)
 {
     global $gourl;
     $order = new WC_Order($order_id);
     if ($order === false) {
         echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
         echo "<div class='woocommerce-error'>" . sprintf(__('The GoUrl payment plugin was called to process a payment but could not retrieve the order details for orderID %s. Cannot continue!', GOURLWC), $order_id) . "</div>";
     } elseif ($order->status == "cancelled" || $order->post_status == "wc-cancelled") {
         echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
         echo "<div class='woocommerce-error'>" . __("This order's status is 'Cancelled' - it cannot be paid for. Please contact us if you need assistance.", GOURLWC) . "</div>";
     } elseif (!class_exists('gourlclass') || !defined('GOURL') || !is_object($gourl)) {
         echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
         echo "<div class='woocommerce-error'>" . sprintf(__("Please try a different payment method. Admin need to install and activate wordpress plugin <a href='%s'>GoUrl Bitcoin Gateway for Wordpress</a> to accept Bitcoin/Altcoin Payments online.", GOURLWC), "https://gourl.io/bitcoin-wordpress-plugin.html") . "</div>";
     } elseif (!$this->payments || !$this->defcoin || true === version_compare(WOOCOMMERCE_VERSION, '2.1', '<') || true === version_compare(GOURL_VERSION, '1.3.3', '<') || array_key_exists($order->order_currency, $this->coin_names) && !array_key_exists($order->order_currency, $this->payments)) {
         echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
         echo "<div class='woocommerce-error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try a different payment method or contact us if you need assistance (GoUrl Bitcoin Plugin not configured / %s not activated).', GOURLWC), !$this->payments || !$this->defcoin || !isset($this->coin_names[$order->order_currency]) ? $this->title : $this->coin_names[$order->order_currency]) . "</div>";
     } else {
         $plugin = "gourlwoocommerce";
         $amount = $order->order_total;
         $currency = $order->order_currency;
         if (gourl_wc_fiat_btc($currency)) {
             $currency = "BTC";
         }
         $orderID = "order" . $order->id;
         $userID = $order->user_id;
         $period = "NOEXPIRY";
         $language = $this->deflang;
         $coin = $this->coin_names[$this->defcoin];
         $affiliate_key = GOURLWC_AFFILIATE_KEY;
         $crypto = array_key_exists($currency, $this->coin_names);
         if (!$userID) {
             $userID = "guest";
         }
         // allow guests to make checkout (payments)
         if (!$userID) {
             echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
             echo "<div align='center'><a href='" . wp_login_url(get_permalink()) . "'>\n\t\t\t\t\t\t<img style='border:none;box-shadow:none;' title='" . __('You need first to login or register on the website to make Bitcoin/Altcoin Payments', GOURLWC) . "' vspace='10'\n\t\t\t\t\t\tsrc='" . $gourl->box_image() . "' border='0'></a></div>";
         } elseif ($amount <= 0) {
             echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
             echo "<div class='woocommerce-error'>" . sprintf(__("This order's amount is %s - it cannot be paid for. Please contact us if you need assistance.", GOURLWC), $amount . " " . $currency) . "</div>";
         } else {
             // Exchange (optional)
             // --------------------
             if ($currency != "USD" && !$crypto) {
                 $amount = gourl_convert_currency($currency, "USD", $amount);
                 if ($amount <= 0) {
                     echo '<br><h2>' . __('Information', GOURLWC) . '</h2>' . PHP_EOL;
                     echo "<div class='woocommerce-error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try later or use a different payment method. System cannot receive exchange rates for %s/USD from Google Finance', GOURLWC), $currency) . "</div>";
                 } else {
                     $currency = "USD";
                 }
             }
             if (!$crypto) {
                 $amount = $amount * $this->emultiplier;
             }
             // Payment Box
             // ------------------
             if ($amount > 0) {
                 // crypto payment gateway
                 $result = $gourl->cryptopayments($plugin, $amount, $currency, $orderID, $period, $language, $coin, $affiliate_key, $userID, $this->iconwidth);
                 if (!isset($result["is_paid"]) || !$result["is_paid"]) {
                     echo '<br><h2>' . __('Pay Now -', GOURLWC) . '</h2>' . PHP_EOL;
                 }
                 if ($result["error"]) {
                     echo "<div class='woocommerce-error'>" . __("Sorry, but there was an error processing your order. Please try a different payment method.", GOURLWC) . "<br>" . $result["error"] . "</div>";
                 } else {
                     // display payment box or successful payment result
                     echo $result["html_payment_box"];
                     // payment received
                     if ($result["is_paid"]) {
                         if (false) {
                             echo "<div align='center'>" . sprintf(__('%s Payment ID: #%s', GOURLWC), ucfirst($result["coinname"]), $result["paymentID"]) . "</div>";
                         }
                         echo "<br>";
                     }
                 }
             }
         }
     }
     echo "<br>";
     return true;
 }
 public function cryptocoin_payment($payment)
 {
     global $gourl;
     if (!is_object($payment) || edd_get_payment_gateway($payment->ID) != "gourl") {
         return true;
     }
     // Current Order Details
     $status = $payment->post_status;
     $amount = edd_get_payment_amount($payment->ID);
     $currency = edd_get_payment_currency_code($payment->ID);
     $userID = edd_get_payment_user_id($payment->ID);
     $orderID = "order" . $payment->ID;
     // file shortcode-receipt.php
     // filter 'edd_payment_receipt_before' inside <table>
     echo '</thead></table>';
     if (!$payment || !$payment->ID) {
         echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
         echo "<div class='edd-alert edd-alert-error'>" . __('The GoUrl payment plugin was called to process a payment but could not retrieve the order details. Cannot continue!', GOURLEDD) . "</div>";
     } elseif (!in_array($status, array("pending", "publish"))) {
         echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
         echo "<div class='edd-alert edd-alert-error'>" . sprintf(__("This order's status is '%s' - it cannot be paid for. Please contact us if you need assistance.", GOURLEDD), $status) . "</div>";
     } elseif (!class_exists('gourlclass') || !defined('GOURL') || !is_object($gourl)) {
         echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
         echo "<div class='edd-alert edd-alert-error'>" . sprintf(__("Please try a different payment method. Admin need to install and activate wordpress plugin <a href='%s'>GoUrl Bitcoin Gateway for Wordpress</a> to accept Bitcoin/Altcoin Payments online.", GOURLEDD), "https://gourl.io/bitcoin-wordpress-plugin.html") . "</div>";
     } elseif (!$this->payments || !$this->defcoin || true === version_compare(EDD_VERSION, '2.4.2', '<') || true === version_compare(GOURL_VERSION, '1.3.4', '<') || array_key_exists($currency, $this->coin_names) && !array_key_exists($currency, $this->payments)) {
         echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
         echo "<div class='edd-alert edd-alert-error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try a different payment method or contact us if you need assistance (GoUrl Bitcoin Plugin not configured / %s not activated).', GOURLEDD), !$this->payments || !$this->defcoin || !isset($this->coin_names[$currency]) ? $this->title : $this->coin_names[$currency]) . "</div>";
     } else {
         $plugin = "gourledd";
         $period = "NOEXPIRY";
         $language = $this->deflang;
         $coin = $this->coin_names[$this->defcoin];
         $affiliate_key = 'gourl';
         $crypto = array_key_exists($currency, $this->coin_names);
         if (!$userID) {
             $userID = "guest";
         }
         // allow guests to make checkout (payments)
         if (!$userID) {
             echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
             echo "<div align='center'><a href='" . wp_login_url(get_permalink()) . "'>\n\t\t\t\t\t\t\t<img style='border:none;box-shadow:none;' title='" . __('You need first to login or register on the website to make Bitcoin/Altcoin Payments', GOURLEDD) . "' vspace='10'\n\t\t\t\t\t\t\tsrc='" . $gourl->box_image() . "' border='0'></a></div>";
         } elseif ($amount <= 0) {
             echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
             echo "<div class='edd-alert edd-alert-error'>" . sprintf(__("This order's amount is %s - it cannot be paid for. Please contact us if you need assistance.", GOURLEDD), $amount . " " . $currency) . "</div>";
         } else {
             // Exchange (optional)
             // --------------------
             if ($currency != "USD" && !$crypto) {
                 $amount = gourl_convert_currency($currency, "USD", $amount);
                 if ($amount <= 0) {
                     echo '<h3>' . __('Information', GOURLEDD) . '</h3>' . PHP_EOL;
                     echo "<div class='edd-alert edd-alert-error'>" . sprintf(__('Sorry, but there was an error processing your order. Please try later or use a different payment method. System cannot receive exchange rates for %s/USD from Google Finance', GOURLEDD), $currency) . "</div>";
                 } else {
                     $currency = "USD";
                 }
             }
             if (!$crypto) {
                 $amount = $amount * $this->emultiplier;
             }
             // Payment Box
             // ------------------
             if ($amount > 0) {
                 // crypto payment gateway
                 $result = $gourl->cryptopayments($plugin, $amount, $currency, $orderID, $period, $language, $coin, $affiliate_key, $userID, $this->iconwidth);
                 if (!isset($result["is_paid"]) || !$result["is_paid"]) {
                     echo '<h3>' . __('Pay Now -', GOURLEDD) . '</h3>' . PHP_EOL;
                 }
                 if ($result["error"]) {
                     echo "<div class='edd-alert edd-alert-error'>" . __("Sorry, but there was an error processing your order. Please try a different payment method.", GOURLEDD) . "<br/>" . $result["error"] . "</div>";
                 } else {
                     // display payment box or successful payment result
                     echo $result["html_payment_box"];
                     // payment received
                     if ($result["is_paid"]) {
                         if (false) {
                             echo "<div align='center'>" . sprintf(__('%s Payment ID: #%s', GOURLEDD), ucfirst($result["coinname"]), $result["paymentID"]) . "</div>";
                         }
                         echo "<br/>";
                         if ($status == 'pending') {
                             header('Location: ' . $_SERVER['REQUEST_URI']);
                         }
                     }
                 }
             }
         }
     }
     echo '<br/><br/><table id="edd_purchase_receipt"><thead>';
     return true;
 }
 /**
  * 3.4
  */
 public static function cryptocoin_payment($arr)
 {
     global $gourl, $wpdb;
     static $flag = false;
     if ($flag) {
         return false;
     }
     $flag = true;
     // Initialize
     // ------------------------
     if (class_exists('gourlclass') && defined('GOURL') && is_object($gourl)) {
         $payments = $gourl->payments();
         // Activated Payments
         $coin_names = $gourl->coin_names();
         // All Coins
         $languages = $gourl->languages();
         // All Languages
     } else {
         $payments = array();
         $coin_names = array();
         $languages = array();
     }
     $statuses = array(2 => 'Order Received', 3 => 'Accepted Payment', 4 => 'Job Dispatched', 5 => 'Closed Order');
     $mainplugin_url = admin_url("plugin-install.php?tab=search&type=term&s=GoUrl+Bitcoin+Payment+Gateway+Downloads");
     $defcoin = get_option(GOURLWPSC . 'defcoin');
     if (!in_array($defcoin, array_keys($payments))) {
         $defcoin = current(array_keys($payments));
     }
     $deflang = get_option(GOURLWPSC . 'deflang');
     if (!in_array($deflang, array_keys($languages))) {
         $deflang = current(array_keys($languages));
     }
     $emultiplier = str_replace("%", "", get_option(GOURLWPSC . 'emultiplier'));
     if (!$emultiplier || !is_numeric($emultiplier) || $emultiplier <= 0) {
         $emultiplier = "1.00";
     }
     $ostatus = get_option(GOURLWPSC . 'ostatus');
     if (!in_array($ostatus, array_keys($statuses))) {
         $ostatus = 3;
     }
     // Accepted Payment
     $ostatus2 = get_option(GOURLWPSC . 'ostatus2');
     if (!in_array($ostatus2, array_keys($statuses))) {
         $ostatus2 = 3;
     }
     // Accepted Payment
     $iconwidth = str_replace("px", "", get_option(GOURLWPSC . 'iconwidth'));
     if (!$iconwidth || !is_numeric($iconwidth) || $iconwidth < 30 || $iconwidth > 250) {
         $iconwidth = 60;
     }
     $iconwidth = $iconwidth . "px";
     // Current Order
     // -----------------
     $order_id = $arr["purchase_id"];
     $order_total = $arr["purchase_log"]["totalprice"];
     $order_currency = version_compare(WPSC_VERSION, '3.8.14', '<') ? current($wpdb->get_results("SELECT code FROM `" . WPSC_TABLE_CURRENCY_LIST . "` WHERE id = " . intval(get_option('currency_type')) . " LIMIT 1", ARRAY_A))["code"] : WPSC_Countries::get_currency_code(get_option('currency_type'));
     $order_user_id = $arr["purchase_log"]["user_ID"];
     if ($order_currency == "DOG") {
         $order_currency = "DOGE";
     }
     // WP eCommerce allow max 3 symbols for coin symbol
     if ($order_currency == "DAS") {
         $order_currency = "DASH";
     }
     // WP eCommerce allow max 3 symbols for coin symbol
     // Security
     // -------------
     if (!$order_id) {
         throw new Exception('The GoUrl payment plugin was called to process a payment but could not retrieve the order details for order_id. Cannot continue!');
     }
     if ($arr["purchase_log"]["gateway"] != "wpsc_gourl_gateway" || $order_user_id && $order_user_id != get_current_user_id()) {
         return false;
     }
     if (!class_exists('gourlclass') || !defined('GOURL') || !is_object($gourl)) {
         echo '<h2>' . __('Information', GOURLWPSC) . '</h2>' . PHP_EOL;
         echo "<div style='border:1px solid #eee;margin:20px 10px;padding:10px'>" . __("Please try a different payment method. Admin need to install and activate wordpress plugin 'GoUrl Bitcoin Gateway' (https://gourl.io/bitcoin-wordpress-plugin.html) to accept Bitcoin/Altcoin Payments online", GOURLWPSC) . "</div>";
     } elseif (!$payments || !$defcoin || true === version_compare(WPSC_VERSION, '3.8.10', '<') || true === version_compare(GOURL_VERSION, '1.3', '<') || array_key_exists($order_currency, $coin_names) && !array_key_exists($order_currency, $payments)) {
         echo '<h2>' . __('Information', GOURLWPSC) . '</h2>' . PHP_EOL;
         echo "<div style='border:1px solid #eee;margin:20px 10px;padding:10px'>" . sprintf(__('Sorry, but there was an error processing your order. Please try a different payment method or contact us if you need assistance. (GoUrl Bitcoin Plugin not configured - %s not activated)', GOURLWPSC), !$payments || !$defcoin ? "Cryptocurrency" : $coin_names[$order_currency]) . "</div>";
     } else {
         $plugin = "gourlwpecommerce";
         $amount = $order_total;
         $currency = $order_currency;
         $orderID = "order" . $order_id;
         $userID = $order_user_id;
         $period = "NOEXPIRY";
         $language = $deflang;
         $coin = $coin_names[$defcoin];
         $affiliate_key = "gourl";
         $crypto = array_key_exists($currency, $coin_names);
         if (!$userID) {
             $userID = "guest";
         }
         // allow guests to make checkout (payments)
         if (!$userID) {
             echo '<h2>' . __('Information', GOURLWPSC) . '</h2>' . PHP_EOL;
             echo "<div align='center'><a href='" . wp_login_url(get_permalink()) . "'>\n\t\t\t\t\t<img style='border:none;box-shadow:none;' title='" . __('You need first to login or register on the website to make Bitcoin/Altcoin Payments', GOURLWPSC) . "' vspace='10'\n\t\t\t\t\tsrc='" . $gourl->box_image() . "' border='0'></a></div>";
         } elseif ($amount <= 0) {
             echo '<h2>' . __('Information', GOURLWPSC) . '</h2>' . PHP_EOL;
             echo "<div style='border:1px solid #eee;margin:20px 10px;padding:10px'>" . sprintf(__('This order&rsquo;s amount is &ldquo;%s&rdquo; &mdash; it cannot be paid for. Please contact us if you need assistance.', GOURLWPSC), $amount . " " . $currency) . "</div>";
         } else {
             // Exchange (optional)
             // --------------------
             if ($currency != "USD" && !$crypto) {
                 $amount = gourl_convert_currency($currency, "USD", $amount);
                 if ($amount <= 0) {
                     echo '<h2>' . __('Information', GOURLWPSC) . '</h2>' . PHP_EOL;
                     echo "<div style='border:1px solid #eee;margin:20px 10px;padding:10px'>" . sprintf(__('Sorry, but there was an error processing your order. Please try later or use a different payment method. Cannot receive exchange rates for %s/USD from Google Finance', GOURLWPSC), $currency) . "</div>";
                 } else {
                     $currency = "USD";
                 }
             }
             if (!$crypto) {
                 $amount = $amount * $emultiplier;
             }
             // Payment Box
             // ------------------
             if ($amount > 0) {
                 // crypto payment gateway
                 $result = $gourl->cryptopayments($plugin, $amount, $currency, $orderID, $period, $language, $coin, $affiliate_key, $userID, $iconwidth);
                 if (!$result["is_paid"]) {
                     echo '<h2>' . __('Pay Now', GOURLWPSC) . '</h2>' . PHP_EOL;
                 }
                 if ($result["error"]) {
                     echo "<div style='border:1px solid #eee;margin:20px 10px;padding:10px'>" . __("Sorry, but there was an error processing your order. Please try a different payment method.", GOURLWPSC) . "<br/>" . $result["error"] . "</div>";
                 } else {
                     // display payment box or successful payment result
                     echo $result["html_payment_box"];
                     // payment received
                     if ($result["is_paid"]) {
                         echo "<div align='center'>" . sprintf(__('%s payment ID: #%s, order ID: #%s', GOURLWPSC), ucfirst($result["coinname"]), $result["paymentID"], $order_id) . "</div><br>";
                     }
                 }
             }
         }
     }
     echo "<br><br>";
     return true;
 }