]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
ids.cgi: Allow to configure alternative recipients for reports
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 3 Feb 2026 18:37:24 +0000 (18:37 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 3 Feb 2026 18:37:24 +0000 (18:37 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
13 files changed:
doc/language_issues.en
doc/language_issues.es
doc/language_issues.fr
doc/language_issues.it
doc/language_issues.nl
doc/language_issues.pl
doc/language_issues.ru
doc/language_issues.tr
doc/language_issues.tw
doc/language_issues.zh
html/cgi-bin/ids.cgi
langs/de/cgi-bin/de.pl
langs/en/cgi-bin/en.pl

index 30e2fbcce2affda0a70f4454e70783da3670793e..1b67625c4a0b54f0c5b87c25af74d52ee8cbda56 100644 (file)
@@ -1071,9 +1071,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index 980d27874633632e1462e6d1184b7a7968b70e86..172f6056fe2dea15b5586b766df47dcb4449303c 100644 (file)
@@ -1069,9 +1069,9 @@ WARNING: untranslated string: ids invalid mail address = Is or contains an inval
 WARNING: untranslated string: ids no email recipients = No email recipients given
 WARNING: untranslated string: ids no email sender = No sender email address specified
 WARNING: untranslated string: ids provider eol = (EOL)
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids send email on alert = Send email on alert
 WARNING: untranslated string: indirect target selection = Indirect target selection
 WARNING: untranslated string: info messages = unknown string
index a7c31beaf0db1545d6b82b1bb2acfabfa73809da..ab6596c76f7ea0a3ba5b393b014a8ab3103f5867 100644 (file)
@@ -1057,9 +1057,9 @@ WARNING: untranslated string: ids invalid mail address = Is or contains an inval
 WARNING: untranslated string: ids no email recipients = No email recipients given
 WARNING: untranslated string: ids no email sender = No sender email address specified
 WARNING: untranslated string: ids provider eol = (EOL)
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids rulesets = Rulesets
 WARNING: untranslated string: ids send email on alert = Send email on alert
 WARNING: untranslated string: import connection = Import a Connection
index 10e77143f635fbb29aac0a1371b3327acfbdc1a3..1d698cf13bb37390d787c14e6de6e881cb97f615 100644 (file)
@@ -1193,9 +1193,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index 5d56a5ca27c20cce5df6be95ad8145cc23dcfe68..57d69d7d7af766a2814cd5bc8c8676e4ba0965a3 100644 (file)
@@ -1198,9 +1198,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index 7a1128c20b2202aaeb1edb449e2ff121af9591b8..2fb1858c36a3ac696ca97bdc6f25536161137c28 100644 (file)
@@ -1318,9 +1318,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index b6320fd3092686c09b0359d3363b79c2bcd046ce..3c5ea70e7715b919c412ce051ecefcb3b5a9bd08 100644 (file)
@@ -1316,9 +1316,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index 2ad1bf0544efed33c810dc60cca7723c8e4f9d18..2a787a8ae11fb9b71b10989b7568e7f5fc7b6c4f 100644 (file)
@@ -1136,9 +1136,9 @@ WARNING: untranslated string: ids provider = Provider
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: ids provider settings = Provider settings
 WARNING: untranslated string: ids remove rule structures = Remove old rule structures...
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids reset provider = Reset provider
 WARNING: untranslated string: ids ruleset autoupdate in progress = Ruleset update in progress. Please wait until all operations have completed successfully...
 WARNING: untranslated string: ids ruleset is up to date = No update required - The ruleset is up to date.
index c676ffa52063e74ac316d751a52eb15e781ed6dd..d26096756bddb8b55d25430a545bc5f9438106dc 100644 (file)
@@ -1077,9 +1077,9 @@ WARNING: untranslated string: ids high, medium and low severity = High, Medium,
 WARNING: untranslated string: ids invalid mail address = Is or contains an invalid mail address.
 WARNING: untranslated string: ids no email recipients = No email recipients given
 WARNING: untranslated string: ids no email sender = No sender email address specified
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids send email on alert = Send email on alert
 WARNING: untranslated string: indirect target selection = Indirect target selection
 WARNING: untranslated string: info messages = unknown string
index c676ffa52063e74ac316d751a52eb15e781ed6dd..d26096756bddb8b55d25430a545bc5f9438106dc 100644 (file)
@@ -1077,9 +1077,9 @@ WARNING: untranslated string: ids high, medium and low severity = High, Medium,
 WARNING: untranslated string: ids invalid mail address = Is or contains an invalid mail address.
 WARNING: untranslated string: ids no email recipients = No email recipients given
 WARNING: untranslated string: ids no email sender = No sender email address specified
-WARNING: untranslated string: ids reports daily = Send a daily report
-WARNING: untranslated string: ids reports monthly = Send a monthly report
-WARNING: untranslated string: ids reports weekly = Send a weekly report
+WARNING: untranslated string: ids reports daily = Daily Report
+WARNING: untranslated string: ids reports monthly = Monthly Report
+WARNING: untranslated string: ids reports weekly = Weekly Report
 WARNING: untranslated string: ids send email on alert = Send email on alert
 WARNING: untranslated string: indirect target selection = Indirect target selection
 WARNING: untranslated string: info messages = unknown string
index 9685b37d04eb26fad8757fdd01f086c11db7ee20..d615b8db2d8144e3cefa9ae08daab8d4159ed523 100644 (file)
@@ -596,6 +596,18 @@ if ($cgiparams{'RULESET'} eq $Lang::tr{'ids apply'}) {
                if (&_validate_mail_address($cgiparams{'EMAIL_RECIPIENTS'})) {
                        $errormessage = "$cgiparams{'EMAIL_RECIPIENTS'} - $Lang::tr{'ids invalid mail address'}";
                }
+
+               if (&_validate_mail_address($cgiparams{'EMAIL_RECIPIENTS_REPORT_DAILY'})) {
+                       $errormessage = "$Lang::tr{'ids invalid mail address'}: $cgiparams{'EMAIL_RECIPIENTS_REPORT_DAILY'}";
+               }
+
+               if (&_validate_mail_address($cgiparams{'EMAIL_RECIPIENTS_REPORT_WEEKLY'})) {
+                       $errormessage = "$Lang::tr{'ids invalid mail address'}: $cgiparams{'EMAIL_RECIPIENTS_REPORT_WEEKLY'}";
+               }
+
+               if (&_validate_mail_address($cgiparams{'EMAIL_RECIPIENTS_REPORT_MONTHLY'})) {
+                       $errormessage = "$Lang::tr{'ids invalid mail address'}: $cgiparams{'EMAIL_RECIPIENTS_REPORT_MONTHLY'}";
+               }
        }
 
        # Go on if there are no error messages.
@@ -1053,6 +1065,12 @@ sub show_mainpage() {
        my $email_sender = $idssettings{'EMAIL_SENDER'};
        my $email_recipients = $idssettings{'EMAIL_RECIPIENTS'};
 
+       my %email_recipients_reports = (
+               "DAILY" => $idssettings{'EMAIL_RECIPIENTS_REPORT_DAILY'},
+               "WEEKLY" => $idssettings{'EMAIL_RECIPIENTS_REPORT_WEEKLY'},
+               "MONTHLY" => $idssettings{'EMAIL_RECIPIENTS_REPORT_MONTHLY'},
+       );
+
        # Set form values to cgiparams state in error case.
        if ($errormessage) {
                $checked{'ENABLE_IDS'}{$cgiparams{'ENABLE_IDS'}} = "checked='checked'";
@@ -1063,6 +1081,12 @@ sub show_mainpage() {
 
                $email_sender = $cgiparams{'EMAIL_SENDER'};
                $email_recipients = $cgiparams{'EMAIL_RECIPIENTS'};
+
+               %email_recipients_reports = (
+                       "DAILY" => $cgiparams{'EMAIL_RECIPIENTS_REPORT_DAILY'},
+                       "WEEKLY" => $cgiparams{'EMAIL_RECIPIENTS_REPORT_WEEKLY'},
+                       "MONTHLY" => $cgiparams{'EMAIL_RECIPIENTS_REPORT_MONTHLY'},
+               );
        }
 
        # Draw current state of the IDS
@@ -1209,49 +1233,107 @@ print <<END
                                                </select>
                                        </td>
                                </tr>
+                       </table>
 
+                       <h6>
+                               $Lang::tr{'ids reports daily'}
+                       </h6>
+
+                       <table class="form">
                                <tr>
-                                       <td colspan="2">&nbsp;</td>
+                                       <td>
+                                               <label for="ENABLE_REPORT_DAILY">
+                                                       $Lang::tr{'enable'}
+                                               </label>
+                                       </td>
+
+                                       <td>
+                                               <input type='checkbox' name='ENABLE_REPORT_DAILY'
+                                                       id="ENABLE_REPORT_DAILY" $checked{'ENABLE_REPORT_DAILY'}{'on'}>
+                                       </td>
                                </tr>
 
                                <tr>
                                        <td>
-                                               <label for="ENABLE_REPORT_DAILY">
-                                                       $Lang::tr{'ids reports daily'}
+                                               <label for="EMAIL_RECIPIENTS_REPORT_DAILY">
+                                                       $Lang::tr{'ids email recipients'}
                                                </label>
                                        </td>
 
                                        <td>
-                                               <input type='checkbox' name='ENABLE_REPORT_DAILY' id="ENABLE_REPORT_DAILY" $checked{'ENABLE_REPORT_DAILY'}{'on'}>
+                                               <input type="text" name="EMAIL_RECIPIENTS_REPORT_DAILY"
+                                                       value="$email_recipients_reports{'DAILY'}">
                                        </td>
                                </tr>
+                       </table>
+
+                       <h6>
+                               $Lang::tr{'ids reports weekly'}
+                       </h6>
 
+                       <table class="form">
                                <tr>
                                        <td>
                                                <label for="ENABLE_REPORT_WEEKLY">
-                                                       $Lang::tr{'ids reports weekly'}
+                                                       $Lang::tr{'enable'}
                                                </label>
                                        </td>
 
                                        <td>
-                                               <input type='checkbox' name='ENABLE_REPORT_WEEKLY' id="ENABLE_REPORT_WEEKLY" $checked{'ENABLE_REPORT_WEEKLY'}{'on'}>
+                                               <input type='checkbox' name='ENABLE_REPORT_WEEKLY'
+                                                       id="ENABLE_REPORT_WEEKLY" $checked{'ENABLE_REPORT_WEEKLY'}{'on'}>
                                        </td>
                                </tr>
 
+                               <tr>
+                                       <td>
+                                               <label for="EMAIL_RECIPIENTS_REPORT_WEEKLY">
+                                                       $Lang::tr{'ids email recipients'}
+                                               </label>
+                                       </td>
+
+                                       <td>
+                                               <input type="text" name="EMAIL_RECIPIENTS_REPORT_WEEKLY"
+                                                       value="$email_recipients_reports{'WEEKLY'}">
+                                       </td>
+                               </tr>
+                       </table>
+
+                       <h6>
+                               $Lang::tr{'ids reports monthly'}
+                       </h6>
+
+                       <table class="form">
                                <tr>
                                        <td>
                                                <label for="ENABLE_REPORT_MONTHLY">
-                                                       $Lang::tr{'ids reports monthly'}
+                                                       $Lang::tr{'enable'}
                                                </label>
                                        </td>
 
                                        <td>
-                                               <input type='checkbox' name='ENABLE_REPORT_MONTHLY' id="ENABLE_REPORT_MONTHLY" $checked{'ENABLE_REPORT_MONTHLY'}{'on'}>
+                                               <input type='checkbox' name='ENABLE_REPORT_MONTHLY'
+                                                       id="ENABLE_REPORT_MONTHLY" $checked{'ENABLE_REPORT_MONTHLY'}{'on'}>
                                        </td>
                                </tr>
 
+                               <tr>
+                                       <td>
+                                               <label for="EMAIL_RECIPIENTS_REPORT_MONTHLY">
+                                                       $Lang::tr{'ids email recipients'}
+                                               </label>
+                                       </td>
+
+                                       <td>
+                                               <input type="text" name="EMAIL_RECIPIENTS_REPORT_MONTHLY"
+                                                       value="$email_recipients_reports{'MONTHLY'}">
+                                       </td>
+                               </tr>
+                       </table>
+
+                       <table class="form">
                                <tr class="action">
-                                       <td colspan="2">
+                                       <td>
                                                <input type='submit' name='IDS' value='$Lang::tr{'save'}' />
                                        </td>
                                </tr>
index deca001717c26e5eb9cab6948bb20a80c0eacffe..5ef44291ef8d2d859462b6b5e1b14048bc4215b7 100644 (file)
 'ids provider' => 'Regelset-Anbieter',
 'ids provider settings' => 'Regelset-Anbieter-Einstellungen',
 'ids remove rule structures' => 'Entferne alte Regelstrukturen...',
-'ids reports daily' => 'Einen täglichen Bericht schicken',
-'ids reports monthly' => 'Einen monatlichen Bericht schicken',
-'ids reports weekly' => 'Einen wöchentlichen Bericht schicken',
+'ids reports daily' => 'Täglicher Bericht',
+'ids reports monthly' => 'Monatlicher Bericht',
+'ids reports weekly' => 'Wöchentlicher Bericht',
 'ids reset provider' => 'Providereinstellungen zurücksetzen',
 'ids rules update' => 'Regelsatz',
 'ids ruleset autoupdate in progress' => 'Der Regelsatz wird gerade aktualisiert. Bitte warten Sie, bis dieser Vorgang erfolgreich beendet wurde...',
index dda3e8d5b711b6ad551eed8efa74f8b29cfef67f..e7b911b819fc78d72255f35f9ddd63a4aae5e765 100644 (file)
 'ids provider eol' => '(EOL)',
 'ids provider settings' => 'Provider settings',
 'ids remove rule structures' => 'Remove old rule structures...',
-'ids reports daily' => 'Send a daily report',
-'ids reports monthly' => 'Send a monthly report',
-'ids reports weekly' => 'Send a weekly report',
+'ids reports daily' => 'Daily Report',
+'ids reports monthly' => 'Monthly Report',
+'ids reports weekly' => 'Weekly Report',
 'ids reset provider' => 'Reset provider',
 'ids rules update' => 'Ruleset',
 'ids ruleset autoupdate in progress' => 'Ruleset update in progress. Please wait until all operations have completed successfully...',