!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/usr/share/webmin/gray-theme/   drwxr-xr-x
Free 26.36 GB of 117.98 GB (22.34%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     gray-theme-lib.pl (4.63 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# Functions used by theme CGIs

eval "use WebminCore;";
if ($@) {
    do '../web-lib.pl';
    do '../ui-lib.pl';
    }
&init_config();
&load_theme_library();
%text = &load_language($current_theme);
$right_frame_sections_file = "$config_directory/$current_theme/sections";
$default_domains_to_show = 10;

# get_left_frame_width()
# Returns the width of the left frame in pixels
sub get_left_frame_width
{
local $sects = &get_right_frame_sections();
return $sects->{'fsize'} ? $sects->{'fsize'} :
       &get_product_name() eq 'usermin' ? 200 :
       &foreign_available("server-manager") &&
       &foreign_available("virtual-server") ? 280 : 260;
}

# list_virtualmin_theme_overlays()
# Returns a list of overlay themes suitable for this theme
sub list_virtualmin_theme_overlays
{
&foreign_require("webmin", "webmin-lib.pl");
local @rv;
foreach my $tinfo (&webmin::list_themes()) {
    if ($tinfo->{'overlay'} &&
        (!$tinfo->{'overlays'} ||
         &indexof($current_theme,
              split(/\s+/, $tinfo->{'overlays'})) >= 0)) {
        push(@rv, $tinfo);
        }
    }
return @rv;
}

sub get_virtualmin_docs
{
local ($level) = @_;
return $level == 0 ? "http://www.virtualmin.com/documentation" :
       $level == 1 ? "http://www.virtualmin.com/documentation/users/reseller" :
       $level == 2 ? "http://www.virtualmin.com/documentation/users/server-owner" :
             "http://www.virtualmin.com/documentation";
}

sub get_vm2_docs
{
local ($level) = @_;
return "http://www.virtualmin.com/documentation/cloudmin";
}

# get_right_frame_sections()
# Returns a hash containg details of visible right-frame sections
sub get_right_frame_sections
{
local %sects;
&read_file($right_frame_sections_file, \%sects);
if ($sects{'global'}) {
    # Force use of global settings
    return \%sects;
    }
else {
    # Can try personal settings, but fall back to global
    local %usersects;
    if (&read_file($right_frame_sections_file.".".$remote_user,
               \%usersects)) {
        return \%usersects;
        }
    else {
        return \%sects;
        }
    }
}

# save_right_frame_sections(&sects)
sub save_right_frame_sections
{
local ($sects) = @_;
&make_dir("$config_directory/$current_theme", 0700);
if ($sects->{'global'}) {
    # Update global settings, for all users
    &write_file($right_frame_sections_file, $sects);
    }
else {
    # Save own, and turn off global flag (if this is the master admin)
    if (&foreign_check("virtual-server")) {
        &foreign_require("virtual-server", "virtual-server-lib.pl");
        if (&virtual_server::master_admin()) {
            local %globalsect;
            &read_file($right_frame_sections_file, \%globalsect);
            $globalsect{'global'} = 0;
            &write_file($right_frame_sections_file, \%globalsect);
            }
        }
    &write_file($right_frame_sections_file.".".$remote_user, $sects);
    }
}

# list_right_frame_sections()
# Returns a list of possible sections for the current user, as hash refs
sub list_right_frame_sections
{
local ($hasvirt, $level, $hasvm2) = &get_virtualmin_user_level();
local @rv;
if ($level == 0) {
    # Master admin
    if ($hasvirt) {
        push(@rv, 'updates', 'status', 'newfeatures',
              'quotas', 'bw', 'ips', 'sysinfo');
        }
    if ($hasvm2) {
        push(@rv, 'vm2servers');
        }
    }
elsif ($level == 2) {
    # Domain owner
    push(@rv, 'virtualmin');
    }
elsif ($level == 1) {
    # Reseller
    push(@rv, 'reseller', 'quotas', 'bw');
    }
elsif ($level == 4) {
    # Cloudmin system owner
    push(@rv, 'owner', 'vm2servers');
    }
else {
    # Usermin
    push(@rv, 'system');
    }
@rv = map { { 'name' => $_,
          'title' => $virtual_server::text{'right_'.$_.'header'} } } @rv;

# Add plugin-defined sections
if (($level == 0 || $level == 1 || $level == 2) && $hasvirt &&
    defined(&virtual_server::list_plugin_sections)) {
    push(@rv, &virtual_server::list_plugin_sections($level));
    }
if (($level == 0 || $level == 4) && $hasvm2 &&
    defined(&server_manager::list_plugin_sections)) {
    push(@rv, &server_manager::list_plugin_sections($level));
    }

return @rv;
}

# get_virtualmin_user_level()
# Returns three numbers - the first being a flag if virtualmin is installed,
# the second a user type (3=usermin, 2=domain, 1=reseller, 0=master, 4=system
# owner), the third a flag for Cloudmin
sub get_virtualmin_user_level
{
local ($hasvirt, $hasvm2, $level);
$hasvm2 = &foreign_available("server-manager");
$hasvirt = &foreign_available("virtual-server");
if ($hasvm2) {
    &foreign_require("server-manager", "server-manager-lib.pl");
    }
if ($hasvirt) {
    &foreign_require("virtual-server", "virtual-server-lib.pl");
    }
if ($hasvm2) {
    $level = $server_manager::access{'owner'} ? 4 : 0;
    }
elsif ($hasvirt) {
    $level = &virtual_server::master_admin() ? 0 :
         &virtual_server::reseller_admin() ? 1 : 2;
    }
elsif (&get_product_name() eq "usermin") {
    $level = 3;
    }
else {
    $level = 0;
    }
return ($hasvirt, $level, $hasvm2);
}

1;


:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0058 ]--