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

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

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

Safe-mode: OFF (not secure)

/var/www/html/dokan/script/vendor/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Writer/   drwxrwxrwx
Free 13.32 GB of 57.97 GB (22.98%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     Ods.php (4.12 KB)      -rwxrwxrwx
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace PhpOffice\PhpSpreadsheet\Writer;

use 
PhpOffice\PhpSpreadsheet\Shared\File;
use 
PhpOffice\PhpSpreadsheet\Spreadsheet;
use 
PhpOffice\PhpSpreadsheet\Writer\Exception as WriterException;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Content;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Meta;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\MetaInf;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Mimetype;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Settings;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Styles;
use 
PhpOffice\PhpSpreadsheet\Writer\Ods\Thumbnails;
use 
ZipStream\Exception\OverflowException;
use 
ZipStream\Option\Archive;
use 
ZipStream\ZipStream;

class 
Ods extends BaseWriter
{
    
/**
     * Private writer parts.
     *
     * @var Ods\WriterPart[]
     */
    
private $writerParts = [];

    
/**
     * Private PhpSpreadsheet.
     *
     * @var Spreadsheet
     */
    
private $spreadSheet;

    
/**
     * Create a new Ods.
     */
    
public function __construct(Spreadsheet $spreadsheet)
    {
        
$this->setSpreadsheet($spreadsheet);

        
$writerPartsArray = [
            
'content' => Content::class,
            
'meta' => Meta::class,
            
'meta_inf' => MetaInf::class,
            
'mimetype' => Mimetype::class,
            
'settings' => Settings::class,
            
'styles' => Styles::class,
            
'thumbnails' => Thumbnails::class,
        ];

        foreach (
$writerPartsArray as $writer => $class) {
            
$this->writerParts[$writer] = new $class($this);
        }
    }

    
/**
     * Get writer part.
     *
     * @param string $pPartName Writer part name
     *
     * @return null|Ods\WriterPart
     */
    
public function getWriterPart($pPartName)
    {
        if (
$pPartName != '' && isset($this->writerParts[strtolower($pPartName)])) {
            return 
$this->writerParts[strtolower($pPartName)];
        }

        return 
null;
    }

    
/**
     * Save PhpSpreadsheet to file.
     *
     * @param resource|string $pFilename
     */
    
public function save($pFilename): void
    
{
        if (!
$this->spreadSheet) {
            throw new 
WriterException('PhpSpreadsheet object unassigned.');
        }

        
// garbage collect
        
$this->spreadSheet->garbageCollect();

        
$this->openFileHandle($pFilename);

        
$zip $this->createZip();

        
$zip->addFile('META-INF/manifest.xml'$this->getWriterPart('meta_inf')->writeManifest());
        
$zip->addFile('Thumbnails/thumbnail.png'$this->getWriterPart('thumbnails')->writeThumbnail());
        
$zip->addFile('content.xml'$this->getWriterPart('content')->write());
        
$zip->addFile('meta.xml'$this->getWriterPart('meta')->write());
        
$zip->addFile('mimetype'$this->getWriterPart('mimetype')->write());
        
$zip->addFile('settings.xml'$this->getWriterPart('settings')->write());
        
$zip->addFile('styles.xml'$this->getWriterPart('styles')->write());

        
// Close file
        
try {
            
$zip->finish();
        } catch (
OverflowException $e) {
            throw new 
WriterException('Could not close resource.');
        }

        
$this->maybeCloseFileHandle();
    }

    
/**
     * Create zip object.
     *
     * @return ZipStream
     */
    
private function createZip()
    {
        
// Try opening the ZIP file
        
if (!is_resource($this->fileHandle)) {
            throw new 
WriterException('Could not open resource for writing.');
        }

        
// Create new ZIP stream
        
$options = new Archive();
        
$options->setEnableZip64(false);
        
$options->setOutputStream($this->fileHandle);

        return new 
ZipStream(null$options);
    }

    
/**
     * Get Spreadsheet object.
     *
     * @return Spreadsheet
     */
    
public function getSpreadsheet()
    {
        if (
$this->spreadSheet !== null) {
            return 
$this->spreadSheet;
        }

        throw new 
WriterException('No PhpSpreadsheet assigned.');
    }

    
/**
     * Set Spreadsheet object.
     *
     * @param Spreadsheet $spreadsheet PhpSpreadsheet object
     *
     * @return $this
     */
    
public function setSpreadsheet(Spreadsheet $spreadsheet)
    {
        
$this->spreadSheet $spreadsheet;

        return 
$this;
    }
}

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