Server IP : 192.158.238.246 / Your IP : 3.139.234.41 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/Onboarding/Setup/ |
Upload File : |
<?php /** * Onboarding class * * @package Give */ namespace Give\Onboarding\Setup; defined('ABSPATH') || exit; use Give\Framework\Http\ConnectServer\Client\ConnectClient; use Give\Helpers\Gateways\Stripe; use Give\Onboarding\FormRepository; use Give\PaymentGateways\PayPalCommerce\Repositories\MerchantDetails; /** * @since 2.8.0 */ class PageView { /** @var FormRepository */ protected $formRepository; /** * @since 2.25.0 * * @var ConnectClient */ private $connectClient; /** * @since 2.25.0 Use 'ConnectClient' class * @since 2.8.0 * * @param FormRepository $formRepository * */ public function __construct(FormRepository $formRepository, ConnectClient $connectClient) { $this->formRepository = $formRepository; $this->connectClient = $connectClient; } public function render() { $settings = wp_parse_args( get_option('give_onboarding', []), [ 'addons' => [], ] ); ob_start(); include plugin_dir_path(__FILE__) . 'templates/index.html.php'; return ob_get_clean(); } /** * Render templates * * @since 2.8.0 * * @param string $template * @param array $data The key/value pairs passed as $data are extracted as variables for use within the template file. * * @return string */ public function render_template($template, $data = []) { ob_start(); include plugin_dir_path(__FILE__) . "templates/$template.html"; $output = ob_get_clean(); foreach ($data as $key => $value) { if (is_array($value)) { $value = implode('', $value); } $output = preg_replace('/{{\s*' . $key . '\s*}}/', $value, $output); } // Stripe unmerged tags. $output = preg_replace('/{{\s*\w*\s*}}/', '', $output); return $output; } /** * @return bool */ public function isFormConfigured() { return ! ! $this->formRepository->getDefaultFormID(); } /** * @since 2.8.0 * @return bool * */ public function isStripeSetup() { return Stripe::isAccountConfigured(); } /** * Return whether ot not PayPal account connected. * * @since 2.8.0 * @return bool * */ public function isPayPalSetup() { return (bool)give(MerchantDetails::class)->accountIsConnected(); } /** * Returns a qualified image URL. * * @param string $src * * @return string */ public function image($src) { return GIVE_PLUGIN_URL . "assets/dist/images/setup-page/$src"; } /** * Prepared Stripe Connect URL * * Copied from includes/gateways/stripe/includes/admin/admin-helpers.php * See `give_stripe_connect_button()` * * @since 2.25.0 Use 'ConnectClient' class * @since 2.8.0 */ public function stripeConnectURL() { return add_query_arg( [ 'stripe_action' => 'connect', 'mode' => give_is_test_mode() ? 'test' : 'live', 'return_url' => rawurlencode( admin_url('edit.php?post_type=give_forms&page=give-settings&tab=gateways§ion=stripe-settings') ), 'website_url' => get_bloginfo('url'), 'give_stripe_connected' => '0', ], esc_url_raw($this->connectClient->getApiUrl('stripe/connect.php')) ); } }