Skip to content

Commit

Permalink
updated integrator
Browse files Browse the repository at this point in the history
  • Loading branch information
0xBeycan committed Mar 22, 2024
1 parent 3a74632 commit 873f23c
Show file tree
Hide file tree
Showing 13 changed files with 126 additions and 41 deletions.
6 changes: 3 additions & 3 deletions app/Gateways/AbstractGateway.php
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ public function editor_script(): void
}
if (form.fields.some(field => field.type === 'total')) {
$('#field_' + currentFieldId + ' .ginput_container')?.html(
'<?php echo $this->get_field_works_or_expect_msg(); ?>'
'<?php echo esc_js($this->get_field_works_or_expect_msg()); ?>'
);
}
});
Expand All @@ -186,7 +186,7 @@ public function editor_script(): void
}
if (!form.fields.some(field => field.type === 'total')) {
$('#field_' + currentFieldId + ' .ginput_container')?.html(
'<?php echo $this->get_field_works_or_expect_msg(false); ?>'
'<?php echo esc_js($this->get_field_works_or_expect_msg(false)); ?>'
);
}
if (!form.fields.some(field => field.type === '<?php echo esc_js($this->type); ?>')) {
Expand Down Expand Up @@ -225,7 +225,7 @@ public function get_field_input($form, $value = '', $entry = null): string
ob_start();
?>
<div class='ginput_container ginput_container_cp_info'>
<?php echo $this->get_field_works_or_expect_msg($this->form_hash_total_field($form)); ?>
<?php echo esc_html($this->get_field_works_or_expect_msg($this->form_hash_total_field($form))); ?>
</div>
<?php
return ob_get_clean();
Expand Down
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@
}
},
"require": {
"beycanpress/cryptopay-integrator": "^0.1.8"
"beycanpress/cryptopay-integrator": "^0.1.10"
}
}
14 changes: 7 additions & 7 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 2 additions & 16 deletions gravity-forms-cryptopay-gateway.php
Original file line number Diff line number Diff line change
Expand Up @@ -43,25 +43,11 @@
load_plugin_textdomain('gf-cryptopay', false, basename(__DIR__) . '/languages');

add_action('plugins_loaded', function (): void {
if (!defined('GF_MIN_WP_VERSION')) {
add_action('admin_notices', function (): void {
?>
<div class="notice notice-error">
<p><?php echo sprintf(esc_html__('Gravity Forms - CryptoPay Gateway: This plugin requires Gravity Forms to work. You can buy Gravity Forms by %s.', 'gf-cryptopay'), '<a href="https://www.gravityforms.com/" target="_blank">' . esc_html__('clicking here', 'gf-cryptopay') . '</a>'); ?></p>
</div>
<?php
});
}
Helpers::requirePluginMessage('Gravity Forms', 'https://www.gravityforms.com/', false);
});

if (Helpers::bothExists()) {
new BeycanPress\CryptoPay\GravityForms\Loader();
} else {
add_action('admin_notices', function (): void {
?>
<div class="notice notice-error">
<p><?php echo sprintf(esc_html__('Gravity Forms - CryptoPay Gateway: This plugin is an extra feature plugin so it cannot do anything on its own. It needs CryptoPay to work. You can buy CryptoPay by %s.', 'gf-cryptopay'), '<a href="https://beycanpress.com/product/cryptopay-all-in-one-cryptocurrency-payments-for-wordpress/?utm_source=wp_org_addons&utm_medium=gravity_forms" target="_blank">' . esc_html__('clicking here', 'gf-cryptopay') . '</a>'); ?></p>
</div>
<?php
});
Helpers::requireCryptoPayMessage('Gravity Forms');
}
2 changes: 1 addition & 1 deletion vendor/beycanpress/cryptopay-integrator/composer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "beycanpress/cryptopay-integrator",
"version": "0.1.8",
"version": "0.1.10",
"description": "CryptoPay and CryptoPay Lite integration wrapper",
"type": "library",
"license": "MIT",
Expand Down
4 changes: 4 additions & 0 deletions vendor/beycanpress/cryptopay-integrator/phpcs.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,10 @@
<rule ref="Squiz.Commenting.FunctionComment.ParamNameNoMatch"/>
<rule ref="Squiz.Commenting.FunctionComment.IncorrectTypeHint"/>
<rule ref="Squiz.Commenting.FunctionComment.MissingReturn"/>
<rule ref="Squiz.NamingConventions.ValidVariableName"/>
<rule ref="Squiz.NamingConventions.ValidVariableName.PrivateNoUnderscore">
<severity>0</severity>
</rule>
<rule ref="SlevomatCodingStandard.ControlStructures.RequireYodaComparison"/>
<rule ref="SlevomatCodingStandard.TypeHints.DeclareStrictTypes">
<exclude name="SlevomatCodingStandard.TypeHints.DeclareStrictTypes.IncorrectStrictTypesFormat" />
Expand Down
35 changes: 35 additions & 0 deletions vendor/beycanpress/cryptopay-integrator/src/Helpers.php
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,30 @@ public static function response(string $method, ...$args): mixed
}
}

