[ Avaa Bypassed ]




Upload:

Command:

www-data@3.144.134.101: ~ $
#!/usr/bin/perl
# index.cgi
# Display the user's current language, theme and password

use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
require './change-user-lib.pl';
our (%text, %access, $base_remote_user, $default_lang, %gconfig);
&ui_print_header(undef, $text{'index_title'}, "", undef, 0, 1);

my @users = &acl::list_users();
my ($user) = grep { $_->{'name'} eq $base_remote_user } @users;
my $locale_auto = &parse_accepted_language();

my @can;
push(@can, 'lang') if ($access{'lang'});
push(@can, 'theme') if ($access{'theme'});
push(@can, 'pass') if ($access{'pass'} && &can_change_pass($user));
my $can = &text('index_d'.scalar(@can), map { $text{'index_d'.$_} } @can);
print &text('index_desc2', $can),"<p>\n";

print &ui_form_start("change.cgi", "post");
print &ui_table_start(undef, undef, 2);

if ($access{'lang'}) {
	# Show personal language
	my $glang = $locale_auto || safe_language($gconfig{"lang"}) || $default_lang;
	my $ulang = safe_language($user->{'lang'});
	my @langs = &list_languages();
	my ($linfo) = grep { $_->{'lang'} eq $glang } @langs;
	my ($ulinfo);
	if ($ulang) {
		($ulinfo) = grep { $_->{'lang'} eq $ulang } @langs;
		}
	my $ulangused = ($ulang && $ulang ne $glang);
	my $ulangauto = $user->{'langauto'};
	if (!defined($user->{'langauto'})) {
		if ($ulangused) {
			$ulangauto = $ulinfo->{'auto'};
		} else {
			$ulangauto = defined($gconfig{"langauto"}) ? 
				$gconfig{"langauto"} : $linfo->{'auto'};
		}
	}
	print &ui_table_row($text{'index_lang'},
		&ui_radio("lang_def", $ulang ? 0 : 1,
			  [ [ 1, &text('index_langglobal2', $linfo->{'desc'},
				       $linfo->{'lang'})."<br>" ],
			    [ 0, $text{'index_langset'} ] ])." ".
		&ui_select("lang", $ulang,
			   [ map { [ $_->{'lang'},
				     $_->{'desc'} ] }
			         &list_languages() ]) ." ". 
		&ui_checkbox("langauto", 1, $text{'langauto_include'}, $ulangauto), 
		undef, [ "valign=top","valign=top" ]);
	}

# Old datetime format or a new locale
if ($access{'locale'}) {
	eval "use DateTime; use DateTime::Locale; use DateTime::TimeZone;";
	&foreign_require('webmin');
	if (!$@) {
        my $locales = &list_locales();
        my %localesrev = reverse %{$locales};
        my $locale = $locale_auto || $gconfig{'locale'} || &get_default_system_locale();
        print &ui_table_row($text{'index_locale'},
        	&ui_radio("locale_def", defined($user->{'locale'}) ? 0 : 1,
        		  [ [ 1, &text('index_localeglobal2', $locales->{$locale}, $locale)."<br>" ],
        		    [ 0, $text{'index_localeset'} ] ])." ".
        	&ui_select("locale", $user->{'locale'},
        		[ map { [ $localesrev{$_}, $_ ] } sort values %{$locales} ] ), 
        	undef, [ "valign=top","valign=top" ]);
        }
	else {
		my %wtext = &load_language('webmin');
		print &ui_table_row($text{'index_locale2'},
			&ui_radio("dateformat_def", defined($user->{'dateformat'}) ? 0 : 1,
				  [ [ 1, &text('index_dateformatglobal2', $gconfig{'dateformat'} || "dd/mon/yyyy")."<br>" ],
				    [ 0, $text{'index_dateformatset'} ] ])." ".
			&ui_select("dateformat", $user->{'dateformat'} || "dd/mon/yyyy",
				[ map { [ $_, $wtext{'lang_dateformat_'.$_} ] }
                           @webmin::webmin_date_formats ] ), 
			undef, [ "valign=top","valign=top" ]);
        }
	}

if ($access{'theme'}) {
	# Show personal theme
	my $tname;
	if ($gconfig{'theme'}) {
		my ($gtheme, $goverlay) = split(/\s+/, $gconfig{'theme'});
		my %tinfo = &webmin::get_theme_info($gtheme);
		$tname = $tinfo{'desc'};
		}
	else {
		$tname = $text{'index_themedef'};
		}
	my @all = &webmin::list_visible_themes($user->{'theme'});
	my @themes = grep { !$_->{'overlay'} } @all;
	my @overlays = grep { $_->{'overlay'} } @all;

	# Main theme
	print &ui_table_row($text{'index_theme'},
		&ui_radio("theme_def", defined($user->{'theme'}) ? 0 : 1,
			  [ [ 1, &text('index_themeglobal', $tname)."<br>" ],
			    [ 0, $text{'index_themeset'} ] ])." ".
		&ui_select("theme", $user->{'theme'},
			[ !$user->{'theme'} ? [ '', $text{'index_themedef'} ] : (),
			  map { [ $_->{'dir'}, $_->{'desc'} ] }
			      @themes ]), undef, [ "valign=top","valign=top" ]);

	# Overlay, if any
	if (@overlays) {
		print &ui_table_row($text{'index_overlay'},
			&ui_select("overlay", $user->{'overlay'},
				[ [ '', $text{'index_overlaydef'} ],
				  map { [ $_->{'dir'}, $_->{'desc'} ] }
				      @overlays ]), undef, [ "valign=middle","valign=middle" ]);
		}
	}

