!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: nginx/1.18.0. PHP/7.4.29 

uname -a: Linux ip-172-31-23-220 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025
aarch64
 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/sendgrid-bk/lib/mail/   drwxrwxr-x
Free 39.77 GB of 48.28 GB (82.39%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     Attachment.php (5.78 KB)      -rw-rw-r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * This helper builds the Attachment object for a /mail/send API call
 */

namespace SendGrid\Mail;

use 
SendGrid\Helper\Assert;

/**
 * This class is used to construct a Attachment object for the /mail/send API call
 *
 * @package SendGrid\Mail
 */
class Attachment implements \JsonSerializable
{
    
/** @var $content string Base64 encoded content */
    
private $content;
    
/** @var $type string Mime type of the attachment */
    
private $type;
    
/** @var $filename string File name of the attachment */
    
private $filename;
    
/** @var $disposition string How the attachment should be displayed: inline or attachment, default is attachment */
    
private $disposition;
    
/** @var $content_id string Used when disposition is inline to display the file within the body of the email */
    
private $content_id;

    
/**
     * Optional constructor
     *
     * @param string $content     Base64 encoded content
     * @param string $type        Mime type of the attachment
     * @param string $filename    File name of the attachment
     * @param string $disposition How the attachment should be displayed: inline
     *                            or attachment, default is attachment
     * @param string $content_id  Used when disposition is inline to display the
     *                            file within the body of the email
     * @throws \SendGrid\Mail\TypeException
     */
    
public function __construct(
        
$content null,
        
$type null,
        
$filename null,
        
$disposition null,
        
$content_id null
    
) {
        if (isset(
$content)) {
            
$this->setContent($content);
        }
        if (isset(
$type)) {
            
$this->setType($type);
        }
        if (isset(
$filename)) {
            
$this->setFilename($filename);
        }
        if (isset(
$disposition)) {
            
$this->setDisposition($disposition);
        }
        if (isset(
$content_id)) {
            
$this->setContentID($content_id);
        }
    }

    
/**
     * Add the content to a Attachment object
     *
     * @param string $content Base64 encoded content
     *
     * @throws \SendGrid\Mail\TypeException
     */
    
public function setContent($content)
    {
        
Assert::minLength($content'content'1);

        if (!
$this->isBase64($content)) {
            
$this->content base64_encode($content);
        } else {
            
$this->content $content;
        }
    }

    
/**
     * Retrieve the content from a Attachment object
     *
     * @return string
     */
    
public function getContent()
    {
        return 
$this->content;
    }

    
/**
     * Add the mime type to a Attachment object
     *
     * @param string $type Mime type of the attachment
     *
     * @throws \SendGrid\Mail\TypeException
     */
    
public function setType($type)
    {
        
Assert::minLength($type'type'1);

        
$this->type $type;
    }

    
/**
     * Retrieve the mime type from a Attachment object
     *
     * @return string
     */
    
public function getType()
    {
        return 
$this->type;
    }

    
/**
     * Add the file name to a Attachment object
     *
     * @param string $filename File name of the attachment
     *
     * @throws \SendGrid\Mail\TypeException
     */
    
public function setFilename($filename)
    {
        
Assert::string($filename'filename');

        
$this->filename $filename;
    }

    
/**
     * Retrieve the file name from a Attachment object
     *
     * @return string
     */
    
public function getFilename()
    {
        return 
$this->filename;
    }

    
/**
     * Add the disposition to a Attachment object
     *
     * @param string $disposition How the attachment should be displayed:
     *                            inline or attachment, default is attachment
     *
     * @throws \SendGrid\Mail\TypeException
     */
    
public function setDisposition($disposition)
    {
        
Assert::anyOf($disposition'disposition', ['inline''attachment']);

        
$this->disposition $disposition;
    }

    
/**
     * Retrieve the disposition from a Attachment object
     *
     * @return string
     */
    
public function getDisposition()
    {
        return 
$this->disposition;
    }

    
/**
     * Add the content id to a Attachment object
     *
     * @param string $content_id Used when disposition is inline to display
     *                           the file within the body of the email
     * @throws \SendGrid\Mail\TypeException
     */
    
public function setContentID($content_id)
    {
        
Assert::string($content_id'content_id');

        
$this->content_id $content_id;
    }

    
/**
     * Retrieve the content id from a Attachment object
     *
     * @return string
     */
    
public function getContentID()
    {
        return 
$this->content_id;
    }

    
/**
     *  Verifies whether or not the provided string is a valid base64 string
     *
     * @param $string string The string that has to be checked
     * @return bool
     */
    
private function isBase64($string)
    {
        
$decoded_data base64_decode($stringtrue);
        
$encoded_data base64_encode($decoded_data);
        if (
$encoded_data != $string) {
            return 
false;
        }
        return 
true;
    }

    
/**
     * Return an array representing a Attachment object for the Twilio SendGrid API
     *
     * @return null|array
     */
    #[\ReturnTypeWillChange]
    
public function jsonSerialize()
    {
        return 
array_filter(
            [
                
'content' => $this->getContent(),
                
'type' => $this->getType(),
                
'filename' => $this->getFilename(),
                
'disposition' => $this->getDisposition(),
                
'content_id' => $this->getContentID()
            ],
            function (
$value) {
                return 
$value !== null;
            }
        ) ?: 
null;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

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

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.006 ]--