From 03add7b4a12d99811bf64b0ec6a177e058407a1e Mon Sep 17 00:00:00 2001 From: Marcus Funch Date: Mon, 8 May 2023 14:21:03 +0200 Subject: [PATCH 001/297] Add test data using the password input type and empty parameters --- dev-environment/system_fixtures/100_system.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev-environment/system_fixtures/100_system.json b/dev-environment/system_fixtures/100_system.json index b9db189a..3f54fcdf 100755 --- a/dev-environment/system_fixtures/100_system.json +++ b/dev-environment/system_fixtures/100_system.json @@ -6334,7 +6334,7 @@ "model": "system.associatedscript", "pk": 36, "fields": { - "group": 10, + "group": 9, "script": 36, "position": 9 } @@ -6343,7 +6343,7 @@ "model": "system.associatedscript", "pk": 37, "fields": { - "group": 10, + "group": 9, "script": 84, "position": 10 } From ce12e35b40505ea9433cdd5657dbcfd4342e2d76 Mon Sep 17 00:00:00 2001 From: Marcus Funch Date: Mon, 8 May 2023 14:30:13 +0200 Subject: [PATCH 002/297] Test data: Move list of AssociatedScripts to Group 1 So we're more likely to run into AssociatedScript bugs while testing --- dev-environment/system_fixtures/100_system.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dev-environment/system_fixtures/100_system.json b/dev-environment/system_fixtures/100_system.json index 3f54fcdf..b9db189a 100755 --- a/dev-environment/system_fixtures/100_system.json +++ b/dev-environment/system_fixtures/100_system.json @@ -6334,7 +6334,7 @@ "model": "system.associatedscript", "pk": 36, "fields": { - "group": 9, + "group": 10, "script": 36, "position": 9 } @@ -6343,7 +6343,7 @@ "model": "system.associatedscript", "pk": 37, "fields": { - "group": 9, + "group": 10, "script": 84, "position": 10 } From 47da3921a4cdcddf669ac6ce83ec388c5101ef5b Mon Sep 17 00:00:00 2001 From: Andreas Poulsen Date: Tue, 16 May 2023 14:58:31 +0200 Subject: [PATCH 003/297] Link to different pdfs based on user language setting --- admin_site/locale/da/LC_MESSAGES/django.po | 288 ++++++++--------- admin_site/locale/sv/LC_MESSAGES/django.mo | Bin 38018 -> 38019 bytes admin_site/locale/sv/LC_MESSAGES/django.po | 290 +++++++++--------- admin_site/static/img/favicon_os2.png | Bin admin_site/static/js/security_events_list.js | 17 +- admin_site/system/urls.py | 29 -- admin_site/system/views.py | 27 ++ admin_site/templates/documentation/index.html | 6 +- .../templates/system/wake_plan/wake_plan.html | 2 +- 9 files changed, 338 insertions(+), 321 deletions(-) mode change 100644 => 100755 admin_site/static/img/favicon_os2.png diff --git a/admin_site/locale/da/LC_MESSAGES/django.po b/admin_site/locale/da/LC_MESSAGES/django.po index 14028870..6777c7ad 100755 --- a/admin_site/locale/da/LC_MESSAGES/django.po +++ b/admin_site/locale/da/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: OS2borgerPC\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-04-18 13:26+0200\n" +"POT-Creation-Date: 2023-05-16 14:48+0200\n" "PO-Revision-Date: 2021-08-19 10:00+0200\n" "Last-Translator: Marcus Mogensen \n" "Language: da\n" @@ -59,7 +59,7 @@ msgstr "Site" msgid "Usertype" msgstr "Brugertype" -#: system/forms.py:136 system/models.py:986 +#: system/forms.py:136 system/models.py:990 msgid "Password" msgstr "Adgangskode" @@ -76,8 +76,8 @@ msgstr "De to adgangskoder skal være ens" msgid "A user named \"%s\" already exists." msgstr "En bruger med navnet \"%s\" eksisterer allerede." -#: system/mixins.py:9 system/models.py:134 system/models.py:573 -#: system/models.py:883 system/models.py:1253 system/models.py:1280 +#: system/mixins.py:9 system/models.py:134 system/models.py:577 +#: system/models.py:887 system/models.py:1257 system/models.py:1284 msgid "created" msgstr "oprettet" @@ -110,14 +110,14 @@ msgid "owner configuration" msgstr "ejer-konfiguration" #: system/models.py:127 system/models.py:214 system/models.py:244 -#: system/models.py:290 system/models.py:444 system/models.py:558 -#: system/models.py:674 system/models.py:686 system/models.py:770 -#: system/models.py:989 system/models.py:1097 system/models.py:1238 +#: system/models.py:290 system/models.py:444 system/models.py:562 +#: system/models.py:678 system/models.py:690 system/models.py:774 +#: system/models.py:993 system/models.py:1101 system/models.py:1242 msgid "name" msgstr "navn" -#: system/models.py:128 system/models.py:215 system/models.py:560 -#: system/models.py:689 system/models.py:1098 +#: system/models.py:128 system/models.py:215 system/models.py:564 +#: system/models.py:693 system/models.py:1102 msgid "UID" msgstr "UID" @@ -290,243 +290,243 @@ msgstr "søndag tænd" msgid "wake change events" msgstr "undtagelser" -#: system/models.py:446 system/models.py:563 system/models.py:691 -#: system/models.py:1099 system/models.py:1250 +#: system/models.py:446 system/models.py:567 system/models.py:695 +#: system/models.py:1103 system/models.py:1254 msgid "description" msgstr "beskrivelse" -#: system/models.py:557 +#: system/models.py:561 msgid "MAC" msgstr "MAC" -#: system/models.py:568 +#: system/models.py:572 msgid "activated" msgstr "aktiveret" -#: system/models.py:570 +#: system/models.py:574 msgid "update required" msgstr "opdatering påkrævet" -#: system/models.py:575 +#: system/models.py:579 msgid "last seen" msgstr "seneste tjek-ind" -#: system/models.py:577 +#: system/models.py:581 msgid "location" msgstr "placering" -#: system/models.py:699 +#: system/models.py:703 msgid "executable code" msgstr "eksekverbar kode" -#: system/models.py:702 system/models.py:1108 +#: system/models.py:706 system/models.py:1112 msgid "security script" msgstr "sikkerhedsscript" -#: system/models.py:706 +#: system/models.py:710 msgid "hidden script" msgstr "skjult script" -#: system/models.py:710 +#: system/models.py:714 msgid "maintained by Magenta" msgstr "vedligeholdt af Magenta" -#: system/models.py:787 system/models.py:996 +#: system/models.py:791 system/models.py:1000 msgid "position" msgstr "position" -#: system/models.py:849 +#: system/models.py:853 msgid "jobstatus:New" msgstr "Nyt" -#: system/models.py:850 +#: system/models.py:854 msgid "jobstatus:Submitted" msgstr "Afsendt" -#: system/models.py:851 +#: system/models.py:855 msgid "jobstatus:Running" msgstr "Kører" -#: system/models.py:852 +#: system/models.py:856 msgid "jobstatus:Failed" msgstr "Fejlet" -#: system/models.py:853 +#: system/models.py:857 msgid "jobstatus:Done" msgstr "Udført" -#: system/models.py:854 +#: system/models.py:858 msgid "jobstatus:Resolved" msgstr "Genstartet" -#: system/models.py:880 +#: system/models.py:884 msgid "log output" msgstr "log output" -#: system/models.py:885 +#: system/models.py:889 msgid "started" msgstr "påbegyndt" -#: system/models.py:886 +#: system/models.py:890 msgid "finished" msgstr "afsluttet" -#: system/models.py:939 +#: system/models.py:943 #, python-brace-format msgid "Cannot change status from {0} to {1}" msgstr "Kan ikke ændre status fra {0} til {1}" -#: system/models.py:946 system/views.py:509 +#: system/models.py:950 system/views.py:509 #, python-format msgid "Can only restart jobs with status %s" msgstr "Kan kun genstarte jobs der har status %s" -#: system/models.py:980 +#: system/models.py:984 msgid "String" msgstr "Streng" -#: system/models.py:981 +#: system/models.py:985 msgid "Integer" msgstr "Heltal" -#: system/models.py:982 +#: system/models.py:986 #: templates/system/wake_plan/wake_change_events/wake_change_event.html:63 msgid "Date" msgstr "Dato" -#: system/models.py:983 +#: system/models.py:987 msgid "File" msgstr "Fil" -#: system/models.py:984 +#: system/models.py:988 msgid "Boolean" msgstr "Afkrydsningsfelt" -#: system/models.py:985 +#: system/models.py:989 msgid "Time" msgstr "Tid" -#: system/models.py:991 +#: system/models.py:995 msgid "value type" msgstr "værdi-type" -#: system/models.py:994 +#: system/models.py:998 msgid "default value" msgstr "standardværdi" -#: system/models.py:997 +#: system/models.py:1001 msgid "mandatory" msgstr "påkrævet" # SecurityProblem class -#: system/models.py:1080 +#: system/models.py:1084 msgid "securitylevel:Normal" msgstr "Normal" -#: system/models.py:1081 +#: system/models.py:1085 msgid "securitylevel:High" msgstr "Høj" -#: system/models.py:1082 +#: system/models.py:1086 msgid "securitylevel:Critical" msgstr "Kritisk" # Konsistens ml. navn i sikkerhedsregel og sikkerhedshændelse -#: system/models.py:1101 +#: system/models.py:1105 msgid "level" msgstr "alvorlighedsgrad" -#: system/models.py:1115 +#: system/models.py:1119 msgid "alert groups" msgstr "overvågede grupper" -#: system/models.py:1121 +#: system/models.py:1125 msgid "alert users" msgstr "modtager(e) af e-mail-advarsel" # SecurityEvent class -#: system/models.py:1149 +#: system/models.py:1153 msgid "eventstatus:New" msgstr "Ny" -#: system/models.py:1150 +#: system/models.py:1154 msgid "eventstatus:Assigned" msgstr "Tildelt" -#: system/models.py:1151 +#: system/models.py:1155 msgid "eventstatus:Resolved" msgstr "Løst" -#: system/models.py:1167 +#: system/models.py:1171 msgid "occurred" msgstr "hændelsestidspunkt" -#: system/models.py:1169 +#: system/models.py:1173 msgid "reported" msgstr "modtagelsestidspunkt" -#: system/models.py:1176 +#: system/models.py:1180 msgid "assigned user" msgstr "håndteres af" -#: system/models.py:1249 +#: system/models.py:1253 msgid "title" msgstr "titel" -#: system/models.py:1251 system/models.py:1278 +#: system/models.py:1255 system/models.py:1282 msgid "content" msgstr "indhold" -#: system/models.py:1254 +#: system/models.py:1258 msgid "updated" msgstr "opdateret" -#: system/models.py:1255 +#: system/models.py:1259 msgid "author" msgstr "forfatter" -#: system/models.py:1258 +#: system/models.py:1262 msgid "version" msgstr "version" -#: system/views.py:315 +#: system/views.py:316 #, python-format msgid "Settings for %s updated" msgstr "Indstillinger for %s opdateret" -#: system/views.py:545 +#: system/views.py:544 #, python-format msgid "The script %s is being rerun on the computer %s" msgstr "Scriptet %s bliver genkørt på computeren %s" -#: system/views.py:590 +#: system/views.py:588 #, python-format msgid "You have no Script with the following ID: %s" msgstr "Du har intet script med ID %s" -#: system/views.py:697 +#: system/views.py:695 msgid "Error: You must provide a name" msgstr "Fejl: Du skal angive et navn" -#: system/views.py:704 +#: system/views.py:702 msgid "Error: You must provide a correct input parameter type" msgstr "Fejl: Du skal angive en korrekt input-parameter-type" -#: system/views.py:864 +#: system/views.py:861 #, python-format msgid "Script %s updated" msgstr "Script %s opdateret" -#: system/views.py:961 system/views.py:983 +#: system/views.py:957 system/views.py:979 msgid "You must specify at least one group or pc" msgstr "Du skal angive mindst en pc eller gruppe" -#: system/views.py:1109 +#: system/views.py:1105 #, python-format msgid "You have no computer with the following ID: %s" msgstr "Du har ingen computer med følgende ID: %s" -#: system/views.py:1181 +#: system/views.py:1176 #, python-format msgid "Computer %s updated" msgstr "Computer %s opdateret" @@ -542,7 +542,7 @@ msgstr "" "computer(ne) %s allerede er tilmeldt tidsplan(erne) %s, og undtagelse(rne) " "%s kunne ikke tilføjes grundet overlap med andre valgte undtagelser" -#: system/views.py:1462 +#: system/views.py:1466 #, python-format msgid "" "PCWakePlan %s created, but the group(s) %s could not be added because the " @@ -551,7 +551,7 @@ msgstr "" "Tænd/sluk tidsplan %s oprettet, men gruppe(rne) %s kunne ikke tilføjes, da " "computer(ne) %s allerede er tilmeldt tidsplan(erne) %s" -#: system/views.py:1475 +#: system/views.py:1483 #, python-format msgid "" "PCWakePlan %s created, but the WakeChangeEvents %s could not be added due to " @@ -560,17 +560,17 @@ msgstr "" "Tænd/sluk tidsplan %s oprettet, men undtagelse(rne) %s kunne ikke tilføjes " "grundet overlap med andre valgte undtagelser" -#: system/views.py:1485 +#: system/views.py:1493 #, python-format msgid "PCWakePlan %s created" msgstr "Tænd/sluk tidsplan %s oprettet" -#: system/views.py:1505 +#: system/views.py:1513 #, python-format msgid "You have no Wake Week Plan with the following ID: %s" msgstr "Du har ingen tidsplan med følgende ID: %s" -#: system/views.py:1630 +#: system/views.py:1639 #, python-format msgid "" "PCWakePlan %s updated, but the group(s) %s could not be added because the " @@ -581,7 +581,7 @@ msgstr "" "computer(ne) %s allerede er tilmeldt tidsplan(erne) %s, og undtagelse(rne) " "%s kunne ikke tilføjes grundet overlap med andre valgte undtagelser" -#: system/views.py:1645 +#: system/views.py:1658 #, python-format msgid "" "PCWakePlan %s updated, but the group(s) %s could not be added because the " @@ -590,7 +590,7 @@ msgstr "" "Tænd/sluk tidsplan %s opdateret, men gruppe(rne) %s kunne ikke tilføjes, da " "computer(ne) %s allerede er tilmeldt tidsplan(erne) %s" -#: system/views.py:1658 +#: system/views.py:1675 #, python-format msgid "" "PCWakePlan %s updated, but the WakeChangeEvents %s could not be added due to " @@ -599,53 +599,53 @@ msgstr "" "Tænd/sluk tidsplan %s opdateret, men undtagelse(rne) %s kunne ikke tilføjes " "grundet overlap med andre valgte undtagelser" -#: system/views.py:1669 +#: system/views.py:1686 #, python-format msgid "PCWakePlan %s updated" msgstr "Tænd/sluk tidsplan %s opdateret" -#: system/views.py:1766 +#: system/views.py:1782 #, python-format msgid "Wake Week Plan %s deleted" msgstr "Tænd/Sluk tidsplan %s slettet" -#: system/views.py:1888 +#: system/views.py:1903 #, python-format msgid "You have no Wake Change Event with the following ID: %s" msgstr "Du har ingen undtagelse med ID %s" -#: system/views.py:1925 +#: system/views.py:1940 #, python-format msgid "Wake Change Event %s updated" msgstr "Undtagelse %s opdateret" -#: system/views.py:1935 +#: system/views.py:1949 #, python-format msgid "The chosen dates would cause overlap with event %s in plan %s" msgstr "" "De valgte datoer ville medføre overlap med undtagelsen %s i tidsplanen %s" -#: system/views.py:1945 system/views.py:2001 +#: system/views.py:1958 system/views.py:2013 #, python-format msgid "The end date cannot be before the start date %s" msgstr "Til-datoen kan ikke være før fra-datoen %s" -#: system/views.py:2143 +#: system/views.py:2154 #, python-format msgid "You have no user with the following ID: %s" msgstr "Du har ikke nogen Bruger med følgende ID: %s" -#: system/views.py:2208 +#: system/views.py:2219 #, python-format msgid "User %s updated" msgstr "Bruger %s opdateret" -#: system/views.py:2251 +#: system/views.py:2262 #, python-format msgid "User %s deleted" msgstr "Bruger %s slettet" -#: system/views.py:2338 +#: system/views.py:2349 #, python-format msgid "" "You have no group with the following ID: %s. Try locating the group in the " @@ -654,7 +654,7 @@ msgstr "" "I har ingen gruppe med følgende ID:

%s


Prøv " "i stedet at finde gruppen fra gruppelisten." -#: system/views.py:2507 +#: system/views.py:2519 #, python-format msgid "" "Group %s updated, but the pc(s) %s could not be added because they already " @@ -663,45 +663,45 @@ msgstr "" "Gruppe %s opdateret, men computer(ne) %s kunne ikke tilføjes, da de(n) " "allerede er tilmeldt tidsplan(erne) %s" -#: system/views.py:2519 +#: system/views.py:2534 #, python-format msgid "Group %s updated" msgstr "Gruppe %s opdateret" -#: system/views.py:2533 +#: system/views.py:2547 #, python-format msgid "No value was specified for the mandatory input %s of script %s" msgstr "Den obligatoriske parameterværdi %s for script %s mangler" -#: system/views.py:2605 +#: system/views.py:2618 #, python-format msgid "Group %s deleted" msgstr "Gruppe %s slettet" -#: system/views.py:2672 +#: system/views.py:2685 #, python-format msgid "You have no Security Problem with the following ID: %s" msgstr "Du har ikke nogen Sikkerhedsregel med følgende ID: %s" -#: system/views.py:2920 +#: system/views.py:2933 msgid "The administration site" msgstr "Administrationssiden" -#: system/views.py:2921 +#: system/views.py:2934 msgid "About" msgstr "Om" -#: system/views.py:2922 templates/site_with_navigation.html:31 -#: templates/system/jobs/site_jobs.html:37 -#: templates/system/jobs/site_jobs.html:162 templates/system/pcs/form.html:153 -#: templates/system/security_events/site_security_events.html:51 -#: templates/system/security_events/site_security_events.html:121 +#: system/views.py:2935 templates/site_with_navigation.html:31 +#: templates/system/jobs/site_jobs.html:38 +#: templates/system/jobs/site_jobs.html:163 templates/system/pcs/form.html:153 +#: templates/system/security_events/site_security_events.html:53 +#: templates/system/security_events/site_security_events.html:123 #: templates/system/site_status.html:5 templates/system/site_status.html:23 msgid "Status" msgstr "Status" -#: system/views.py:2923 templates/site_with_navigation.html:75 -#: templates/system/jobs/site_jobs.html:83 +#: system/views.py:2936 templates/site_with_navigation.html:75 +#: templates/system/jobs/site_jobs.html:84 #: templates/system/pcgroups/confirm_delete.html:18 #: templates/system/pcs/form.html:7 templates/system/pcs/site_pcs.html:6 #: templates/system/pcs/site_pcs.html:16 templates/system/site_list.html:7 @@ -711,8 +711,8 @@ msgstr "Status" msgid "Computers" msgstr "Computere" -#: system/views.py:2924 templates/site_with_navigation.html:80 -#: templates/system/jobs/site_jobs.html:106 +#: system/views.py:2937 templates/site_with_navigation.html:80 +#: templates/system/jobs/site_jobs.html:107 #: templates/system/pcgroups/site_groups.html:7 #: templates/system/security_problems/confirm_delete.html:23 #: templates/system/wake_plan/confirm_delete.html:15 @@ -720,88 +720,88 @@ msgstr "Computere" msgid "Groups" msgstr "Grupper" -#: system/views.py:2925 +#: system/views.py:2938 msgid "On/Off schedules" msgstr "Tænd/Sluk tidsplaner" -#: system/views.py:2926 templates/site_with_navigation.html:98 +#: system/views.py:2939 templates/site_with_navigation.html:98 #: templates/system/jobs/site_jobs.html:6 #: templates/system/scripts/confirm_delete.html:21 msgid "Jobs" msgstr "Jobs" -#: system/views.py:2927 templates/site_with_navigation.html:103 +#: system/views.py:2940 templates/site_with_navigation.html:103 #: templates/system/scripts/header.html:5 #: templates/system/site_two_factor.html:52 msgid "Scripts" msgstr "Scripts" -#: system/views.py:2928 templates/site_with_navigation.html:61 +#: system/views.py:2941 templates/site_with_navigation.html:61 #: templates/system/scripts/header.html:5 msgid "Security Scripts" msgstr "Sikkerhedsscripts" -#: system/views.py:2929 templates/site_with_navigation.html:110 +#: system/views.py:2942 templates/site_with_navigation.html:110 #: templates/system/users/confirm_delete.html:5 #: templates/system/users/create.html:5 templates/system/users/update.html:5 msgid "Users" msgstr "Brugere" -#: system/views.py:2930 templates/site_with_navigation.html:186 +#: system/views.py:2943 templates/site_with_navigation.html:186 #: templates/system/pcgroups/site_groups.html:67 #: templates/system/pcs/form.html:89 templates/system/site_settings.html:31 msgid "Configurations" msgstr "Konfigurationer" -#: system/views.py:2931 +#: system/views.py:2944 msgid "Setting up security surveillance (PDF)" msgstr "Oprettelse af Sikkerhedsovervågning (PDF)" -#: system/views.py:2932 +#: system/views.py:2945 msgid "The News site" msgstr "Nyhedssiden" -#: system/views.py:2933 +#: system/views.py:2946 msgid "OS2borgerPC" msgstr "OS2BorgerPC" -#: system/views.py:2934 +#: system/views.py:2947 msgid "Installation Guide (PDF)" msgstr "Installationsguide (PDF)" -#: system/views.py:2935 +#: system/views.py:2948 msgid "Old installation guide (PDF)" msgstr "Gammel installationsguide (PDF)" -#: system/views.py:2936 +#: system/views.py:2949 msgid "OS2borgerPC Kiosk" msgstr "OS2borgerPC Kiosk" -#: system/views.py:2937 +#: system/views.py:2950 msgid "Installation Guide" msgstr "Installationsguide" -#: system/views.py:2938 +#: system/views.py:2951 msgid "Updating Wi-Fi setup" msgstr "Opdatering af Wi-Fi opsætning" -#: system/views.py:2939 +#: system/views.py:2952 msgid "Technical Documentation" msgstr "Teknisk Dokumentation" -#: system/views.py:2940 +#: system/views.py:2953 msgid "OS2borgerPC Image" msgstr "OS2borgerPC Image" -#: system/views.py:2941 +#: system/views.py:2954 msgid "OS2borgerPC Admin Site" msgstr "OS2borgerPC Admin Site" -#: system/views.py:2942 +#: system/views.py:2955 msgid "OS2borgerPC Kiosk Image" msgstr "OS2borgerPC Kiosk Image" -#: system/views.py:2943 +#: system/views.py:2956 msgid "OS2borgerPC Client" msgstr "OS2borgerPC Client" @@ -1052,7 +1052,7 @@ msgstr "Tilføj kommentar" #: templates/system/scripts/create.html:41 #: templates/system/scripts/update.html:79 #: templates/system/scripts/update.html:126 -#: templates/system/security_events/site_security_events.html:101 +#: templates/system/security_events/site_security_events.html:103 #: templates/system/security_problems/confirm_delete.html:49 #: templates/system/security_problems/site_security_problems.html:112 #: templates/system/security_problems/site_security_problems.html:157 @@ -1269,21 +1269,21 @@ msgstr "Ja" msgid "No" msgstr "Nej" -#: templates/system/jobs/site_jobs.html:22 -#: templates/system/security_events/site_security_events.html:23 +#: templates/system/jobs/site_jobs.html:23 +#: templates/system/security_events/site_security_events.html:25 msgid "Filters" msgstr "Filtre" -#: templates/system/jobs/site_jobs.html:23 -#: templates/system/security_events/site_security_events.html:25 +#: templates/system/jobs/site_jobs.html:24 +#: templates/system/security_events/site_security_events.html:27 msgid "Reset filters" msgstr "Nulstil filtre" -#: templates/system/jobs/site_jobs.html:60 +#: templates/system/jobs/site_jobs.html:61 msgid "Batches" msgstr "Batches" -#: templates/system/jobs/site_jobs.html:157 +#: templates/system/jobs/site_jobs.html:158 #: templates/system/pcgroups/policy_list/list.html:9 #: templates/system/pcs/form.html:149 #: templates/system/scripts/confirm_delete.html:12 @@ -1296,30 +1296,30 @@ msgstr "Batches" msgid "Script" msgstr "Script" -#: templates/system/jobs/site_jobs.html:158 +#: templates/system/jobs/site_jobs.html:159 msgid "User" msgstr "Bruger" -#: templates/system/jobs/site_jobs.html:159 templates/system/pcs/form.html:150 +#: templates/system/jobs/site_jobs.html:160 templates/system/pcs/form.html:150 #: templates/system/scripts/form.html:8 msgid "Created" msgstr "Oprettet" -#: templates/system/jobs/site_jobs.html:160 templates/system/pcs/form.html:151 +#: templates/system/jobs/site_jobs.html:161 templates/system/pcs/form.html:151 msgid "Started" msgstr "Startet" -#: templates/system/jobs/site_jobs.html:161 templates/system/pcs/form.html:152 +#: templates/system/jobs/site_jobs.html:162 templates/system/pcs/form.html:152 msgid "Finished" msgstr "Sluttet" -#: templates/system/jobs/site_jobs.html:163 +#: templates/system/jobs/site_jobs.html:164 #: templates/system/wake_plan/wake_plan.html:39 msgid "Computer" msgstr "Computer" -#: templates/system/jobs/site_jobs.html:176 -#: templates/system/security_events/site_security_events.html:128 +#: templates/system/jobs/site_jobs.html:177 +#: templates/system/security_events/site_security_events.html:130 msgid "Loading data..." msgstr "Henter data..." @@ -1746,44 +1746,44 @@ msgid "Clear the filter" msgstr "Ryd filter" # Konsistens ml. navn i sikkerhedsregel og sikkerhedshændelse -#: templates/system/security_events/site_security_events.html:37 -#: templates/system/security_events/site_security_events.html:114 +#: templates/system/security_events/site_security_events.html:39 +#: templates/system/security_events/site_security_events.html:116 msgid "Level" msgstr "Alvorlighedsgrad" -#: templates/system/security_events/site_security_events.html:93 +#: templates/system/security_events/site_security_events.html:95 msgid "Edit Security Events" msgstr "Rediger Sikkerhedshændelser" -#: templates/system/security_events/site_security_events.html:100 +#: templates/system/security_events/site_security_events.html:102 msgid "Handle event" msgstr "Håndter hændelse" -#: templates/system/security_events/site_security_events.html:109 +#: templates/system/security_events/site_security_events.html:111 msgid "Handle events" msgstr "Håndter hændelser" -#: templates/system/security_events/site_security_events.html:115 +#: templates/system/security_events/site_security_events.html:117 msgid "Rule" msgstr "Regel" -#: templates/system/security_events/site_security_events.html:117 +#: templates/system/security_events/site_security_events.html:119 msgid "Info" msgstr "Info" -#: templates/system/security_events/site_security_events.html:118 +#: templates/system/security_events/site_security_events.html:120 msgid "Device" msgstr "Maskine" -#: templates/system/security_events/site_security_events.html:119 +#: templates/system/security_events/site_security_events.html:121 msgid "Incident time" msgstr "Hændelsestidspunkt" -#: templates/system/security_events/site_security_events.html:120 +#: templates/system/security_events/site_security_events.html:122 msgid "Time of receipt" msgstr "Modtagelsestidspunkt" -#: templates/system/security_events/site_security_events.html:122 +#: templates/system/security_events/site_security_events.html:124 msgid "Handled by" msgstr "Håndteres af" diff --git a/admin_site/locale/sv/LC_MESSAGES/django.mo b/admin_site/locale/sv/LC_MESSAGES/django.mo index ffa5abaf3fef23e216e417f783eee0825aef4121..abebd1f59e6b8142f048916a13246200bf482e6c 100755 GIT binary patch delta 2270 zcmXZdeN5F=9LMpm_X1bMD+o#<7>W=QHb_L#Ez=?C9l9|$HfgLs?&v|c)Kzmlh(84l z6TFDHx^uJeVLr^KlFedPuCj-ft!z5}NSV&5{h`A-*{r$M`*VNiuh%)>bAI1*&i9n)1QSiu^QLo8yLW=7{*}? z;T^2R2blP-)htNAy4AeI#N{qfk4o5pQ?bqU`|t(&gP4LNm`IG1=s&=T_!P@Awax4U zT!aJoElwO~7Ts(%kN$>svpzi1?wReRF@K9$5)&?>PJW4aDn7yte2T>w-fH#?R^mIj z3L|&{^Dudv*?25)mZCN`54GW?n2r%#j13+QeGo^T_#jThFE9=N#B3Zvm2?c1AlTt2 z%t9@k>#V{;`t?|Vt@tb+Kz(-}Rly%I6TRQuz)dVA@X!t9b^04B!(`$$n1r>cjn$z} z)ab^WP?cJT3$P7!HG`;1eTQ1Oe7l+6+ybP+p4HOOKs_pPqd#D8;}rVuqITYeTHs^n zaa6^Ia5Damdc?P|5N(HFfg)rfTYqAq`a1rIO8`c_RN1#1<+)y~&YCyb&_ z(Cq9$RjLQIp*X5i=Wr?hgcX?jq1jw~8K>h$RGt{F#5j8SH15#Q#N=K6>#jn@>rjtx zBWhz^7{p%G9rmLtaSXNKDbzu3qJAa!Q1kzD2D|;dA)G+GxSRTGfw=@!x(MoL5p@#| zy7(#79sht@U>LQb5!8w9qVhb%85rvE=gmfqm!TG1hz+<5_4+^Qq5c~9oIn7-!b-e| zML32fn7iBmpaxaSHTV*4LRIQGmg3J?jE`|E=EeNCbO5#BFQ|Msa1(~SUVn#MP>*FN z>ZCE$LIbE0e}g*l_n3yiI)~l(ZPZEsMpft$>h1jF;^}+*gXZ8Q;)SR@UIh)^(JQD8 zRHGhK1T*k;RN@V&3bml-ZAK;NaN{v&997Xn&eN!QU!o3h$;B@t2lH&0h8DPvN_-bJ z@jj{ok5P{;v(Nw8Jdc_`AGOdD)ZN#jP9Amfwa)i3aZ=RDyHOS0k0Jg3Kcz95z%kSv z4dHmajQa2zYN1=Mf8Y58Gl(bc^*1~fm3TU8BL%2RmY_Dg7}IeDhH(uBS>N8Ip`EQm zE!2WaupL$MZd8Jp8;_$lcG!6qb=MbA^RA#O_7^JOD5|3Wq7D}5_f11jCzwJb6N^y& zD%X#o5;UR~e9QSBDxrr;*oC^fJ*W+Qg!*m(b<&flH#US>_%&+$O256DXj~_tg!fPh oM^TBMxQT&%exfjz5YI*Z$<&}0ZXe9aU)Ipy+nh2OZJv?$KXXb+ng9R* delta 2266 zcmXZdeN5F=9LMqRyaWh^(QrT!7FT7_5PCs3&1 z^)bD3vqW1u)0z*fn3XFZSGLmW_(Nm5ruK&p=VY_ymcBpy&R?%{zUTbD=bZ03cenjW zu1>F(2FTW&9E&cn!0$-aPh}xS@;T4Vb7{*XrLCAxZWSIl{lRKyQrOapcdHUJdCPX z4`$#WI1X=P0Y1ZgEcnE~$^|%q{$kX;C}y#~?WK`N;A;%wpEw1tqe>p&B@Mwe%*GL@ zdBvE7rKkGyXgt1xyT{}gUS=bg&0RKm&P3$ni%TzUw1hwUW0mkYfu~O zzy#ciy2G8QN*qEhcocPzTc}^jJ=FaFoxv_YZy1w^ztlzjwZL=&DqR)oXVKs$bi4Rb z)E%EkEzpbFP#@|!{cN*%s=rf#U>%_yd;V87#yB zoQRQ_|3M|HluK|ret@dfVVsPYum~UH1{|~1e@pvN3;v4A_ZNPMVQ-ti!)DZD*@!x6 z47JdHREd8=o%k#c!{3~}Zv1c5N&i7r=n?Ae{OjVW+x>%%##G|tQF*))8oHx7s0~!0 z9#a*j1D znotSaQ6=w0C5XB4IBH`Do!_AD`ZQ|Z6;#D;pz`&jD*7MlV1Zq}N$BYWSu`@S0M##d z{VG&~denk%JKsYkY(XXLKwaH7)CP8=zT1yF=~t*X)`MC2BWnE0E}K8txJf_>@1YX* kqY^!F69b?6iIQ<5@d)ZqrV_RA`cv7tm360\n" "Language-Team: LANGUAGE \n" @@ -60,7 +60,7 @@ msgstr "Site" msgid "Usertype" msgstr "Typ av användare" -#: system/forms.py:136 system/models.py:986 +#: system/forms.py:136 system/models.py:990 msgid "Password" msgstr "Lösenord" @@ -77,8 +77,8 @@ msgstr "De två lösenorden måste vara desamma" msgid "A user named \"%s\" already exists." msgstr "En användare med namnet \"%s\" finns redan." -#: system/mixins.py:9 system/models.py:134 system/models.py:573 -#: system/models.py:883 system/models.py:1253 system/models.py:1280 +#: system/mixins.py:9 system/models.py:134 system/models.py:577 +#: system/models.py:887 system/models.py:1257 system/models.py:1284 msgid "created" msgstr "skapad" @@ -111,14 +111,14 @@ msgid "owner configuration" msgstr "ägarkonfiguration" #: system/models.py:127 system/models.py:214 system/models.py:244 -#: system/models.py:290 system/models.py:444 system/models.py:558 -#: system/models.py:674 system/models.py:686 system/models.py:770 -#: system/models.py:989 system/models.py:1097 system/models.py:1238 +#: system/models.py:290 system/models.py:444 system/models.py:562 +#: system/models.py:678 system/models.py:690 system/models.py:774 +#: system/models.py:993 system/models.py:1101 system/models.py:1242 msgid "name" msgstr "namn" -#: system/models.py:128 system/models.py:215 system/models.py:560 -#: system/models.py:689 system/models.py:1098 +#: system/models.py:128 system/models.py:215 system/models.py:564 +#: system/models.py:693 system/models.py:1102 msgid "UID" msgstr "UID" @@ -292,243 +292,243 @@ msgstr "Söndag på" msgid "wake change events" msgstr "undantag" -#: system/models.py:446 system/models.py:563 system/models.py:691 -#: system/models.py:1099 system/models.py:1250 +#: system/models.py:446 system/models.py:567 system/models.py:695 +#: system/models.py:1103 system/models.py:1254 msgid "description" msgstr "beskrivning" -#: system/models.py:557 +#: system/models.py:561 msgid "MAC" msgstr "MAC" -#: system/models.py:568 +#: system/models.py:572 msgid "activated" msgstr "aktiverad" -#: system/models.py:570 +#: system/models.py:574 msgid "update required" msgstr "Uppdatering krävs." -#: system/models.py:575 +#: system/models.py:579 msgid "last seen" msgstr "senaste incheckning" -#: system/models.py:577 +#: system/models.py:581 msgid "location" msgstr "placering" -#: system/models.py:699 +#: system/models.py:703 msgid "executable code" msgstr "körbar kod" -#: system/models.py:702 system/models.py:1108 +#: system/models.py:706 system/models.py:1112 msgid "security script" msgstr "säkerhetsskript" -#: system/models.py:706 +#: system/models.py:710 msgid "hidden script" msgstr "dolt skript" -#: system/models.py:710 +#: system/models.py:714 msgid "maintained by Magenta" msgstr "underhålls av Magenta" -#: system/models.py:787 system/models.py:996 +#: system/models.py:791 system/models.py:1000 msgid "position" msgstr "position" -#: system/models.py:849 +#: system/models.py:853 msgid "jobstatus:New" msgstr "Nytt" -#: system/models.py:850 +#: system/models.py:854 msgid "jobstatus:Submitted" msgstr "Avsänd" -#: system/models.py:851 +#: system/models.py:855 msgid "jobstatus:Running" msgstr "Körs" -#: system/models.py:852 +#: system/models.py:856 msgid "jobstatus:Failed" msgstr "Misslyckad" -#: system/models.py:853 +#: system/models.py:857 msgid "jobstatus:Done" msgstr "Utförd" -#: system/models.py:854 +#: system/models.py:858 msgid "jobstatus:Resolved" msgstr "Omstartad" -#: system/models.py:880 +#: system/models.py:884 msgid "log output" msgstr "log output" -#: system/models.py:885 +#: system/models.py:889 msgid "started" msgstr "påbörjad" -#: system/models.py:886 +#: system/models.py:890 msgid "finished" msgstr "Slutförd" -#: system/models.py:939 +#: system/models.py:943 #, python-brace-format msgid "Cannot change status from {0} to {1}" msgstr "Kan inte ändra status från {0} til {1}" -#: system/models.py:946 system/views.py:509 +#: system/models.py:950 system/views.py:509 #, python-format msgid "Can only restart jobs with status %s" msgstr "Kan endast starta om jobb som har status %s" -#: system/models.py:980 +#: system/models.py:984 msgid "String" msgstr "Sträng" -#: system/models.py:981 +#: system/models.py:985 msgid "Integer" msgstr "Heltal" -#: system/models.py:982 +#: system/models.py:986 #: templates/system/wake_plan/wake_change_events/wake_change_event.html:63 msgid "Date" msgstr "Datum" -#: system/models.py:983 +#: system/models.py:987 msgid "File" msgstr "Fil" -#: system/models.py:984 +#: system/models.py:988 msgid "Boolean" msgstr "Kryssruta" -#: system/models.py:985 +#: system/models.py:989 msgid "Time" msgstr "Tid" -#: system/models.py:991 +#: system/models.py:995 msgid "value type" msgstr "värde-typ" -#: system/models.py:994 +#: system/models.py:998 msgid "default value" msgstr "standardvärde" -#: system/models.py:997 +#: system/models.py:1001 msgid "mandatory" msgstr "krävs" # SecurityProblem class -#: system/models.py:1080 +#: system/models.py:1084 msgid "securitylevel:Normal" msgstr "Normal" -#: system/models.py:1081 +#: system/models.py:1085 msgid "securitylevel:High" msgstr "Hög" -#: system/models.py:1082 +#: system/models.py:1086 msgid "securitylevel:Critical" msgstr "Kritisk" # Konsistens ml. navn i sikkerhedsregel og sikkerhedshændelse -#: system/models.py:1101 +#: system/models.py:1105 msgid "level" msgstr "svårighetsgrad" -#: system/models.py:1115 +#: system/models.py:1119 msgid "alert groups" msgstr "övervakad gruppr" -#: system/models.py:1121 +#: system/models.py:1125 msgid "alert users" msgstr "Mottagare av e-postvarningen." # SecurityEvent class -#: system/models.py:1149 +#: system/models.py:1153 msgid "eventstatus:New" msgstr "Ny" -#: system/models.py:1150 +#: system/models.py:1154 msgid "eventstatus:Assigned" msgstr "Tilldelad" -#: system/models.py:1151 +#: system/models.py:1155 msgid "eventstatus:Resolved" msgstr "Löst" -#: system/models.py:1167 +#: system/models.py:1171 msgid "occurred" msgstr "händelsetidpunkt" -#: system/models.py:1169 +#: system/models.py:1173 msgid "reported" msgstr "rapporterat" -#: system/models.py:1176 +#: system/models.py:1180 msgid "assigned user" msgstr "hanteras av" -#: system/models.py:1249 +#: system/models.py:1253 msgid "title" msgstr "titel" -#: system/models.py:1251 system/models.py:1278 +#: system/models.py:1255 system/models.py:1282 msgid "content" msgstr "innehåll" -#: system/models.py:1254 +#: system/models.py:1258 msgid "updated" msgstr "uppdaterat" -#: system/models.py:1255 +#: system/models.py:1259 msgid "author" msgstr "författare" -#: system/models.py:1258 +#: system/models.py:1262 msgid "version" msgstr "version" -#: system/views.py:315 +#: system/views.py:316 #, python-format msgid "Settings for %s updated" msgstr "Inställningar för %s uppdaterat" -#: system/views.py:545 +#: system/views.py:544 #, python-format msgid "The script %s is being rerun on the computer %s" msgstr "Skriptet %s körs på datorn %s" -#: system/views.py:590 +#: system/views.py:588 #, python-format msgid "You have no Script with the following ID: %s" msgstr "Du har inget skript med ID %s" -#: system/views.py:697 +#: system/views.py:695 msgid "Error: You must provide a name" msgstr "Fejl: Du ska ange ett namn" -#: system/views.py:704 +#: system/views.py:702 msgid "Error: You must provide a correct input parameter type" msgstr "Fejl: Du måste ange en korrekt typ av inmatningsparameter." -#: system/views.py:864 +#: system/views.py:861 #, python-format msgid "Script %s updated" msgstr "Skript %s updaterat" -#: system/views.py:961 system/views.py:983 +#: system/views.py:957 system/views.py:979 msgid "You must specify at least one group or pc" msgstr "Du måste ange minst en dator eller grupp" -#: system/views.py:1109 +#: system/views.py:1105 #, python-format msgid "You have no computer with the following ID: %s" msgstr "Du har ingen dator med följande ID: %s" -#: system/views.py:1181 +#: system/views.py:1176 #, python-format msgid "Computer %s updated" msgstr "Dator %s uppdaterad" @@ -545,7 +545,7 @@ msgstr "" "tidtabellerna%s, och undantag(en) %s kunde inte läggas till på grund av " "överlappning med andra utvalda undantag." -#: system/views.py:1462 +#: system/views.py:1466 #, python-format msgid "" "PCWakePlan %s created, but the group(s) %s could not be added because the " @@ -555,7 +555,7 @@ msgstr "" "inte läggas till somdator(er) %s är redan inskrivna i tidtabellen/" "tidtabellerna %s" -#: system/views.py:1475 +#: system/views.py:1483 #, python-format msgid "" "PCWakePlan %s created, but the WakeChangeEvents %s could not be added due to " @@ -564,17 +564,17 @@ msgstr "" "På-/Av-schema %s har skapats, men undantaget/undantagen %s har inte kunnat " "läggas till. grundet overlap med andre valgte undtagelser" -#: system/views.py:1485 +#: system/views.py:1493 #, python-format msgid "PCWakePlan %s created" msgstr "Schema för på- och avstängning %s har skapats" -#: system/views.py:1505 +#: system/views.py:1513 #, python-format msgid "You have no Wake Week Plan with the following ID: %s" msgstr "Du har ingen tidtabell med följande ID: %s" -#: system/views.py:1630 +#: system/views.py:1639 #, python-format msgid "" "PCWakePlan %s updated, but the group(s) %s could not be added because the " @@ -586,7 +586,7 @@ msgstr "" "och undantaget/undantagen %s kunde inte läggas till på grund av överlappning " "med andra valda undantag" -#: system/views.py:1645 +#: system/views.py:1658 #, python-format msgid "" "PCWakePlan %s updated, but the group(s) %s could not be added because the " @@ -595,7 +595,7 @@ msgstr "" "Tänd- och släckschema %s uppdaterat, men grupp(er) %s kunde inte läggas till " "eftersom dator(er) %s är redan inskrivna i schema(n) %s" -#: system/views.py:1658 +#: system/views.py:1675 #, python-format msgid "" "PCWakePlan %s updated, but the WakeChangeEvents %s could not be added due to " @@ -604,52 +604,52 @@ msgstr "" "Tidtabell för på- och avstängning %s uppdaterad, men undantag %s kunde inte " "läggas till på grund av överlappning med andra utvalda undantag" -#: system/views.py:1669 +#: system/views.py:1686 #, python-format msgid "PCWakePlan %s updated" msgstr "Uppdatering av schemat för på- och avstängning %s" -#: system/views.py:1766 +#: system/views.py:1782 #, python-format msgid "Wake Week Plan %s deleted" msgstr "Tänd/släck schema %s borttagen" -#: system/views.py:1888 +#: system/views.py:1903 #, python-format msgid "You have no Wake Change Event with the following ID: %s" msgstr "Du har inget undantag med ID %s" -#: system/views.py:1925 +#: system/views.py:1940 #, python-format msgid "Wake Change Event %s updated" msgstr "Undantag %s uppdaterat" -#: system/views.py:1935 +#: system/views.py:1949 #, python-format msgid "The chosen dates would cause overlap with event %s in plan %s" msgstr "De valda datumen skulle överlappa med undantaget %s i schemat %s" -#: system/views.py:1945 system/views.py:2001 +#: system/views.py:1958 system/views.py:2013 #, python-format msgid "The end date cannot be before the start date %s" msgstr "Datumet Till får inte vara före datumet Från %s" -#: system/views.py:2143 +#: system/views.py:2154 #, python-format msgid "You have no user with the following ID: %s" msgstr "Du har ingen användare med följande ID: %s" -#: system/views.py:2208 +#: system/views.py:2219 #, python-format msgid "User %s updated" msgstr "Användare %s uppdaterad" -#: system/views.py:2251 +#: system/views.py:2262 #, python-format msgid "User %s deleted" msgstr "Användaren %s raderad" -#: system/views.py:2338 +#: system/views.py:2349 #, python-format msgid "" "You have no group with the following ID: %s. Try locating the group in the " @@ -658,7 +658,7 @@ msgstr "" "Du har ingen grupp med följande ID:

%s


" "Försök istället att hitta gruppen från grupplistan." -#: system/views.py:2507 +#: system/views.py:2519 #, python-format msgid "" "Group %s updated, but the pc(s) %s could not be added because they already " @@ -667,45 +667,45 @@ msgstr "" "Grupp %s uppdaterad, men dator(er) %s kunde inte läggas till eftersom de är " "redan inskriven i tidtabellen/tidtabellerna %s" -#: system/views.py:2519 +#: system/views.py:2534 #, python-format msgid "Group %s updated" msgstr "Grupp %s uppdaterad" -#: system/views.py:2533 +#: system/views.py:2547 #, python-format msgid "No value was specified for the mandatory input %s of script %s" msgstr "Det obligatoriska parametervärdet %s för skriptet %s saknas." -#: system/views.py:2605 +#: system/views.py:2618 #, python-format msgid "Group %s deleted" msgstr "Grupp %s borttagen" -#: system/views.py:2672 +#: system/views.py:2685 #, python-format msgid "You have no Security Problem with the following ID: %s" msgstr "Du har ingen säkerhetsregel med följande ID: %s" -#: system/views.py:2920 +#: system/views.py:2933 msgid "The administration site" msgstr "Administrationssidan" -#: system/views.py:2921 +#: system/views.py:2934 msgid "About" msgstr "Om" -#: system/views.py:2922 templates/site_with_navigation.html:31 -#: templates/system/jobs/site_jobs.html:37 -#: templates/system/jobs/site_jobs.html:162 templates/system/pcs/form.html:153 -#: templates/system/security_events/site_security_events.html:51 -#: templates/system/security_events/site_security_events.html:121 +#: system/views.py:2935 templates/site_with_navigation.html:31 +#: templates/system/jobs/site_jobs.html:38 +#: templates/system/jobs/site_jobs.html:163 templates/system/pcs/form.html:153 +#: templates/system/security_events/site_security_events.html:53 +#: templates/system/security_events/site_security_events.html:123 #: templates/system/site_status.html:5 templates/system/site_status.html:23 msgid "Status" msgstr "Status" -#: system/views.py:2923 templates/site_with_navigation.html:75 -#: templates/system/jobs/site_jobs.html:83 +#: system/views.py:2936 templates/site_with_navigation.html:75 +#: templates/system/jobs/site_jobs.html:84 #: templates/system/pcgroups/confirm_delete.html:18 #: templates/system/pcs/form.html:7 templates/system/pcs/site_pcs.html:6 #: templates/system/pcs/site_pcs.html:16 templates/system/site_list.html:7 @@ -715,8 +715,8 @@ msgstr "Status" msgid "Computers" msgstr "Datorer" -#: system/views.py:2924 templates/site_with_navigation.html:80 -#: templates/system/jobs/site_jobs.html:106 +#: system/views.py:2937 templates/site_with_navigation.html:80 +#: templates/system/jobs/site_jobs.html:107 #: templates/system/pcgroups/site_groups.html:7 #: templates/system/security_problems/confirm_delete.html:23 #: templates/system/wake_plan/confirm_delete.html:15 @@ -724,88 +724,88 @@ msgstr "Datorer" msgid "Groups" msgstr "Grupper" -#: system/views.py:2925 +#: system/views.py:2938 msgid "On/Off schedules" msgstr "Schema för på- och avstängning" -#: system/views.py:2926 templates/site_with_navigation.html:98 +#: system/views.py:2939 templates/site_with_navigation.html:98 #: templates/system/jobs/site_jobs.html:6 #: templates/system/scripts/confirm_delete.html:21 msgid "Jobs" msgstr "Jobs" -#: system/views.py:2927 templates/site_with_navigation.html:103 +#: system/views.py:2940 templates/site_with_navigation.html:103 #: templates/system/scripts/header.html:5 #: templates/system/site_two_factor.html:52 msgid "Scripts" msgstr "Skript" -#: system/views.py:2928 templates/site_with_navigation.html:61 +#: system/views.py:2941 templates/site_with_navigation.html:61 #: templates/system/scripts/header.html:5 msgid "Security Scripts" msgstr "Skript för säkerhet" -#: system/views.py:2929 templates/site_with_navigation.html:110 +#: system/views.py:2942 templates/site_with_navigation.html:110 #: templates/system/users/confirm_delete.html:5 #: templates/system/users/create.html:5 templates/system/users/update.html:5 msgid "Users" msgstr "Användare" -#: system/views.py:2930 templates/site_with_navigation.html:186 +#: system/views.py:2943 templates/site_with_navigation.html:186 #: templates/system/pcgroups/site_groups.html:67 #: templates/system/pcs/form.html:89 templates/system/site_settings.html:31 msgid "Configurations" msgstr "Konfigurationer" -#: system/views.py:2931 +#: system/views.py:2944 msgid "Setting up security surveillance (PDF)" msgstr "Skapande av säkerhetsövervakning (PDF)" -#: system/views.py:2932 +#: system/views.py:2945 msgid "The News site" msgstr "Nyhetssidan" -#: system/views.py:2933 +#: system/views.py:2946 msgid "OS2borgerPC" -msgstr "Sambruk MedbogarPC" +msgstr "Sambruk MedborgarPC" -#: system/views.py:2934 +#: system/views.py:2947 msgid "Installation Guide (PDF)" msgstr "Installationsguide (PDF)" -#: system/views.py:2935 +#: system/views.py:2948 msgid "Old installation guide (PDF)" msgstr "Gammal installationsguide (PDF)" -#: system/views.py:2936 +#: system/views.py:2949 msgid "OS2borgerPC Kiosk" msgstr "Sambruk MedborgarPC Kiosk" -#: system/views.py:2937 +#: system/views.py:2950 msgid "Installation Guide" msgstr "Installationsguide" -#: system/views.py:2938 +#: system/views.py:2951 msgid "Updating Wi-Fi setup" msgstr "Uppdaterar Wi-Fi inställningar" -#: system/views.py:2939 +#: system/views.py:2952 msgid "Technical Documentation" msgstr "Teknisk Dokumentation" -#: system/views.py:2940 +#: system/views.py:2953 msgid "OS2borgerPC Image" msgstr "Sambruk MedborgarPC Image" -#: system/views.py:2941 +#: system/views.py:2954 msgid "OS2borgerPC Admin Site" msgstr "Sambruk MedborgarPC Admin Site" -#: system/views.py:2942 +#: system/views.py:2955 msgid "OS2borgerPC Kiosk Image" msgstr "Sambruk MedborgarPC Kiosk Image" -#: system/views.py:2943 +#: system/views.py:2956 msgid "OS2borgerPC Client" msgstr "Sambruk MedborgarPC Client" @@ -1057,7 +1057,7 @@ msgstr "Lägg till en kommentar" #: templates/system/scripts/create.html:41 #: templates/system/scripts/update.html:79 #: templates/system/scripts/update.html:126 -#: templates/system/security_events/site_security_events.html:101 +#: templates/system/security_events/site_security_events.html:103 #: templates/system/security_problems/confirm_delete.html:49 #: templates/system/security_problems/site_security_problems.html:112 #: templates/system/security_problems/site_security_problems.html:157 @@ -1274,21 +1274,21 @@ msgstr "Ja" msgid "No" msgstr "Nej" -#: templates/system/jobs/site_jobs.html:22 -#: templates/system/security_events/site_security_events.html:23 +#: templates/system/jobs/site_jobs.html:23 +#: templates/system/security_events/site_security_events.html:25 msgid "Filters" msgstr "Filter" -#: templates/system/jobs/site_jobs.html:23 -#: templates/system/security_events/site_security_events.html:25 +#: templates/system/jobs/site_jobs.html:24 +#: templates/system/security_events/site_security_events.html:27 msgid "Reset filters" msgstr "Återställ filter" -#: templates/system/jobs/site_jobs.html:60 +#: templates/system/jobs/site_jobs.html:61 msgid "Batches" msgstr "Batches" -#: templates/system/jobs/site_jobs.html:157 +#: templates/system/jobs/site_jobs.html:158 #: templates/system/pcgroups/policy_list/list.html:9 #: templates/system/pcs/form.html:149 #: templates/system/scripts/confirm_delete.html:12 @@ -1301,30 +1301,30 @@ msgstr "Batches" msgid "Script" msgstr "Skript" -#: templates/system/jobs/site_jobs.html:158 +#: templates/system/jobs/site_jobs.html:159 msgid "User" msgstr "Användare" -#: templates/system/jobs/site_jobs.html:159 templates/system/pcs/form.html:150 +#: templates/system/jobs/site_jobs.html:160 templates/system/pcs/form.html:150 #: templates/system/scripts/form.html:8 msgid "Created" msgstr "Skapad" -#: templates/system/jobs/site_jobs.html:160 templates/system/pcs/form.html:151 +#: templates/system/jobs/site_jobs.html:161 templates/system/pcs/form.html:151 msgid "Started" msgstr "Startad" -#: templates/system/jobs/site_jobs.html:161 templates/system/pcs/form.html:152 +#: templates/system/jobs/site_jobs.html:162 templates/system/pcs/form.html:152 msgid "Finished" msgstr "Avslutad" -#: templates/system/jobs/site_jobs.html:163 +#: templates/system/jobs/site_jobs.html:164 #: templates/system/wake_plan/wake_plan.html:39 msgid "Computer" msgstr "Dator" -#: templates/system/jobs/site_jobs.html:176 -#: templates/system/security_events/site_security_events.html:128 +#: templates/system/jobs/site_jobs.html:177 +#: templates/system/security_events/site_security_events.html:130 msgid "Loading data..." msgstr "Hämta data..." @@ -1753,44 +1753,44 @@ msgid "Clear the filter" msgstr "Rensa filter" # Konsistens ml. navn i sikkerhedsregel og sikkerhedshændelse -#: templates/system/security_events/site_security_events.html:37 -#: templates/system/security_events/site_security_events.html:114 +#: templates/system/security_events/site_security_events.html:39 +#: templates/system/security_events/site_security_events.html:116 msgid "Level" msgstr "Svårighetsgrad" -#: templates/system/security_events/site_security_events.html:93 +#: templates/system/security_events/site_security_events.html:95 msgid "Edit Security Events" msgstr "Redigera säkerhetsincidenter" -#: templates/system/security_events/site_security_events.html:100 +#: templates/system/security_events/site_security_events.html:102 msgid "Handle event" msgstr "Hantera incidenter" -#: templates/system/security_events/site_security_events.html:109 +#: templates/system/security_events/site_security_events.html:111 msgid "Handle events" msgstr "Hantera incidenter" -#: templates/system/security_events/site_security_events.html:115 +#: templates/system/security_events/site_security_events.html:117 msgid "Rule" msgstr "Regel" -#: templates/system/security_events/site_security_events.html:117 +#: templates/system/security_events/site_security_events.html:119 msgid "Info" msgstr "Info" -#: templates/system/security_events/site_security_events.html:118 +#: templates/system/security_events/site_security_events.html:120 msgid "Device" msgstr "Maskin" -#: templates/system/security_events/site_security_events.html:119 +#: templates/system/security_events/site_security_events.html:121 msgid "Incident time" msgstr "Händelsestidpunkt" -#: templates/system/security_events/site_security_events.html:120 +#: templates/system/security_events/site_security_events.html:122 msgid "Time of receipt" msgstr "Mottagningstidpunkt" -#: templates/system/security_events/site_security_events.html:122 +#: templates/system/security_events/site_security_events.html:124 msgid "Handled by" msgstr "Hanteras av" diff --git a/admin_site/static/img/favicon_os2.png b/admin_site/static/img/favicon_os2.png old mode 100644 new mode 100755 diff --git a/admin_site/static/js/security_events_list.js b/admin_site/static/js/security_events_list.js index fb5ac688..3083dc08 100755 --- a/admin_site/static/js/security_events_list.js +++ b/admin_site/static/js/security_events_list.js @@ -202,9 +202,24 @@ function updateCounter() { totalEvents = document.getElementsByClassName("click-list--item").length - 1 handleButton = document.getElementById("handle-event-button") + // Dict containing the translations for the button + var text_dict = { + "da": ["Håndter ", " ud af ", " hændelser"], + "en": ["Handle ", " out of ", " events"], + "sv": ["Hanterar ", " av ", " incidenter"] + } + // Get the correct translation based on the django_language cookie + const text = text_dict[getCookie("django_language")] // Updates the text on the button to show how many (if any) events have been selected - handleButton.innerText = "Håndter " + ( selectedEvents > 0 ? selectedEvents + " ud af " + totalEvents : "") + " advarsler" + handleButton.innerText = text[0] + ( selectedEvents > 0 ? selectedEvents + text[1] + totalEvents : "") + text[2] // Disables the button when no elements are selected document.getElementById("handle-event-button").disabled = ( selectedEvents == 0 ) } + +// Function to get the value of a named cookie +function getCookie(name) { + const value = `; ${document.cookie}`; + const parts = value.split(`; ${name}=`); + if (parts.length === 2) return parts.pop().split(';').shift(); +} \ No newline at end of file diff --git a/admin_site/system/urls.py b/admin_site/system/urls.py index 12e35371..a04797f9 100755 --- a/admin_site/system/urls.py +++ b/admin_site/system/urls.py @@ -296,41 +296,12 @@ r"^documentation/$", RedirectView.as_view(url="/documentation/om_os2borgerpc_admin/"), ), - url( - r"^documentation/os2borgerpc_installation_guide/", - RedirectView.as_view( - url="https://github.com/OS2borgerPC/image/raw/development/" - + "docs/OS2BorgerPC Installationsguide.pdf" - ), - ), - url( - r"^documentation/os2borgerpc_installation_guide_old/", - RedirectView.as_view( - url="https://github.com/OS2borgerPC/image/raw/development/" - + "docs/OS2BorgerPC Installationsguide Old.pdf" - ), - ), url( r"^documentation/os2borgerpc_kiosk_installation_guide", RedirectView.as_view( url="https://os2borgerpc-server-image.readthedocs.io/en/latest/dev.html" ), ), - url( - r"^documentation/wake_plan_user_guide/", - RedirectView.as_view( - url="https://github.com/OS2borgerPC/admin-site/raw/development/admin_site" - + "/static/docs/Guide_til_brug_af_strømbesparingsfunktioner.pdf" - ), - name="wake_plan_user_guide", - ), - url( - r"^documentation/creating_security_problems/", - RedirectView.as_view( - url="https://github.com/OS2borgerPC/admin-site/raw/development/admin_site" - + "/static/docs/OS2BorgerPC-sikkerhedsovervågning.pdf" - ), - ), url( r"^documentation/tech/os2borgerpc-image", RedirectView.as_view(url="https://os2borgerpc-image.readthedocs.io"), diff --git a/admin_site/system/views.py b/admin_site/system/views.py index 9b891ce5..4729923e 100755 --- a/admin_site/system/views.py +++ b/admin_site/system/views.py @@ -21,6 +21,7 @@ from django.db import transaction from django.db.models import Q, F from django.conf import settings +from django.template.defaulttags import register from django.core.paginator import Paginator from django.core.exceptions import PermissionDenied @@ -1235,6 +1236,15 @@ def get_context_data(self, **kwargs): site=context["site"] ) + # Get the link to the user guide for the chosen language + context["wake_plan_user_guide"] = ( + "https://github.com/OS2borgerPC/admin-site/raw/development/admin_site" + + "/static/docs/Wake_plan_user_guide" + + "_" + + self.request.user.bibos_profile.language + + ".pdf" + ) + form = context["form"] # params = self.request.GET or self.request.POST @@ -2954,6 +2964,10 @@ def post(self, request, *args, **kwargs): class DocView(TemplateView, LoginRequiredMixin): docname = "status" + @register.filter + def get_item(dictionary, key): + return dictionary.get(key) + def template_exists(self, subpath): fullpath = os.path.join(settings.DOCUMENTATION_DIR, subpath) return os.path.isfile(fullpath) @@ -2995,6 +3009,19 @@ def get_context_data(self, **kwargs): # noqa context["menu_active"] = docnames[0] + # Get the links to the pdf files for the chosen language + pdf_href = { + "os2borgerpc_installation_guide": "https://github.com/OS2borgerPC/image/raw/development/" + + "docs/OS2BorgerPC_installation_guide", + "os2borgerpc_installation_guide_old": "https://github.com/OS2borgerPC/image/raw/development/" + + "docs/OS2BorgerPC_installation_guide_old", + "creating_security_problems": "https://raw.githubusercontent.com/OS2borgerPC/admin-site/development/" + + "admin_site/static/docs/OS2BorgerPC_security_rules", + } + for key in pdf_href: + pdf_href[key] += "_" + self.request.user.bibos_profile.language + ".pdf" + context["pdf_href"] = pdf_href + # Set heading according to chosen item current_heading = None for link, name in context["docmenuitems"]: diff --git a/admin_site/templates/documentation/index.html b/admin_site/templates/documentation/index.html index c668bb7e..0bf4d32d 100755 --- a/admin_site/templates/documentation/index.html +++ b/admin_site/templates/documentation/index.html @@ -25,7 +25,11 @@