if ($access{'pass'} && &can_change_pass($user)) {
	# Show password
	print &ui_table_row($text{'index_pass'},
		&ui_radio("pass_def", 1,
			  [ [ 1, $text{'index_passleave'}."<br>" ],
			    [ 0, $text{'index_passset'} ] ])." ".
		&ui_password("pass", undef, 20)." ".
		$text{'index_passagain'}." ".
		&ui_password("pass2", undef, 20), undef, [ "valign=top","valign=middle" ]);
	}

print &ui_table_end();
print &ui_form_end([ [ undef, $text{'index_ok'} ] ]);

&ui_print_footer("/", $text{'index'});


Filemanager

Name Type Size Permission Actions
images Folder 0755
lang Folder 0755
CHANGELOG File 466 B 0644
acl_security.pl File 803 B 0755
change-user-lib.pl File 620 B 0755
change.cgi File 3.2 KB 0755
defaultacl File 31 B 0644
index.cgi File 4.81 KB 0755
module.info File 206 B 0644
module.info.af File 0 B 0644
module.info.af.auto File 150 B 0644
module.info.ar File 167 B 0644
module.info.ar.auto File 19 B 0644
module.info.be File 0 B 0644
module.info.be.auto File 197 B 0644
module.info.bg File 0 B 0644
module.info.bg.auto File 250 B 0644
module.info.ca File 140 B 0644
module.info.ca.auto File 19 B 0644
module.info.cs File 32 B 0644
module.info.cs.auto File 120 B 0644
module.info.da File 0 B 0644
module.info.da.auto File 148 B 0644
module.info.de File 116 B 0644
module.info.de.auto File 26 B 0644
module.info.el File 0 B 0644
module.info.el.auto File 291 B 0644
module.info.es File 32 B 0644
module.info.es.auto File 124 B 0644
module.info.eu File 39 B 0644
module.info.eu.auto File 118 B 0644
module.info.fa File 0 B 0644
module.info.fa.auto File 227 B 0644
module.info.fi File 0 B 0644
module.info.fi.auto File 155 B 0644
module.info.fr File 47 B 0644
module.info.fr.auto File 150 B 0644
module.info.he File 0 B 0644
module.info.he.auto File 209 B 0644
module.info.hr File 0 B 0644
module.info.hr.auto File 148 B 0644
module.info.hu File 98 B 0644
module.info.hu.auto File 19 B 0644
module.info.it File 35 B 0644
module.info.it.auto File 121 B 0644
module.info.ja File 200 B 0644
module.info.ko File 33 B 0644
module.info.ko.auto File 131 B 0644
module.info.lt File 0 B 0644
module.info.lt.auto File 166 B 0644
module.info.lv File 0 B 0644
module.info.lv.auto File 150 B 0644
module.info.ms File 122 B 0644
module.info.ms.auto File 19 B 0644
module.info.mt File 0 B 0644
module.info.mt.auto File 177 B 0644
module.info.nl File 35 B 0644
module.info.nl.auto File 129 B 0644
module.info.no File 29 B 0644
module.info.no.auto File 109 B 0644
module.info.pl File 144 B 0644
module.info.pl.auto File 28 B 0644
module.info.pt File 0 B 0644
module.info.pt.auto File 151 B 0644
module.info.pt_BR File 32 B 0644
module.info.pt_BR.auto File 127 B 0644
module.info.ro File 0 B 0644
module.info.ro.auto File 164 B 0644
module.info.ru File 44 B 0644
module.info.ru.auto File 209 B 0644
module.info.sk File 32 B 0644
module.info.sk.auto File 124 B 0644
module.info.sl File 0 B 0644
module.info.sl.auto File 143 B 0644
module.info.sv File 0 B 0644
module.info.sv.auto File 167 B 0644
module.info.th File 0 B 0644
module.info.th.auto File 280 B 0644
module.info.tr File 31 B 0644
module.info.tr.auto File 141 B 0644
module.info.uk File 0 B 0644
module.info.uk.auto File 217 B 0644
module.info.ur File 0 B 0644
module.info.ur.auto File 263 B 0644
module.info.vi File 0 B 0644
module.info.vi.auto File 216 B 0644
module.info.zh File 0 B 0644
module.info.zh.auto File 139 B 0644
module.info.zh_TW File 39 B 0644
module.info.zh_TW.auto File 115 B 0644
safeacl File 31 B 0644