{"version":3,"file":"improve_area_selection.js","mappings":"AAAAA,EAAE,sBAAsBC,GAAG,SAAS,WAChC,IAAIC,EAAiBF,EAAEG,MAEnBC,EAAeJ,EAAE,kBAAkBK,OACnCC,EAAgBN,EAAE,kBAElBO,EAAYP,EAAE,qBAAqBK,OACnCG,EAAwBR,EAAE,2TAC1BS,EAAwBT,EAAE,2SAE9BM,EAAcD,KAAKE,GACnBL,EAAeQ,OACf,EAAwBC,YAAYL,GACpC,EAAwBK,YAAYL,GAGpCN,EAAE,mBAAmBC,GAAG,UAAU,WAChC,IAAIW,EAAYZ,EAAEG,MAAMU,MACpBC,EAAUd,EAAE,2BAA2Be,QAAU,UAEnC,MAAdH,GACFZ,EAAEgB,KAAK,CACLC,IAAK,qBAAqBL,IAC1BM,SAAU,OACVC,QAAS,SAASC,GAChB,IAAIC,EAAcrB,EAAE,iBACpBqB,EAAYC,QACZF,EAAKG,SAAQ,SAASC,GACpBH,EAAYI,OAAO,kBAAkBD,EAAKE,OAAOF,EAAKG,gBACxD,IAGeN,EAAYO,KAAK,UACvBC,MAAK,WACZ,GAAI7B,EAAEG,MAAMY,SAAWD,EAErB,OADAd,EAAEG,MAAM2B,KAAK,YAAY,IAClB,CAEX,GACF,GAGN,IAGArB,EAAsBR,GAAG,SAAS,WAChCK,EAAcD,KAAKD,GACnBI,EAAsBuB,SACtBtB,EAAsBsB,SACtB7B,EAAe8B,MACjB,IAGAxB,EAAsBP,GAAG,SAAS,WAChC,IAAIgC,EAASjC,EAAE,kBAAkBoB,KAAK,MAClCA,EAAO,CACTc,OAAQlC,EAAE,mBAAmBa,MAC7BW,KAAMxB,EAAE,iBAAiBa,MACzBsB,MAAOnC,EAAE,kBAAkBa,MAC3BuB,QAASH,EACTI,kBAAmB,sBAGrBrC,EAAEgB,KAAK,CACLC,IAAK,gBACLC,SAAU,OACVE,KAAM,CAAEkB,KAAMlB,GACdD,QAAS,SAASoB,GAChB,GAAKA,EAkBE,CAEL,IAAIC,EAA+B,UAArBD,EAASC,QACrB,oHACA,0FAEF/B,EAAsBgC,QAAQ,SAC9BvC,EAAewC,YAAY,6DAA6DF,UAC1F,MAxBElC,EAAcD,KAAK,6LAGmDe,EAAKc,WAAWlC,EAAE,mCAAmCe,kOAItDK,EAAKI,SAASxB,EAAE,iCAAiCe,6NAIjDK,EAAKe,UAAUnC,EAAE,kCAAkCe,0DAGxHP,EAAsBuB,SACtBtB,EAAsBiC,YAAY,0IAUtC,GAEJ,IAEA1C,EAAE,mBAAmByC,QAAQ,SAC/B","sources":["webpack://trace_taiwan/./app/javascript/packs/improve_area_selection.js"],"sourcesContent":["$('.improve-selection').on('click', function() {\n let $improveButton = $(this);\n // Store the complete HTML structure\n let originalHTML = $('#dropdown-info').html();\n let $dropdownArea = $('#dropdown-info');\n\n let $dropDown = $('#hidden-dropdowns').html();\n let $submitDropdownButton = $('');\n let $cancelDropdownButton = $('');\n\n $dropdownArea.html($dropDown);\n $improveButton.hide();\n ($cancelDropdownButton).insertAfter($dropdownArea);\n ($submitDropdownButton).insertAfter($dropdownArea);\n\n // Handle region change and city updates\n $('#post_region_id').on('change', function() {\n let region_id = $(this).val();\n let city_id = $('#post_city_id :selected').text() || 'Unknown'\n\n if (region_id !== '1') {\n $.ajax({\n url: `/get_cities_by_id/${region_id}`,\n dataType: 'json',\n success: function(data) {\n let $citySelect = $('#post_city_id');\n $citySelect.empty();\n data.forEach(function(city) {\n $citySelect.append(``);\n });\n \n // Restore original city selection if possible\n let $options = $citySelect.find('option');\n $options.each(function() {\n if ($(this).text() === city_id) {\n $(this).prop('selected', true);\n return false;\n }\n });\n }\n });\n }\n });\n\n // Cancel button handler\n $cancelDropdownButton.on('click', function() {\n $dropdownArea.html(originalHTML); // Restore the exact original HTML\n $submitDropdownButton.remove();\n $cancelDropdownButton.remove();\n $improveButton.show();\n });\n\n // Submit button handler\n $submitDropdownButton.on('click', function() {\n let postId = $('#trace-details').data('id');\n let data = {\n region: $('#post_region_id').val(),\n city: $('#post_city_id').val(),\n river: $('#post_river_id').val(),\n post_id: postId,\n attribute_updated: 'location-dropdowns'\n };\n\n $.ajax({\n url: '/edits/create',\n dataType: 'json',\n data: { edit: data },\n success: function(response) {\n if (!response) {\n // Show success message and update display\n $dropdownArea.html(`\n
\n

Region

\n

${$('#post_region_id option:selected').text()}

\n
\n
\n

Area

\n

${$('#post_city_id option:selected').text()}

\n
\n
\n

River

\n

${$('#post_river_id option:selected').text()}

\n
\n `);\n $submitDropdownButton.remove();\n $cancelDropdownButton.replaceWith('
Thank you for your contribution. Your update is being reviewed.
');\n } else {\n // Handle error cases\n let message = response.message === 'login' ? \n 'Only logged in users can edit information. Click to Login/Sign Up' : \n 'You have already submitted an improvement for this information. Please wait for review.';\n \n $cancelDropdownButton.trigger('click');\n $improveButton.replaceWith(`
${message}
`);\n }\n }\n });\n });\n\n $('#post_region_id').trigger('change');\n });"],"names":["$","on","$improveButton","this","originalHTML","html","$dropdownArea","$dropDown","$submitDropdownButton","$cancelDropdownButton","hide","insertAfter","region_id","val","city_id","text","ajax","url","dataType","success","data","$citySelect","empty","forEach","city","append","id","name","find","each","prop","remove","show","postId","region","river","post_id","attribute_updated","edit","response","message","trigger","replaceWith"],"sourceRoot":""}