{% translate "Documentation" %}

{% translate "Return to admin" %} {% for link, name in docmenuitems %} - {% if link %} + {% if link in pdf_href %} + + {{ name }} + + {% elif link %} {{ name }} diff --git a/admin_site/templates/system/wake_plan/wake_plan.html b/admin_site/templates/system/wake_plan/wake_plan.html index dccf9cbd..d4f0c58a 100755 --- a/admin_site/templates/system/wake_plan/wake_plan.html +++ b/admin_site/templates/system/wake_plan/wake_plan.html @@ -20,7 +20,7 @@

{{selected_plan.name|default:new_text}}

-

{% blocktrans %}Print these tokens and keep them somewhere safe.{% endblocktrans %}

+

{% blocktrans trimmed %}Print these tokens and keep them somewhere safe
+ or save them in e.g. Bitwarden.{% endblocktrans %}

{% else %} -

{% trans "You don't have any backup codes yet." %}

+

{% trans "You don't have any backup tokens yet." %}

{% endif %}
{% csrf_token %}{{ form.as_p }} {% trans "Back to user profile" %} + class="btn btn-secondary me-3 mt-3 mb-3"> + + arrow_back + + {% trans "Back to user profile" %}
diff --git a/admin_site/templates/two_factor/core/login.html b/admin_site/templates/two_factor/core/login.html old mode 100644 new mode 100755 index 32c3c71a..34b3087e --- a/admin_site/templates/two_factor/core/login.html +++ b/admin_site/templates/two_factor/core/login.html @@ -1,4 +1,4 @@ -{% extends "two_factor/_base_focus.html" %} +{% extends "two_factor/_base.html" %} {% load crispy_forms_tags %} {% load i18n %} @@ -6,8 +6,8 @@

