X7ROOT File Manager
Current Path:
/usr/libexec/usermin/filter
usr
/
libexec
/
usermin
/
filter
/
📁
..
📄
CHANGELOG
(2.96 KB)
📄
aliases-lib.pl
(7.93 KB)
📄
autoreply-file-lib.pl
(2.28 KB)
📄
config
(218 B)
📄
config.info
(489 B)
📄
config.info.ca
(575 B)
📄
config.info.cs
(370 B)
📄
config.info.de
(594 B)
📄
config.info.el
(404 B)
📄
config.info.hu
(0 B)
📄
config.info.nl
(584 B)
📄
config.info.no
(519 B)
📄
config.info.pl
(604 B)
📄
delete.cgi
(431 B)
📄
down.cgi
(261 B)
📄
edit.cgi
(8.97 KB)
📄
edit_auto.cgi
(3.11 KB)
📄
edit_forward.cgi
(1.18 KB)
📄
filter-lib.pl
(17.71 KB)
📁
images
📄
index.cgi
(4.65 KB)
📁
lang
📄
module.info
(260 B)
📄
module.info.af
(0 B)
📄
module.info.af.auto
(101 B)
📄
module.info.ar
(0 B)
📄
module.info.ar.auto
(175 B)
📄
module.info.be
(0 B)
📄
module.info.be.auto
(170 B)
📄
module.info.bg
(0 B)
📄
module.info.bg.auto
(195 B)
📄
module.info.ca
(109 B)
📄
module.info.cs
(46 B)
📄
module.info.cs.auto
(88 B)
📄
module.info.da
(0 B)
📄
module.info.da.auto
(110 B)
📄
module.info.de
(114 B)
📄
module.info.el
(0 B)
📄
module.info.el.auto
(289 B)
📄
module.info.es
(0 B)
📄
module.info.es.auto
(114 B)
📄
module.info.eu
(0 B)
📄
module.info.eu.auto
(120 B)
📄
module.info.fa
(0 B)
📄
module.info.fa.auto
(144 B)
📄
module.info.fi
(0 B)
📄
module.info.fi.auto
(132 B)
📄
module.info.fr
(0 B)
📄
module.info.fr.auto
(124 B)
📄
module.info.he
(0 B)
📄
module.info.he.auto
(111 B)
📄
module.info.hr
(0 B)
📄
module.info.hr.auto
(124 B)
📄
module.info.hu
(92 B)
📄
module.info.it
(0 B)
📄
module.info.it.auto
(100 B)
📄
module.info.ja
(0 B)
📄
module.info.ja.auto
(151 B)
📄
module.info.ko
(0 B)
📄
module.info.ko.auto
(121 B)
📄
module.info.lt
(0 B)
📄
module.info.lt.auto
(125 B)
📄
module.info.lv
(0 B)
📄
module.info.lv.auto
(127 B)
📄
module.info.ms
(103 B)
📄
module.info.mt
(0 B)
📄
module.info.mt.auto
(107 B)
📄
module.info.nl
(34 B)
📄
module.info.nl.auto
(75 B)
📄
module.info.no
(37 B)
📄
module.info.no.auto
(74 B)
📄
module.info.pl
(118 B)
📄
module.info.pt
(0 B)
📄
module.info.pt.auto
(104 B)
📄
module.info.pt_BR
(0 B)
📄
module.info.pt_BR.auto
(110 B)
📄
module.info.ro
(0 B)
📄
module.info.ro.auto
(123 B)
📄
module.info.ru
(0 B)
📄
module.info.ru.auto
(200 B)
📄
module.info.sk
(0 B)
📄
module.info.sk.auto
(125 B)
📄
module.info.sl
(0 B)
📄
module.info.sl.auto
(133 B)
📄
module.info.sv
(0 B)
📄
module.info.sv.auto
(124 B)
📄
module.info.th
(0 B)
📄
module.info.th.auto
(187 B)
📄
module.info.tr
(0 B)
📄
module.info.tr.auto
(127 B)
📄
module.info.uk
(0 B)
📄
module.info.uk.auto
(194 B)
📄
module.info.ur
(0 B)
📄
module.info.ur.auto
(165 B)
📄
module.info.vi
(0 B)
📄
module.info.vi.auto
(113 B)
📄
module.info.zh
(0 B)
📄
module.info.zh.auto
(97 B)
📄
module.info.zh_TW
(0 B)
📄
module.info.zh_TW.auto
(103 B)
📄
move.cgi
(1.61 KB)
📄
save.cgi
(7.63 KB)
📄
save_auto.cgi
(2.73 KB)
📄
save_forward.cgi
(959 B)
📄
up.cgi
(259 B)
Editing: save_auto.cgi
#!/usr/bin/perl # Create, update or delete an autoreply filter require './filter-lib.pl'; &ReadParse(); &error_setup($text{'auto_err'}); use Time::Local; # Find existing autoreply filter object &lock_file($procmail::procmailrc); @filters = &list_filters(); ($old) = grep { $_->{'actionreply'} && $_->{'nocond'} } @filters; $filter = $old; if ($filter && !$in{'enabled'}) { # Just delete &delete_filter($filter); } elsif ($in{'enabled'}) { # Create or update if (!$filter) { $filter = { 'actionreply' => 1, 'body' => 0, 'continue' => 1 }; } $in{'reply'} =~ /\S/ || &error($text{'save_ereply'}); $in{'reply'} =~ s/\r//g; $filter->{'reply'}->{'autotext'} = $in{'reply'}; # From address (automatic) $filter->{'reply'}->{'from'} = &mailbox::get_preferred_from_address(); # File $idx = defined($filter->{'index'}) ? $filter->{'index'} : scalar(@filters); $filter->{'reply'}->{'autoreply'} ||= "$remote_user_info[7]/autoreply.$idx.txt"; # Reply period if ($config{'reply_force'}) { # Forced to minimum $min = $config{'reply_min'} || 60; $filter->{'reply'}->{'period'} = $min*60; $filter->{'reply'}->{'replies'} ||= "$user_module_config_directory/replies"; } elsif ($in{'period_def'}) { # No autoreply period delete($filter->{'reply'}->{'replies'}); delete($filter->{'reply'}->{'period'}); } else { # Set reply period and tracking file $in{'period'} =~ /^\d+$/ || &error($text{'save_eperiod'}); if ($config{'reply_min'} && $in{'period'} < $config{'reply_min'}) { &error(&text('save_eperiodmin', $config{'reply_min'})); } $filter->{'reply'}->{'period'} = $in{'period'}*60; $filter->{'reply'}->{'replies'} ||= "$user_module_config_directory/replies"; } # Save character set if ($in{'charset_def'} == 1) { delete($filter->{'reply'}->{'charset'}); } elsif ($in{'charset_def'} == 2) { $filter->{'reply'}->{'charset'} = &get_charset(); } else { $in{'charset'} =~ /^[a-z0-9\.\-\_]+$/i || error($text{'save_echarset'}); $filter->{'reply'}->{'charset'} = $in{'charset'}; } # Save subject if ($in{'subject_def'}) { delete($filter->{'reply'}->{'subject'}); } else { $filter->{'reply'}->{'subject'} = $in{'subject'}; } # Save autoreply start and end foreach $p ('start', 'end') { local ($s, $m, $h) = $p eq 'start' ? (0, 0, 0) : (59, 59, 23); if (!$in{$p.'_def'}) { eval { $tm = timelocal($s, $m, $h, $in{'d'.$p}, $in{'m'.$p}-1, $in{'y'.$p}-1900); }; $tm || &error($text{'save_e'.$p}); $filter->{'reply'}->{'autoreply_'.$p} = $tm; } else { delete($filter->{'reply'}->{'autoreply_'.$p}); } } if ($old) { &modify_filter($filter); } else { &insert_filter($filter); } } &unlock_file($procmail::procmailrc); &redirect("");
Upload File
Create Folder