Пример #1
0
function coinbasepp_oauth_set($value, $key)
{
    $redirectUrlNoParams = dirname(dirname(zen_href_link('modules.php'))) . "/coinbasepp_callback.php";
    $redirectUrl = $redirectUrlNoParams . "?type=oauth&after=" . urlencode($_SERVER['REQUEST_URI']);
    if (MODULE_PAYMENT_COINBASE_OAUTH_CLIENTID != "" && MODULE_PAYMENT_COINBASE_OAUTH == "") {
        require_once dirname(__FILE__) . "/coinbase/Coinbase.php";
        $oauth = new Coinbase_Oauth(MODULE_PAYMENT_COINBASE_OAUTH_CLIENTID, MODULE_PAYMENT_COINBASE_OAUTH_CLIENTSECRET, $redirectUrl);
        $authorize = $oauth->createAuthorizeUrl('merchant');
        return "No merchant account is connected.<br><br>\n    <a href='{$authorize}'>Click here to connect a merchant account.</a>";
    } else {
        if (MODULE_PAYMENT_COINBASE_OAUTH == "") {
            return "No merchant account is connected.<br><br>\n    To connect an account and start accepting bitcoin:<br>\n    1. If you don't have a Coinbase account, sign up for one at <a href='https://coinbase.com'>https://coinbase.com</a>.<br><br>\n    2. <a href='https://coinbase.com/oauth/applications/new'>Click here to add a new OAuth2 application</a> and enter the following information:<br>\n    <b>Name:</b> a name for this Zencart installation.<br>\n    <b>Redirect URL:</b> <input type='text' value='{$redirectUrlNoParams}' readonly><br><br>\n    3. Click 'Submit', and copy and paste the generated Client ID and Client Secret below. Keep these values secret. After saving these settings, return to this page to finish setting up the plugin.";
        } else {
            $tokens = MODULE_PAYMENT_COINBASE_OAUTH;
            $onclick = "document.getElementsByName('configuration[MODULE_PAYMENT_COINBASE_OAUTH]')[0].value='';\n                document.getElementsByName('configuration[MODULE_PAYMENT_COINBASE_OAUTH_CLIENTID]')[0].value='';\n                document.getElementsByName('configuration[MODULE_PAYMENT_COINBASE_OAUTH_CLIENTSECRET]')[0].value='';\n                document.getElementById('coinbasepp-tokens').form.submit();";
            return "<script type='text/javascript'>function coinbasepp_onclick() { {$onclick} }</script>Merchant account connected. <a href='javascript:;' onclick='coinbasepp_onclick();'>Disconnect account</a><input type='hidden' value='{$tokens}' name='configuration[MODULE_PAYMENT_COINBASE_OAUTH]' id='coinbasepp-tokens' />";
        }
    }
}