Compare commits

..

5 Commits

Author SHA1 Message Date
Gitea Actions Bot 0881a0fa71 chore: bump version to 1.0.106 (backend + frontend) 2025-09-01 21:03:36 +00:00
paul e91209f7cb fix: resolve multiple issues from GitHub issue #14
Mirror to GitHub / mirror (push) Successful in 46s
Test and Lint / backend-test (push) Successful in 1m54s
Test and Lint / frontend-test (push) Successful in 2m9s
Version and Release / version-bump (push) Successful in 1m5s
Version and Release / trigger-drone (push) Successful in 3s
- Fixed duplicate German translation for 'downloadSelected' button
- Added client_max_body_size configuration in nginx for file uploads
- Fixed date parsing in FeedbackModerationPanel to handle timestamps
- Fixed admin authentication context (req.admin vs req.user) in feedback routes
- Enhanced clipboard functionality with fallback for non-HTTPS contexts
- Fixed authentication token handling for numeric event IDs in uploads

These changes ensure comment moderation works properly, file uploads are configured correctly, and the UI handles all edge cases properly.

Fixes #14

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-01 22:56:44 +02:00
paul 828d6bc456 fix: correct script name in Gitea mirror workflow
Mirror to GitHub / mirror (push) Successful in 39s
Test and Lint / backend-test (push) Successful in 1m39s
Test and Lint / frontend-test (push) Successful in 2m17s
Version and Release / version-bump (push) Successful in 1m1s
Version and Release / trigger-drone (push) Has been skipped
- Fix script name from gitea-runner.sh to install-gitea-runner.sh
- Update system metrics

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 22:37:12 +02:00
paul f945573f09 chore: update system metrics
Mirror to GitHub / mirror (push) Successful in 40s
Test and Lint / backend-test (push) Successful in 1m39s
Test and Lint / frontend-test (push) Has started running
Version and Release / version-bump (push) Has been cancelled
Version and Release / trigger-drone (push) Has been cancelled
2025-08-29 22:33:38 +02:00
paul 296430e4d7 fix: update Gitea mirror workflow to selectively remove scripts
- Only remove gitea-runner.sh instead of entire scripts directory
- Preserve useful deployment and utility scripts in GitHub mirror
- Update system metrics

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-29 22:33:38 +02:00
12 changed files with 141 additions and 856 deletions
+70 -838
View File
@@ -1,890 +1,122 @@
[
{
"timestamp": 1756496746582,
"timestamp": 1756499536862,
"memoryTotal": 25769803776,
"memoryUsed": 25277186048,
"memoryFree": 492617728,
"memoryUsagePercent": 98.08839162190756,
"memoryEfficiency": 1.9116083780924384,
"memoryUsed": 25283330048,
"memoryFree": 486473728,
"memoryUsagePercent": 98.11223347981772,
"memoryEfficiency": 1.8877665201822822,
"cpuCount": 14,
"cpuLoad": 0.24197823660714285,
"cpuLoad": 0.21784319196428573,
"platform": "darwin",
"uptime": 5182900
"uptime": 5185690
},
{
"timestamp": 1756496776582,
"timestamp": 1756499566862,
"memoryTotal": 25769803776,
"memoryUsed": 25447661568,
"memoryFree": 322142208,
"memoryUsagePercent": 98.74992370605469,
"memoryEfficiency": 1.2500762939453125,
"memoryUsed": 25547767808,
"memoryFree": 222035968,
"memoryUsagePercent": 99.13838704427084,
"memoryEfficiency": 0.8616129557291572,
"cpuCount": 14,
"cpuLoad": 0.1962890625,
"cpuLoad": 0.181396484375,
"platform": "darwin",
"uptime": 5182930
"uptime": 5185720
},
{
"timestamp": 1756496806600,
"timestamp": 1756499596863,
"memoryTotal": 25769803776,
"memoryUsed": 25413042176,
"memoryFree": 356761600,
"memoryUsagePercent": 98.61558278401694,
"memoryEfficiency": 1.3844172159830634,
"memoryUsed": 25573294080,
"memoryFree": 196509696,
"memoryUsagePercent": 99.23744201660156,
"memoryEfficiency": 0.7625579833984375,
"cpuCount": 14,
"cpuLoad": 0.22129603794642858,
"cpuLoad": 0.17428152901785715,
"platform": "darwin",
"uptime": 5182960
"uptime": 5185750
},
{
"timestamp": 1756496836604,
"timestamp": 1756499626864,
"memoryTotal": 25769803776,
"memoryUsed": 25516834816,
"memoryFree": 252968960,
"memoryUsagePercent": 99.01835123697916,
"memoryEfficiency": 0.9816487630208428,
"memoryUsed": 25607421952,
"memoryFree": 162381824,
"memoryUsagePercent": 99.3698755900065,
"memoryEfficiency": 0.6301244099934991,
"cpuCount": 14,
"cpuLoad": 0.21344866071428573,
"cpuLoad": 0.17811802455357142,
"platform": "darwin",
"uptime": 5182990
"uptime": 5185780
},
{
"timestamp": 1756496866605,
"timestamp": 1756499656866,
"memoryTotal": 25769803776,
"memoryUsed": 25414123520,
"memoryFree": 355680256,
"memoryUsagePercent": 98.61977895100912,
"memoryEfficiency": 1.380221048990876,
"memoryUsed": 25676906496,
"memoryFree": 92897280,
"memoryUsagePercent": 99.63951110839844,
"memoryEfficiency": 0.3604888916015625,
"cpuCount": 14,
"cpuLoad": 0.21822684151785715,
"cpuLoad": 0.14320591517857142,
"platform": "darwin",
"uptime": 5183020
"uptime": 5185810
},
{
"timestamp": 1756496896607,
"timestamp": 1756499686866,
"memoryTotal": 25769803776,
"memoryUsed": 25196363776,
"memoryFree": 573440000,
"memoryUsagePercent": 97.77475992838541,
"memoryEfficiency": 2.225240071614593,
"memoryUsed": 25690243072,
"memoryFree": 79560704,
"memoryUsagePercent": 99.69126383463541,
"memoryEfficiency": 0.3087361653645928,
"cpuCount": 14,
"cpuLoad": 0.20950753348214285,
"cpuLoad": 0.12803431919642858,
"platform": "darwin",
"uptime": 5183050
"uptime": 5185840
},
{
"timestamp": 1756496926609,
"timestamp": 1756499716867,
"memoryTotal": 25769803776,
"memoryUsed": 25503711232,
"memoryFree": 266092544,
"memoryUsagePercent": 98.96742502848306,
"memoryEfficiency": 1.0325749715169366,
"memoryUsed": 25551355904,
"memoryFree": 218447872,
"memoryUsagePercent": 99.15231068929037,
"memoryEfficiency": 0.8476893107096259,
"cpuCount": 14,
"cpuLoad": 0.23154994419642858,
"cpuLoad": 0.17728097098214285,
"platform": "darwin",
"uptime": 5183080
"uptime": 5185870
},
{
"timestamp": 1756496956610,
"timestamp": 1756499746868,
"memoryTotal": 25769803776,
"memoryUsed": 25550979072,
"memoryFree": 218824704,
"memoryUsagePercent": 99.15084838867188,
"memoryEfficiency": 0.849151611328125,
"memoryUsed": 25028608000,
"memoryFree": 741195776,
"memoryUsagePercent": 97.1237818400065,
"memoryEfficiency": 2.876218159993499,
"cpuCount": 14,
"cpuLoad": 0.20741489955357142,
"cpuLoad": 0.14596121651785715,
"platform": "darwin",
"uptime": 5183110
"uptime": 5185900
},
{
"timestamp": 1756496986609,
"timestamp": 1756499776869,
"memoryTotal": 25769803776,
"memoryUsed": 25552404480,
"memoryFree": 217399296,
"memoryUsagePercent": 99.15637969970703,
"memoryEfficiency": 0.8436203002929688,
"memoryUsed": 25660850176,
"memoryFree": 108953600,
"memoryUsagePercent": 99.57720438639322,
"memoryEfficiency": 0.4227956136067803,
"cpuCount": 14,
"cpuLoad": 0.22112165178571427,
"cpuLoad": 0.16322544642857142,
"platform": "darwin",
"uptime": 5183140
"uptime": 5185930
},
{
"timestamp": 1756497016611,
"timestamp": 1756499806870,
"memoryTotal": 25769803776,
"memoryUsed": 25680560128,
"memoryFree": 89243648,
"memoryUsagePercent": 99.653689066569,
"memoryEfficiency": 0.34631093343099906,
"memoryUsed": 25489965056,
"memoryFree": 279838720,
"memoryUsagePercent": 98.91408284505209,
"memoryEfficiency": 1.0859171549479072,
"cpuCount": 14,
"cpuLoad": 0.23615373883928573,
"cpuLoad": 0.15792410714285715,
"platform": "darwin",
"uptime": 5183170
},
{
"timestamp": 1756497046610,
"memoryTotal": 25769803776,
"memoryUsed": 25631408128,
"memoryFree": 138395648,
"memoryUsagePercent": 99.46295420328775,
"memoryEfficiency": 0.5370457967122491,
"cpuCount": 14,
"cpuLoad": 0.19859095982142858,
"platform": "darwin",
"uptime": 5183200
},
{
"timestamp": 1756497076611,
"memoryTotal": 25769803776,
"memoryUsed": 25655099392,
"memoryFree": 114704384,
"memoryUsagePercent": 99.55488840738931,
"memoryEfficiency": 0.44511159261068656,
"cpuCount": 14,
"cpuLoad": 0.23831612723214285,
"platform": "darwin",
"uptime": 5183230
},
{
"timestamp": 1756497106613,
"memoryTotal": 25769803776,
"memoryUsed": 25590169600,
"memoryFree": 179634176,
"memoryUsagePercent": 99.30292765299478,
"memoryEfficiency": 0.6970723470052178,
"cpuCount": 14,
"cpuLoad": 0.29031808035714285,
"platform": "darwin",
"uptime": 5183260
},
{
"timestamp": 1756497136613,
"memoryTotal": 25769803776,
"memoryUsed": 25682378752,
"memoryFree": 87425024,
"memoryUsagePercent": 99.66074625651041,
"memoryEfficiency": 0.3392537434895928,
"cpuCount": 14,
"cpuLoad": 0.26834542410714285,
"platform": "darwin",
"uptime": 5183290
},
{
"timestamp": 1756497166614,
"memoryTotal": 25769803776,
"memoryUsed": 25591283712,
"memoryFree": 178520064,
"memoryUsagePercent": 99.3072509765625,
"memoryEfficiency": 0.6927490234375,
"cpuCount": 14,
"cpuLoad": 0.2820521763392857,
"platform": "darwin",
"uptime": 5183320
},
{
"timestamp": 1756497196616,
"memoryTotal": 25769803776,
"memoryUsed": 25577848832,
"memoryFree": 191954944,
"memoryUsagePercent": 99.25511678059897,
"memoryEfficiency": 0.7448832194010322,
"cpuCount": 14,
"cpuLoad": 0.23618861607142858,
"platform": "darwin",
"uptime": 5183350
},
{
"timestamp": 1756497226617,
"memoryTotal": 25769803776,
"memoryUsed": 25343754240,
"memoryFree": 426049536,
"memoryUsagePercent": 98.34671020507812,
"memoryEfficiency": 1.653289794921875,
"cpuCount": 14,
"cpuLoad": 0.23228236607142858,
"platform": "darwin",
"uptime": 5183380
},
{
"timestamp": 1756497256617,
"memoryTotal": 25769803776,
"memoryUsed": 25662668800,
"memoryFree": 107134976,
"memoryUsagePercent": 99.58426157633463,
"memoryEfficiency": 0.41573842366537406,
"cpuCount": 14,
"cpuLoad": 0.19471958705357142,
"platform": "darwin",
"uptime": 5183410
},
{
"timestamp": 1756497286619,
"memoryTotal": 25769803776,
"memoryUsed": 25610125312,
"memoryFree": 159678464,
"memoryUsagePercent": 99.38036600748697,
"memoryEfficiency": 0.6196339925130303,
"cpuCount": 14,
"cpuLoad": 0.19126674107142858,
"platform": "darwin",
"uptime": 5183440
},
{
"timestamp": 1756497316620,
"memoryTotal": 25769803776,
"memoryUsed": 25256427520,
"memoryFree": 513376256,
"memoryUsagePercent": 98.0078379313151,
"memoryEfficiency": 1.9921620686849053,
"cpuCount": 14,
"cpuLoad": 0.15576171875,
"platform": "darwin",
"uptime": 5183470
},
{
"timestamp": 1756497346620,
"memoryTotal": 25769803776,
"memoryUsed": 25464700928,
"memoryFree": 305102848,
"memoryUsagePercent": 98.81604512532553,
"memoryEfficiency": 1.1839548746744697,
"cpuCount": 14,
"cpuLoad": 0.21369280133928573,
"platform": "darwin",
"uptime": 5183500
},
{
"timestamp": 1756497376620,
"memoryTotal": 25769803776,
"memoryUsed": 25632653312,
"memoryFree": 137150464,
"memoryUsagePercent": 99.46778615315756,
"memoryEfficiency": 0.5322138468424384,
"cpuCount": 14,
"cpuLoad": 0.201904296875,
"platform": "darwin",
"uptime": 5183530
},
{
"timestamp": 1756497406621,
"memoryTotal": 25769803776,
"memoryUsed": 25066160128,
"memoryFree": 703643648,
"memoryUsagePercent": 97.26950327555338,
"memoryEfficiency": 2.730496724446624,
"cpuCount": 14,
"cpuLoad": 0.192626953125,
"platform": "darwin",
"uptime": 5183560
},
{
"timestamp": 1756497436623,
"memoryTotal": 25769803776,
"memoryUsed": 25574244352,
"memoryFree": 195559424,
"memoryUsagePercent": 99.24112955729166,
"memoryEfficiency": 0.7588704427083428,
"cpuCount": 14,
"cpuLoad": 0.19761439732142858,
"platform": "darwin",
"uptime": 5183590
},
{
"timestamp": 1756497466624,
"memoryTotal": 25769803776,
"memoryUsed": 25427623936,
"memoryFree": 342179840,
"memoryUsagePercent": 98.67216746012369,
"memoryEfficiency": 1.3278325398763116,
"cpuCount": 14,
"cpuLoad": 0.20005580357142858,
"platform": "darwin",
"uptime": 5183620
},
{
"timestamp": 1756497496626,
"memoryTotal": 25769803776,
"memoryUsed": 25596116992,
"memoryFree": 173686784,
"memoryUsagePercent": 99.32600657145181,
"memoryEfficiency": 0.6739934285481866,
"cpuCount": 14,
"cpuLoad": 0.19367327008928573,
"platform": "darwin",
"uptime": 5183650
},
{
"timestamp": 1756497526626,
"memoryTotal": 25769803776,
"memoryUsed": 25207111680,
"memoryFree": 562692096,
"memoryUsagePercent": 97.81646728515625,
"memoryEfficiency": 2.18353271484375,
"cpuCount": 14,
"cpuLoad": 0.15276227678571427,
"platform": "darwin",
"uptime": 5183680
},
{
"timestamp": 1756497556628,
"memoryTotal": 25769803776,
"memoryUsed": 25510182912,
"memoryFree": 259620864,
"memoryUsagePercent": 98.99253845214844,
"memoryEfficiency": 1.0074615478515625,
"cpuCount": 14,
"cpuLoad": 0.13654436383928573,
"platform": "darwin",
"uptime": 5183710
},
{
"timestamp": 1756497586629,
"memoryTotal": 25769803776,
"memoryUsed": 25638223872,
"memoryFree": 131579904,
"memoryUsagePercent": 99.4894027709961,
"memoryEfficiency": 0.5105972290039062,
"cpuCount": 14,
"cpuLoad": 0.13361467633928573,
"platform": "darwin",
"uptime": 5183740
},
{
"timestamp": 1756497616629,
"memoryTotal": 25769803776,
"memoryUsed": 25115246592,
"memoryFree": 654557184,
"memoryUsagePercent": 97.4599838256836,
"memoryEfficiency": 2.5400161743164062,
"cpuCount": 14,
"cpuLoad": 0.12283761160714286,
"platform": "darwin",
"uptime": 5183770
},
{
"timestamp": 1756497646631,
"memoryTotal": 25769803776,
"memoryUsed": 25625640960,
"memoryFree": 144162816,
"memoryUsagePercent": 99.4405746459961,
"memoryEfficiency": 0.5594253540039062,
"cpuCount": 14,
"cpuLoad": 0.11844308035714286,
"platform": "darwin",
"uptime": 5183800
},
{
"timestamp": 1756497676631,
"memoryTotal": 25769803776,
"memoryUsed": 25629868032,
"memoryFree": 139935744,
"memoryUsagePercent": 99.45697784423828,
"memoryEfficiency": 0.5430221557617188,
"cpuCount": 14,
"cpuLoad": 0.10808454241071429,
"platform": "darwin",
"uptime": 5183830
},
{
"timestamp": 1756497706632,
"memoryTotal": 25769803776,
"memoryUsed": 25579716608,
"memoryFree": 190087168,
"memoryUsagePercent": 99.26236470540366,
"memoryEfficiency": 0.7376352945963447,
"cpuCount": 14,
"cpuLoad": 0.11753627232142858,
"platform": "darwin",
"uptime": 5183860
},
{
"timestamp": 1756497736633,
"memoryTotal": 25769803776,
"memoryUsed": 25617006592,
"memoryFree": 152797184,
"memoryUsagePercent": 99.40706888834634,
"memoryEfficiency": 0.5929311116536553,
"cpuCount": 14,
"cpuLoad": 0.10857282366071429,
"platform": "darwin",
"uptime": 5183890
},
{
"timestamp": 1756497766634,
"memoryTotal": 25769803776,
"memoryUsed": 25662226432,
"memoryFree": 107577344,
"memoryUsagePercent": 99.5825449625651,
"memoryEfficiency": 0.4174550374349053,
"cpuCount": 14,
"cpuLoad": 0.108642578125,
"platform": "darwin",
"uptime": 5183920
},
{
"timestamp": 1756497796634,
"memoryTotal": 25769803776,
"memoryUsed": 25651675136,
"memoryFree": 118128640,
"memoryUsagePercent": 99.5416005452474,
"memoryEfficiency": 0.4583994547525947,
"cpuCount": 14,
"cpuLoad": 0.15876116071428573,
"platform": "darwin",
"uptime": 5183950
},
{
"timestamp": 1756497826636,
"memoryTotal": 25769803776,
"memoryUsed": 25676709888,
"memoryFree": 93093888,
"memoryUsagePercent": 99.63874816894531,
"memoryEfficiency": 0.3612518310546875,
"cpuCount": 14,
"cpuLoad": 0.16842215401785715,
"platform": "darwin",
"uptime": 5183980
},
{
"timestamp": 1756497856636,
"memoryTotal": 25769803776,
"memoryUsed": 25665978368,
"memoryFree": 103825408,
"memoryUsagePercent": 99.59710439046225,
"memoryEfficiency": 0.40289560953775094,
"cpuCount": 14,
"cpuLoad": 0.19695172991071427,
"platform": "darwin",
"uptime": 5184010
},
{
"timestamp": 1756497886638,
"memoryTotal": 25769803776,
"memoryUsed": 25674203136,
"memoryFree": 95600640,
"memoryUsagePercent": 99.62902069091797,
"memoryEfficiency": 0.37097930908203125,
"cpuCount": 14,
"cpuLoad": 0.21759905133928573,
"platform": "darwin",
"uptime": 5184040
},
{
"timestamp": 1756497916639,
"memoryTotal": 25769803776,
"memoryUsed": 25173065728,
"memoryFree": 596738048,
"memoryUsagePercent": 97.6843516031901,
"memoryEfficiency": 2.3156483968099053,
"cpuCount": 14,
"cpuLoad": 0.20626395089285715,
"platform": "darwin",
"uptime": 5184070
},
{
"timestamp": 1756497946640,
"memoryTotal": 25769803776,
"memoryUsed": 25338855424,
"memoryFree": 430948352,
"memoryUsagePercent": 98.32770029703775,
"memoryEfficiency": 1.672299702962249,
"cpuCount": 14,
"cpuLoad": 0.24553571428571427,
"platform": "darwin",
"uptime": 5184100
},
{
"timestamp": 1756497976641,
"memoryTotal": 25769803776,
"memoryUsed": 25611534336,
"memoryFree": 158269440,
"memoryUsagePercent": 99.38583374023438,
"memoryEfficiency": 0.614166259765625,
"cpuCount": 14,
"cpuLoad": 0.241455078125,
"platform": "darwin",
"uptime": 5184130
},
{
"timestamp": 1756498006642,
"memoryTotal": 25769803776,
"memoryUsed": 25213157376,
"memoryFree": 556646400,
"memoryUsagePercent": 97.83992767333984,
"memoryEfficiency": 2.1600723266601562,
"cpuCount": 14,
"cpuLoad": 0.19206891741071427,
"platform": "darwin",
"uptime": 5184160
},
{
"timestamp": 1756498036643,
"memoryTotal": 25769803776,
"memoryUsed": 25601622016,
"memoryFree": 168181760,
"memoryUsagePercent": 99.34736887613931,
"memoryEfficiency": 0.6526311238606866,
"cpuCount": 14,
"cpuLoad": 0.166015625,
"platform": "darwin",
"uptime": 5184190
},
{
"timestamp": 1756498066644,
"memoryTotal": 25769803776,
"memoryUsed": 25598246912,
"memoryFree": 171556864,
"memoryUsagePercent": 99.33427174886069,
"memoryEfficiency": 0.6657282511393134,
"cpuCount": 14,
"cpuLoad": 0.18861607142857142,
"platform": "darwin",
"uptime": 5184220
},
{
"timestamp": 1756498096644,
"memoryTotal": 25769803776,
"memoryUsed": 25673252864,
"memoryFree": 96550912,
"memoryUsagePercent": 99.62533315022787,
"memoryEfficiency": 0.37466684977212594,
"cpuCount": 14,
"cpuLoad": 0.15809849330357142,
"platform": "darwin",
"uptime": 5184250
},
{
"timestamp": 1756498126645,
"memoryTotal": 25769803776,
"memoryUsed": 25604145152,
"memoryFree": 165658624,
"memoryUsagePercent": 99.35715993245444,
"memoryEfficiency": 0.6428400675455634,
"cpuCount": 14,
"cpuLoad": 0.1923828125,
"platform": "darwin",
"uptime": 5184280
},
{
"timestamp": 1756498156646,
"memoryTotal": 25769803776,
"memoryUsed": 25472827392,
"memoryFree": 296976384,
"memoryUsagePercent": 98.84757995605469,
"memoryEfficiency": 1.1524200439453125,
"cpuCount": 14,
"cpuLoad": 0.17082868303571427,
"platform": "darwin",
"uptime": 5184310
},
{
"timestamp": 1756498186647,
"memoryTotal": 25769803776,
"memoryUsed": 25680084992,
"memoryFree": 89718784,
"memoryUsagePercent": 99.65184529622397,
"memoryEfficiency": 0.3481547037760322,
"cpuCount": 14,
"cpuLoad": 0.15248325892857142,
"platform": "darwin",
"uptime": 5184340
},
{
"timestamp": 1756498216648,
"memoryTotal": 25769803776,
"memoryUsed": 25150324736,
"memoryFree": 619479040,
"memoryUsagePercent": 97.59610493977866,
"memoryEfficiency": 2.4038950602213447,
"cpuCount": 14,
"cpuLoad": 0.12126813616071429,
"platform": "darwin",
"uptime": 5184370
},
{
"timestamp": 1756498246649,
"memoryTotal": 25769803776,
"memoryUsed": 25432735744,
"memoryFree": 337068032,
"memoryUsagePercent": 98.69200388590494,
"memoryEfficiency": 1.3079961140950616,
"cpuCount": 14,
"cpuLoad": 0.1064453125,
"platform": "darwin",
"uptime": 5184400
},
{
"timestamp": 1756498276651,
"memoryTotal": 25769803776,
"memoryUsed": 25311526912,
"memoryFree": 458276864,
"memoryUsagePercent": 98.22165171305338,
"memoryEfficiency": 1.778348286946624,
"cpuCount": 14,
"cpuLoad": 0.10954938616071429,
"platform": "darwin",
"uptime": 5184430
},
{
"timestamp": 1756498306652,
"memoryTotal": 25769803776,
"memoryUsed": 25348833280,
"memoryFree": 420970496,
"memoryUsagePercent": 98.36641947428384,
"memoryEfficiency": 1.6335805257161553,
"cpuCount": 14,
"cpuLoad": 0.16367885044642858,
"platform": "darwin",
"uptime": 5184460
},
{
"timestamp": 1756498336651,
"memoryTotal": 25769803776,
"memoryUsed": 25375817728,
"memoryFree": 393986048,
"memoryUsagePercent": 98.47113291422525,
"memoryEfficiency": 1.528867085774749,
"cpuCount": 14,
"cpuLoad": 0.17787388392857142,
"platform": "darwin",
"uptime": 5184490
},
{
"timestamp": 1756498366652,
"memoryTotal": 25769803776,
"memoryUsed": 25577963520,
"memoryFree": 191840256,
"memoryUsagePercent": 99.25556182861328,
"memoryEfficiency": 0.7444381713867188,
"cpuCount": 14,
"cpuLoad": 0.17145647321428573,
"platform": "darwin",
"uptime": 5184520
},
{
"timestamp": 1756498396654,
"memoryTotal": 25769803776,
"memoryUsed": 25448529920,
"memoryFree": 321273856,
"memoryUsagePercent": 98.753293355306,
"memoryEfficiency": 1.246706644694001,
"cpuCount": 14,
"cpuLoad": 0.16629464285714285,
"platform": "darwin",
"uptime": 5184550
},
{
"timestamp": 1756498426655,
"memoryTotal": 25769803776,
"memoryUsed": 25515425792,
"memoryFree": 254377984,
"memoryUsagePercent": 99.01288350423178,
"memoryEfficiency": 0.9871164957682197,
"cpuCount": 14,
"cpuLoad": 0.17731584821428573,
"platform": "darwin",
"uptime": 5184580
},
{
"timestamp": 1756498456656,
"memoryTotal": 25769803776,
"memoryUsed": 25497681920,
"memoryFree": 272121856,
"memoryUsagePercent": 98.94402821858725,
"memoryEfficiency": 1.055971781412751,
"cpuCount": 14,
"cpuLoad": 0.20476422991071427,
"platform": "darwin",
"uptime": 5184610
},
{
"timestamp": 1756498486656,
"memoryTotal": 25769803776,
"memoryUsed": 25623166976,
"memoryFree": 146636800,
"memoryUsagePercent": 99.43097432454428,
"memoryEfficiency": 0.5690256754557197,
"cpuCount": 14,
"cpuLoad": 0.17780412946428573,
"platform": "darwin",
"uptime": 5184640
},
{
"timestamp": 1756498516658,
"memoryTotal": 25769803776,
"memoryUsed": 25169461248,
"memoryFree": 600342528,
"memoryUsagePercent": 97.67036437988281,
"memoryEfficiency": 2.3296356201171875,
"cpuCount": 14,
"cpuLoad": 0.15691266741071427,
"platform": "darwin",
"uptime": 5184670
},
{
"timestamp": 1756498546659,
"memoryTotal": 25769803776,
"memoryUsed": 25206210560,
"memoryFree": 563593216,
"memoryUsagePercent": 97.81297047932944,
"memoryEfficiency": 2.1870295206705634,
"cpuCount": 14,
"cpuLoad": 0.11258370535714286,
"platform": "darwin",
"uptime": 5184700
},
{
"timestamp": 1756498576659,
"memoryTotal": 25769803776,
"memoryUsed": 25285951488,
"memoryFree": 483852288,
"memoryUsagePercent": 98.12240600585938,
"memoryEfficiency": 1.877593994140625,
"cpuCount": 14,
"cpuLoad": 0.10041155133928571,
"platform": "darwin",
"uptime": 5184730
},
{
"timestamp": 1756498606659,
"memoryTotal": 25769803776,
"memoryUsed": 25606160384,
"memoryFree": 163643392,
"memoryUsagePercent": 99.36498006184897,
"memoryEfficiency": 0.6350199381510322,
"cpuCount": 14,
"cpuLoad": 0.112548828125,
"platform": "darwin",
"uptime": 5184760
},
{
"timestamp": 1756498636661,
"memoryTotal": 25769803776,
"memoryUsed": 25347489792,
"memoryFree": 422313984,
"memoryUsagePercent": 98.3612060546875,
"memoryEfficiency": 1.6387939453125,
"cpuCount": 14,
"cpuLoad": 0.10770089285714286,
"platform": "darwin",
"uptime": 5184790
},
{
"timestamp": 1756498666662,
"memoryTotal": 25769803776,
"memoryUsed": 25341689856,
"memoryFree": 428113920,
"memoryUsagePercent": 98.33869934082031,
"memoryEfficiency": 1.6613006591796875,
"cpuCount": 14,
"cpuLoad": 0.10438755580357142,
"platform": "darwin",
"uptime": 5184820
},
{
"timestamp": 1756498696663,
"memoryTotal": 25769803776,
"memoryUsed": 25422659584,
"memoryFree": 347144192,
"memoryUsagePercent": 98.65290323893228,
"memoryEfficiency": 1.3470967610677178,
"cpuCount": 14,
"cpuLoad": 0.13065011160714285,
"platform": "darwin",
"uptime": 5184850
},
{
"timestamp": 1756498726664,
"memoryTotal": 25769803776,
"memoryUsed": 25604161536,
"memoryFree": 165642240,
"memoryUsagePercent": 99.35722351074219,
"memoryEfficiency": 0.6427764892578125,
"cpuCount": 14,
"cpuLoad": 0.1640625,
"platform": "darwin",
"uptime": 5184880
},
{
"timestamp": 1756498756665,
"memoryTotal": 25769803776,
"memoryUsed": 25435848704,
"memoryFree": 333955072,
"memoryUsagePercent": 98.70408376057944,
"memoryEfficiency": 1.2959162394205634,
"cpuCount": 14,
"cpuLoad": 0.14121791294642858,
"platform": "darwin",
"uptime": 5184910
},
{
"timestamp": 1756498786666,
"memoryTotal": 25769803776,
"memoryUsed": 25589825536,
"memoryFree": 179978240,
"memoryUsagePercent": 99.30159250895181,
"memoryEfficiency": 0.6984074910481866,
"cpuCount": 14,
"cpuLoad": 0.13194056919642858,
"platform": "darwin",
"uptime": 5184940
},
{
"timestamp": 1756498816668,
"memoryTotal": 25769803776,
"memoryUsed": 25063342080,
"memoryFree": 706461696,
"memoryUsagePercent": 97.2585678100586,
"memoryEfficiency": 2.7414321899414062,
"cpuCount": 14,
"cpuLoad": 0.126708984375,
"platform": "darwin",
"uptime": 5184970
},
{
"timestamp": 1756498846669,
"memoryTotal": 25769803776,
"memoryUsed": 25080020992,
"memoryFree": 689782784,
"memoryUsagePercent": 97.32329050699869,
"memoryEfficiency": 2.6767094930013116,
"cpuCount": 14,
"cpuLoad": 0.14226422991071427,
"platform": "darwin",
"uptime": 5185000
},
{
"timestamp": 1756498876670,
"memoryTotal": 25769803776,
"memoryUsed": 25174196224,
"memoryFree": 595607552,
"memoryUsagePercent": 97.68873850504556,
"memoryEfficiency": 2.3112614949544366,
"cpuCount": 14,
"cpuLoad": 0.15816824776785715,
"platform": "darwin",
"uptime": 5185030
},
{
"timestamp": 1756498906670,
"memoryTotal": 25769803776,
"memoryUsed": 25345097728,
"memoryFree": 424706048,
"memoryUsagePercent": 98.35192362467447,
"memoryEfficiency": 1.6480763753255303,
"cpuCount": 14,
"cpuLoad": 0.16050502232142858,
"platform": "darwin",
"uptime": 5185060
},
{
"timestamp": 1756498936671,
"memoryTotal": 25769803776,
"memoryUsed": 25402982400,
"memoryFree": 366821376,
"memoryUsagePercent": 98.57654571533203,
"memoryEfficiency": 1.4234542846679688,
"cpuCount": 14,
"cpuLoad": 0.12852260044642858,
"platform": "darwin",
"uptime": 5185090
"uptime": 5185960
}
]
+1 -1
View File
@@ -33,7 +33,7 @@ jobs:
# Remove sensitive files/directories if they exist
echo "Removing sensitive files..."
rm -rf .gitea/ || true
rm -rf scripts/ || true
rm -rf scripts/install-gitea-runner.sh || true
rm -rf .drone* || true
rm -rf photo-sharing-prd.md || true
rm -rf CLAUDE.md || true
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "picpeak-backend",
"version": "1.0.105",
"version": "1.0.106",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "picpeak-backend",
"version": "1.0.105",
"version": "1.0.106",
"dependencies": {
"@aws-sdk/client-s3": "^3.850.0",
"@aws-sdk/lib-storage": "^3.850.0",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "picpeak-backend",
"version": "1.0.105",
"version": "1.0.106",
"description": "Backend for PicPeak event photo sharing platform",
"main": "server.js",
"scripts": {
+4 -4
View File
@@ -60,8 +60,8 @@ router.put('/events/:eventId/feedback-settings',
settings: updatedSettings
}, eventId, {
type: 'admin',
id: req.user.id,
name: req.user.username
id: req.admin.id,
name: req.admin.username
});
res.json(updatedSettings);
@@ -167,7 +167,7 @@ router.put('/feedback/:feedbackId/:action',
return res.status(400).json({ error: 'Invalid action' });
}
await feedbackService.moderateFeedback(feedbackId, action, req.user.id);
await feedbackService.moderateFeedback(feedbackId, action, req.admin.id);
res.json({ success: true });
} catch (error) {
@@ -184,7 +184,7 @@ router.delete('/feedback/:feedbackId',
try {
const { feedbackId } = req.params;
await feedbackService.deleteFeedback(feedbackId, req.user.id);
await feedbackService.deleteFeedback(feedbackId, req.admin.id);
res.json({ success: true });
} catch (error) {
+8
View File
@@ -4,6 +4,10 @@ server {
root /usr/share/nginx/html;
index index.html;
# Allow larger file uploads (up to 100MB)
client_max_body_size 100M;
client_body_timeout 300s;
# Gzip compression
gzip on;
gzip_vary on;
@@ -49,6 +53,10 @@ server {
proxy_set_header X-Forwarded-Proto $scheme;
proxy_cache_bypass $http_upgrade;
proxy_read_timeout 86400;
# Allow larger uploads for API endpoints
client_max_body_size 100M;
client_body_timeout 300s;
}
# Photo serving proxy
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "picpeak-frontend",
"version": "1.0.105",
"version": "1.0.106",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "picpeak-frontend",
"version": "1.0.105",
"version": "1.0.106",
"dependencies": {
"@tanstack/react-query": "^5.0.0",
"@tiptap/extension-character-count": "^2.26.1",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "picpeak-frontend",
"private": true,
"version": "1.0.105",
"version": "1.0.106",
"type": "module",
"scripts": {
"dev": "vite",
@@ -118,7 +118,12 @@ export const FeedbackModerationPanel: React.FC<FeedbackModerationPanelProps> = (
</span>
<span className="text-neutral-500"></span>
<span className="text-neutral-500">
{format(parseISO(item.created_at), 'MMM d, h:mm a')}
{format(
typeof item.created_at === 'string'
? parseISO(item.created_at)
: new Date(item.created_at),
'MMM d, h:mm a'
)}
</span>
</div>
<p className="mt-1 text-sm text-neutral-700">{item.comment}</p>
+18 -3
View File
@@ -48,10 +48,25 @@ api.interceptors.request.use(
const galleryMatch = config.url?.match(/gallery\/([^\/]+)/);
if (galleryMatch && galleryMatch[1]) {
const gallerySlug = galleryMatch[1];
const galleryIdOrSlug = galleryMatch[1];
// Remove any query parameters from the slug
const cleanSlug = gallerySlug.split('?')[0];
const token = localStorage.getItem(`gallery_token_${cleanSlug}`);
const cleanIdOrSlug = galleryIdOrSlug.split('?')[0];
// Check if it's a numeric ID (for upload endpoints)
let token = null;
if (/^\d+$/.test(cleanIdOrSlug)) {
// It's an event ID - try to find the token from current page slug
const pathParts = window.location.pathname.split('/');
if (pathParts[1] === 'gallery' && pathParts[2]) {
const gallerySlug = pathParts[2];
const cleanSlug = gallerySlug.split('?')[0];
token = localStorage.getItem(`gallery_token_${cleanSlug}`);
}
} else {
// It's a slug - use it directly
token = localStorage.getItem(`gallery_token_${cleanIdOrSlug}`);
}
if (token) {
if (!config.headers) {
config.headers = {};
-1
View File
@@ -134,7 +134,6 @@
"sortByName": "Nach Name sortieren",
"sortBySize": "Nach Größe sortieren",
"allPhotos": "Alle Fotos",
"downloadSelected": "Ausgewählte herunterladen",
"shareGallery": "Galerie teilen",
"needHelp": "Hilfe benötigt? Kontaktieren Sie uns unter",
"noPhotosFound": "Keine Fotos gefunden",
+28 -2
View File
@@ -279,12 +279,38 @@ export const EventDetailsPage: React.FC = () => {
const handleCopyLink = async () => {
try {
await navigator.clipboard.writeText(event.share_link);
// Check if share_link exists
if (!event.share_link) {
toast.error(t('errors.noShareLink', 'No share link available'));
return;
}
// Try modern clipboard API first
if (navigator.clipboard && window.isSecureContext) {
await navigator.clipboard.writeText(event.share_link);
} else {
// Fallback for non-HTTPS contexts or older browsers
const textArea = document.createElement('textarea');
textArea.value = event.share_link;
textArea.style.position = 'fixed';
textArea.style.left = '-999999px';
textArea.style.top = '-999999px';
document.body.appendChild(textArea);
textArea.focus();
textArea.select();
const successful = document.execCommand('copy');
document.body.removeChild(textArea);
if (!successful) {
throw new Error('Copy failed');
}
}
setCopiedLink(true);
setTimeout(() => setCopiedLink(false), 2000);
toast.success(t('toast.linkCopied'));
} catch (err) {
toast.error(t('errors.somethingWentWrong'));
console.error('Copy failed:', err);
toast.error(t('errors.copyFailed', 'Failed to copy link. Please copy manually.'));
}
};