/**
* @param string $currentPlugin
* @param string $pluginLink
* @param bool $download
* @return void
*/
public static function requirePluginMessage(string $currentPlugin, string $pluginLink, bool $download = true): void
{
add_action('admin_notices', function () use ($currentPlugin, $pluginLink, $download): void {
require dirname(__DIR__) . '/views/message-1.php';
});
}

/**
* @param string $currentPlugin
* @return void
*/
public static function requireCryptoPayMessage(string $currentPlugin): void
{
add_action('admin_notices', function () use ($currentPlugin): void {
require dirname(__DIR__) . '/views/message-2.php';
});
}

/**
* @param array<mixed> $data
* @return string
Expand Down Expand Up @@ -181,6 +205,17 @@ public static function createSPP(array $data): string
return home_url("/?cp_spp={$token}");
}

/**
* @param string $url
* @return string|null
*/
public static function getSPPToken(string $url): ?string
{
/** @var array<mixed> $matches */
preg_match('/[?&]cp_spp=([^&]+)/', $url, $matches);
return isset($matches[1]) ? $matches[1] : null;
}

/**
* @return void
*/
Expand Down
4 changes: 3 additions & 1 deletion vendor/beycanpress/cryptopay-integrator/src/Session.php
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,9 @@ public static function has(string $key): bool
public static function remove(string $key): void
{
self::start();
unset($_SESSION['cp_integrator'][$key]);
if (self::has($key)) {
unset($_SESSION['cp_integrator'][$key]);
}
}

