[# tag: ewok config settings administration page #] [! do { use Ewok::Config qw(:all); use Ewok::Authz qw(refresh_htaccess); use Ewok::Config qw($config_multiline); use Config::Directory; } !][- do { Execute({ inputfile => 'util.epl', import => 1 }); $req = shift; $conf = Config::Directory->new([ "$EWOK_HOME/conf/dist", "$EWOK_HOME/conf/local", ]); $conf->{$_} =~ s/\\/\\\\/g foreach keys %$conf; $op = lc($fdat{op}); $op =~ s/ .*//; @errors = (); $stripe = 2; } -]

ewok Config Settings

[# Cancel #] [$ if ($op eq 'cancel') $] [- $http_headers_out{Location} = "/ewok/admin/" -] [# Save #] [$ elsif ($op eq 'save') $] [- do { @save = (); for my $var (@config_write) { chomp($fdat{lc $var}); $fdat{lc $var} =~ s/\\/\\\\/g; $fdat{lc $var} =~ s/\r\n/\n/gs if $config_multiline->{$var}; push @save, $var if $fdat{lc $var} ne $conf->{$var}; $conf->{$var}, length($fdat{lc $var}), $fdat{lc $var} if $fdat{lc($var)} ne $conf->{$var}; } } -] [$ if (! @save) $] [- errors("No changes to save.", { h1 => undef }) -] [$ else $] [$ foreach $var (@save) $] [- $conf->set($var, $fdat{lc $var} . "\n") -]

[+ $var +] updated.

[$ endforeach $] [- do { # Touch the local directory to force config reloads $ENV{PATH} = "/bin:/usr/bin:/usr/local/bin"; system("touch", "$EWOK_HOME/conf/local"); # Refresh the local htacess if EWOK_ADMINS has changed if (grep /EWOK_ADMINS/, @save) { refresh_htaccess("$EWOK_HOME/htdocs/admin"); } } -]

Back to ewok administration page

Back to ewok file manager

[$ endif $] [# Not cancel or save #] [$ else $] [- $help = Config::Directory->new("$EWOK_HOME/conf/help") -]
[$ foreach $var (@config_write) $] [- $stripe = $stripe % 2 + 1 -] [$ endforeach $]
VariableSetting
[+ $var +][$ if ($help->{$var}) $]  [+ do { $h = $help->{$var}; $h =~ s/\n.*//s; $h } +][$ endif $] [$ if (! $config_multiline->{$var}) $][$ else $][$ endif $]

[$ endif $]