���� JFIF �� � ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/adimi/application/libraries/cryptobox/Examples/ |
<?php /** * @category Example2 - Pay-Per-Product (payments in multiple cryptocurrencies, you can use original price in USD) * @package GoUrl Cryptocurrency Payment API * copyright (c) 2014-2018 Delta Consultants * @crypto Supported Cryptocoins - Bitcoin, BitcoinCash, Litecoin, Dash, Dogecoin, Speedcoin, Reddcoin, Potcoin, Feathercoin, Vertcoin, Peercoin, MonetaryUnit, UniversalCurrency * @website https://gourl.io/bitcoin-payment-gateway-api.html#p1 * @live_demo https://gourl.io/lib/examples/pay-per-product-multi.php */ require_once( "../cryptobox.class.php" ); /**** CONFIGURATION VARIABLES ****/ $userID = ""; // place your registered userID or md5(userID) here (user1, user7, uo43DC, etc). // you don't need to use userID for unregistered website visitors // if userID is empty, system will autogenerate userID and save in cookies $userFormat = "COOKIE"; // save userID in cookies (or you can use IPADDRESS, SESSION) $orderID = "invoice000383"; // invoice number - 000383 $amountUSD = 2.21; // invoice amount - 2.21 USD // for convert fiat currencies Euro/GBP/etc. to USD, use function convert_currency_live() $period = "NOEXPIRY"; // one time payment, not expiry $def_language = "en"; // default Payment Box Language $def_payment = "bitcoin"; // Default Coin in Payment Box // *** For convert Euro/GBP/etc. to USD/Bitcoin, use function convert_currency_live() with Google Finance // *** examples: convert_currency_live("EUR", "BTC", 22.37) - convert 22.37 Euro to Bitcoin // *** convert_currency_live("EUR", "USD", 22.37) - convert 22.37 Euro to USD // IMPORTANT: Please read description of options here - https://gourl.io/api-php.html#options // List of coins that you accept for payments // For example, for accept payments in bitcoin, bitcoincash, litecoin use - $available_payments = array('bitcoin', 'bitcoincash', 'litecoin'); $available_payments = array('bitcoin', 'bitcoincash', 'litecoin', 'dash', 'dogecoin', 'speedcoin', 'reddcoin', 'potcoin', 'feathercoin', 'vertcoin', 'peercoin', 'monetaryunit', 'universalcurrency'); // Goto https://gourl.io/info/memberarea/My_Account.html // You need to create record for each your coin and get private/public keys // Place Public/Private keys for all your available coins from $available_payments $all_keys = array( "bitcoin" => array("public_key" => "-your public key for Bitcoin box-", "private_key" => "-your private key for Bitcoin box-"), "bitcoincash" => array("public_key" => "-your public key for BitcoinCash box-", "private_key" => "-your private key for BitcoinCash box-"), "litecoin" => array("public_key" => "-your public key for Litecoin box-", "private_key" => "-your private key for Litecoin box-") // etc. ); /********************************/ // Re-test - that all keys for $available_payments added in $all_keys if (!in_array($def_payment, $available_payments)) $available_payments[] = $def_payment; foreach($available_payments as $v) { if (!isset($all_keys[$v]["public_key"]) || !isset($all_keys[$v]["private_key"])) die("Please add your public/private keys for '$v' in \$all_keys variable"); elseif (!strpos($all_keys[$v]["public_key"], "PUB")) die("Invalid public key for '$v' in \$all_keys variable"); elseif (!strpos($all_keys[$v]["private_key"], "PRV")) die("Invalid private key for '$v' in \$all_keys variable"); elseif (strpos(CRYPTOBOX_PRIVATE_KEYS, $all_keys[$v]["private_key"]) === false) die("Please add your private key for '$v' in variable \$cryptobox_private_keys, file cryptobox.config.php."); } // Current selected coin by user $coinName = cryptobox_selcoin($available_payments, $def_payment); // Current Coin public/private keys $public_key = $all_keys[$coinName]["public_key"]; $private_key = $all_keys[$coinName]["private_key"]; /** PAYMENT BOX **/ $options = array( "public_key" => $public_key, // your public key from gourl.io "private_key" => $private_key, // your private key from gourl.io "webdev_key" => "", // optional, gourl affiliate key "orderID" => $orderID, // order id or product name "userID" => $userID, // unique identifier for every user "userFormat" => $userFormat, // save userID in COOKIE, IPADDRESS or SESSION "amount" => 0, // product price in coins OR in USD below "amountUSD" => $amountUSD, // we use product price in USD "period" => $period, // payment valid period "language" => $def_language // text on EN - english, FR - french, etc ); // Initialise Payment Class $box = new Cryptobox ($options); // coin name $coinName = $box->coin_name(); // Successful Cryptocoin Payment received if ($box->is_paid()) { if (!$box->is_confirmed()) { $message = "Thank you for order (order #".$orderID.", payment #".$box->payment_id()."). Awaiting transaction/payment confirmation"; } else { // payment confirmed (6+ confirmations) // one time action if (!$box->is_processed()) { // One time action after payment has been made/confirmed // !!For update db records, please use function cryptobox_new_payment()!! $message = "Thank you for order (order #".$orderID.", payment #".$box->payment_id()."). Payment Confirmed. <br>(User will see this message one time after payment has been made)"; // Set Payment Status to Processed $box->set_status_processed(); } else $message = "Thank you for order (order #".$orderID.", payment #".$box->payment_id()."). Payment Confirmed. <br>(User will see this message during ".$period." period after payment has been made)"; // General message } } else $message = "This invoice has not been paid yet"; // Optional - Language selection list for payment box (html code) $languages_list = display_language_box($def_language); // Optional - Coin selection list (html code) if (!$box->is_paid()) $coins_list = display_currency_box($available_payments, $def_payment, $def_language, 60, "margin: 80px 0 0 0"); // ... // Also you need to use IPN function cryptobox_new_payment($paymentID = 0, $payment_details = array(), $box_status = "") // for send confirmation email, update database, update user membership, etc. // You need to modify file - cryptobox.newpayment.php, read more - https://gourl.io/api-php.html#ipn // ... ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html><head> <title>Pay-Per-Product Cryptocoin (payments in multiple cryptocurrencies) Payment Example</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv='cache-control' content='no-cache'> <meta http-equiv='Expires' content='-1'> <meta name='robots' content='all'> <script src='../cryptobox.min.js' type='text/javascript'></script> </head> <body style='font-family:Arial,Helvetica,sans-serif;font-size:13px;color:#666;margin:0'> <div align='center'> <div style='width:100%;height:auto;line-height:50px;background-color:#f1f1f1;border-bottom:1px solid #ddd;color:#49abe9;font-size:18px;'> 2. GoUrl <b>Pay-Per-Product</b> Example (multiple cryptocurrencies). Use it on your website. <div style='float:right;'><a style='font-size:15px;color:#389ad8;margin-right:20px' href='<?php echo "//".$_SERVER["HTTP_HOST"].str_replace("-multi.php", ".php", $_SERVER["REQUEST_URI"]); ?>'>Single Crypto</a><a style='font-size:15px;color:#389ad8;margin-right:20px' href='https://gourl.io/<?php echo strtolower($coinName) ?>-payment-gateway-api.html#p1'>PHP Source</a><a style='font-size:15px;color:#389ad8;margin-right:20px' href='https://github.com/cryptoapi/Bitcoin-Payment-Gateway-ASP.NET/tree/master/GoUrl/Views/Examples/PayPerProductMulti.cshtml'>ASP.NET Source</a><a style='font-size:15px;color:#389ad8;margin-right:20px' href='https://wordpress.org/plugins/gourl-bitcoin-payment-gateway-paid-downloads-membership/'>Wordpress</a><a style='font-size:15px;color:#389ad8;margin-right:20px' href='https://gourl.io/<?php echo strtolower($coinName) ?>-payment-gateway-api.html'>Other Examples</a></div> </div> <h1>Example - Customer Invoice (multi coins below)</h1> <br> <img style='position:absolute;margin-left:auto;margin-right:auto;left:0;right:0;' alt='status' src='https://gourl.io/images/<?php echo ($box->is_paid()?"paid":"unpaid"); ?>.png'> <img alt='Invoice' border='0' height='500' src='https://gourl.io/images/invoice.png'> <br><br> <?php if (!$box->is_paid()) echo $coins_list . "<br><br><h2>Pay Invoice Now - </h2>"; ?> <br><br> <div style='margin:30px 0 5px 300px'>Language:   <?php echo $languages_list; ?></div> <?php echo $box->display_cryptobox(true, 580, 230, "border-radius:15px;border:1px solid #eee;padding:3px 6px;margin:10px;", "display:inline-block;max-width:580px;padding:15px 20px;border:1px solid #eee;margin:7px;line-height:25px;"); ?> <br><br><br> <h3>Message :</h3> <h2 style='color:#999'><?php echo $message; ?></h2> </div><br><br><br><br><br><br> <div style='position:absolute;left:0;'><a target="_blank" href="http://validator.w3.org/check?uri=<?php echo "https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]"; ?>"><img src="https://gourl.io/images/w3c.png" alt="Valid HTML 4.01 Transitional"></a></div> </body> </html>