feat: moneta 2.0, MONETA.Assistant payment module for PHPShop 6.7+
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace MonetaPhpShop;
|
||||
|
||||
/**
|
||||
* Èäåíòèôèêàòîð CMS è ìîäóëÿ äëÿ `MNT_CMS` — îäíà ñòðîêà â ôîðìå è â îòâåòàõ
|
||||
* Check/Pay URL: `PHPShop v<âåðñèÿ>_PHP <âåðñèÿ>_Moneta v<âåðñèÿ>`
|
||||
* Âåðñèÿ ìîäóëÿ — êàê å¸ õðàíèò PHPShop (`ModuleInfo::VERSION`, äâà ÷èñëà): `Moneta v1.0`.
|
||||
*/
|
||||
final class CmsInfo
|
||||
{
|
||||
private const CMS_NAME = 'PHPShop';
|
||||
private const MODULE_NAME = 'Moneta';
|
||||
private const SEPARATOR = '_';
|
||||
|
||||
private function __construct() {}
|
||||
|
||||
public static function format(string $cmsVersion, string $phpVersion, string $moduleVersion): string
|
||||
{
|
||||
return sprintf(
|
||||
'%s v%s' . self::SEPARATOR . 'PHP %s' . self::SEPARATOR . '%s v%s',
|
||||
self::CMS_NAME,
|
||||
$cmsVersion,
|
||||
$phpVersion,
|
||||
self::MODULE_NAME,
|
||||
$moduleVersion,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Âåðñèÿ PHPShop èç `[upload] version` êîíôèãà ÿäðà: `670` -> `6.7.0`.
|
||||
*/
|
||||
public static function hostVersion(string $uploadVersion): string
|
||||
{
|
||||
if (preg_match('/\A[0-9]{3,}\z/', $uploadVersion) !== 1) {
|
||||
return 'unknown';
|
||||
}
|
||||
|
||||
return implode('.', str_split($uploadVersion));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user