File manager - Edit - /var/www/payraty/hris/vendor/fedapay/fedapay-php/lib/Resource.php
Back
<?php namespace FedaPay; use FedaPay\Util\Util; use FedaPay\Util\Inflector; /** * Class Resource * * @package FedaPay */ abstract class Resource extends FedaPayObject { use ApiOperations\Request; /** * @var FedaPay\Requestor */ protected static $requestor; /** * Set requestor * @param FedaPay\Requestor $requestor */ public static function setRequestor(Requestor $requestor) { self::$requestor = $requestor; } /** * Return the requestor * @return FedaPay\Requestor */ public static function getRequestor() { if (self::$requestor) { return self::$requestor; } self::$requestor = new Requestor; return self::$requestor; } public static function className() { $class = get_called_class(); // Useful for namespaces: Foo\Charge if ($postfixNamespaces = strrchr($class, '\\')) { $class = substr($postfixNamespaces, 1); } // Useful for underscored 'namespaces': Foo_Charge if ($postfixFakeNamespaces = strrchr($class, '')) { $class = $postfixFakeNamespaces; } if (substr($class, 0, strlen('FedaPay')) == 'FedaPay') { $class = substr($class, strlen('FedaPay')); } $class = str_replace('_', '', $class); $name = urlencode($class); $name = strtolower($name); return $name; } /** * @return string The endpoint URL for the given class. */ public static function classPath() { $base = static::className(); $plurial = Inflector::pluralize($base); return "/$plurial"; } /** * @return string The instance endpoint URL for the given class. */ public static function resourcePath($id) { if ($id === null) { $class = get_called_class(); $message = 'Could not determine which URL to request: ' . "$class instance has invalid ID: $id"; throw new Error\InvalidRequest($message, null); } $base = static::classPath(); $extn = urlencode($id); return "$base/$extn"; } /** * @return string The full API URL for this API resource. */ public function instanceUrl() { return static::resourcePath($this['id']); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings