var map = L.map('map', {
    center: [38.857138, 139.959705],
    zoom: 15,
});

L.tileLayer('https://cyberjapandata.gsi.go.jp/xyz/std/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors',
}).addTo(map);

var csvFilePath = 'tanakai-map.csv'; // CSVファイルのパス

fetch(csvFilePath)
    .then(response => {
        if (!response.ok) {
            throw new Error('CSVファイルの取得に失敗しました');
        }
        return response.text();
    })
    .then(csvText => {
        var rows = csvText.trim().split('\n'); // 行ごとに分割
        var headers = rows[0].split(','); // ヘッダー取得

        var nameIndex = headers.indexOf('場所名');
        var latIndex = headers.indexOf('緯度');
        var lngIndex = headers.indexOf('経度');
        var imgIndex = headers.indexOf('画像');
        var addrIndex = headers.indexOf('住所');
        var descIndex = headers.indexOf('説明');
        var bunkenIndex = headers.indexOf('参考文献');

        if (nameIndex === -1 || latIndex === -1 || lngIndex === -1 ||
            imgIndex === -1 || addrIndex === -1 || descIndex === -1 || bunkenIndex === -1) {
            throw new Error('CSVファイルのフォーマットが正しくありません');
        }

        rows.slice(1).forEach(row => {
            var columns = row.split(',');
            var name = columns[nameIndex];
            var lat = parseFloat(columns[latIndex]);
            var lng = parseFloat(columns[lngIndex]);
            var img = columns[imgIndex];
            var addr = columns[addrIndex];
            var desc = columns[descIndex];
            var bunken = columns[bunkenIndex];

            if (!isNaN(lat) && !isNaN(lng)) {
                var marker = L.marker([lat, lng]).addTo(map);

                marker.on('click', function (e) {
                    var choice = confirm(`${name} をクリックしました。\n\n距離を測りますか？\n「キャンセル」を押すとポップアップを表示します。`);

                    if (choice) {
                        measurePath(e, true); // 既存ピンを使って距離測定
                    } else {
                        marker.bindPopup(`
                            <div class="popup">
                                <h2>${name}</h2>
                                <div>
                                    <p class="address">${addr}</p>
                                    <p>${desc}</p>
                                    <a href="${bunken}" target="_blank">参考文献</a>
                                    <img src="images/${img}" alt="${name}" />
                                </div>
                            </div>
                        `).openPopup();
                    }
                });
            }
        });
    })
    .catch(error => {
        console.error('エラーが発生しました:', error);
    });