{% translate "Log in" %}: OS2borgerPC

{% if wizard.steps.current == 'token' %} -

{% blocktrans trimmed %}Please enter the tokens generated by your - token generator.{% endblocktrans %}

+

{% blocktrans trimmed %}Please enter the token generated by your + authenticator app.{% endblocktrans %}

{% elif wizard.steps.current == 'backup' %}

{% blocktrans trimmed %}Use this form for entering backup tokens for logging in. These tokens have been generated for you to print and keep safe. Please @@ -18,20 +18,17 @@

{% translate "Log in" %}: OS2borgerPC

{{ wizard.management_form|crispy }} {{ wizard.form.as_table }} - {% if backup_tokens %} -

{% trans "As a last resort, you can use a backup token:" %}

-

- -

- {% endif %} - - {% translate "Log in" as login %} - + {% if wizard.steps.prev %} {% endif %} + + {% if backup_tokens %} +

{% trans "As a last resort, you can use a" %} +

+ {% endif %} {% endblock %} \ No newline at end of file diff --git a/admin_site/templates/two_factor/core/setup.html b/admin_site/templates/two_factor/core/setup.html old mode 100644 new mode 100755 index cd5fed0e..0b82139b --- a/admin_site/templates/two_factor/core/setup.html +++ b/admin_site/templates/two_factor/core/setup.html @@ -11,8 +11,8 @@ {% block specific_content %}
-

