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: Drupal.php
<?php namespace Plesk\Wappspector\Matchers; use League\Flysystem\Filesystem; use League\Flysystem\FilesystemException; use Plesk\Wappspector\MatchResult\Drupal as MatchResult; use Plesk\Wappspector\MatchResult\EmptyMatchResult; use Plesk\Wappspector\MatchResult\MatchResultInterface; class Drupal implements MatcherInterface { /** * Drupal has changed the way how the version number is stored multiple times, so we need this comprehensive array */ private const VERSIONS = [ [ 'file' => 'modules/system/system.info', 'regex' => "/version\\s*=\\s*\"(\\d\\.[^']+)\"[\\s\\S]*project\\s*=\\s*\"drupal\"/", ], [ 'file' => 'core/modules/system/system.info.yml', 'regex' => "/version:\\s*'(\\d+\\.[^']+)'[\\s\\S]*project:\\s*'drupal'/", ], ]; /** * @throws FilesystemException */ public function match(Filesystem $fs, string $path): MatchResultInterface { // Iterate through version patterns foreach (self::VERSIONS as $version) { $versionFile = rtrim($path, '/') . '/' . $version['file']; if (!$fs->fileExists($versionFile)) { continue; } $version = $this->detectVersion($version['regex'], $versionFile, $fs); return new MatchResult($path, $version); } return new EmptyMatchResult(); } private function detectVersion(string $regexPattern, string $versionFile, Filesystem $fs): ?string { preg_match($regexPattern, $fs->read($versionFile), $matches); return count($matches) ? $matches[1] : null; } }
Upload File
Create Folder