]> git.ipfire.org Git - people/mfischer/ipfire-2.x.git/commitdiff
ovpnmain.cgi: Unify the error message box
authorMichael Tremer <michael.tremer@ipfire.org>
Wed, 10 Apr 2024 12:26:43 +0000 (14:26 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Wed, 14 Aug 2024 16:53:54 +0000 (16:53 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
14 files changed:
config/cfgroot/header.pl
doc/language_issues.de
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_missings
html/cgi-bin/ovpnmain.cgi
html/html/themes/ipfire/include/css/style.css
langs/en/cgi-bin/en.pl

index 1d1146978ccec8a0ab9363d9af2908f8646994d9..4b7672efbce5b7e4e9ceffd7210fe6ee98c7618d 100644 (file)
@@ -368,7 +368,9 @@ sub openbox {
 
        my $title = shift;
 
-       print "<section class=\"section is-box\">\n";
+       my @classes = ("section", "is-box", @_);
+
+       print "<section class=\"@classes\">\n";
 
        # Show the title
        if ($title) {
@@ -383,6 +385,26 @@ sub closebox {
        print "</section>";
 }
 
+sub errorbox($) {
+       my @errors = grep { $_ ne "" } @_;
+
+       # Do nothing if there are no errors
+       return unless (@errors);
+
+       # Open a new box
+       &openbox('100%', 'left', $Lang::tr{'oops something went wrong'}, "is-error");
+
+       # Print all error messages
+       print "<ul>\n";
+       foreach my $error (@errors) {
+               print "<li>$error</li>\n";
+       }
+       print "</ul>\n";
+
+       # Close the box again
+       &closebox();
+}
+
 sub graph($) {
        my $title = shift;
 
index 9227a02fc8fb5cb7193996cce5c60bfa58cdf31f..a10102a031f555663a1e8d5acd80106753c1cfee 100644 (file)
@@ -964,6 +964,7 @@ WARNING: untranslated string: log drop hostile in = Log dropped packets FROM hos
 WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
 WARNING: untranslated string: netbios nameserver daemon = NetBIOS Nameserver Daemon
 WARNING: untranslated string: no entries = No entries at the moment.
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: optional = Optional
 WARNING: untranslated string: ovpn roadwarrior server = OpenVPN Roadwarrior Server
 WARNING: untranslated string: pakfire invalid tree = Invalid repository selected
index 7cd36aff37ba2c1ca990c2811d3984bd474abab7..7ae1a19bbd28bf92db81c4c458181353e5ae2838 100644 (file)
@@ -1407,6 +1407,7 @@ WARNING: untranslated string: online help en = Online help (in english)
 WARNING: untranslated string: only digits allowed in holdoff field = Only digits allowed in holdoff field
 WARNING: untranslated string: only digits allowed in max retries field = Only digits allowed in max retries field.
 WARNING: untranslated string: only digits allowed in the idle timeout = Only digits allowed in the idle timeout.
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openssl produced an error = OpenSSL produced an error
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
index 4b04f49a12ded8cda52ef8e21472cbe16604d21a..259c3a9c3ee5f2d37c0c38ea152a0052fe596cbd 100644 (file)
@@ -1023,6 +1023,7 @@ WARNING: untranslated string: load average = Load Average
 WARNING: untranslated string: log drop hostile in = Log dropped packets FROM hostile networks
 WARNING: untranslated string: log drop hostile out = Log dropped packets TO hostile networks
 WARNING: untranslated string: no data = unknown string
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
 WARNING: untranslated string: ovpn roadwarrior server = OpenVPN Roadwarrior Server
index b9c7c429e39946f6834e02688525eb4e3f81244d..41e39f18b5ae431bd36f36af19824564545a158c 100644 (file)
@@ -971,6 +971,7 @@ WARNING: untranslated string: guardian service = unknown string
 WARNING: untranslated string: hostile networks total = Total Hostile Networks
 WARNING: untranslated string: ids provider eol = (EOL)
 WARNING: untranslated string: load average = Load Average
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: ovpn roadwarrior server = OpenVPN Roadwarrior Server
 WARNING: untranslated string: pakfire ago = ago.
 WARNING: untranslated string: processors = Processors
index 6a6acf00b97801b83cc133695bee8b45f83833d5..f900bced12a78a9e6b3ced65e4d014e70690c9a4 100644 (file)
@@ -1209,6 +1209,7 @@ WARNING: untranslated string: one hour = One Hour
 WARNING: untranslated string: one month = One Month
 WARNING: untranslated string: one week = One Week
 WARNING: untranslated string: one year = One Year
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
index 5d15b7f58ac2f60da600be5a8883cb5e0721524f..dadcbaea2bf574ff095568bfd28736c0910fd216 100644 (file)
@@ -1233,6 +1233,7 @@ WARNING: untranslated string: one hour = One Hour
 WARNING: untranslated string: one month = One Month
 WARNING: untranslated string: one week = One Week
 WARNING: untranslated string: one year = One Year
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
index b4fc5df68a907af18234de99eb33527f33096300..2f8d0e50146f8706e227c5c5c56bbbcb6b9b26c9 100644 (file)
@@ -1387,6 +1387,7 @@ WARNING: untranslated string: one hour = One Hour
 WARNING: untranslated string: one month = One Month
 WARNING: untranslated string: one week = One Week
 WARNING: untranslated string: one year = One Year
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
index 9cb5e2a150064be8ca1e87a7186dba69e07b9cad..e57d2199cf2bc15c8860bc9a49226ca008497890 100644 (file)
@@ -1383,6 +1383,7 @@ WARNING: untranslated string: one hour = One Hour
 WARNING: untranslated string: one month = One Month
 WARNING: untranslated string: one week = One Week
 WARNING: untranslated string: one year = One Year
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
index 4f9792a1a0d0aa35dccc89366c2b4a36ae19e98a..b5197e10888b4f46322b21a61ea8a7791c4b45ad 100644 (file)
@@ -1126,6 +1126,7 @@ WARNING: untranslated string: no data = unknown string
 WARNING: untranslated string: no entries = No entries at the moment.
 WARNING: untranslated string: not affected = Not Affected
 WARNING: untranslated string: not validating = Not validating
+WARNING: untranslated string: oops something went wrong = Oops, something went wrong...
 WARNING: untranslated string: open connections = Open Connections
 WARNING: untranslated string: openvpn cert expires soon = Expires Soon
 WARNING: untranslated string: openvpn cert has expired = Expired
index 4f166b440d98b2697543e550ba7590f1e0bb50c2..ef5c58ff167f96a7fb25ff9a14b62c82885ef51b 100644 (file)
@@ -78,6 +78,7 @@
 < no entries
 < notes
 < okay
+< oops something went wrong
 < optional
 < ovpn roadwarrior server
 < quick control
 < load average
 < log drop hostile in
 < log drop hostile out
+< oops something went wrong
 < openvpn cert expires soon
 < openvpn cert has expired
 < ovpn roadwarrior server
 < ids provider eol
 < ids unsupported provider
 < load average
+< oops something went wrong
 < ovpn roadwarrior server
 < processors
 < reg_file_data_sampling
 < one month
 < one week
 < one year
+< oops something went wrong
 < open connections
 < openvpn cert expires soon
 < openvpn cert has expired
 < one month
 < one week
 < one year
+< oops something went wrong
 < open connections
 < openvpn cert expires soon
 < openvpn cert has expired
 < one month
 < one week
 < one year
+< oops something went wrong
 < open connections
 < openvpn cert expires soon
 < openvpn cert has expired
 < one month
 < one week
 < one year
+< oops something went wrong
 < open connections
 < openvpn cert expires soon
 < openvpn cert has expired
 < not affected
 < not validating
 < okay
+< oops something went wrong
 < open connections
 < openvpn cert expires soon
 < openvpn cert has expired
index b89fe432da681e6238a4833fa9ad3d59e5bb01e3..72695f892f3dfb24c0ff51ce2c6930d87d93e1a8 100755 (executable)
@@ -1931,12 +1931,10 @@ END
        &Header::showhttpheaders();
        &Header::openpage($Lang::tr{'ovpn'}, 1, '');
        &Header::openbigbox('100%', 'LEFT', '', '');
-       if ($errormessage) {
-           &Header::openbox('100%', 'LEFT', $Lang::tr{'error messages'});
-           print "<class name='base'>$errormessage";
-           print "&nbsp;</class>";
-           &Header::closebox();
-       }
+
+       # Show any errors
+       &Header::errorbox($errormessage);
+
        &Header::openbox('100%', 'LEFT', "$Lang::tr{'generate root/host certificates'}:");
        print <<END;
        <form method='post' enctype='multipart/form-data'>
@@ -2699,13 +2697,12 @@ ADV_ERROR:
     &Header::showhttpheaders();
     &Header::openpage($Lang::tr{'status ovpn'}, 1, '');
     &Header::openbigbox('100%', 'LEFT', '', $errormessage);
-    if ($errormessage) {
-       &Header::openbox('100%', 'LEFT', $Lang::tr{'error messages'});
-       print "<class name='base'>$errormessage\n";
-       print "&nbsp;</class>\n";
-       &Header::closebox();
-    }
-    &Header::openbox('100%', 'LEFT', $Lang::tr{'advanced server'});
+
+       # Show any errors
+       &Header::errorbox($errormessage);
+
+    &Header::opensection();
+
     print <<END;
     <form method='post' enctype='multipart/form-data'>
 <table width='100%' border=0>
@@ -5205,12 +5202,8 @@ END
     &Header::openpage($Lang::tr{'status ovpn'}, 1, '');
     &Header::openbigbox('100%', 'LEFT', '', $errormessage);
 
-    if ($errormessage) {
-       &Header::openbox('100%', 'LEFT', $Lang::tr{'error messages'});
-       print "<class name='base'>$errormessage\n";
-       print "&nbsp;</class>\n";
-       &Header::closebox();
-    }
+       # Show any errors and warnings
+       &Header::errorbox($errormessage);
 
        if ($cryptoerror) {
                &Header::openbox('100%', 'LEFT', $Lang::tr{'crypto error'});
index c935f2ff4a4ea4d65db3c970beaf39ea2f1cc940..1602ecd433d6b4fc5e06c1155c6fe66b35fbc8d4 100644 (file)
@@ -194,6 +194,15 @@ section.is-box {
        border: 1px solid var(--color-grey);
 }
 
+section.is-error {
+       color: var(--color-red);
+       border: 1px solid var(--color-red);
+}
+
+section.is-error ul {
+       margin-bottom: 0 !important;
+}
+
 section .title {
        margin-bottom: 1rem;
        border-bottom: 1px solid var(--color-grey);
index 26c11b2f6a9708343184e9b1273ff4608b170276..89bef62f08fcf118f25b76e44cd7dd668f05ca22 100644 (file)
 'only digits allowed in max retries field' => 'Only digits allowed in max retries field.',
 'only digits allowed in the idle timeout' => 'Only digits allowed in the idle timeout.',
 'only red' => 'Only RED',
+'oops something went wrong' => 'Oops, something went wrong...',
 'open connections' => 'Open Connections',
 'open to all' => 'Override external access to ALL',
 'openssl produced an error' => 'OpenSSL produced an error',