{% translate "Profile:" %} {{ request.user.username }}

-

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock %}

+

{% trans "Enable Two-Factor Authentication for" %} {{ request.user.username }}

+
{% if wizard.steps.current == 'welcome' %}

{% blocktrans trimmed %}You are about to take your account security to the next level. Follow the steps in this wizard to enable two-factor @@ -21,12 +21,12 @@

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock %

{% blocktrans trimmed %}Please select which authentication method you would like to use.{% endblocktrans %}

{% elif wizard.steps.current == 'generator' %} -

{% blocktrans trimmed %}To start using a token generator, please use your - smartphone to scan the QR code below. For example, use Google +

{% blocktrans trimmed %}To start using an authenticator app, please use your + smartphone to scan the QR code below. For example, use FreeOTP Authenticator.{% endblocktrans %}

QR Code

-

{% blocktrans trimmed %}Alternatively you can use the following secret to - setup TOTP in your authenticator or password manager manually.{% endblocktrans %}

+

{% blocktrans trimmed %}Alternatively, you can use the following secret to + set up TOTP in your authenticator manually.{% endblocktrans %}

{% translate "TOTP Secret:" %} {{ secret_key }}

{% blocktrans %}Then, enter the token generated by the app.{% endblocktrans %}

@@ -51,7 +51,7 @@

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock % encountered an issue with the selected authentication method. Please go back and verify that you entered your information correctly, try again, or use a different authentication method instead. If the issue - persists, contact the site administrator.{% endblocktrans %}

