[ Avaa Bypassed ]




Upload:

Command:

www-data@3.148.237.97: ~ $
#!/usr/bin/perl

#
# Authentic Theme (https://github.com/authentic-theme/authentic-theme)
# Copyright Ilia Rostovtsev <ilia@virtualmin.com>
# Licensed under MIT (https://github.com/authentic-theme/authentic-theme/blob/master/LICENSE)
#
use strict;

our ($remote_user, %gconfig, %text, %in, %theme_config, %theme_text, $has_usermin, $get_user_level);

do($ENV{'THEME_ROOT'} . "/authentic-lib.pl");
do($ENV{'THEME_ROOT'} . "/tconfig-lib.pl");

(!&webmin_user_is_admin() && $theme_config{'settings_theme_config_admins_only_privileged'} eq 'true') &&
  error($theme_text{'settings_theme_config_admins_only_privileged_error'});

ui_print_header(($theme_text{'settings_subtitle'} . ' <tt>' . $remote_user . '</tt>'),
                $theme_text{'settings_title'},
                undef, undef, undef, 1);

# Define all available options
my @excluded_options = theme_settings_filter();
my @settings         = theme_settings_raw();
my @sections;
my @config_quick_access;

# Format options for display and build quick access filter
foreach my $sections (0 .. $#settings) {
    foreach my $section ($settings[$sections]) {
        for (my $i = 0; $i < scalar(@{ $section->[0]->{'data'} }); $i++) {
            my @key_value_formated =
              theme_settings_format(@{ $section->[0]->{'data'} }[$i],
                                    $theme_config{ @{ $section->[0]->{'data'} }[$i] },
                                    \@excluded_options);
            if (!$key_value_formated[0][0]) {
                delete $section->[0]->{'data'}[$i];
                next;
            }
            $section->[0]->{'data'}[$i] = [$key_value_formated[0][0], $key_value_formated[0][1]];
            $key_value_formated[0][0] =~ s/<div.*?>.*?<\/div>//gm;
            $key_value_formated[0][0] =~ s/<span\s+data-text.*?>(.*?)<\/span>/$1/gm;
            $key_value_formated[0][0] =~ s/<span.*?>.*?<\/span>//gm;
            $key_value_formated[0][0] =~ s/<sup.*?>.*?<\/sup>//gm;
            $key_value_formated[0][0] =~ s/<code>(.*?)<\/code>.*/$1/;
            $key_value_formated[0][0] = entities_to_ascii($key_value_formated[0][0]);
            push(@config_quick_access,
                 {  'value'   => $key_value_formated[0][0],
                    'section' => $section->[0]->{'id'},
                    'data'    => { category => $section->[0]->{'title'} }
                 });
        }

        # Remove undefined values which where previously discarded
        @{ $section->[0]->{'data'} } = grep(defined, @{ $section->[0]->{'data'} });

        # If section happened to be empty, remove it as well
        if (!scalar(@{ $section->[0]->{'data'} })) {
            delete $settings[$sections];
        } else {
            push(@sections, [$section->[0]->{'id'}, $section->[0]->{'title'}]);
        }
    }
}

my ($section, $sid, $sname);
if (@sections > 1) {
    print ' <script>';
    print 'var config_quick_access = ' . convert_to_json(\@config_quick_access);
    print "</script>\n";

    # Work out template section to edit
    $in{'section'} ||= $sections[0]->[0];
    my $idx = &indexof($in{'section'}, map {$_->[0]} @sections);
    if ($in{'nprev'}) {
        $idx--;
        $idx = @sections - 1 if ($idx < 0);
    } elsif ($in{'nnext'}) {
        $idx++;
        $idx = 0 if ($idx >= @sections);
    }
    $in{'section'} = $sections[$idx]->[0];

    print &ui_form_start("tconfig.cgi");
    print &ui_span_local($theme_text{'settings_config_configuration_category'} . ":", 'row-block-label') . "\n";
    print &ui_select("section", $in{'section'}, \@sections, 1, 0, 0, 0, "onChange='form.submit()'");
    print &ui_button_group_local(
                                 (
                                  &ui_dropdown_local([(&ui_textbox('search'))],
                                                     {  'title'           => $theme_text{'config_search_options_all'},
                                                        'icon'            => 'fa fa-md fa-file-find',
                                                        'container-class' => 'elm-rel-z config-search',
                                                        'button-class'    => 'btn-default elm-rel-z heighter-28 pd-lr-8',
                                                        'ul-class'        => 'pd-tb-0',
                                                     }
                                    )
                                    .
                                    &ui_submit($theme_text{'extensions_mail_pagination_left'},
                                               "nprev", undef, undef,
                                               "fa fa-fw fa-arrow-circle-o-left",
                                               "heighter-28 margined-left-5")
                                    .
                                    &ui_submit($theme_text{'extensions_mail_pagination_right'},
                                               "nnext", undef, undef, "fa fa-fw fa-arrow-circle-o-right",
                                               "heighter-28"
                                    )
                                 ),
                                 'end_submits');
    print &ui_form_end();
    ($section) = grep {$_->[0] eq $in{'section'}} @sections;
    $sid   = "$section->[0]";
    $sname = "$section->[1]";
}

