<h4>Weather Widget — OpenWeatherMap API 401 Fix</h4><ul><li><strong>Fixed:</strong> Unhandled 401 error on GET to <code>api.openweathermap.org/data/2.5/onecall</code> — the <code>onecall</code> endpoint requires a paid OpenWeatherMap subscription (One Call API 3.0). The current API key only has free-tier access. The AJAX call had no <code>error</code> handler, so the 401 response threw an uncaught error to the browser console on every page load. Added graceful error handlers to all 3 files that use this endpoint: services dashboard, member dashboard, and WeatherManager module. The error handler hides the loading spinner and logs a descriptive message instead of throwing.</li></ul><p><strong>Note:</strong> To fully restore weather functionality, either upgrade the OpenWeatherMap plan to include the One Call API, or switch the endpoint to the free <code>/data/2.5/forecast</code> API (requires rewriting the response handler).</p><p><strong>Files:</strong> platform/services/dashboard/dashboard.php, platform/dashboard/dashboard.php, platform/module/WeatherManager/js/custom_js.php</p>