diff --git a/VIPSWeb/locale/bg/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/bg/LC_MESSAGES/djangojs.po index fb9498857c1664445b400e54ee9a1c1a8c4641f2..87afbb33e55186f41c3fdaeede83b2d4578e58db 100755 --- a/VIPSWeb/locale/bg/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/bg/LC_MESSAGES/djangojs.po @@ -19,7 +19,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: 2014-05-14 09:33+0200\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -100,8 +100,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "" @@ -160,59 +160,59 @@ msgstr "" msgid "Select station" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -244,119 +244,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/locale/bs/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/bs/LC_MESSAGES/djangojs.po index 575106b4a66d11a7076585b79243fd84ddedaa1f..cad749af1cb8df7772110b84aeef2485213fd98b 100755 --- a/VIPSWeb/locale/bs/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/bs/LC_MESSAGES/djangojs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: 2015-02-13 11:26+0100\n" "Last-Translator: \n" "Language-Team: \n" @@ -89,8 +89,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "Neimenovan" @@ -151,59 +151,59 @@ msgstr "" msgid "Select station" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -235,119 +235,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/locale/de/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/de/LC_MESSAGES/djangojs.po index 1733c8643625e7338cce14c4c805b6c71d473339..1893ac3138c525ba3e5d6a1bc2a75056cdfc350b 100755 --- a/VIPSWeb/locale/de/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/de/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -86,8 +86,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "" @@ -146,59 +146,59 @@ msgstr "" msgid "Select station" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -230,119 +230,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/locale/fi/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/fi/LC_MESSAGES/djangojs.po index 1733c8643625e7338cce14c4c805b6c71d473339..1893ac3138c525ba3e5d6a1bc2a75056cdfc350b 100755 --- a/VIPSWeb/locale/fi/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/fi/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -86,8 +86,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "" @@ -146,59 +146,59 @@ msgstr "" msgid "Select station" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -230,119 +230,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/locale/nb/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/nb/LC_MESSAGES/djangojs.po index d38b7b9e9922260704af96d74118816fa940d1b2..2a4da49a055837fb7ff27f73d644bb8a1a7c0043 100755 --- a/VIPSWeb/locale/nb/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/nb/LC_MESSAGES/djangojs.po @@ -19,7 +19,7 @@ msgid "" msgstr "" "Project-Id-Version: VIPSWeb\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: 2024-04-03 14:04+0200\n" "Last-Translator: Tor-Einar Skog <tor-einar.skog@nibio.no>\n" "Language-Team: \n" @@ -98,8 +98,8 @@ msgstr "Dager" msgid "Older" msgstr "Eldre" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "Uten navn" @@ -158,66 +158,66 @@ msgstr "For mange skilletegn (komma)" msgid "Select station" msgstr "Velg stasjon" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "Søndag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "Mandag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "Tirsdag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "Onsdag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "Torsdag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "Fredag" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "Lørdag" # Abbreviation for Sunday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "Søn" # Abbreviation for Monday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "Man" # Abbreviation for Tuesday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "Tir" # Abbreviation for Wednesday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "Ons" # Abbreviation for Thursday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "Tor" # Abbreviation for Friday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "Fredag" # Abbreviation for Saturday -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "Lør" @@ -256,130 +256,130 @@ msgstr "Fr" msgid "Sa" msgstr "Lø" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "Januar" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "Februar" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "Mars" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "April" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "Mai" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "Juni" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "Juli" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "August" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "September" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "Oktober" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "November" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "Desember" # Abbreviation for January -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "Jan" # Abbreviation for February -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "Feb" # Abbreviation for March -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "Mar" # Abbreviation for April -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "Apr" # Abbreviation for June -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "Jun" # Abbreviation for July -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "Jul" # Abbreviation for August -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "Aug" # Abbreviation for September -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "Sep" # Abbreviation for October -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "Okt" # Abbreviation for November -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "Nov" # Abbreviation for December -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "Des" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "Skriv ut graf" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "Last ned som PNG" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "Last ned som JPEG" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "Last ned som PDF" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "Last ned som SVG" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "Grafmeny" diff --git a/VIPSWeb/locale/vi/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/vi/LC_MESSAGES/djangojs.po index f625d86e62fb34a9de4f8ca50d89a61fbb9f21e9..a41eed97e768ba7370a0dd48888def0cdb4eec00 100755 --- a/VIPSWeb/locale/vi/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/vi/LC_MESSAGES/djangojs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -92,8 +92,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "Vô danh" @@ -152,59 +152,59 @@ msgstr "Quá nhiều dấu phẩy phân cách" msgid "Select station" msgstr "Chọn ga" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -236,119 +236,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/locale/zh_Hans/LC_MESSAGES/djangojs.po b/VIPSWeb/locale/zh_Hans/LC_MESSAGES/djangojs.po index 8527d3708d71a50db086c518131632ce7cc2877d..44a2f6ec025e7720e0c2b103f401608f7a610998 100755 --- a/VIPSWeb/locale/zh_Hans/LC_MESSAGES/djangojs.po +++ b/VIPSWeb/locale/zh_Hans/LC_MESSAGES/djangojs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-04-03 14:01+0200\n" +"POT-Creation-Date: 2024-10-30 15:38+0100\n" "PO-Revision-Date: 2016-11-03 15:00+0100\n" "Last-Translator: \n" "Language-Team: \n" @@ -86,8 +86,8 @@ msgstr "" msgid "Older" msgstr "" -#: VIPSWeb/static/js/util.js:241 VIPSWeb/static/js/util.js:270 -#: VIPSWeb/static/js/util.js:422 +#: VIPSWeb/static/js/util.js:253 VIPSWeb/static/js/util.js:282 +#: VIPSWeb/static/js/util.js:434 msgid "Unnamed" msgstr "未命名的" @@ -146,59 +146,59 @@ msgstr "太多分割逗号" msgid "Select station" msgstr "选择站点" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Sunday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Monday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Tuesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Wednesday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Thursday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Friday" msgstr "" -#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:50 +#: VIPSWeb/templates/settings.js:13 VIPSWeb/templates/settings.js:52 msgid "Saturday" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sun" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Mon" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Tue" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Wed" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Thu" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Fri" msgstr "" -#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:51 +#: VIPSWeb/templates/settings.js:14 VIPSWeb/templates/settings.js:53 msgid "Sat" msgstr "" @@ -230,119 +230,119 @@ msgstr "" msgid "Sa" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "January" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "February" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "March" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "April" msgstr "" #: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:17 -#: VIPSWeb/templates/settings.js:48 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:50 VIPSWeb/templates/settings.js:51 msgid "May" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "June" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "July" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "August" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "September" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "October" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "November" msgstr "" -#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:49 +#: VIPSWeb/templates/settings.js:16 VIPSWeb/templates/settings.js:51 msgid "December" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jan" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Feb" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Mar" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Apr" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jun" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Jul" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Aug" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Sep" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Oct" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Nov" msgstr "" -#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:48 +#: VIPSWeb/templates/settings.js:17 VIPSWeb/templates/settings.js:50 msgid "Dec" msgstr "" -#: VIPSWeb/templates/settings.js:52 +#: VIPSWeb/templates/settings.js:54 msgid "Print chart" msgstr "" -#: VIPSWeb/templates/settings.js:53 +#: VIPSWeb/templates/settings.js:55 msgid "Download PNG image" msgstr "" -#: VIPSWeb/templates/settings.js:54 +#: VIPSWeb/templates/settings.js:56 msgid "Download JPEG image" msgstr "" -#: VIPSWeb/templates/settings.js:55 +#: VIPSWeb/templates/settings.js:57 msgid "Download PDF document" msgstr "" -#: VIPSWeb/templates/settings.js:56 +#: VIPSWeb/templates/settings.js:58 msgid "Download SVG vector image" msgstr "" -#: VIPSWeb/templates/settings.js:57 +#: VIPSWeb/templates/settings.js:59 msgid "Chart context menu" msgstr "" diff --git a/VIPSWeb/urls.py b/VIPSWeb/urls.py index 756b6eddd05fcf18d15c1582b52d99701dcc821e..c81a53753c78913103994dbb620092126a26c7e4 100755 --- a/VIPSWeb/urls.py +++ b/VIPSWeb/urls.py @@ -34,7 +34,7 @@ admin.autodiscover() # Enabling translation in JavaScript files # See https://docs.djangoproject.com/en/1.5/topics/i18n/translation/#internationalization-in-javascript-code js_info_dict = { - 'packages': ['forecasts','vips_messages','VIPSWeb','roughage', 'spatial'], + 'packages': ['forecasts','vips_messages','VIPSWeb','roughage', 'spatial','cydiapomonella'], 'domain': 'djangojs', } diff --git a/cydiapomonella/locale/bg/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/bg/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..e8f72bd8c31d67028cc18e99d79fd6097f1813be --- /dev/null +++ b/cydiapomonella/locale/bg/LC_MESSAGES/djangojs.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/locale/bs/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/bs/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..bb2f9a711287c0b2e55b654a6bbdf52cf1af3be8 --- /dev/null +++ b/cydiapomonella/locale/bs/LC_MESSAGES/djangojs.po @@ -0,0 +1,57 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/locale/de/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/de/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..e8f72bd8c31d67028cc18e99d79fd6097f1813be --- /dev/null +++ b/cydiapomonella/locale/de/LC_MESSAGES/djangojs.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/locale/fi/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/fi/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..e8f72bd8c31d67028cc18e99d79fd6097f1813be --- /dev/null +++ b/cydiapomonella/locale/fi/LC_MESSAGES/djangojs.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/locale/nb/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/nb/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..318bacced37cf11f384a3a77ba7f94218c0c4b35 --- /dev/null +++ b/cydiapomonella/locale/nb/LC_MESSAGES/djangojs.po @@ -0,0 +1,60 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: 2024-10-31 10:23+0100\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: nb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.4.2\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "Varmesum, med basistemperatur" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "beregnet for" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "værstasjon" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "valgt punkt" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "for perioden fra og med" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "til og med" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "dager" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "er" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "graddager" + +#~ msgid "Field is required" +#~ msgstr "DETTE ER EN TEST" diff --git a/cydiapomonella/locale/vi/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/vi/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..2992c7fe8b0c0c8f340bc0f99dfcab1168d5886e --- /dev/null +++ b/cydiapomonella/locale/vi/LC_MESSAGES/djangojs.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/locale/zh_Hans/LC_MESSAGES/djangojs.po b/cydiapomonella/locale/zh_Hans/LC_MESSAGES/djangojs.po new file mode 100644 index 0000000000000000000000000000000000000000..2992c7fe8b0c0c8f340bc0f99dfcab1168d5886e --- /dev/null +++ b/cydiapomonella/locale/zh_Hans/LC_MESSAGES/djangojs.po @@ -0,0 +1,56 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-10-31 10:23+0100\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: cydiapomonella/static/js/cydiapomonella.js:222 +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "Heat sum, with a base temperature of" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:224 +msgid "calculated for" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "weatherstation" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:225 +msgid "selected coordinates" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "for the period starting with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:226 +msgid "and ending with" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:227 +msgid "days" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "is" +msgstr "" + +#: cydiapomonella/static/js/cydiapomonella.js:228 +msgid "day degrees" +msgstr "" diff --git a/cydiapomonella/static/js/cydiapomonella.js b/cydiapomonella/static/js/cydiapomonella.js index 86440fcb2f87f09d6d1b17a593bcaae8092c148e..85cabdda4a0a9b29894a76f2319edd8e850c329e 100644 --- a/cydiapomonella/static/js/cydiapomonella.js +++ b/cydiapomonella/static/js/cydiapomonella.js @@ -1,3 +1,25 @@ +/** + * Functionality for the running of the Cydia Pomonella model. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see <http://www.gnu.org/licenses />. + * + * Created 2024-10-30 + * @author Tor-Einar Skog <tor-einar.skog@nibio.no> + */ + + + + class CydiaPomonella { @@ -6,6 +28,9 @@ class CydiaPomonella TIMEZONE = "Europe/Oslo"; DATE_FORMAT = "YYYY-MM-DD"; HEATSUM_BASE_TEMP = 10.0; + WEATHER_DATASOURCE_TYPE_COORDINATES = "coordinates"; + WEATHER_DATASOURCE_TYPE_WEATHERSTATION = "weatherstation"; + appleWeatherStations = [ { "id": 11, "name": "Apelsvoll" }, @@ -31,6 +56,8 @@ class CydiaPomonella { "id": 61, "name": "Åsbakken" } ]; + appleWeatherStationIds = this.appleWeatherStations.map(ws=>ws.id); + renderWeatherstations = function () { let wsSelect = document.getElementById("weatherStationId"); this.appleWeatherStations.forEach((ws) => { @@ -38,27 +65,66 @@ class CydiaPomonella }); } - async runModel() { + getSelectedWeatherstation() + { let wsSelect = document.getElementById("weatherStationId"); - let selectedWeatherStationId = wsSelect.options[wsSelect.selectedIndex].value; - if(selectedWeatherStationId == "-1") + return wsSelect.options[wsSelect.selectedIndex].value != "-1" ? wsSelect.options[wsSelect.selectedIndex].value : undefined; + } + + getSelectedCoordinate() + { + let longitude = parseFloat(document.getElementById("longitude").value); + let latitude = parseFloat(document.getElementById("latitude").value); + return (Number.isNaN(longitude) || Number.isNaN(latitude) ? undefined : [longitude, latitude]); + } + + getSelectedWeatherdataSourceType() + { + return document.getElementById("coordinates").checked ? this.WEATHER_DATASOURCE_TYPE_COORDINATES : document.getElementById("weatherstation").checked ? this.WEATHER_DATASOURCE_TYPE_WEATHERSTATION : undefined; + } + + async runModel() { + let selectedWeatherStationId = this.getSelectedWeatherstation(); + let selectedCoordinate = this.getSelectedCoordinate(); + if(selectedWeatherStationId == undefined && selectedCoordinate == undefined) { return; } + let startDateHourly = this.getStartDateHourly(); let endDateHourly = this.getEndDateHourly(); try { - // Get the hourly data for the past X days - const hourlyDataResponse = await fetch( - this.weatherStationDataURL + "?weatherStationId=" + selectedWeatherStationId - + "&elementMeasurementTypes[]=RR&elementMeasurementTypes[]=TM" - + "&timeZone=" + this.TIMEZONE - + "&startDate=" + startDateHourly.format(this.DATE_FORMAT) + "&startTime=0" - + "&endDate=" + endDateHourly.format(this.DATE_FORMAT) + "&endTime=12" - + "&logIntervalId=1" - ); - if(! hourlyDataResponse.ok){ + let hourlyDataResponse = undefined; + if(this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_WEATHERSTATION && selectedWeatherStationId != undefined) + { + // Get the hourly data for the past X days + hourlyDataResponse = await fetch( + this.weatherStationDataURL + "?weatherStationId=" + selectedWeatherStationId + + "&elementMeasurementTypes[]=RR&elementMeasurementTypes[]=TM" + + "&timeZone=" + this.TIMEZONE + + "&startDate=" + startDateHourly.format(this.DATE_FORMAT) + "&startTime=0" + + "&endDate=" + endDateHourly.format(this.DATE_FORMAT) + "&endTime=12" + + "&logIntervalId=1" + ); + } + else if(this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_COORDINATES && selectedCoordinate != undefined) + { + hourlyDataResponse = await fetch( + this.gridDataURL + "?longitude=" + selectedCoordinate[0] + "&latitude=" + selectedCoordinate[1] + + "&elementMeasurementTypes[]=RR&elementMeasurementTypes[]=TM" + + "&timeZone=" + this.TIMEZONE + + "&startDate=" + startDateHourly.format(this.DATE_FORMAT) + "&startTime=0" + + "&endDate=" + endDateHourly.format(this.DATE_FORMAT) + "&endTime=12" + + "&logIntervalId=1" + ); + } + else + { + console.error("Location not set. Aborting.") + return; + } + if(! hourlyDataResponse || ! hourlyDataResponse.ok){ throw new Error("Response status: " + hourlyDataResponse.status); } @@ -81,9 +147,9 @@ class CydiaPomonella async runHeatSumCalculations() { document.getElementById("heatSumContainer").style.display="block"; - let wsSelect = document.getElementById("weatherStationId"); - let selectedWeatherStationId = wsSelect.options[wsSelect.selectedIndex].value; - if(selectedWeatherStationId == "-1") + let selectedWeatherStationId = this.getSelectedWeatherstation(); + let selectedCoordinate = this.getSelectedCoordinate(); + if(selectedWeatherStationId == undefined && selectedCoordinate == undefined) { return; } @@ -91,14 +157,34 @@ class CydiaPomonella const heatSumStartDate = this.setToTZMidnight(moment(document.getElementById("heatSumStartDate").value)); const heatSumEndDate = this.setToTZMidnight(moment().tz(this.TIMEZONE).subtract(1,"days")); - const heatSumDataResponse = await fetch( - this.weatherStationDataURL + "?weatherStationId=" + selectedWeatherStationId - + "&elementMeasurementTypes[]=TM" - + "&timeZone=" + this.TIMEZONE - + "&startDate=" + heatSumStartDate.format(this.DATE_FORMAT) + "&startTime=0" - + "&endDate=" + heatSumEndDate.format(this.DATE_FORMAT) + "&endTime=23" - + "&logIntervalId=2" - ); + let heatSumDataResponse = undefined; + if(this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_WEATHERSTATION && selectedWeatherStationId != undefined) + { + heatSumDataResponse = await fetch( + this.weatherStationDataURL + "?weatherStationId=" + selectedWeatherStationId + + "&elementMeasurementTypes[]=TM" + + "&timeZone=" + this.TIMEZONE + + "&startDate=" + heatSumStartDate.format(this.DATE_FORMAT) + "&startTime=0" + + "&endDate=" + heatSumEndDate.format(this.DATE_FORMAT) + "&endTime=23" + + "&logIntervalId=2" + ); + } + else if(this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_COORDINATES && selectedCoordinate != undefined) + { + heatSumDataResponse = await fetch( + this.gridDataURL + "?longitude=" + selectedCoordinate[0] + "&latitude=" + selectedCoordinate[1] + + "&elementMeasurementTypes[]=TM" + + "&timeZone=" + this.TIMEZONE + + "&startDate=" + heatSumStartDate.format(this.DATE_FORMAT) + "&startTime=0" + + "&endDate=" + heatSumEndDate.format(this.DATE_FORMAT) + "&endTime=23" + + "&logIntervalId=2" + ); + } + else + { + console.error("Location not set. Aborting.") + return; + } if(! heatSumDataResponse.ok){ throw new Error("Response status: " + heatSumDataResponse.status); @@ -106,7 +192,7 @@ class CydiaPomonella const heatSumData = await heatSumDataResponse.json(); - this.renderHeatSumResult(selectedWeatherStationId, this.calculateHeatSum(heatSumData), heatSumData.length, heatSumStartDate, heatSumEndDate); + this.renderHeatSumResult(this.calculateHeatSum(heatSumData), heatSumData.length, heatSumStartDate, heatSumEndDate); } calculateHeatSum(heatSumData) @@ -118,19 +204,29 @@ class CydiaPomonella return heatSum; } - renderHeatSumResult(selectedWeatherStationId, heatSum, numberOfDays, heatSumStartDate, heatSumEndDate) + renderHeatSumResult(heatSum, numberOfDays, heatSumStartDate, heatSumEndDate) { - document.getElementById("heatSumBaseTemp").innerHTML=this.HEATSUM_BASE_TEMP; - this.appleWeatherStations.forEach((ws)=>{ - if(ws.id == parseInt(selectedWeatherStationId)) - { - document.getElementById("selectedWeatherStationName").innerHTML = ws.name; - } - }); - document.getElementById("heatSumStartDateDisplay").innerHTML = heatSumStartDate.format(this.DATE_FORMAT); - document.getElementById("heatSumEndDateDisplay").innerHTML = heatSumEndDate.format(this.DATE_FORMAT); - document.getElementById("numberOfDays").innerHTML = numberOfDays; - document.getElementById("heatSum").innerHTML = heatSum.toFixed(1); + let weatherStationName = undefined; + if(this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_WEATHERSTATION) + { + const selectedWeatherstationId = parseInt(this.getSelectedWeatherstation()); + console.info(selectedWeatherstationId); + this.appleWeatherStations.forEach((ws)=>{ + if(ws.id == selectedWeatherstationId) + { + console.info("Found " + ws.name); + weatherStationName = ws.name; + } + }); + } + + const heatSumMsg = gettext("Heat sum, with a base temperature of") + " " + this.HEATSUM_BASE_TEMP + "°C, " + gettext("calculated for") + " " + + (this.getSelectedWeatherdataSourceType() == this.WEATHER_DATASOURCE_TYPE_WEATHERSTATION ? weatherStationName + " " + gettext("weatherstation") : gettext("selected coordinates")) + + " " + gettext("for the period starting with") + " " + heatSumStartDate.format(this.DATE_FORMAT) + " " + gettext("and ending with") + " " + heatSumEndDate.format(this.DATE_FORMAT) + + " " + "(" + numberOfDays + " " + gettext("days") + ")" + + " " + gettext("is") + ": <strong>" + heatSum.toFixed(1) + " " + gettext("day degrees") + "</strong>"; + + document.getElementById("heatSumResult").innerHTML = heatSumMsg; } getDailyRRData(hourlyData) diff --git a/cydiapomonella/templates/cydiapomonella/index.html b/cydiapomonella/templates/cydiapomonella/index.html index ea7c11af08a77a3c09e282a318c0d899501583b5..880e4a13dd0a7c25eb717410cf6dbb722dca1129 100644 --- a/cydiapomonella/templates/cydiapomonella/index.html +++ b/cydiapomonella/templates/cydiapomonella/index.html @@ -21,26 +21,139 @@ Created: 2024-10-28 {% block title%}{% trans "Cydia pomonella" %}{%endblock%} +{% block customCSS %} +<link type="text/css" rel="stylesheet" href="https://logic.testvips.nibio.no/css/3rdparty/leaflet.css" /> +<link type="text/css" rel="stylesheet" href="https://logic.testvips.nibio.no/css/mapModal.css" /> +{% endblock %} + {% block extendJS %} <script type="text/javascript" src="{% static "js/moment.min.js" %}"></script> -<script type="text/javascript" src="{% static "js/moment-timezone.js" %}"></script> <script type="text/javascript" src="{% static "js/moment-timezone-with-data.min.js" %}"></script> +<script type="text/javascript" src="{% url 'javascript-catalog' %}"></script> {% endblock %} {% block customJS %} <script type="module"> import CydiaPomonella from "../static/js/cydiapomonella.js"; + const cydiaPomonella = new CydiaPomonella(); window.onload = (event) => { cydiaPomonella.renderWeatherstations(); } // We need to do it this way to keep the "this" reference of the class window.runModel = function () {cydiaPomonella.runModel()}; - window.runHeatSumCalculations = function () {cydiaPomonella.runHeatSumCalculations();} + window.runHeatSumCalculations = function () {cydiaPomonella.runHeatSumCalculations();}; + + + + /* ######## MAP UI FUNCTIONALITY ######### */ + import MapModal from 'https://logic.testvips.nibio.no/js/mapModal.js'; + const inputLatitudeElement = document.getElementById("latitude"); + const inputLongitudeElement = document.getElementById("longitude"); + const selectWeatherstationElement = document.getElementById("weatherStationId"); + + window.displayWeatherstationInput = function () { + document.getElementById("weatherstation").checked = true; + document.getElementById('input-weatherstation').style.display="block"; + document.getElementById('input-coordinates').style.display="none"; + inputLatitudeElement.value = "" + inputLongitudeElement.value = "" + }; + window.displayCoordinatesInput = function () { + document.getElementById("coordinates").checked = true; + document.getElementById('input-weatherstation').style.display="none"; + document.getElementById('input-coordinates').style.display="block"; + selectWeatherstationElement.selectedIndex = 0; + } + + + // Callback for coordinates map + function selectCoordinates(coordinatesData) { + const selectedLatitude = coordinatesData ? coordinatesData.latitude : undefined; + const selectedLongitude = coordinatesData ? coordinatesData.longitude : undefined; + + if(selectedLatitude && selectedLongitude) { + inputLatitudeElement.value = selectedLatitude; + inputLongitudeElement.value = selectedLongitude; + } + cydiaPomonella.runModel(); + } + + let selectedPoint = null; + let selectedFeature = undefined; + window.openCoordinatesMap = () => { + if (inputLatitudeElement.value && inputLongitudeElement.value) { + selectedPoint = 1; + selectedFeature = { + "type": "FeatureCollection", "features": [ + { + "type": "Feature", + "geometry": { + "type": "Point", + "coordinates": [parseFloat(inputLongitudeElement.value), parseFloat(inputLatitudeElement.value)] + }, + "properties": { + "pointOfInterestId": selectedPoint, + } + }] + }; + } else { + selectedPoint = undefined; + selectedFeature = undefined; + } + + // TODO Open map with currently selected language! (not 'nb') + + const isPoiMap = false; // Map should enable selection of coordinates (not pois) + const allowNewPoints = true; // User should be able to select new pois + const coordinatesMapInstance = new MapModal('coordinates-map', selectedFeature, 'nb', isPoiMap, allowNewPoints, selectCoordinates); + coordinatesMapInstance.openModal(selectedPoint); + } + + function selectPoi(poiData) + { + const selectedId = poiData ? poiData.pointOfInterestId : undefined; + if (selectedId) { + const optionIndex = Array.from(selectWeatherstationElement.options).findIndex(option => option.value == selectedId); + if (optionIndex !== -1) { + selectWeatherstationElement.selectedIndex = optionIndex; + } + } + cydiaPomonella.runModel(); + } + + window.openPoiMap = () => { + fetch("https://lmt.nibio.no/services/rest/weatherstation/ipmdecisions", { + method: 'GET' + }) + .then(response => response.json()) + .then(geoJson => { + // FILTER with only Ids from the Cydia station list + let filteredFeatures = geoJson["features"] + .filter(feature => cydiaPomonella.appleWeatherStationIds.indexOf(feature.id) >= 0) + .map(feature => { + feature["properties"]["pointOfInterestName"] = feature["properties"]["name"]; + feature["properties"]["pointOfInterestId"] = feature["id"]; + feature["properties"]["pointOfInterestTypeId"] = 1; // Type = Weather station + return feature; + }); + geoJson["features"] = filteredFeatures; + const isPoiMap = true; // Map should enable selection of pois + const allowNewPoints = false; // User should not be able to create new pois + const poiMapInstance = new MapModal('poi-map', geoJson, 'nb', isPoiMap, allowNewPoints, selectPoi); + const selectedPoiId = cydiaPomonella.getSelectedWeatherstation(); + poiMapInstance.openModal(selectedPoiId); + }) + .catch(error => { + console.error('Unable to retrieve weatherstation geojson', error); + }); + } + </script> {% endblock %} {% block content %} +<div class="singleBlockContainer"> <div class="row"> <div class="col-md-12"> <h1>{% trans "Calculate the risk of attack by the coddling moth" %}</h1> @@ -56,14 +169,43 @@ Created: 2024-10-28 </div> </div> <div class="row"> - <div class="col-sm-4"> + <div class="col-md-6"> + <div class="form-group"> + <h4>Jeg vil bruke værdata</h4> + <div class="radio"> + <label> + <input type="radio" name="weatherdataType" id="coordinates" value="coordinates" checked onchange="displayCoordinatesInput()"> + for et spesifikt punkt (koordinater) + </label> + <div id="input-coordinates" class="form-inline"> + <input type="text" class="form-control" name="latitude" id="latitude" onchange="runModel()" placeholder="Breddegrad" aria-label="Breddegrad"> + <input type="text" class="form-control" name="longitude" id="longitude" onchange="runModel()" placeholder="Lengdegrad" aria-label="Lengdegrad"> + <button type="button" class="btn btn-primary" onclick="openCoordinatesMap()"><i class="fa fa-map-marker fa-lg"></i> Velg i kart</button> + </div> + <div id="coordinates-map" class="map-modal"></div> + </div> + <div class="radio"> + <label> + <input type="radio" name="weatherdataType" id="weatherstation" value="weatherstation" onchange="displayWeatherstationInput()"> + fra en værstasjon + </label> + <div id="input-weatherstation" class="form-inline" style="display: none;"> + <select name="weatherStationName" id="weatherStationId" class="form-control" onchange="runModel();"> + <option value="-1">-- {% trans "Select weather station" %} --</option> + </select> + <button type="button" class="btn btn-primary" onclick="openPoiMap()"><i class="fa fa-map-marker fa-lg"></i> Velg i kart</button> + </div> + <div id="poi-map" class="map-modal"></div> + </div> + <span class="help-block" id="{{ form_id }}_latitude_validation"></span> + <span class="help-block" id="{{ form_id }}_weatherStationId_validation"></span> + <span class="help-block" id="{{ form_id }}_longitude_validation"></span> + </div> - <select name="weatherStationName" id="weatherStationId" class="form-control" onchange="runModel();"> - <option value="-1">-- {% trans "Select weather station" %} --</option> - </select> </div> - <div class="col-sm-6"> + <div class="col-md-6"> <form> + <h4>Jeg vil hente data tilbake i tid fra: </h4> <label class="radio-inline"> <input type="radio" name="radioDays" value="7" checked onclick="runModel()">7 {% trans "days" %} </label> @@ -110,13 +252,10 @@ Created: 2024-10-28 </form> </div> - <div class="row alert alert-success"> - {% trans "Heat sum, with a base temperature of" %} <span id="heatSumBaseTemp"></span>°C, {% trans "calculated for " %} <b><span id='selectedWeatherStationName'>-</span></b> {% trans "weather station for the period starting with" %} <b><span id="heatSumStartDateDisplay">-</span></b> {% trans "and ending with" %} <b><span - id="heatSumEndDateDisplay">--</span></b> (<b><span id="numberOfDays">-</span></b> {% trans "days" %}) {% trans "is" %} : <b><span id="heatSum"></span></b> {% trans "day degrees" %} - </div> + <div class="row alert alert-success" id="heatSumResult"></div> </div> <div class="row" style="height: 50px;"></div> - +</div> {% endblock %} \ No newline at end of file diff --git a/cydiapomonella/urls.py b/cydiapomonella/urls.py index a0f60cca70fad7a53271438443a5b172aba70f2a..ed0d4162d5821280bd4981c975bdef99033b2e8b 100644 --- a/cydiapomonella/urls.py +++ b/cydiapomonella/urls.py @@ -23,6 +23,8 @@ from django.urls import re_path from . import views +app_name = "cydiapomonella" + urlpatterns = [ re_path(r'^$', views.index,name='index'), ]