print ui_form_start("tconfig.cgi", "post", undef, 'id="settings_"');
print &ui_hidden("section", $in{'section'}), "\n";
print ui_table_start($sname, undef, 2);
foreach my $s (@settings) {
    if ($s->[0]->{'id'} eq $sid) {
        if ($s->[0]->{'desc'}) {
            print ui_table_row(undef, "<div class=\"table-cell-padded\">$s->[0]->{'desc'}</div>", 2);
        }
        for (my $i = 0; $i < scalar(@{ $s->[0]->{'data'} }); $i++) {
            print ui_table_row(@{ $s->[0]->{'data'} }[$i]->[0], @{ $s->[0]->{'data'} }[$i]->[1]);
        }
    }
}
print ui_table_end();

# Print footer with left and
my @theme_controls = theme_controls($sname);
print '
<table class="ui_form_end_buttons" style="width:100%">
    <tbody>
        <tr>
            <td>
                ' . $theme_controls[0] . '
            </td>
            <td>
                ' . $theme_controls[1] . '
            </td>
        </tr>
    </tbody>
</table>';

Filemanager

Name Type Size Permission Actions
extensions Folder 0755
help Folder 0755
images Folder 0755
lang Folder 0755
modules Folder 0755
unauthenticated Folder 0755
401.cgi File 342 B 0755
403.cgi File 342 B 0755
404.cgi File 342 B 0755
CHANGELOG.md File 77.62 KB 0644
FUNDING.yml File 102 B 0644
LICENSE File 1.04 KB 0644
THEME.pgp File 3.04 KB 0644
authentic-funcs.pl File 28.56 KB 0644
authentic-init.pl File 64.46 KB 0644
authentic-lib.pl File 99.71 KB 0644
authentic.pl File 52.32 KB 0644
config File 139 B 0644
config.cgi File 6.52 KB 0755
config_save.cgi File 2.14 KB 0755
index.cgi File 309 B 0755
File 0 B 0
File 0 B 0
manifest-webmin.json File 986 B 0644
manifest.template File 920 B 0644
mconfig.cgi File 6.57 KB 0755
mconfig_save.cgi File 1.68 KB 0755
navigation-lib.pl File 54.64 KB 0644
pam_login.cgi File 6.71 KB 0755
password_form.cgi File 4.07 KB 0755
postinstall-usermin.pl File 264 B 0755
postinstall.pl File 645 B 0755
service-worker.js File 141 B 0644
session_login.cgi File 8.55 KB 0755
settings-backgrounds.cgi File 3.61 KB 0755
settings-backgrounds_save.cgi File 1.16 KB 0755
settings-editor_favorites_read.cgi File 897 B 0755
settings-editor_favorites_write.cgi File 574 B 0755
settings-editor_read.cgi File 2.4 KB 0755
settings-editor_write.cgi File 973 B 0755
settings-favorites_save.cgi File 632 B 0755
settings-lib.pl File 651 B 0644
settings-logos.cgi File 4.61 KB 0755
settings-logos_save.cgi File 1.75 KB 0755
stats.cgi File 8.38 KB 0755
sysinfo.cgi File 6.4 KB 0755
tconfig-lib.pl File 33.41 KB 0644
tconfig.cgi File 6.1 KB 0755
theme-update.sh File 8.08 KB 0755
theme.info File 337 B 0644
theme.info.no File 24 B 0644
uconfig.cgi File 6.27 KB 0755
uconfig_save.cgi File 1.99 KB 0755
uninstall-usermin.pl File 170 B 0755
uninstall.pl File 346 B 0755
xhr-lib.pl File 10.22 KB 0644
xhr.cgi File 355 B 0755