Created At: 2026-06-14T16:19:44Z
Completed At: 2026-06-14T16:19:44Z
File Path: `file:///c:/Users/HP/Downloads/climate-system/climate-system/index.php`
Total Lines: 4013
Total Bytes: 169761
Showing lines 3960 to 4013
The following code has been modified to include a line number before every line, in the format: <line_number>: <original_line>. Please note that any changes targeting the original code should remove the line number, colon, and leading space.
3960:       const csvData = document.getElementById('futureSetCsvData')?.value.trim();
3961: 
3962:       const customParams = {
3963:         graphBaseValue: baseVal !== '' ? parseFloat(baseVal) : null,
3964:         graphUncertainty: uncertainty !== '' ? parseFloat(uncertainty) : null,
3965:         graphSSP1Slope: ssp1 !== '' ? parseFloat(ssp1) : null,
3966:         graphSSP2Slope: ssp2 !== '' ? parseFloat(ssp2) : null,
3967:         graphSSP3Slope: ssp3 !== '' ? parseFloat(ssp3) : null,
3968:         graphSSP5Slope: ssp5 !== '' ? parseFloat(ssp5) : null,
3969:         csvData: csvData || null
3970:       };
3971: 
3972:       renderFutureClimateChart(variable, customParams, period, 'settingsFutureChartCanvas');
3973:     }
3974: 
3975:     // Listen for form changes to update settings chart preview in real-time
3976:     document.addEventListener('input', function(e) {
3977:       const settingsInputs = [
3978:         'futureSetVariable',
3979:         'futureSetPeriod',
3980:         'futureSetGraphBaseValue',
3981:         'futureSetGraphUncertainty',
3982:         'futureSetGraphSSP1Slope',
3983:         'futureSetGraphSSP2Slope',
3984:         'futureSetGraphSSP3Slope',
3985:         'futureSetGraphSSP5Slope'
3986:       ];
3987:       if (e.target && settingsInputs.includes(e.target.id)) {
3988:         updateSettingsChartPreview();
3989:       }
3990:     });
3991: 
3992:     // Jalankan pemuatan filter dan sinkronisasi auth saat halaman siap
3993:     window.addEventListener('DOMContentLoaded', async () => {
3994:       await loadFilters();
3995:       // Render initial default settings chart preview
3996:       updateSettingsChartPreview();
3997:       // Render initial default main chart from filters
3998:       applyFutureFilter();
3999:       try {
4000:         const res = await fetch('?action=check_auth');
4001:         const authData = await res.json();
4002:         if (authData.authenticated) {
4003:           isAdminLoggedIn = true;
4004:         }
4005:       } catch (err) {
4006:         console.error('Gagal memverifikasi status otentikasi awal:', err);
4007:       }
4008:     });
4009:   </script>
4010: </body>
4011: 
4012: </html>
4013: 
The above content does NOT show the entire file contents. If you need to view any lines of the file which were not shown to complete your task, call this tool again to view those lines.
