From 509141f5d5be0ebd9c2336a9d5b27873bacd8aee Mon Sep 17 00:00:00 2001 From: iliajie Date: Mon, 9 Jan 2023 18:27:57 +0200 Subject: [PATCH] Fix `mailbox_idle_check_interval` bugs https://sourceforge.net/p/webadmin/bugs/5602/ --- dovecot/edit_mail.cgi | 5 +++-- dovecot/save_mail.cgi | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/dovecot/edit_mail.cgi b/dovecot/edit_mail.cgi index f6b8da86d..d306055f3 100755 --- a/dovecot/edit_mail.cgi +++ b/dovecot/edit_mail.cgi @@ -54,10 +54,11 @@ print &ui_table_hr(); # Idle interval $idle = &find_value("mailbox_idle_check_interval", $conf); +$idle_never = $idle =~ /520\s+weeks/; print &ui_table_row($text{'mail_idle'}, - &ui_radio("idle", $idle eq '' ? 0 : $idle == 0 ? 1 : 2, + &ui_radio("idle", $idle eq '' ? 0 : $idle_never ? 1 : 2, [ [ 1, $text{'mail_never'} ], - [ 2, &ui_textbox("idlei", $idle ? $idle : "", 10). + [ 2, &ui_textbox("idlei", $idle && !$idle_never ? int($idle) : "", 10). " ".$text{'mail_secs'} ], [ 0, &getdef("mailbox_idle_check_interval", [ [ 0, $text{'mail_never'} ] ]) ] ]), 3); diff --git a/dovecot/save_mail.cgi b/dovecot/save_mail.cgi index 33d9dabaf..57248b020 100755 --- a/dovecot/save_mail.cgi +++ b/dovecot/save_mail.cgi @@ -38,10 +38,10 @@ else { &save_directive($conf, "default_mail_env", $env eq "" ? undef : $env); } -# Check and idle intervals +# Idle intervals $in{'idle'} != 2 || $in{'idlei'} =~ /^\d+$/ || &error($text{'mail_eidle'}); &save_directive($conf, "mailbox_idle_check_interval", - $in{'idle'} == 1 ? 0 : $in{'idle'} == 2 ? $in{'idlei'} : undef); + $in{'idle'} == 1 ? "520 weeks" : $in{'idle'} == 2 ? "$in{'idlei'} seconds" : undef); # Yes/no options &save_directive($conf, "mail_full_filesystem_access",