+ persists, contact Magenta.{% endblocktrans %}

{% endif %} {% elif wizard.steps.current == 'yubikey' %}

{% blocktrans trimmed %}To identify and verify your YubiKey, please insert a @@ -64,5 +64,6 @@

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock % {% include "two_factor/_wizard_actions.html" %} +

{% endblock %} \ No newline at end of file diff --git a/admin_site/templates/two_factor/core/setup_complete.html b/admin_site/templates/two_factor/core/setup_complete.html old mode 100644 new mode 100755 index a5743c5d..e371246c --- a/admin_site/templates/two_factor/core/setup_complete.html +++ b/admin_site/templates/two_factor/core/setup_complete.html @@ -7,15 +7,15 @@ {% block specific_content %}
-

{% translate "Profile:" %} {{ request.user.username }}

-

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock %}

+

{% trans "Enable Two-Factor Authentication for" %} {{ request.user.username }}

+

{% blocktrans trimmed %}Congratulations, you've successfully enabled two-factor authentication.{% endblocktrans %}

{% if not phone_methods %} -

{% trans "Back to user profile" %}

+ {% trans "Back to user profile" %} {% else %}

{% blocktrans trimmed %}However, it might happen that you don't have access to your primary token device. To enable account recovery, add a phone @@ -26,6 +26,6 @@

