ISS in die Monatsvorhersage eingebaut

This commit is contained in:
Eskimue
2026-04-04 14:16:10 +02:00
parent 5cc3f57b1c
commit 08de43621e
8 changed files with 852 additions and 7 deletions
+4
View File
@@ -0,0 +1,4 @@
import json, base64, sys
sys.path.insert(0, r'c:\Users\HP\source\repos\skyview.astronomiemuseum.de\public\py')
import api
print('ok-import')
+512
View File
@@ -0,0 +1,512 @@
[Sat Apr 4 13:05:02 2026] PHP 8.5.4 Development Server (http://127.0.0.1:8000) started
[Sat Apr 4 13:05:02 2026] 127.0.0.1:56847 Accepted
[Sat Apr 4 13:05:02 2026] 127.0.0.1:56847 [200]: GET /
[Sat Apr 4 13:05:02 2026] 127.0.0.1:56847 Closing
[Sat Apr 4 13:05:06 2026] 127.0.0.1:60094 Accepted
[Sat Apr 4 13:05:08 2026] 127.0.0.1:60094 [200]: GET /
[Sat Apr 4 13:05:08 2026] 127.0.0.1:60094 Closing
[Sat Apr 4 13:05:08 2026] 127.0.0.1:55506 Accepted
[Sat Apr 4 13:05:08 2026] 127.0.0.1:55506 [200]: GET /css/style.css
[Sat Apr 4 13:05:08 2026] 127.0.0.1:55506 Closing
[Sat Apr 4 13:05:08 2026] 127.0.0.1:52560 Accepted
[Sat Apr 4 13:05:08 2026] 127.0.0.1:49223 Accepted
[Sat Apr 4 13:05:08 2026] 127.0.0.1:52560 [200]: GET /images/star16x16.png
[Sat Apr 4 13:05:08 2026] 127.0.0.1:49223 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:05:08 2026] 127.0.0.1:52560 Closing
[Sat Apr 4 13:05:08 2026] 127.0.0.1:49223 Closing
[Sat Apr 4 13:05:08 2026] 127.0.0.1:64599 Accepted
[Sat Apr 4 13:05:10 2026] 127.0.0.1:64599 [200]: GET /favicon.ico
[Sat Apr 4 13:05:10 2026] 127.0.0.1:64599 Closing
[Sat Apr 4 13:05:10 2026] 127.0.0.1:63078 Accepted
[Sat Apr 4 13:05:20 2026] 127.0.0.1:63078 [200]: GET /monatsvorhersage.php
[Sat Apr 4 13:05:20 2026] 127.0.0.1:63078 Closing
[Sat Apr 4 13:05:20 2026] 127.0.0.1:64746 Accepted
[Sat Apr 4 13:05:20 2026] 127.0.0.1:57663 Accepted
[Sat Apr 4 13:05:20 2026] 127.0.0.1:64746 [200]: GET /css/style.css
[Sat Apr 4 13:05:39 2026] 127.0.0.1:57663 [200]: GET /monatsvorhersage_old.php
[Sat Apr 4 13:05:39 2026] 127.0.0.1:57663 Closing
[Sat Apr 4 13:05:39 2026] 127.0.0.1:60792 Accepted
[Sat Apr 4 13:05:39 2026] 127.0.0.1:64746 Closing
[Sat Apr 4 13:05:39 2026] 127.0.0.1:51819 Accepted
[Sat Apr 4 13:05:39 2026] 127.0.0.1:60792 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:05:39 2026] 127.0.0.1:51819 [200]: GET /css/style.css
[Sat Apr 4 13:05:39 2026] 127.0.0.1:60792 Closing
[Sat Apr 4 13:05:39 2026] 127.0.0.1:51819 Closing
[Sat Apr 4 13:05:40 2026] 127.0.0.1:55510 Accepted
[Sat Apr 4 13:05:40 2026] 127.0.0.1:55510 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:05:40 2026] 127.0.0.1:55510 Closing
[Sat Apr 4 13:05:40 2026] 127.0.0.1:61999 Accepted
[Sat Apr 4 13:05:40 2026] 127.0.0.1:56212 Accepted
[Sat Apr 4 13:05:40 2026] 127.0.0.1:61999 [200]: GET /images/star16x16.png
[Sat Apr 4 13:05:40 2026] 127.0.0.1:56212 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:05:40 2026] 127.0.0.1:61999 Closing
[Sat Apr 4 13:05:40 2026] 127.0.0.1:56212 Closing
[Sat Apr 4 13:05:40 2026] 127.0.0.1:64580 Accepted
[Sat Apr 4 13:05:40 2026] 127.0.0.1:64580 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:05:40 2026] 127.0.0.1:64580 Closing
[Sat Apr 4 13:05:40 2026] 127.0.0.1:55814 Accepted
[Sat Apr 4 13:05:42 2026] 127.0.0.1:55814 [200]: GET /favicon.ico
[Sat Apr 4 13:05:42 2026] 127.0.0.1:55814 Closing
[Sat Apr 4 13:05:42 2026] 127.0.0.1:62833 Accepted
[Sat Apr 4 13:07:52 2026] 127.0.0.1:62833 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:07:52 2026] 127.0.0.1:62833 Closing
[Sat Apr 4 13:07:52 2026] 127.0.0.1:51688 Accepted
[Sat Apr 4 13:08:11 2026] 127.0.0.1:51688 [200]: GET /monatsvorhersage_old.php?year=2026&month=8
[Sat Apr 4 13:08:11 2026] 127.0.0.1:51688 Closing
[Sat Apr 4 13:08:11 2026] 127.0.0.1:51110 Accepted
[Sat Apr 4 13:08:11 2026] 127.0.0.1:51110 [200]: GET /css/style.css
[Sat Apr 4 13:08:11 2026] 127.0.0.1:51110 Closing
[Sat Apr 4 13:08:12 2026] 127.0.0.1:61842 Accepted
[Sat Apr 4 13:08:12 2026] 127.0.0.1:61842 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:08:12 2026] 127.0.0.1:61842 Closing
[Sat Apr 4 13:08:12 2026] 127.0.0.1:64415 Accepted
[Sat Apr 4 13:08:12 2026] 127.0.0.1:62641 Accepted
[Sat Apr 4 13:08:12 2026] 127.0.0.1:64415 [200]: GET /images/star16x16.png
[Sat Apr 4 13:08:12 2026] 127.0.0.1:62641 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:08:12 2026] 127.0.0.1:64415 Closing
[Sat Apr 4 13:08:12 2026] 127.0.0.1:62641 Closing
[Sat Apr 4 13:08:12 2026] 127.0.0.1:63695 Accepted
[Sat Apr 4 13:08:12 2026] 127.0.0.1:63695 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:08:12 2026] 127.0.0.1:63695 Closing
[Sat Apr 4 13:08:12 2026] 127.0.0.1:65119 Accepted
[Sat Apr 4 13:08:14 2026] 127.0.0.1:65119 [200]: GET /favicon.ico
[Sat Apr 4 13:08:14 2026] 127.0.0.1:65119 Closing
[Sat Apr 4 13:08:14 2026] 127.0.0.1:50310 Accepted
[Sat Apr 4 13:09:39 2026] 127.0.0.1:50310 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:09:39 2026] 127.0.0.1:50310 Closing
[Sat Apr 4 13:11:39 2026] 127.0.0.1:51038 Accepted
[Sat Apr 4 13:11:59 2026] 127.0.0.1:51038 [200]: GET /monatsvorhersage_old.php?month=8&year=2026
[Sat Apr 4 13:11:59 2026] 127.0.0.1:51038 Closing
[Sat Apr 4 13:15:49 2026] 127.0.0.1:61379 Accepted
[Sat Apr 4 13:16:07 2026] 127.0.0.1:61379 [200]: GET /monatsvorhersage_old.php?year=2026&month=8
[Sat Apr 4 13:16:07 2026] 127.0.0.1:61379 Closing
[Sat Apr 4 13:16:07 2026] 127.0.0.1:57225 Accepted
[Sat Apr 4 13:16:07 2026] 127.0.0.1:57225 [200]: GET /css/style.css
[Sat Apr 4 13:16:07 2026] 127.0.0.1:57225 Closing
[Sat Apr 4 13:16:08 2026] 127.0.0.1:54279 Accepted
[Sat Apr 4 13:16:08 2026] 127.0.0.1:63941 Accepted
[Sat Apr 4 13:16:08 2026] 127.0.0.1:50404 Accepted
[Sat Apr 4 13:16:08 2026] 127.0.0.1:54279 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:16:08 2026] 127.0.0.1:63941 [200]: GET /images/star16x16.png
[Sat Apr 4 13:16:08 2026] 127.0.0.1:50404 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:16:08 2026] 127.0.0.1:54279 Closing
[Sat Apr 4 13:16:08 2026] 127.0.0.1:63941 Closing
[Sat Apr 4 13:16:08 2026] 127.0.0.1:50404 Closing
[Sat Apr 4 13:16:08 2026] 127.0.0.1:65327 Accepted
[Sat Apr 4 13:16:08 2026] 127.0.0.1:65327 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:16:08 2026] 127.0.0.1:65327 Closing
[Sat Apr 4 13:16:08 2026] 127.0.0.1:59854 Accepted
[Sat Apr 4 13:16:10 2026] 127.0.0.1:59854 [200]: GET /favicon.ico
[Sat Apr 4 13:16:10 2026] 127.0.0.1:59854 Closing
[Sat Apr 4 13:16:10 2026] 127.0.0.1:56915 Accepted
[Sat Apr 4 13:17:37 2026] 127.0.0.1:56915 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:17:37 2026] 127.0.0.1:56915 Closing
[Sat Apr 4 13:19:31 2026] 127.0.0.1:62466 Accepted
[Sat Apr 4 13:19:49 2026] 127.0.0.1:62466 [200]: GET /monatsvorhersage_old.php?year=2026&month=8
[Sat Apr 4 13:19:49 2026] 127.0.0.1:62466 Closing
[Sat Apr 4 13:19:49 2026] 127.0.0.1:56563 Accepted
[Sat Apr 4 13:19:49 2026] 127.0.0.1:56563 [200]: GET /css/style.css
[Sat Apr 4 13:19:49 2026] 127.0.0.1:56563 Closing
[Sat Apr 4 13:19:50 2026] 127.0.0.1:64763 Accepted
[Sat Apr 4 13:19:50 2026] 127.0.0.1:57365 Accepted
[Sat Apr 4 13:19:50 2026] 127.0.0.1:65177 Accepted
[Sat Apr 4 13:19:50 2026] 127.0.0.1:64763 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:19:50 2026] 127.0.0.1:57365 [200]: GET /images/star16x16.png
[Sat Apr 4 13:19:50 2026] 127.0.0.1:65177 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:19:50 2026] 127.0.0.1:64763 Closing
[Sat Apr 4 13:19:50 2026] 127.0.0.1:57365 Closing
[Sat Apr 4 13:19:50 2026] 127.0.0.1:65177 Closing
[Sat Apr 4 13:19:50 2026] 127.0.0.1:55468 Accepted
[Sat Apr 4 13:19:50 2026] 127.0.0.1:55468 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:19:50 2026] 127.0.0.1:55468 Closing
[Sat Apr 4 13:19:50 2026] 127.0.0.1:59829 Accepted
[Sat Apr 4 13:19:52 2026] 127.0.0.1:59829 [200]: GET /favicon.ico
[Sat Apr 4 13:19:52 2026] 127.0.0.1:59829 Closing
[Sat Apr 4 13:19:52 2026] 127.0.0.1:59742 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:59742 [200]: GET /monatsvorhersage_old.php?year=2026&month=4
[Sat Apr 4 13:20:29 2026] 127.0.0.1:59742 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56911 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56911 [200]: GET /css/style.css
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56911 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56768 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:55966 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:63374 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56768 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:20:29 2026] 127.0.0.1:55966 [200]: GET /images/star16x16.png
[Sat Apr 4 13:20:29 2026] 127.0.0.1:63374 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:20:29 2026] 127.0.0.1:56768 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:55966 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:63374 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:49904 Accepted
[Sat Apr 4 13:20:29 2026] 127.0.0.1:49904 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:20:29 2026] 127.0.0.1:49904 Closing
[Sat Apr 4 13:20:29 2026] 127.0.0.1:58593 Accepted
[Sat Apr 4 13:20:31 2026] 127.0.0.1:58593 [200]: GET /favicon.ico
[Sat Apr 4 13:20:31 2026] 127.0.0.1:58593 Closing
[Sat Apr 4 13:20:31 2026] 127.0.0.1:52115 Accepted
[Sat Apr 4 13:21:39 2026] 127.0.0.1:52115 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:21:39 2026] 127.0.0.1:52115 Closing
[Sat Apr 4 13:23:23 2026] 127.0.0.1:64731 Accepted
[Sat Apr 4 13:23:41 2026] 127.0.0.1:64731 [200]: GET /monatsvorhersage_old.php?year=2026&month=4
[Sat Apr 4 13:23:41 2026] 127.0.0.1:64731 Closing
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58328 Accepted
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58328 [200]: GET /css/style.css
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58328 Closing
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58441 Accepted
[Sat Apr 4 13:23:41 2026] 127.0.0.1:54768 Accepted
[Sat Apr 4 13:23:41 2026] 127.0.0.1:62374 Accepted
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58441 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:23:41 2026] 127.0.0.1:54768 [200]: GET /images/star16x16.png
[Sat Apr 4 13:23:41 2026] 127.0.0.1:62374 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:23:41 2026] 127.0.0.1:58441 Closing
[Sat Apr 4 13:23:41 2026] 127.0.0.1:54768 Closing
[Sat Apr 4 13:23:41 2026] 127.0.0.1:62374 Closing
[Sat Apr 4 13:23:42 2026] 127.0.0.1:63045 Accepted
[Sat Apr 4 13:23:42 2026] 127.0.0.1:63045 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:23:42 2026] 127.0.0.1:63045 Closing
[Sat Apr 4 13:23:42 2026] 127.0.0.1:58545 Accepted
[Sat Apr 4 13:23:43 2026] 127.0.0.1:58545 [200]: GET /favicon.ico
[Sat Apr 4 13:23:43 2026] 127.0.0.1:58545 Closing
[Sat Apr 4 13:23:43 2026] 127.0.0.1:62655 Accepted
[Sat Apr 4 13:25:25 2026] 127.0.0.1:62655 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:25:25 2026] 127.0.0.1:62655 Closing
[Sat Apr 4 13:25:56 2026] 127.0.0.1:61286 Accepted
[Sat Apr 4 13:26:14 2026] 127.0.0.1:61286 [200]: GET /monatsvorhersage_old.php?year=2026&month=4
[Sat Apr 4 13:26:14 2026] 127.0.0.1:61286 Closing
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50887 Accepted
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50887 [200]: GET /css/style.css
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50887 Closing
[Sat Apr 4 13:26:14 2026] 127.0.0.1:51178 Accepted
[Sat Apr 4 13:26:14 2026] 127.0.0.1:62601 Accepted
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50633 Accepted
[Sat Apr 4 13:26:14 2026] 127.0.0.1:51178 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:26:14 2026] 127.0.0.1:62601 [200]: GET /images/star16x16.png
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50633 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:26:14 2026] 127.0.0.1:51178 Closing
[Sat Apr 4 13:26:14 2026] 127.0.0.1:62601 Closing
[Sat Apr 4 13:26:14 2026] 127.0.0.1:50633 Closing
[Sat Apr 4 13:26:15 2026] 127.0.0.1:64777 Accepted
[Sat Apr 4 13:26:15 2026] 127.0.0.1:64777 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:26:15 2026] 127.0.0.1:64777 Closing
[Sat Apr 4 13:26:15 2026] 127.0.0.1:54587 Accepted
[Sat Apr 4 13:26:16 2026] 127.0.0.1:54587 [200]: GET /favicon.ico
[Sat Apr 4 13:26:16 2026] 127.0.0.1:54587 Closing
[Sat Apr 4 13:26:16 2026] 127.0.0.1:59843 Accepted
[Sat Apr 4 13:27:02 2026] 127.0.0.1:59843 [200]: GET /monatsvorhersage_old.php?year=2026&month=4
[Sat Apr 4 13:27:02 2026] 127.0.0.1:59843 Closing
[Sat Apr 4 13:27:02 2026] 127.0.0.1:60256 Accepted
[Sat Apr 4 13:27:02 2026] 127.0.0.1:60256 [200]: GET /css/style.css
[Sat Apr 4 13:27:02 2026] 127.0.0.1:60256 Closing
[Sat Apr 4 13:27:03 2026] 127.0.0.1:50709 Accepted
[Sat Apr 4 13:27:03 2026] 127.0.0.1:50709 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:27:03 2026] 127.0.0.1:50709 Closing
[Sat Apr 4 13:27:03 2026] 127.0.0.1:55625 Accepted
[Sat Apr 4 13:27:03 2026] 127.0.0.1:61166 Accepted
[Sat Apr 4 13:27:03 2026] 127.0.0.1:55625 [200]: GET /images/star16x16.png
[Sat Apr 4 13:27:03 2026] 127.0.0.1:61166 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:27:03 2026] 127.0.0.1:55625 Closing
[Sat Apr 4 13:27:03 2026] 127.0.0.1:61166 Closing
[Sat Apr 4 13:27:03 2026] 127.0.0.1:56924 Accepted
[Sat Apr 4 13:27:03 2026] 127.0.0.1:56924 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:27:03 2026] 127.0.0.1:56924 Closing
[Sat Apr 4 13:27:03 2026] 127.0.0.1:58839 Accepted
[Sat Apr 4 13:27:04 2026] 127.0.0.1:58839 [200]: GET /favicon.ico
[Sat Apr 4 13:27:04 2026] 127.0.0.1:58839 Closing
[Sat Apr 4 13:27:04 2026] 127.0.0.1:59023 Accepted
[Sat Apr 4 13:28:04 2026] 127.0.0.1:59023 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:28:04 2026] 127.0.0.1:59023 Closing
[Sat Apr 4 13:28:24 2026] 127.0.0.1:65445 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:65445 [200]: GET /monatsvorhersage_old.php?year=2026&month=6
[Sat Apr 4 13:28:43 2026] 127.0.0.1:65445 Closing
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57680 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57680 [200]: GET /css/style.css
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57680 Closing
[Sat Apr 4 13:28:43 2026] 127.0.0.1:64580 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59058 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59321 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:64580 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59058 [200]: GET /images/star16x16.png
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59321 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:28:43 2026] 127.0.0.1:64580 Closing
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59058 Closing
[Sat Apr 4 13:28:43 2026] 127.0.0.1:59321 Closing
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57091 Accepted
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57091 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:28:43 2026] 127.0.0.1:57091 Closing
[Sat Apr 4 13:28:44 2026] 127.0.0.1:64529 Accepted
[Sat Apr 4 13:28:45 2026] 127.0.0.1:64529 [200]: GET /favicon.ico
[Sat Apr 4 13:28:45 2026] 127.0.0.1:64529 Closing
[Sat Apr 4 13:28:45 2026] 127.0.0.1:57521 Accepted
[Sat Apr 4 13:29:45 2026] 127.0.0.1:57521 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:29:45 2026] 127.0.0.1:57521 Closing
[Sat Apr 4 13:29:45 2026] 127.0.0.1:60715 Accepted
[Sat Apr 4 13:30:04 2026] 127.0.0.1:60715 [200]: GET /monatsvorhersage_old.php?year=2026&month=7
[Sat Apr 4 13:30:04 2026] 127.0.0.1:60715 Closing
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63768 Accepted
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63768 [200]: GET /css/style.css
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63768 Closing
[Sat Apr 4 13:30:04 2026] 127.0.0.1:53424 Accepted
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63669 Accepted
[Sat Apr 4 13:30:04 2026] 127.0.0.1:61253 Accepted
[Sat Apr 4 13:30:04 2026] 127.0.0.1:53424 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63669 [200]: GET /images/star16x16.png
[Sat Apr 4 13:30:04 2026] 127.0.0.1:61253 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:30:04 2026] 127.0.0.1:53424 Closing
[Sat Apr 4 13:30:04 2026] 127.0.0.1:63669 Closing
[Sat Apr 4 13:30:04 2026] 127.0.0.1:61253 Closing
[Sat Apr 4 13:30:05 2026] 127.0.0.1:64094 Accepted
[Sat Apr 4 13:30:05 2026] 127.0.0.1:64094 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:30:05 2026] 127.0.0.1:64094 Closing
[Sat Apr 4 13:30:05 2026] 127.0.0.1:51726 Accepted
[Sat Apr 4 13:30:06 2026] 127.0.0.1:51726 [200]: GET /favicon.ico
[Sat Apr 4 13:30:06 2026] 127.0.0.1:51726 Closing
[Sat Apr 4 13:30:06 2026] 127.0.0.1:52200 Accepted
[Sat Apr 4 13:30:50 2026] 127.0.0.1:52200 [200]: GET /monatsvorhersage_old.php?year=2026&month=11
[Sat Apr 4 13:30:50 2026] 127.0.0.1:52200 Closing
[Sat Apr 4 13:30:50 2026] 127.0.0.1:62487 Accepted
[Sat Apr 4 13:30:50 2026] 127.0.0.1:62487 [200]: GET /css/style.css
[Sat Apr 4 13:30:50 2026] 127.0.0.1:62487 Closing
[Sat Apr 4 13:30:50 2026] 127.0.0.1:60781 Accepted
[Sat Apr 4 13:30:50 2026] 127.0.0.1:60781 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:30:50 2026] 127.0.0.1:60781 Closing
[Sat Apr 4 13:30:50 2026] 127.0.0.1:53275 Accepted
[Sat Apr 4 13:30:50 2026] 127.0.0.1:49256 Accepted
[Sat Apr 4 13:30:50 2026] 127.0.0.1:53275 [200]: GET /images/star16x16.png
[Sat Apr 4 13:30:50 2026] 127.0.0.1:49256 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:30:50 2026] 127.0.0.1:53275 Closing
[Sat Apr 4 13:30:50 2026] 127.0.0.1:49256 Closing
[Sat Apr 4 13:30:51 2026] 127.0.0.1:63389 Accepted
[Sat Apr 4 13:30:51 2026] 127.0.0.1:63389 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:30:51 2026] 127.0.0.1:63389 Closing
[Sat Apr 4 13:30:51 2026] 127.0.0.1:61832 Accepted
[Sat Apr 4 13:30:52 2026] 127.0.0.1:61832 [200]: GET /favicon.ico
[Sat Apr 4 13:30:52 2026] 127.0.0.1:61832 Closing
[Sat Apr 4 13:30:52 2026] 127.0.0.1:59473 Accepted
[Sat Apr 4 13:31:32 2026] 127.0.0.1:59473 [200]: GET /monatsvorhersage_old.php?year=2026&month=12
[Sat Apr 4 13:31:32 2026] 127.0.0.1:59473 Closing
[Sat Apr 4 13:31:32 2026] 127.0.0.1:65461 Accepted
[Sat Apr 4 13:31:32 2026] 127.0.0.1:65461 [200]: GET /css/style.css
[Sat Apr 4 13:31:32 2026] 127.0.0.1:65461 Closing
[Sat Apr 4 13:31:32 2026] 127.0.0.1:62904 Accepted
[Sat Apr 4 13:31:32 2026] 127.0.0.1:62904 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:31:32 2026] 127.0.0.1:62904 Closing
[Sat Apr 4 13:31:32 2026] 127.0.0.1:54230 Accepted
[Sat Apr 4 13:31:32 2026] 127.0.0.1:56692 Accepted
[Sat Apr 4 13:31:32 2026] 127.0.0.1:54230 [200]: GET /images/star16x16.png
[Sat Apr 4 13:31:32 2026] 127.0.0.1:56692 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:31:32 2026] 127.0.0.1:54230 Closing
[Sat Apr 4 13:31:32 2026] 127.0.0.1:56692 Closing
[Sat Apr 4 13:31:33 2026] 127.0.0.1:55075 Accepted
[Sat Apr 4 13:31:33 2026] 127.0.0.1:55075 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:31:33 2026] 127.0.0.1:55075 Closing
[Sat Apr 4 13:31:33 2026] 127.0.0.1:64547 Accepted
[Sat Apr 4 13:31:34 2026] 127.0.0.1:64547 [200]: GET /favicon.ico
[Sat Apr 4 13:31:34 2026] 127.0.0.1:64547 Closing
[Sat Apr 4 13:31:34 2026] 127.0.0.1:55972 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:55972 [200]: GET /monatsvorhersage_old.php?year=2026&month=6
[Sat Apr 4 13:32:38 2026] 127.0.0.1:55972 Closing
[Sat Apr 4 13:32:38 2026] 127.0.0.1:59385 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:59385 [200]: GET /css/style.css
[Sat Apr 4 13:32:38 2026] 127.0.0.1:59385 Closing
[Sat Apr 4 13:32:38 2026] 127.0.0.1:57529 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:57529 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:32:38 2026] 127.0.0.1:57529 Closing
[Sat Apr 4 13:32:38 2026] 127.0.0.1:52680 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:53823 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:52680 [200]: GET /images/star16x16.png
[Sat Apr 4 13:32:38 2026] 127.0.0.1:53823 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:32:38 2026] 127.0.0.1:52680 Closing
[Sat Apr 4 13:32:38 2026] 127.0.0.1:53823 Closing
[Sat Apr 4 13:32:38 2026] 127.0.0.1:55373 Accepted
[Sat Apr 4 13:32:38 2026] 127.0.0.1:55373 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:32:38 2026] 127.0.0.1:55373 Closing
[Sat Apr 4 13:32:39 2026] 127.0.0.1:57222 Accepted
[Sat Apr 4 13:32:40 2026] 127.0.0.1:57222 [200]: GET /favicon.ico
[Sat Apr 4 13:32:40 2026] 127.0.0.1:57222 Closing
[Sat Apr 4 13:32:40 2026] 127.0.0.1:65119 Accepted
[Sat Apr 4 13:33:49 2026] 127.0.0.1:65119 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:33:49 2026] 127.0.0.1:65119 Closing
[Sat Apr 4 13:38:06 2026] 127.0.0.1:58712 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:58712 [200]: GET /monatsvorhersage_old.php?year=2026&month=6
[Sat Apr 4 13:38:25 2026] 127.0.0.1:58712 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:49291 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:49291 [200]: GET /css/style.css
[Sat Apr 4 13:38:25 2026] 127.0.0.1:49291 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:54898 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:64556 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52911 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:54898 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:38:25 2026] 127.0.0.1:64556 [200]: GET /images/star16x16.png
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52911 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:38:25 2026] 127.0.0.1:54898 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:64556 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52911 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52036 Accepted
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52036 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:38:25 2026] 127.0.0.1:52036 Closing
[Sat Apr 4 13:38:25 2026] 127.0.0.1:51944 Accepted
[Sat Apr 4 13:38:27 2026] 127.0.0.1:51944 [200]: GET /favicon.ico
[Sat Apr 4 13:38:27 2026] 127.0.0.1:51944 Closing
[Sat Apr 4 13:38:27 2026] 127.0.0.1:51201 Accepted
[Sat Apr 4 13:40:25 2026] 127.0.0.1:51201 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:40:25 2026] 127.0.0.1:51201 Closing
[Sat Apr 4 13:44:22 2026] 127.0.0.1:62240 Accepted
[Sat Apr 4 13:44:45 2026] 127.0.0.1:62240 [200]: GET /monatsvorhersage_old.php?year=2026&month=6
[Sat Apr 4 13:44:45 2026] 127.0.0.1:62240 Closing
[Sat Apr 4 13:44:45 2026] 127.0.0.1:56366 Accepted
[Sat Apr 4 13:44:45 2026] 127.0.0.1:56366 [200]: GET /css/style.css
[Sat Apr 4 13:44:45 2026] 127.0.0.1:56366 Closing
[Sat Apr 4 13:44:46 2026] 127.0.0.1:61203 Accepted
[Sat Apr 4 13:44:46 2026] 127.0.0.1:60789 Accepted
[Sat Apr 4 13:44:46 2026] 127.0.0.1:58216 Accepted
[Sat Apr 4 13:44:46 2026] 127.0.0.1:61203 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:44:46 2026] 127.0.0.1:60789 [200]: GET /images/star16x16.png
[Sat Apr 4 13:44:46 2026] 127.0.0.1:58216 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:44:46 2026] 127.0.0.1:61203 Closing
[Sat Apr 4 13:44:46 2026] 127.0.0.1:60789 Closing
[Sat Apr 4 13:44:46 2026] 127.0.0.1:58216 Closing
[Sat Apr 4 13:44:46 2026] 127.0.0.1:51748 Accepted
[Sat Apr 4 13:44:46 2026] 127.0.0.1:51748 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:44:46 2026] 127.0.0.1:51748 Closing
[Sat Apr 4 13:44:46 2026] 127.0.0.1:58822 Accepted
[Sat Apr 4 13:44:48 2026] 127.0.0.1:58822 [200]: GET /favicon.ico
[Sat Apr 4 13:44:48 2026] 127.0.0.1:58822 Closing
[Sat Apr 4 13:44:48 2026] 127.0.0.1:59663 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:59663 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 13:45:47 2026] 127.0.0.1:59663 Closing
[Sat Apr 4 13:45:47 2026] 127.0.0.1:58444 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:58444 [200]: GET /css/style.css
[Sat Apr 4 13:45:47 2026] 127.0.0.1:58444 Closing
[Sat Apr 4 13:45:47 2026] 127.0.0.1:54748 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:50160 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:63963 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:54748 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:45:47 2026] 127.0.0.1:50160 [200]: GET /images/star16x16.png
[Sat Apr 4 13:45:47 2026] 127.0.0.1:63963 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:45:47 2026] 127.0.0.1:54748 Closing
[Sat Apr 4 13:45:47 2026] 127.0.0.1:50160 Closing
[Sat Apr 4 13:45:47 2026] 127.0.0.1:63963 Closing
[Sat Apr 4 13:45:47 2026] 127.0.0.1:49669 Accepted
[Sat Apr 4 13:45:47 2026] 127.0.0.1:49669 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:45:47 2026] 127.0.0.1:49669 Closing
[Sat Apr 4 13:45:48 2026] 127.0.0.1:62598 Accepted
[Sat Apr 4 13:45:49 2026] 127.0.0.1:62598 [200]: GET /favicon.ico
[Sat Apr 4 13:45:49 2026] 127.0.0.1:62598 Closing
[Sat Apr 4 13:45:49 2026] 127.0.0.1:64872 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:64872 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 13:47:10 2026] 127.0.0.1:64872 Closing
[Sat Apr 4 13:47:10 2026] 127.0.0.1:52271 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:52271 [200]: GET /css/style.css
[Sat Apr 4 13:47:10 2026] 127.0.0.1:52271 Closing
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60145 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60145 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60145 Closing
[Sat Apr 4 13:47:10 2026] 127.0.0.1:64268 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:54962 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:64268 [200]: GET /images/star16x16.png
[Sat Apr 4 13:47:10 2026] 127.0.0.1:54962 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:47:10 2026] 127.0.0.1:64268 Closing
[Sat Apr 4 13:47:10 2026] 127.0.0.1:54962 Closing
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60276 Accepted
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60276 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:47:10 2026] 127.0.0.1:60276 Closing
[Sat Apr 4 13:47:11 2026] 127.0.0.1:57233 Accepted
[Sat Apr 4 13:47:12 2026] 127.0.0.1:57233 [200]: GET /favicon.ico
[Sat Apr 4 13:47:12 2026] 127.0.0.1:57233 Closing
[Sat Apr 4 13:47:12 2026] 127.0.0.1:57496 Accepted
[Sat Apr 4 13:48:32 2026] 127.0.0.1:57496 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:48:32 2026] 127.0.0.1:57496 Closing
[Sat Apr 4 13:52:34 2026] 127.0.0.1:59903 Accepted
[Sat Apr 4 13:53:02 2026] 127.0.0.1:59903 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 13:53:02 2026] 127.0.0.1:59903 Closing
[Sat Apr 4 13:53:02 2026] 127.0.0.1:57051 Accepted
[Sat Apr 4 13:53:02 2026] 127.0.0.1:57051 [200]: GET /css/style.css
[Sat Apr 4 13:53:02 2026] 127.0.0.1:57051 Closing
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55642 Accepted
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55642 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55642 Closing
[Sat Apr 4 13:53:02 2026] 127.0.0.1:58427 Accepted
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55928 Accepted
[Sat Apr 4 13:53:02 2026] 127.0.0.1:58427 [200]: GET /images/star16x16.png
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55928 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:53:02 2026] 127.0.0.1:58427 Closing
[Sat Apr 4 13:53:02 2026] 127.0.0.1:55928 Closing
[Sat Apr 4 13:53:03 2026] 127.0.0.1:61870 Accepted
[Sat Apr 4 13:53:03 2026] 127.0.0.1:61870 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:53:03 2026] 127.0.0.1:61870 Closing
[Sat Apr 4 13:53:03 2026] 127.0.0.1:54335 Accepted
[Sat Apr 4 13:53:04 2026] 127.0.0.1:54335 [200]: GET /favicon.ico
[Sat Apr 4 13:53:04 2026] 127.0.0.1:54335 Closing
[Sat Apr 4 13:53:04 2026] 127.0.0.1:62912 Accepted
[Sat Apr 4 13:54:05 2026] 127.0.0.1:62912 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:54:05 2026] 127.0.0.1:62912 Closing
[Sat Apr 4 13:54:06 2026] 127.0.0.1:49467 Accepted
[Sat Apr 4 13:54:33 2026] 127.0.0.1:49467 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 13:54:33 2026] 127.0.0.1:49467 Closing
[Sat Apr 4 13:54:33 2026] 127.0.0.1:54734 Accepted
[Sat Apr 4 13:54:33 2026] 127.0.0.1:54734 [200]: GET /css/style.css
[Sat Apr 4 13:54:34 2026] 127.0.0.1:54734 Closing
[Sat Apr 4 13:54:34 2026] 127.0.0.1:60887 Accepted
[Sat Apr 4 13:54:34 2026] 127.0.0.1:51648 Accepted
[Sat Apr 4 13:54:34 2026] 127.0.0.1:58048 Accepted
[Sat Apr 4 13:54:34 2026] 127.0.0.1:60887 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:54:34 2026] 127.0.0.1:51648 [200]: GET /images/star16x16.png
[Sat Apr 4 13:54:34 2026] 127.0.0.1:58048 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:54:34 2026] 127.0.0.1:60887 Closing
[Sat Apr 4 13:54:34 2026] 127.0.0.1:51648 Closing
[Sat Apr 4 13:54:34 2026] 127.0.0.1:58048 Closing
[Sat Apr 4 13:54:34 2026] 127.0.0.1:64802 Accepted
[Sat Apr 4 13:54:34 2026] 127.0.0.1:64802 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:54:34 2026] 127.0.0.1:64802 Closing
[Sat Apr 4 13:54:34 2026] 127.0.0.1:63820 Accepted
[Sat Apr 4 13:54:36 2026] 127.0.0.1:63820 [200]: GET /favicon.ico
[Sat Apr 4 13:54:36 2026] 127.0.0.1:63820 Closing
[Sat Apr 4 13:54:36 2026] 127.0.0.1:52071 Accepted
[Sat Apr 4 13:55:40 2026] 127.0.0.1:52071 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:55:40 2026] 127.0.0.1:52071 Closing
[Sat Apr 4 13:57:33 2026] 127.0.0.1:51514 Accepted
[Sat Apr 4 13:58:01 2026] 127.0.0.1:51514 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 13:58:01 2026] 127.0.0.1:51514 Closing
[Sat Apr 4 13:58:01 2026] 127.0.0.1:64035 Accepted
[Sat Apr 4 13:58:01 2026] 127.0.0.1:64035 [200]: GET /css/style.css
[Sat Apr 4 13:58:01 2026] 127.0.0.1:64035 Closing
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62594 Accepted
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62594 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62594 Closing
[Sat Apr 4 13:58:02 2026] 127.0.0.1:57161 Accepted
[Sat Apr 4 13:58:02 2026] 127.0.0.1:64207 Accepted
[Sat Apr 4 13:58:02 2026] 127.0.0.1:57161 [200]: GET /images/star16x16.png
[Sat Apr 4 13:58:02 2026] 127.0.0.1:64207 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 13:58:02 2026] 127.0.0.1:57161 Closing
[Sat Apr 4 13:58:02 2026] 127.0.0.1:64207 Closing
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62295 Accepted
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62295 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 13:58:02 2026] 127.0.0.1:62295 Closing
[Sat Apr 4 13:58:02 2026] 127.0.0.1:58421 Accepted
[Sat Apr 4 13:58:03 2026] 127.0.0.1:58421 [200]: GET /favicon.ico
[Sat Apr 4 13:58:03 2026] 127.0.0.1:58421 Closing
[Sat Apr 4 13:58:03 2026] 127.0.0.1:64749 Accepted
[Sat Apr 4 13:59:29 2026] 127.0.0.1:64749 Closed without sending a request; it was probably just an unused speculative preconnection
[Sat Apr 4 13:59:29 2026] 127.0.0.1:64749 Closing
[Sat Apr 4 14:00:30 2026] 127.0.0.1:59949 Accepted
[Sat Apr 4 14:00:58 2026] 127.0.0.1:59949 [200]: GET /monatsvorhersage_old.php?year=2026&month=3
[Sat Apr 4 14:00:58 2026] 127.0.0.1:59949 Closing
[Sat Apr 4 14:00:58 2026] 127.0.0.1:58547 Accepted
[Sat Apr 4 14:00:58 2026] 127.0.0.1:58547 [200]: GET /css/style.css
[Sat Apr 4 14:00:58 2026] 127.0.0.1:58547 Closing
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52032 Accepted
[Sat Apr 4 14:00:59 2026] 127.0.0.1:59328 Accepted
[Sat Apr 4 14:00:59 2026] 127.0.0.1:61499 Accepted
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52032 [200]: GET /js/astronomy.browser.min.js
[Sat Apr 4 14:00:59 2026] 127.0.0.1:59328 [200]: GET /images/star16x16.png
[Sat Apr 4 14:00:59 2026] 127.0.0.1:61499 [200]: GET /images/star16x16_rays.png
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52032 Closing
[Sat Apr 4 14:00:59 2026] 127.0.0.1:59328 Closing
[Sat Apr 4 14:00:59 2026] 127.0.0.1:61499 Closing
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52843 Accepted
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52843 [200]: GET /images/moons/moon4geocron.png
[Sat Apr 4 14:00:59 2026] 127.0.0.1:52843 Closing
[Sat Apr 4 14:00:59 2026] 127.0.0.1:63369 Accepted
[Sat Apr 4 14:01:01 2026] 127.0.0.1:63369 [200]: GET /favicon.ico
[Sat Apr 4 14:01:01 2026] 127.0.0.1:63369 Closing
[Sat Apr 4 14:01:01 2026] 127.0.0.1:61071 Accepted
+12
View File
@@ -0,0 +1,12 @@
<?php
$_SESSION = ['user_id' => 1];
$_GET['month'] = '4';
$_GET['year'] = '2026';
ob_start();
require __DIR__ . '/../public/monatsvorhersage_old.php';
$html = ob_get_clean();
if (preg_match_all('/<span class="riseset-val">(.*?)<\/span>\s*<span class="riseset-val">(.*?)<\/span>\s*<span class="riseset-val">(.*?)<\/span>/s', $html, $m)) {
echo 'rendered', PHP_EOL;
} else {
echo 'rendered-no-match', PHP_EOL;
}
+15
View File
@@ -0,0 +1,15 @@
<?php
session_start();
$_SESSION['user_id'] = 1;
$_GET['month'] = '4';
$_GET['year'] = '2026';
ob_start();
require __DIR__ . '/../public/monatsvorhersage_old.php';
$html = ob_get_clean();
if (preg_match_all('/Guter Ueberflug[^<]+/', $html, $matches)) {
foreach (array_unique($matches[0]) as $match) {
echo $match, PHP_EOL;
}
} else {
echo 'NO_PASS_EVENT', PHP_EOL;
}
+15
View File
@@ -0,0 +1,15 @@
<?php
session_start();
$_SESSION['user_id'] = 1;
$_GET['month'] = '3';
$_GET['year'] = '2026';
ob_start();
require __DIR__ . '/../public/monatsvorhersage_old.php';
$html = ob_get_clean();
if (preg_match_all('/Guter Ueberflug[^<]+/', $html, $matches)) {
foreach (array_unique($matches[0]) as $match) {
echo $match, PHP_EOL;
}
} else {
echo 'NO_PASS_EVENT', PHP_EOL;
}
+287 -7
View File
@@ -54,6 +54,31 @@ $planetConjunctionMaxSeparationDeg = 1.0;
// beruecksichtigt.
$moonOccultationMaxMag = 2.0;
// -------------------------------------------------------------------------
// Schwellen fuer "Gute Satelliten-Ueberfluege"
// -------------------------------------------------------------------------
// Es wird nur der Favoriten-Satellit des angemeldeten Users geprueft.
//
// Ein Ueberflug zaehlt als guter Beobachtungstermin nur dann, wenn er am
// Hoehepunkt mindestens diese Hoehe ueber dem Horizont erreicht.
$favoriteSatelliteBestPassMinAltitudeDeg = 80.0;
// Gleichzeitig muss die Sonne zum Maximum des Ueberflugs mindestens so weit
// unter dem Horizont stehen. -12 Grad entspricht dem Beginn/Ende der
// nautischen Daemmerung und sorgt fuer ausreichend dunklen Himmel.
$favoriteSatelliteBestPassMaxSunAltitudeDeg = -14.0;
// Optional koennen wir die Liste auf die erste Nachthaelfte begrenzen.
// "Erste Nachthaelfte" ist hier bewusst pragmatisch als lokaler Abend vor
// Mitternacht definiert. Ueberfluege nach 00:00 Ortszeit werden damit
// ausgefiltert.
$favoriteSatelliteBestPassOnlyFirstNightHalf = true;
// Optional koennen wir nur besonders helle Ueberfluege anzeigen.
// Bei Magnituden gilt: kleinere Werte sind heller. 0.0 mag bedeutet also,
// dass nur Ueberfluege mit Peak-Helligkeit von 0 mag oder heller bleiben.
$favoriteSatelliteBestPassMaxPeakMagnitude = 0.0;
// -------------------------------------------------------------------------
// Schwellen fuer "Gute Merkur-Sichtbarkeit"
// -------------------------------------------------------------------------
@@ -160,6 +185,9 @@ $outerPlanetStationEvents = [];
$jupiterMoonSideEvents = [];
$moonOccultations = [];
$meteorShowerPeaks = [];
$favoriteSatellitePasses = [];
$favoriteSatelliteName = null;
$favoriteSatellitePayload = [];
$seasonChanges = [];
$timeChanges = [];
$monthEventList = [];
@@ -230,6 +258,133 @@ if (!function_exists('monthForecastRadiantIsVisible')) {
}
}
if (!function_exists('monthForecastTleChecksum')) {
function monthForecastTleChecksum(string $line): int
{
$sum = 0;
for ($i = 0; $i < 68; $i++) {
$c = $line[$i] ?? ' ';
if (ctype_digit($c)) {
$sum += (int) $c;
} elseif ($c === '-') {
$sum += 1;
}
}
return $sum % 10;
}
}
if (!function_exists('monthForecastTleExp')) {
function monthForecastTleExp(float $value): string
{
if (abs($value) < 1e-99) {
return ' 00000-0';
}
$sign = $value >= 0 ? '+' : '-';
$abs = abs($value);
$exp = (int) floor(log10($abs)) + 1;
$mantissa = (int) round($abs / pow(10, $exp) * 1e5);
if ($mantissa >= 100000) {
$mantissa = 10000;
$exp++;
}
$expSign = $exp >= 0 ? '+' : '-';
return sprintf('%s%05d%s%d', $sign, $mantissa, $expSign, abs($exp));
}
}
if (!function_exists('monthForecastTleMmDot')) {
function monthForecastTleMmDot(float $value): string
{
$sign = $value >= 0 ? ' ' : '-';
return sprintf('%s.%08d', $sign, (int) round(abs($value) * 1e8));
}
}
if (!function_exists('monthForecastTleEpoch')) {
function monthForecastTleEpoch(string $epochStr): string
{
$dt = new DateTimeImmutable($epochStr, new DateTimeZone('UTC'));
$yy = (int) $dt->format('Y') % 100;
$jan1 = new DateTimeImmutable($dt->format('Y') . '-01-01 00:00:00', new DateTimeZone('UTC'));
$secs = (float) $dt->format('U') - (float) $jan1->format('U');
$day = $secs / 86400.0 + 1.0;
return sprintf('%02d%012.8f', $yy, $day);
}
}
if (!function_exists('monthForecastTleIntlDesig')) {
function monthForecastTleIntlDesig(?string $objectId): string
{
if (!$objectId) {
return str_repeat(' ', 8);
}
if (preg_match('/^(\d{4})-(\d+)([A-Z]*)$/i', trim($objectId), $match)) {
$yy = substr($match[1], 2, 2);
$launch = str_pad($match[2], 3, '0', STR_PAD_LEFT);
$piece = str_pad(strtoupper($match[3]), 3, ' ', STR_PAD_RIGHT);
return substr(str_pad($yy . $launch . $piece, 8, ' '), 0, 8);
}
return str_pad(substr($objectId, 0, 8), 8);
}
}
if (!function_exists('monthForecastBuildTleLine1')) {
function monthForecastBuildTleLine1(array $sat, array $tle): string
{
$norad = (int) ($sat['norad_cat_id'] ?? 0);
$class = in_array($sat['classification_type'] ?? '', ['U', 'C', 'S'], true)
? (string) $sat['classification_type']
: 'U';
$line = sprintf(
'1 %05d%1s %-8s %14s %10s %8s %8s %1d %4d',
$norad,
$class,
monthForecastTleIntlDesig($sat['object_id'] ?? null),
monthForecastTleEpoch((string) ($tle['epoch'] ?? '')),
monthForecastTleMmDot((float) ($tle['mean_motion_dot'] ?? 0)),
monthForecastTleExp((float) ($tle['mean_motion_ddot'] ?? 0)),
monthForecastTleExp((float) ($tle['bstar'] ?? 0)),
(int) ($tle['ephemeris_type'] ?? 0),
(int) ($tle['element_set_no'] ?? 0)
);
$line = str_pad($line, 68);
return $line . monthForecastTleChecksum($line);
}
}
if (!function_exists('monthForecastBuildTleLine2')) {
function monthForecastBuildTleLine2(array $sat, array $tle): string
{
$norad = (int) ($sat['norad_cat_id'] ?? 0);
$ecc = (float) ($tle['eccentricity'] ?? 0);
$eccStr = substr(sprintf('%.7f', $ecc), 2);
$line = sprintf(
'2 %05d %8.4f %8.4f %7s %8.4f %8.4f %11.8f%5d',
$norad,
(float) ($tle['inclination'] ?? 0),
(float) ($tle['ra_of_asc_node'] ?? 0),
$eccStr,
(float) ($tle['arg_of_pericenter'] ?? 0),
(float) ($tle['mean_anomaly'] ?? 0),
(float) ($tle['mean_motion'] ?? 0),
(int) ($tle['rev_at_epoch'] ?? 0)
);
$line = str_pad($line, 68);
return $line . monthForecastTleChecksum($line);
}
}
if (!function_exists('findMonthForecastSolarLongitudeCrossing')) {
function findMonthForecastSolarLongitudeCrossing(
DateTimeImmutable $rangeStartLocal,
@@ -610,6 +765,44 @@ try {
'zhr_variable' => trim((string) ($row['zhr_variable'] ?? '')),
];
}
if ($loggedIn && isset($_SESSION['user_id'])) {
$favoriteSatelliteStmt = $pdo->prepare(
"SELECT s.id, s.norad_cat_id, s.object_name, s.object_id, s.classification_type,
s.std_mag, s.rcs_size, s.rcs,
t.epoch, t.mean_motion, t.eccentricity, t.inclination,
t.ra_of_asc_node, t.arg_of_pericenter, t.mean_anomaly,
t.ephemeris_type, t.element_set_no, t.rev_at_epoch,
t.bstar, t.mean_motion_dot, t.mean_motion_ddot
FROM app_user_satellites us
INNER JOIN sat_satellites s ON s.id = us.satellite_id
INNER JOIN sat_tle_current t ON t.satellite_id = s.id
WHERE us.user_id = :user_id
AND us.is_favorite = 1
AND t.epoch IS NOT NULL
AND t.mean_motion IS NOT NULL
ORDER BY s.object_name ASC
LIMIT 1"
);
$favoriteSatelliteStmt->execute([
':user_id' => (int) $_SESSION['user_id'],
]);
$favoriteSatelliteRow = $favoriteSatelliteStmt->fetch();
if (is_array($favoriteSatelliteRow)) {
$favoriteSatelliteName = trim((string) ($favoriteSatelliteRow['object_name'] ?? ''));
$favoriteSatellitePayload = [[
'id' => (int) ($favoriteSatelliteRow['id'] ?? 0),
'norad_cat_id' => (int) ($favoriteSatelliteRow['norad_cat_id'] ?? 0),
'object_name' => $favoriteSatelliteName,
'is_favorite' => true,
'std_mag' => $favoriteSatelliteRow['std_mag'] !== null ? (float) $favoriteSatelliteRow['std_mag'] : null,
'rcs_size' => $favoriteSatelliteRow['rcs_size'] !== null ? (string) $favoriteSatelliteRow['rcs_size'] : null,
'rcs' => $favoriteSatelliteRow['rcs'] !== null && (float) $favoriteSatelliteRow['rcs'] > 0 ? (float) $favoriteSatelliteRow['rcs'] : null,
'tle_line1' => monthForecastBuildTleLine1($favoriteSatelliteRow, $favoriteSatelliteRow),
'tle_line2' => monthForecastBuildTleLine2($favoriteSatelliteRow, $favoriteSatelliteRow),
]];
}
}
} catch (Throwable $e) {
$starDataError = $e->getMessage();
}
@@ -628,6 +821,11 @@ $chartLocalTime = new DateTimeImmutable(
new DateTimeZone($chartTimezone)
);
$chartUtcTime = $chartLocalTime->setTimezone(new DateTimeZone('UTC'));
$monthStartLocal = new DateTimeImmutable(
sprintf('%04d-%02d-01 00:00:00', $selectedYear, $selectedMonth),
new DateTimeZone($chartTimezone)
);
$monthEndLocal = $monthStartLocal->modify('first day of next month');
$pythonExecutable = PHP_OS_FAMILY === 'Windows' ? 'python' : '/usr/bin/python';
$pythonScriptPath = __DIR__ . '/py/api.py';
@@ -682,6 +880,34 @@ if (is_array($pythonDecoded) && ($pythonDecoded['ok'] ?? false)) {
$planetErrorText = $pythonRaw;
}
if (!empty($favoriteSatellitePayload)) {
$favoriteSatellitePassOutput = [];
$favoriteSatellitePassArgs = [
$pythonScriptPath,
'satellite_passes',
(string) $chartLatitude,
(string) $chartLongitude,
(string) $chartElevation,
$chartTimezone,
$monthStartLocal->setTimezone(new DateTimeZone('UTC'))->format('Y-m-d\TH:i:s\Z'),
$monthEndLocal->setTimezone(new DateTimeZone('UTC'))->format('Y-m-d\TH:i:s\Z'),
base64_encode((string) json_encode($favoriteSatellitePayload, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES)),
];
$favoriteSatellitePassCommand = $pythonExecutable . ' ' . implode(' ', array_map('escapeshellarg', $favoriteSatellitePassArgs)) . ' 2>&1';
exec($favoriteSatellitePassCommand, $favoriteSatellitePassOutput);
$favoriteSatellitePassRaw = trim(implode("\n", $favoriteSatellitePassOutput));
$favoriteSatellitePassDecoded = json_decode($favoriteSatellitePassRaw, true);
if (is_array($favoriteSatellitePassDecoded) && ($favoriteSatellitePassDecoded['ok'] ?? false)) {
$favoriteSatelliteResults = is_array($favoriteSatellitePassDecoded['results'] ?? null)
? $favoriteSatellitePassDecoded['results']
: [];
$favoriteSatellitePasses = is_array($favoriteSatelliteResults[0]['passes'] ?? null)
? $favoriteSatelliteResults[0]['passes']
: [];
}
}
$moonPhaseOutput = [];
$moonPhaseExitCode = 0;
$moonPhaseArgs = [
@@ -1465,21 +1691,22 @@ foreach ($moonOccultations as $occultationEvent) {
$starLabel = (string) ($star['label'] ?? 'Stern');
$starMag = isset($star['mag']) ? number_format((float) $star['mag'], 1, ',', '') : '';
$maximumLocalDate = (string) ($maximum['local_date'] ?? '');
if ($maximumLocalDate !== '') {
$parsedMaximumDate = DateTimeImmutable::createFromFormat('Y-m-d', $maximumLocalDate);
if ($parsedMaximumDate instanceof DateTimeImmutable) {
$maximumLocalDate = $parsedMaximumDate->format('d.m.Y');
}
}
$monthEventList[] = [
'event' => 'Mond bedeckt ' . $starLabel . ($starMag !== '' ? ' (' . $starMag . ' mag)' : ''),
'date' => (string) ($maximum['local_date'] ?? ''),
'date' => $maximumLocalDate,
'time' => (string) ($maximum['local_time'] ?? ''),
'local_iso' => (string) ($maximum['local_iso'] ?? ''),
'type' => 'moon_occultation',
];
}
$monthStartLocal = new DateTimeImmutable(
sprintf('%04d-%02d-01 00:00:00', $selectedYear, $selectedMonth),
new DateTimeZone($chartTimezone)
);
$monthEndLocal = $monthStartLocal->modify('first day of next month');
foreach ($meteorShowerPeaks as $meteorShowerPeak) {
if (!monthForecastRadiantIsVisible($chartLatitude, $meteorShowerPeak['radiant_delta_deg'] ?? null)) {
continue;
@@ -1531,6 +1758,59 @@ foreach ($meteorShowerPeaks as $meteorShowerPeak) {
}
foreach ($favoriteSatellitePasses as $satellitePass) {
if (!is_array($satellitePass)) {
continue;
}
$peakUtc = trim((string) ($satellitePass['peak_utc'] ?? ''));
if ($peakUtc === '') {
continue;
}
$peakAltitude = isset($satellitePass['peak_el']) ? (float) $satellitePass['peak_el'] : null;
$peakSunAltitude = isset($satellitePass['peak_sun_altitude_deg']) ? (float) $satellitePass['peak_sun_altitude_deg'] : null;
$peakMagnitude = isset($satellitePass['peak_mag']['mag']) ? (float) $satellitePass['peak_mag']['mag'] : null;
if ($peakAltitude === null || $peakSunAltitude === null) {
continue;
}
if ($peakAltitude < $favoriteSatelliteBestPassMinAltitudeDeg) {
continue;
}
if ($peakSunAltitude > $favoriteSatelliteBestPassMaxSunAltitudeDeg) {
continue;
}
try {
$peakDateTime = (new DateTimeImmutable($peakUtc))->setTimezone(new DateTimeZone($chartTimezone));
} catch (Throwable) {
continue;
}
if ($favoriteSatelliteBestPassOnlyFirstNightHalf && (int) $peakDateTime->format('G') < 12) {
continue;
}
if ($peakMagnitude === null || $peakMagnitude > $favoriteSatelliteBestPassMaxPeakMagnitude) {
continue;
}
$peakAltitudeText = number_format($peakAltitude, 0, ',', '');
$eventLabel = 'Guter Ueberflug ' . ($favoriteSatelliteName !== null && $favoriteSatelliteName !== '' ? $favoriteSatelliteName : 'Favoriten-Satellit');
$peakMagnitudeText = number_format($peakMagnitude, 1, ',', '');
$eventLabel .= ' (max. ' . $peakAltitudeText . ' Grad, ' . $peakMagnitudeText . ' mag)';
$monthEventList[] = [
'event' => $eventLabel,
'date' => $peakDateTime->format('d.m.Y'),
'time' => $peakDateTime->format('H:i'),
'local_iso' => $peakDateTime->format(DateTimeInterface::ATOM),
'type' => 'favorite_satellite_pass',
];
}
usort(
$monthEventList,
static fn (array $a, array $b): int => strcmp((string) ($a['local_iso'] ?? ''), (string) ($b['local_iso'] ?? ''))
Binary file not shown.
+7
View File
@@ -3941,6 +3941,7 @@ def action_satellite_passes(args: list[str]) -> dict:
# Magnitude at peak
peak_mag = None
peak_sun_altitude_deg = None
if peak_time:
jd5, fr5 = _jday_from_dt(peak_time)
e5, r5, _ = satrec.sgp4(jd5, fr5)
@@ -3953,6 +3954,11 @@ def action_satellite_passes(args: list[str]) -> dict:
r5, sun5, obs_ecef, lat_rad, lon_rad,
_gmst_rad(jd5 + fr5)
)
peak_sun_altitude_deg = body_altitude_deg(
astronomy.Body.Sun,
astronomy.Observer(latitude, longitude, elevation_m),
peak_time,
)
duration_s = int(round((los_time - aos_time).total_seconds()))
local_tz = tz
@@ -3970,6 +3976,7 @@ def action_satellite_passes(args: list[str]) -> dict:
"los_az": round(los_az, 2) if los_az is not None else None,
"peak_az": round(peak_az, 2) if peak_az is not None else None,
"peak_el": round(peak_el, 2),
"peak_sun_altitude_deg": round(float(peak_sun_altitude_deg), 2) if peak_sun_altitude_deg is not None else None,
"duration_s": duration_s,
"path": path,
"shadow_entry": shadow_entry,