/**
Expand Down
19 changes: 19 additions & 0 deletions vendor/beycanpress/cryptopay-integrator/views/message-1.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<div class="notice notice-error">
<p>
<?php echo wp_kses_post(
str_replace(
'{name}',
esc_html($currentPlugin),
sprintf(
esc_html__('{name} - CryptoPay Gateway: This plugin requires {name} to work. You can %s {name} by %s.', 'arm-cryptopay'),
$download ? esc_html__('download', 'cryptopay') : esc_html__('buy', 'cryptopay'),
sprintf(
'<a href="%s" target="_blank">' . esc_html__('clicking here', 'cryptopay') . '</a>',
$pluginLink
)
)
),
['a' => ['href' => [], 'target' => []]]
); ?>
</p>
</div>
16 changes: 16 additions & 0 deletions vendor/beycanpress/cryptopay-integrator/views/message-2.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

<div class="notice notice-error">
<p>
<?php echo wp_kses_post(
sprintf(
esc_html__('%s - CryptoPay Gateway: This plugin is an integration plugin so it cannot do anything on its own. It needs CryptoPay to work. You can buy CryptoPay by %s.', 'cryptopay'),
esc_html($currentPlugin),
sprintf(
'<a href="https://beycanpress.com/product/cryptopay-all-in-one-cryptocurrency-payments-for-wordpress/?utm_source=wp_org_addons&utm_medium=%s" target="_blank">' . esc_html__('clicking here', 'cryptopay') . '</a>',
esc_html($currentPlugin)
)
),
['a' => ['href' => [], 'target' => []]]
); ?>
</p>
</div>
23 changes: 23 additions & 0 deletions vendor/beycanpress/cryptopay-integrator/views/pay.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,26 @@
border-radius: 5px;
}

.go-to-back {
text-align: center;
margin: 20px 0;
}

.go-to-back a {
display: inline-block;
padding: 10px 20px;
background-color: #007bff;
color: #fff;
text-decoration: none;
border-radius: 5px;
}

@media screen and (max-width: 768px) {
body {
padding: 0 20px;
text-align: center;
}

.container {
flex-direction: column;
}
Expand All @@ -59,6 +78,7 @@
margin-right: 0;
margin-bottom: 20px;
max-width: 100%;
width: 100%;
}
}
</style>
Expand All @@ -84,6 +104,9 @@
<?php echo $cryptopay; ?>
</div>
</div>
<div class="go-to-back">
<a href="<?php echo esc_url($_SERVER["HTTP_REFERER"]) ?>"><?php echo esc_html__('Go back to add-on page') ?></a>
</div>
<?php do_action('wp_print_footer_scripts'); ?>
</body>
</html>
14 changes: 7 additions & 7 deletions vendor/composer/installed.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@
"packages": [
{
"name": "beycanpress/cryptopay-integrator",
"version": "0.1.8",
"version_normalized": "0.1.8.0",
"version": "0.1.10",
"version_normalized": "0.1.10.0",
"source": {
"type": "git",
"url": "https://github.com/BeycanPress/cryptopay-integrator.git",
"reference": "c28bbee3ca84fd1e4ca02f4867f6dadbee0c117d"
"reference": "6ac799ad5b3c9b952ee77d4d974162f525ff0f2a"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/BeycanPress/cryptopay-integrator/zipball/c28bbee3ca84fd1e4ca02f4867f6dadbee0c117d",
"reference": "c28bbee3ca84fd1e4ca02f4867f6dadbee0c117d",
"url": "https://api.github.com/repos/BeycanPress/cryptopay-integrator/zipball/6ac799ad5b3c9b952ee77d4d974162f525ff0f2a",
"reference": "6ac799ad5b3c9b952ee77d4d974162f525ff0f2a",
"shasum": ""
},
"require": {
"php": ">=8.1"
},
"time": "2024-03-11T06:09:27+00:00",
"time": "2024-03-22T11:55:55+00:00",
"type": "library",
"installation-source": "dist",
"autoload": {
Expand All @@ -34,7 +34,7 @@
"homepage": "https://github.com/BeycanPress/cryptopay-integrator",
"support": {
"issues": "https://github.com/BeycanPress/cryptopay-integrator/issues",
"source": "https://github.com/BeycanPress/cryptopay-integrator/tree/0.1.8"
"source": "https://github.com/BeycanPress/cryptopay-integrator/tree/0.1.10"
},
"install-path": "../beycanpress/cryptopay-integrator"
}
Expand Down
10 changes: 5 additions & 5 deletions vendor/composer/installed.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
'name' => '__root__',
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'reference' => 'a64fd22b962c5b524bb9bb2fe80f7857e3aba1a8',
'reference' => '3a74632350f90bdbb9a6f57bf9bf632aa5480ea8',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
Expand All @@ -13,16 +13,16 @@
'__root__' => array(
'pretty_version' => 'dev-master',
'version' => 'dev-master',
'reference' => 'a64fd22b962c5b524bb9bb2fe80f7857e3aba1a8',
'reference' => '3a74632350f90bdbb9a6f57bf9bf632aa5480ea8',
'type' => 'library',
'install_path' => __DIR__ . '/../../',
'aliases' => array(),
'dev_requirement' => false,
),
'beycanpress/cryptopay-integrator' => array(
'pretty_version' => '0.1.8',
'version' => '0.1.8.0',
'reference' => 'c28bbee3ca84fd1e4ca02f4867f6dadbee0c117d',
'pretty_version' => '0.1.10',
'version' => '0.1.10.0',
'reference' => '6ac799ad5b3c9b952ee77d4d974162f525ff0f2a',
'type' => 'library',
'install_path' => __DIR__ . '/../beycanpress/cryptopay-integrator',
'aliases' => array(),
Expand Down

0 comments on commit 873f23c

Please sign in to comment.