X7ROOT File Manager
Current Path:
/opt/cpanel/ea-wappspector/src/Matchers
opt
/
cpanel
/
ea-wappspector
/
src
/
Matchers
/
??
..
??
CakePHP.php
(1.02 KB)
??
CodeIgniter.php
(1.14 KB)
??
Composer.php
(1.09 KB)
??
DotNet.php
(1.05 KB)
??
Drupal.php
(1.63 KB)
??
Duda.php
(1.72 KB)
??
Joomla.php
(3.79 KB)
??
Laravel.php
(1.9 KB)
??
MatcherInterface.php
(343 B)
??
NodeJs.php
(866 B)
??
Php.php
(1.07 KB)
??
Prestashop.php
(1.41 KB)
??
Python.php
(742 B)
??
Ruby.php
(713 B)
??
Sitejet.php
(976 B)
??
Siteplus.php
(1.79 KB)
??
Sitepro.php
(980 B)
??
Symfony.php
(905 B)
??
Typo3.php
(1.77 KB)
??
UpLevelMatcherTrait.php
(982 B)
??
WebPresenceBuilder.php
(1.97 KB)
??
Wordpress.php
(1.48 KB)
??
Yii.php
(1.64 KB)
Editing: Siteplus.php
<?php declare(strict_types=1); namespace Plesk\Wappspector\Matchers; use League\Flysystem\Filesystem; use Plesk\Wappspector\Helper\InspectorHelper; use Plesk\Wappspector\MatchResult\EmptyMatchResult; use Plesk\Wappspector\MatchResult\MatchResultInterface; use Plesk\Wappspector\MatchResult\Siteplus as MatchResult; class Siteplus implements MatcherInterface { private const PUBLISH_DIR_PATH = '/bundle/publish'; public function match(Filesystem $fs, string $path): MatchResultInterface { $rTrimPath = rtrim($path, '/'); $inspectorHelper = new InspectorHelper(); if (!$inspectorHelper->fileContainsString($fs, $rTrimPath . '/index.html', 'edit.site')) { return new EmptyMatchResult(); } if (!$fs->directoryExists($rTrimPath . self::PUBLISH_DIR_PATH)) { return new EmptyMatchResult(); } $publishDirList = $fs->listContents($rTrimPath . self::PUBLISH_DIR_PATH, false); // do not check if the item is a directory as on the server when the files a copied the type of the // directory is determined as 'file'. // By default, there should be just 1 directory in the publish directory $versionDirPath = $publishDirList->toArray()[0]['path'] ?? null; if ($versionDirPath === null) { return new EmptyMatchResult(); } return $inspectorHelper->fileContainsString($fs, $versionDirPath . '/bundle.js', 'siteplus') ? new MatchResult($rTrimPath, $this->getSiteplusVersion($versionDirPath)) : new EmptyMatchResult(); } private function getSiteplusVersion(string $versionDirPath): string { // get the last part of the path $versionDirPathParts = explode('/', $versionDirPath); return end($versionDirPathParts); } }
Upload File
Create Folder