jQuery(document).ready(function($){
$('#fetchCommentButton').on('click', function(){
var query=$(this).attr('data-query');
console.log('Query:', query);
$('#fetchCommentButton').hide();
$('#loadingButton').show().prop('disabled', true);
$('#loadingText').text('20 %');
function startDots(){
$('#dots').html('<span>.</span><span>.</span><span>.</span>');
}
startDots();
setTimeout(function(){
$('#loadingText').text('50 %');
startDots();
}, 10000);
setTimeout(function(){
$('#loadingText').text('90 %');
startDots();
}, 20000);
setTimeout(function(){
$('#loadingText').text('100 %');
startDots();
$.ajax({
url: fetchComment.ajax_url,
method: 'POST',
data: {
action: 'fetch_dream_interpretation',
query: query
},
success: function(response){
response=JSON.parse(response);
console.log('Response:', response);
$('#loadingButton').hide();
if(response.error){
$('#dreamCommentContainer').html('Error: ' + response.error);
return;
}
let i=0;
function typeWriter(){
if(i < response.interpretation.length){
$('#dreamCommentContainer').append(response.interpretation.charAt(i));
i++;
setTimeout(typeWriter, 50);
}else{
$('#dreamCommentContainer').append('<div id="newContent" style="display: none; color: #0088cc;">' + response.domain + '</div>');
$('#newContent').fadeIn(2000);
}}
typeWriter();
},
error: function(xhr, status, error){
console.log('Error:', error);
$('#loadingButton').hide();
$('#dreamCommentContainer').html('There was an error retrieving the interpretation.');
}});
}, 30000);
});
});