{% block title %}{% trans "Enable Two-Factor Authentication" %}{% endblock %

{% trans "Add Phone Number" %}

{% endif %} - +

{% endblock %} \ No newline at end of file diff --git a/admin_site/templates/two_factor/profile/disable.html b/admin_site/templates/two_factor/profile/disable.html old mode 100644 new mode 100755 index 58f33d1c..a489e158 --- a/admin_site/templates/two_factor/profile/disable.html +++ b/admin_site/templates/two_factor/profile/disable.html @@ -7,16 +7,18 @@ {% block specific_content %}
-

{% translate "Profile:" %} {{ request.user.username }}

-

{% block title %}{% trans "Disable Two-factor Authentication" %}{% endblock %}

+

{% trans "Disable Two-factor Authentication for" %} {{ request.user.username }}

+

{% blocktrans trimmed %}You are about to disable two-factor authentication. This weakens your account security, are you sure?{% endblocktrans %}

{% csrf_token %} - {{ form.as_table }}
- - + {% trans "Cancel" %}
+
{% endblock %} \ No newline at end of file diff --git a/docker/Dockerfile b/docker/Dockerfile index ea2a4c7d..946a3359 100755 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -54,7 +54,6 @@ WORKDIR /code/ # Install requirements. COPY admin_site/requirements.txt /code/admin_site/requirements.txt RUN pip3 install --no-cache-dir -r admin_site/requirements.txt -RUN chmod --recursive 777 /usr/local/lib/python3.8/site-packages/two_factor # Copy backend code. COPY README.rst . From e0169329c33b5ba6191bc168f84615b25909acea Mon Sep 17 00:00:00 2001 From: Andreas Poulsen Date: Tue, 25 Apr 2023 16:36:24 +0200 Subject: [PATCH 015/297] Use correct favicon --- admin_site/templates/two_factor/_base.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/admin_site/templates/two_factor/_base.html b/admin_site/templates/two_factor/_base.html index 909f6ab8..947dcc72 100755 --- a/admin_site/templates/two_factor/_base.html +++ b/admin_site/templates/two_factor/_base.html @@ -6,7 +6,7 @@ {% translate "OS2borgerPC Administration Login" %} - +