# mod_cache.pl # Functions that have been moved out of mod_proxy in apache 2.0 sub mod_cache_directives { local $rv; $rv = [ [ 'CacheDefaultExpire', 0, 13.1, 'virtual', 2.0 ], [ 'CacheEnable CacheDisable', 1, 13.1, 'virtual', 2.0 ], # [ 'CacheIgnoreCacheControl', 0, 13.1, 'virtual', 2.0 ], # [ 'CacheIgnoreNoLastMod', 0, 13.1, 'virtual', 2.0 ], [ 'CacheLastModifiedFactor', 0, 13.1, 'virtual', 2.0 ], [ 'CacheMaxExpire', 0, 13.1, 'virtual', 2.0 ] ]; return &make_directives($rv, $_[0], "mod_cache"); } require 'cache.pl'; sub edit_CacheEnable_CacheDisable { local $rv = "\n". "\n". "\n". "\n"; local ($c, $i = 0); foreach $c (@{$_[0]}, @{$_[1]}, { }) { $rv .= "\n"; $rv .= "\n"; $rv .= sprintf "\n", $c->{'name'} eq 'CacheEnable' ? $c->{'words'}->[1] : $c->{'words'}->[0]; $rv .= "\n"; $i++; } $rv .= "
$text{'cache_enable'}$text{'cache_type'}$text{'cache_url'}
\n"; return (2, $text{'cache_endis'}, $rv); } sub save_CacheEnable_CacheDisable { local ($i, @en, @dis); for($i=0; defined($in{"CacheEnable_e_$i"}); $i++) { next if (!$in{"CacheEnable_e_$i"}); $in{"CacheEnable_u_$i"} =~ /^\S+$/ || &error($text{'cache_eurl'}); if ($in{"CacheEnable_e_$i"} == 1) { push(@en, $in{"CacheEnable_t_$i"}." ".$in{"CacheEnable_u_$i"}); } else { push(@dis, $in{"CacheEnable_u_$i"}); } } return ( \@en, \@dis ); } sub edit_CacheIgnoreCacheControl { return (1, $text{'cache_control'}, &choice_input($_[0]->{'value'}, "CacheIgnoreCacheControl", "off", "$text{'yes'},on", "$text{'no'},off")); } sub save_CacheIgnoreCacheControl { return &parse_choice("CacheIgnoreCacheControl", "off"); } sub edit_CacheIgnoreNoLastMod { return (1, $text{'cache_lastmod'}, &choice_input($_[0]->{'value'}, "CacheIgnoreNoLastMod", "off", "$text{'yes'},on", "$text{'no'},off")); } sub save_CacheIgnoreNoLastMod { return &parse_choice("CacheIgnoreNoLastMod", "off"); }