Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
natchbone
/
comment-content
/
plugins
/
gpt3-ai-content-generator
/
admin
/
views
:
scripts.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php if ( ! defined( 'ABSPATH' ) ) exit; ?> <script type="text/javascript"> jQuery(document).ready(function($) { $('.wpaicg_sync_finetune').click(function (){ var btn = $(this); var icon = btn.find('svg'); // Select the SVG icon var originalContent = btn.html(); // Save the original button content $.ajax({ url: '<?php echo esc_js(admin_url('admin-ajax.php')); // Escape for JS context ?>', data: {action: 'wpaicg_fetch_finetunes', 'nonce': '<?php echo esc_js(wp_create_nonce('wpaicg-ajax-nonce')); ?>'}, dataType: 'JSON', type: 'POST', beforeSend: function (){ icon.addClass('rotating'); // Add the rotating class }, success: function (res){ icon.removeClass('rotating'); // Remove the rotating class btn.html(originalContent); // Restore the original content if(res.status === 'success'){ window.location.reload(); } else { alert(res.msg || 'An error occurred.'); } }, error: function (jqXHR, textStatus, errorThrown){ icon.removeClass('rotating'); // Remove the rotating class btn.html(originalContent); // Restore the original content alert('Error: ' + errorThrown); } }); }); $('.wpaicg_sync_google_models').click(function () { var btn = $(this); var icon = btn.find('svg'); // Select the SVG icon var originalContent = btn.html(); // Save the original button content $.ajax({ url: '<?php echo esc_js(admin_url('admin-ajax.php')); // Escape for JS context ?>', data: { action: 'wpaicg_fetch_google_models', 'nonce': '<?php echo esc_js(wp_create_nonce('wpaicg-ajax-nonce')); ?>' }, dataType: 'JSON', type: 'POST', beforeSend: function (){ icon.addClass('rotating'); // Add the rotating class }, success: function (res){ icon.removeClass('rotating'); // Remove the rotating class btn.html(originalContent); // Restore the original content if(res.status === 'success'){ window.location.reload(); } else { alert(res.msg || 'An error occurred.'); } }, error: function (jqXHR, textStatus, errorThrown){ icon.removeClass('rotating'); // Remove the rotating class btn.html(originalContent); // Restore the original content alert('Error: ' + errorThrown); } }); }); $('.wpaicg_check_openrouter_limits').click(function() { var btn = $(this); var originalContent = btn.html(); // Save the original button content btn.html('Checking...'); // Show a loading state $.ajax({ url: '<?php echo esc_js(admin_url('admin-ajax.php')); // Escape for JS context ?>', type: 'POST', dataType: 'JSON', data: { action: 'wpaicg_check_openrouter_limits', nonce: '<?php echo esc_js(wp_create_nonce('wpaicg_check_openrouter_limits')); ?>' }, success: function(response) { btn.html(originalContent); // Restore original button text if (response.success) { var limitsHtml = '<strong>API Key:</strong> ' + response.data.label + '<br>' + '<strong>Usage:</strong> ' + response.data.usage + ' credits used<br>' + '<strong>Limit:</strong> ' + (response.data.limit !== null ? response.data.limit + ' credits' : 'Unlimited') + '<br>' + '<strong>Requests allowed:</strong> ' + response.data.rate_limit.requests + '<br>' + '<strong>Interval:</strong> ' + response.data.rate_limit.interval; $('#limitsDisplay').html(limitsHtml).show(); // Display the limits } else { $('#limitsDisplay').html('<strong>Error:</strong> ' + (response.data || 'An error occurred.')).show(); } }, error: function(jqXHR, textStatus, errorThrown) { btn.html(originalContent); // Restore original button text $('#limitsDisplay').html('<strong>Error:</strong> ' + errorThrown).show(); } }); }); $('#wpaicg-meta-description').on('keyup', function (){ if($(this).val() === ''){ $('#wpaicg-seo-tab-item').removeClass('wpaicg-has-seo'); } else{ $('#wpaicg-seo-tab-item').addClass('wpaicg-has-seo'); } }); $('#wpcgai_preview_box').on('keyup', function (){ if($(this).val() === ''){ $('#wpaicg-seo-tab-content').removeClass('wpaicg-has-seo'); } else{ $('#wpaicg-seo-tab-content').addClass('wpaicg-has-seo'); } }); $('.wpaicg-tabs ul li').click(function(){ if(!$(this).hasClass('wpaicg-active')) { var targetID = $(this).attr('data-target'); $('.wpaicg-tabs ul li').removeClass('wpaicg-active'); $('.wpaicg-tab-content > div').hide(); $(this).addClass('wpaicg-active'); $('#' + targetID).show(); } }); var oldStep = ''; var startTime; var wpaicg_generator_process = $('.wpaicg-generating-process'); function wpaicg_ShowError(msg, timer){ clearTimeout(window['wpaicgTimer']); wpaicg_generator_process.append('<div class="wpaicg-error-msg">'+msg+'</div>'); } function wpaicg_generatorProcess(step, message){ if(step === 'finished') { wpaicg_generator_process.append('<div class="wpaicg-generating-process-' + step + '"><p>' + message + '</p></div>'); } else{ wpaicg_generator_process.append('<div class="wpaicg-generating-process-' + step + '"><p>' + message + '</p><span><?php echo esc_html__('In Progress..','gpt3-ai-content-generator')?></span></div>'); } } jQuery('#wpcgai_load_plugin_settings').on('click', function(e) { var h1 = $('.wpaicg-timer'), seconds = 0, minutes = 0,t; function add() { seconds++; if (seconds >= 60) { seconds = 0; minutes++; } if (minutes >= 60) { minutes = 0; hours++; } var htmlTimer = (minutes ? (minutes > 9 ? minutes : "0" + minutes) : "00") + ":" + (seconds > 9 ? seconds : "0" + seconds); h1.html(htmlTimer); timer(); } function timer() { window['wpaicgTimer'] = setTimeout(add, 1000); } var wpai_preview_title = $("#wpai_preview_title").val(); // we need to display error if title is empty if (wpai_preview_title == "") { alert("<?php echo esc_html__('Please enter title','gpt3-ai-content-generator')?>"); return false; } var wpai_number_of_heading = $("#wpai_number_of_heading").val(); // we need to display error if number of heading is empty if (wpai_number_of_heading == "") { alert("<?php echo esc_html__('Please enter number of heading','gpt3-ai-content-generator')?>"); return false; } if(wpai_number_of_heading > 15){ alert("<?php echo esc_html__('Limited 15 headings','gpt3-ai-content-generator')?>"); return false; } let wpaicg_custom_image_settings = {}; $('[name^=wpaicg_custom_image_settings]').each(function(idx, elem) { let name = $(elem).attr('name'); name = name.replace(/wpaicg_custom_image_settings/g,''); name = name.replace('[',''); name = name.replace(']',''); wpaicg_custom_image_settings[name] = $(elem).val(); }); var wpaicg_toc = $('#wpaicg_toc:checked').val(); wpaicg_toc = wpaicg_toc ? wpaicg_toc : 0; var wpai_language = $("#wpai_language").val(); var wpai_add_intro = $("#wpai_add_intro").val(); var wpai_add_conclusion = $("#wpai_add_conclusion").val(); var wpaicg_seo_meta_desc = $("#wpaicg_seo_meta_desc:checked").val(); var wpai_writing_style = $("#wpai_writing_style").val(); var wpai_writing_tone = $("#wpai_writing_tone").val(); var wpai_keywords = $("#wpai_keywords").val(); var wpai_add_keywords_bold = $("#wpai_add_keywords_bold").val(); var wpai_heading_tag = $("#wpai_heading_tag").val(); var wpai_words_to_avoid = $("#wpai_words_to_avoid").val(); var wpai_add_tagline = $("#wpai_add_tagline").val(); var wpai_add_faq = $("#wpai_add_faq2:checked").length; /*Fix auto add FAQ*/ wpai_add_faq = wpai_add_faq ? 1 : 0; var wpai_target_url = $("#wpai_target_url").val(); var wpai_anchor_text = $("#wpai_anchor_text").val(); var wpai_target_url_cta = $("#wpai_target_url_cta").val(); var wpai_cta_pos = $("#wpai_cta_pos").val(); var wpai_img_size = $("#_wporg_img_size").val(); var wpai_img_style = $("#_wporg_img_style").val(); var wpaicg_toc_title = $("#wpaicg_toc_title").val(); var wpaicg_toc_title_tag = $("#wpaicg_toc_title_tag").val(); var wpaicg_intro_title_tag = $("#wpaicg_intro_title_tag").val(); var wpaicg_conclusion_title_tag = $("#wpaicg_conclusion_title_tag").val(); var wpai_modify_headings = $('#wpai_modify_headings').val(); var is_generate_continue = $('#is_generate_continue').val(); var hfHeadings = $("#hfHeadings").val(); /* * Add Image and Featured * */ var wpaicg_image_source = $('#wpaicg_image_source').val(); var wpaicg_featured_image_source = $('#wpaicg_featured_image_source').val(); var wpaicg_pexels_orientation = $('#wpaicg_pexels_orientation').val(); var wpaicg_pexels_size = $('#wpaicg_pexels_size').val(); var wpaicg_pixabay_order = $('#wpaicg_pixabay_order').val(); var wpaicg_pixabay_orientation = $('#wpaicg_pixabay_orientation').val(); var wpaicg_pixabay_language = $('#wpaicg_pixabay_language').val(); var wpaicg_pixabay_type = $('#wpaicg_pixabay_type').val(); var wpaicg_meta_custom_prompt_enable = $('.wpaicg_meta_custom_prompt_enable:checked').length ? 1 : 0; var wpaicg_meta_custom_prompt = $('.wpaicg_meta_custom_prompt').val(); var wpaicg_pixabay_enable_prompt = $('#wpaicg_pixabay_enable_prompt:checked').length ? 1 : 0; var wpaicg_pixabay_custom_prompt = $('#wpaicg_pixabay_custom_prompt').val(); var wpaicg_pexels_enable_prompt = $('#wpaicg_pexels_enable_prompt:checked').length ? 1 : 0; var wpaicg_pexels_custom_prompt = $('#wpaicg_pexels_custom_prompt').val(); $('#is_generate_continue').val(0); $('.wpcgai_menu_editor').html(''); e.preventDefault(); jQuery('.wpcgai_lds-ellipsis').show(); if(window['wpaicgTimer'] !== undefined){ clearTimeout(window['wpaicgTimer']); } timer(); var data = { 'action': 'wpaicg_content_generator', 'wpai_preview_title': wpai_preview_title, 'wpai_number_of_heading': wpai_number_of_heading, 'wpaicg_image_source': wpaicg_image_source, 'wpaicg_featured_image_source': wpaicg_featured_image_source, 'wpaicg_pexels_orientation': wpaicg_pexels_orientation, 'wpaicg_pexels_size': wpaicg_pexels_size, 'wpaicg_pixabay_type': wpaicg_pixabay_type, 'wpaicg_pixabay_language': wpaicg_pixabay_language, 'wpaicg_pixabay_order': wpaicg_pixabay_order, 'wpaicg_pixabay_orientation': wpaicg_pixabay_orientation, 'wpai_language': wpai_language, 'wpai_add_intro': wpai_add_intro, 'wpai_add_conclusion': wpai_add_conclusion, 'wpai_writing_style': wpai_writing_style, 'wpai_writing_tone': wpai_writing_tone, 'wpai_keywords': wpai_keywords, 'wpai_add_keywords_bold': wpai_add_keywords_bold, 'wpai_heading_tag': wpai_heading_tag, 'wpai_words_to_avoid': wpai_words_to_avoid, 'wpai_add_tagline': wpai_add_tagline, 'wpai_add_faq': wpai_add_faq, 'wpai_target_url': wpai_target_url, 'wpai_anchor_text': wpai_anchor_text, 'wpai_modify_headings': wpai_modify_headings, 'is_generate_continue': is_generate_continue, 'hfHeadings': hfHeadings, 'wpai_target_url_cta' : wpai_target_url_cta, 'wpai_cta_pos' : wpai_cta_pos, 'step': 'heading', 'wpaicg_content': '', 'wpai_img_size': wpai_img_size, 'wpai_img_style': wpai_img_style, 'wpaicg_seo_meta_desc': wpaicg_seo_meta_desc, 'wpaicg_toc': wpaicg_toc, 'wpaicg_toc_title': wpaicg_toc_title, 'wpaicg_toc_title_tag': wpaicg_toc_title_tag, 'wpaicg_hide_introduction': $('#wpaicg_hide_introduction:checked').length ? 1 : 0, 'wpaicg_hide_conclusion': $('#wpaicg_hide_conclusion:checked').length ? 1 : 0, 'wpaicg_intro_title_tag': wpaicg_intro_title_tag, 'wpaicg_conclusion_title_tag': wpaicg_conclusion_title_tag, 'wpaicg_toc_list': '', 'wpaicg_custom_image_settings': wpaicg_custom_image_settings, 'wpaicg_custom_prompt_enable': wpaicg_meta_custom_prompt_enable, 'wpaicg_custom_prompt': wpaicg_meta_custom_prompt, 'wpaicg_pixabay_enable_prompt': wpaicg_pixabay_enable_prompt, 'wpaicg_pixabay_custom_prompt': wpaicg_pixabay_custom_prompt, 'wpaicg_pexels_enable_prompt': wpaicg_pexels_enable_prompt, 'wpaicg_pexels_custom_prompt': wpaicg_pexels_custom_prompt, 'nonce': '<?php echo esc_js(wp_create_nonce('wpaicg-ajax-nonce')); ?>' }; $('#wpcgai_preview_box').text(''); $('#wpcgai_preview_box').val(''); $('#wpaicg-meta-description').val(''); $('#wpaicg-meta-description').text(''); wpaicg_generator_process.empty(); /*Start with custom prompt*/ if(wpaicg_meta_custom_prompt_enable){ oldStep = 'custom_content'; wpaicg_generatorProcess(oldStep,'<?php echo esc_html__('Generating Content','gpt3-ai-content-generator')?>'); } else{ oldStep = 'heading'; wpaicg_generatorProcess(oldStep,'<?php echo esc_html__('Generating Headings','gpt3-ai-content-generator')?>'); } $('#wpcgai_load_plugin_settings').attr('disabled','disabled'); if(!$('#wpcgai_load_plugin_settings .spinner').length) { $('#wpcgai_load_plugin_settings').append('<span class="spinner"></span>'); } $('#wpcgai_load_plugin_settings').find('.spinner').css('visibility','unset'); $('#wpaicg-seo-tab-item').removeClass('wpaicg-has-seo'); $('#wpaicg-seo-tab-content').removeClass('wpaicg-has-seo'); startTime = new Date(); var requestData = data; if(wpaicg_meta_custom_prompt_enable){ requestData.action = 'wpaicg_generate_custom_prompt'; } $.post(ajaxurl, requestData, function(response){ if(response.status === 'success'){ if (wpai_modify_headings == 1 && is_generate_continue == 0 && !wpaicg_meta_custom_prompt_enable) { clearTimeout(window['wpaicgTimer']); var str = response.data; var html = str.split('||'); var headings_array = []; $.each(html, function (i, el) { headings_array.push(el); }); $.each(headings_array, function (key, value) { value = value.replace("'", "'"); var randomnum = Math.floor((Math.random() * 100000) + 1); var itemTemplate = "<li><div>"; itemTemplate += "<input type='text' id='text' value='" + value + "' style='width: 90%;'/>"; itemTemplate += "<span class='wpcgai_sort_heading'><i class='fa fa-bars'></i></span>"; itemTemplate += "<span id='wpcgai_remove_heading'><i class='fa fa-trash-o'></i></span>"; itemTemplate += "<div style='display: none;'><span id='identifier'>" + randomnum + "</span>"; itemTemplate += "</div>"; itemTemplate += "</div></li>"; $(".wpcgai_menu_editor").prepend(itemTemplate); }); $('#myModal').show(); $('.modal-backdrop').show(); } else { wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('finished'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Done','gpt3-ai-content-generator')?>'); if(wpaicg_meta_custom_prompt_enable){ $('#wpaicg-seo-tab-content').addClass('wpaicg-has-seo'); $('#wpcgai_preview_box').val(response.content.replaceAll('\\','')); $('#wpcgai_save_draft_post_action').show(); data.action = 'wpaicg_content_generator'; data.content = response.content.replaceAll('\\',''); data.step = 'seo'; data.wpaicg_toc_list = response.tocs; data.wpaicg_heading_tag_modify = response.wpaicg_heading_tag_modify; data.hfHeadings = response.headings; wpaicg_generatorProcess(data.step, '<?php echo esc_html__('Optimizing SEO','gpt3-ai-content-generator')?>'); } else{ data.step = 'content'; wpaicg_generatorProcess(data.step, '<?php echo esc_html__('Generating Content','gpt3-ai-content-generator')?>'); data.hfHeadings = response.data; } data.tokens = parseInt(response.tokens); data.length = parseInt(response.length); oldStep = data.step; wpaicgStepWorking(data, t); } } else{ wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep+' span').html('<?php echo esc_html__('Error','gpt3-ai-content-generator')?>'); wpaicg_ShowError(response.msg, t); $('#wpcgai_load_plugin_settings').removeAttr('disabled'); $('#wpcgai_load_plugin_settings').find('.spinner').remove(); } }).fail(function (){ wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep).addClass('error'); wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep+' span').html('<?php echo esc_html__('Error','gpt3-ai-content-generator')?>'); wpaicg_ShowError('<?php echo esc_html__('The server is currently overloaded with other requests. Sorry about that! You can retry your request, or contact us through our help center at help.openai.com if the error persists..','gpt3-ai-content-generator')?>', t); $('#wpcgai_load_plugin_settings').removeAttr('disabled'); $('#wpcgai_load_plugin_settings').find('.spinner').remove(); }); }); function wpaicg_random(length) { let result = ''; const characters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; const charactersLength = characters.length; let counter = 0; while (counter < length) { result += characters.charAt(Math.floor(Math.random() * charactersLength)); counter += 1; } return result; } function wpaicgStepWorking(data,timer){ var wpaicg_image_source = $('#wpaicg_image_source').val(); var wpaicg_featured_image_source = $('#wpaicg_featured_image_source').val(); var wpai_language = $("#wpai_language").val(); var wpai_add_intro = $("#wpai_add_intro").val(); var wpai_add_conclusion = $("#wpai_add_conclusion").val(); var wpai_writing_style = $("#wpai_writing_style").val(); var wpai_writing_tone = $("#wpai_writing_tone").val(); var wpai_keywords = $("#wpai_keywords").val(); var wpai_add_keywords_bold = $("#wpai_add_keywords_bold").val(); var wpai_heading_tag = $("#wpai_heading_tag").val(); var wpai_words_to_avoid = $("#wpai_words_to_avoid").val(); var wpai_add_tagline = $("#wpai_add_tagline").val(); var wpai_add_faq = $("#wpai_add_faq2:checked").length; wpai_add_faq = wpai_add_faq ? 1 : 0; var wpai_target_url = $("#wpai_target_url").val(); var wpai_anchor_text = $("#wpai_anchor_text").val(); var wpai_target_url_cta = $("#wpai_target_url_cta").val(); var wpai_cta_pos = $("#wpai_cta_pos").val(); $.post(ajaxurl, data, function(response){ if(response.status === 'success' || response.status === 'no_image'){ data.wpaicg_toc_list = response.tocs; if(response.next_step === 'DONE'){ $('#wpcgai_load_plugin_settings').removeAttr('disabled'); $('#wpcgai_load_plugin_settings').find('.spinner').remove(); if(response.featured_img !== undefined && response.featured_img !== ''){ if($('.wpaicg_featured_img_url').length){ $('.wpaicg_featured_img_url').val(response.featured_img); } else { $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_featured_img_url" type="hidden" name="wpaicg_featured_img_url" value="' + response.featured_img + '">') } } if(oldStep === 'image' && response.status === 'no_image'){ wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Rejected','gpt3-ai-content-generator')?>'); } else{ wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep).addClass('finished'); wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep+' span').html('<?php echo esc_html__('Done','gpt3-ai-content-generator')?>'); } if(oldStep === 'featuredimage' && response.status === 'no_image'){ wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Rejected','gpt3-ai-content-generator')?>'); } else{ wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep).addClass('finished'); wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep+' span').html('<?php echo esc_html__('Done','gpt3-ai-content-generator')?>'); } wpaicg_generatorProcess('finished','<?php echo esc_html__('Finished','gpt3-ai-content-generator')?>'); response.content = response.content.replace(/wpaicgheading/g,wpaicg_random(10)); $('#wpcgai_preview_box').val(response.content.replaceAll('\\','')); if(response.content !== ''){ $('#wpaicg-seo-tab-content').addClass('wpaicg-has-seo'); } setTimeout(function(){ $('.wpcgai_lds-ellipsis').hide(); },3000); if($('.wpaicg_content_changed').length){ $('.wpaicg_content_changed').val('true'); } else{ $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_content_changed" type="hidden" name="wpaicg_content_changed" value="true">') } clearTimeout(window['wpaicgTimer']); var endTime = new Date(); var timeDiff = endTime - startTime; timeDiff = timeDiff/1000; if($('.wpaicg_duration').length){ $('.wpaicg_duration').val(timeDiff); } else{ $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_duration" type="hidden" name="duration" value="'+timeDiff+'">'); } if ($('.wpaicg_word_count').length){ $('.wpaicg_word_count').val(response.length) } else { $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_word_count" type="hidden" name="word_count" value="' + response.length + '">'); } if($('.wpaicg_usage_token').length){ $('.wpaicg_usage_token').val(response.tokens); } else{ $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_usage_token" type="hidden" name="usage_token" value="'+response.tokens+'">'); } $('#wpcgai_save_draft_post_action').show(); } else{ if(oldStep === 'content'){ $('#wpcgai_preview_box').val(response.content.replaceAll('\\','')); $('#wpcgai_save_draft_post_action').show(); } if(oldStep === 'image' && response.status === 'no_image'){ wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('No Img','gpt3-ai-content-generator')?>'); } else { if(response.img !== undefined && response.img !== ''){ if($('.wpaicg_image_url').length){ $('.wpaicg_image_url').val(response.img); } else{ $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_image_url" type="hidden" name="wpaicg_image_url" value="'+response.img+'">') } } wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('finished'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Done','gpt3-ai-content-generator')?>'); } if(oldStep === 'featuredimage' && response.status === 'no_image'){ wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('No Img','gpt3-ai-content-generator')?>'); } else { wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('finished'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Done','gpt3-ai-content-generator')?>'); } if(response.description !== ''){ $('#wpaicg-seo-tab-item').addClass('wpaicg-has-seo'); $('#wpaicg-meta-description').val(response.description); } if(response.title !== undefined && response.title !== ''){ // Remove quotes only from the beginning and the end of the title var cleanTitle = response.title.replace(/^["']|["']$/g, ""); // Update the title input field with the cleaned title $('#wpai_preview_title').val(cleanTitle); } data.tokens = parseInt(response.tokens); data.length = parseInt(response.length); data.step = response.next_step; if(wpai_add_intro == 1 && data.step == 'intro'){ wpaicg_generatorProcess('intro','<?php echo esc_html__('Generating Introduction','gpt3-ai-content-generator')?>'); } if(wpai_add_faq == 1 && data.step == 'faq'){ wpaicg_generatorProcess('faq','<?php echo esc_html__('Generating Q&A','gpt3-ai-content-generator')?>'); } if(wpai_add_conclusion == 1 && data.step == 'conclusion'){ wpaicg_generatorProcess('conclusion','<?php echo esc_html__('Generating Conclusion','gpt3-ai-content-generator')?>'); } if(wpai_add_tagline == 1 && data.step == 'tagline'){ wpaicg_generatorProcess('tagline','<?php echo esc_html__('Generating Tagline','gpt3-ai-content-generator')?>'); } if(data.step == 'seo'){ wpaicg_generatorProcess('seo','<?php echo esc_html__('Optimizing SEO','gpt3-ai-content-generator')?>'); } // if generate_title if(data.step == 'generate_title'){ wpaicg_generatorProcess('generate_title','<?php echo esc_html__('Generating Title','gpt3-ai-content-generator')?>'); } if(data.step == 'addition'){ wpaicg_generatorProcess('addition','<?php echo esc_html__('Applying Changes','gpt3-ai-content-generator')?>'); } if(data.step === 'image'){ if(wpaicg_image_source === 'dalle' || wpaicg_image_source === 'dalle2' || wpaicg_image_source === 'dalle3' || wpaicg_image_source === 'dalle3hd'){ wpaicg_generatorProcess('image','<?php echo esc_html__('Generating Image with DALL-E','gpt3-ai-content-generator')?>'); } if(wpaicg_image_source === 'pexels'){ wpaicg_generatorProcess('image','<?php echo esc_html__('Getting Image from Pexels','gpt3-ai-content-generator')?>'); } if(wpaicg_image_source === 'pixabay'){ wpaicg_generatorProcess('image','<?php echo esc_html__('Getting Image from Pixabay','gpt3-ai-content-generator')?>'); } if(wpaicg_image_source === 'replicate'){ wpaicg_generatorProcess('image','<?php echo esc_html__('Generating Image with Replicate','gpt3-ai-content-generator')?>'); } } if(data.step === 'featuredimage'){ if(wpaicg_featured_image_source === 'dalle' || wpaicg_featured_image_source === 'dalle2' || wpaicg_featured_image_source === 'dalle3' || wpaicg_featured_image_source === 'dalle3hd'){ wpaicg_generatorProcess('featuredimage','<?php echo esc_html__('Generating DALL-E Featured Image','gpt3-ai-content-generator')?>'); } if(wpaicg_featured_image_source === 'pexels'){ wpaicg_generatorProcess('featuredimage','<?php echo esc_html__('Getting Featured Image from Pexels','gpt3-ai-content-generator')?>'); } if(wpaicg_featured_image_source === 'pixabay'){ wpaicg_generatorProcess('featuredimage','<?php echo esc_html__('Getting Featured Image from Pixabay','gpt3-ai-content-generator')?>'); } if(wpaicg_featured_image_source === 'replicate'){ wpaicg_generatorProcess('featuredimage','<?php echo esc_html__('Generating Featured Image with Replicate','gpt3-ai-content-generator')?>'); } } oldStep = data.step; data.generated_img = response.img; data.featured_img = response.featured_img; data.content = response.content.replaceAll('\\',''); wpaicgStepWorking(data, timer) } } else{ if(oldStep === 'seo'){ data.step = 'generate_title'; wpaicg_generator_process.append('<div class="wpaicg-error-msg">'+response.msg+'</div>'); wpaicgStepWorking(data, timer); } else if(oldStep === 'generate_title'){ data.step = 'addition'; wpaicg_generator_process.append('<div class="wpaicg-error-msg">'+response.msg+'</div>'); wpaicgStepWorking(data, timer); } else { if (oldStep !== 'heading' && oldStep !== 'content') { if (response.description !== '') { $('#wpaicg-seo-tab-item').addClass('wpaicg-has-seo'); $('#wpaicg-meta-description').val(response.description); } if (response.content !== '') { $('#wpaicg-seo-tab-content').addClass('wpaicg-has-seo'); $('#wpcgai_preview_box').val(response.content.replaceAll('\\', '')); if($('.wpaicg_content_changed').length){ $('.wpaicg_content_changed').val('true'); } else { $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_content_changed" type="hidden" name="wpaicg_content_changed" value="true">'); } } if (response.img !== undefined && response.img !== '') { if($('.wpaicg_image_url').length){ $('.wpaicg_image_url').val(response.img); } else { $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_image_url" type="hidden" name="wpaicg_image_url" value="' + response.img + '">') } } if (response.featured_img !== undefined && response.featured_img !== '') { if($('.wpaicg_featured_img_url').length){ $('.wpaicg_featured_img_url').val(response.featured_img); } else { $('#wpcgai_save_draft_post_action').parent().append('<input class="wpaicg_featured_img_url" type="hidden" name="wpaicg_featured_img_url" value="' + response.featured_img + '">') } } } wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-' + oldStep + ' span').html('<?php echo esc_html__('Error','gpt3-ai-content-generator')?>'); wpaicg_ShowError(response.msg, timer); $('#wpcgai_load_plugin_settings').removeAttr('disabled'); $('#wpcgai_load_plugin_settings').find('.spinner').remove(); } } }).fail(function (jqXHR, textStatus, errorThrown){ var errorMessage = errorThrown; // This will contain the actual error message returned from the server. if (!errorMessage || errorMessage === "") { errorMessage = "It appears that your web server has some kind of timeout limit. This can also occur if you are using a VPS, CDN, proxy, firewall, or Cloudflare. To resolve this issue, please contact your hosting provider and request an increase in the timeout limit. Read more: https://docs.aipower.org/docs/content-writer/express-mode/faq#timeout-issue"; } wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep).addClass('wpaicg-error'); wpaicg_generator_process.find('.wpaicg-generating-process-'+oldStep+' span').html('<?php echo esc_html__('Error','gpt3-ai-content-generator')?>'); wpaicg_ShowError(errorMessage, timer); // Using the actual error message here. $('#wpcgai_load_plugin_settings').removeAttr('disabled'); $('#wpcgai_load_plugin_settings').find('.spinner').remove(); console.log("AJAX Error:", textStatus); console.log("Error Thrown:", errorThrown); console.log("Full Response:", jqXHR.responseText); }); } jQuery('#wpcgai_save_draft_post_action').click(function(){ var wpaicg_draft_btn = jQuery(this); var title = jQuery('#wpai_preview_title').val(); var content = jQuery('#wpcgai_preview_box').val(); if(title === ''){ alert('<?php echo esc_html__('Please enter title','gpt3-ai-content-generator')?>'); } else if(content === ''){ alert('<?php echo esc_html__('Please wait content generated','gpt3-ai-content-generator')?>') } else { var data = $('#right-nav-express select').serialize()+'&'+$('#right-nav-express input').serialize()+'&'+$('#right-nav-express textarea').serialize() + '&' + $('#expressdata select').serialize()+'&'+$('#expressdata input').serialize()+'&'+$('#expressdata textarea').serialize(); data = data+'&title='+title+'&content='+content+'&action=wpaicg_save_draft_post_extra&nonce=<?php echo esc_js(wp_create_nonce('wpaicg-ajax-nonce')); ?>'; if($('#post_ID').length){ data += '&post_id='+$('#post_ID').val(); } // var data_json = URLSearchParams2JSON_2(data); jQuery.ajax({ url: '<?php echo esc_js(admin_url( 'admin-ajax.php' )); ?>', data: data, dataType: 'html', type: 'POST', beforeSend: function (){ wpaicg_draft_btn.attr('disabled','disabled'); wpaicg_draft_btn.append('<span class="spinner"></span>'); wpaicg_draft_btn.find('.spinner').css('visibility','unset'); }, success: function (res){ res = res.replace('postrevision{','{'); res = res.replace('revisionrevision{','{'); res = res.replace('postrevisionrevision{','{'); res = res.replace('postrevisionrevisionrevision{','{'); res = res.replace('postrevisionrevisionrevisionrevision{','{'); res = res.replaceAll('revision{','{'); res = res.replaceAll('post{','{'); res = JSON.parse(res); wpaicg_draft_btn.removeAttr('disabled'); wpaicg_draft_btn.find('.spinner').remove(); if(res.status === 'success'){ window.location.href = '<?php echo esc_js(admin_url( 'post.php' )); ?>?post='+res.id+'&action=edit'; } else{ alert(res.msg); } }, error: function (){ wpaicg_draft_btn.removeAttr('disabled'); wpaicg_draft_btn.find('.spinner').remove(); alert('<?php echo esc_html__('Something went wrong','gpt3-ai-content-generator')?>'); } }); } }); $('.wpaicg_meta_custom_prompt_enable').click(function (){ if($(this).prop('checked')){ $('.wpaicg_meta_custom_prompt_box').show(); } else{ $('.wpaicg_meta_custom_prompt_box').hide(); } }); $('.wpaicg_meta_custom_prompt_reset').click(function (){ let prompt = $(this).attr('data-prompt'); $('.wpaicg_meta_custom_prompt').val(prompt); $('.wpaicg_meta_custom_prompt_auto_error').empty(); $('#wpcgai_load_plugin_settings').removeAttr('disabled'); }); <?php if(!\WPAICG\wpaicg_util_core()->wpaicg_is_pro()): ?> $('.wpaicg_meta_custom_prompt').on('input', function (e){ let prompt = $(e.currentTarget).val(); if(prompt.indexOf('[keywords_to_include]') > -1 || prompt.indexOf('[keywords_to_avoid]') > -1){ $('.wpaicg_meta_custom_prompt_auto_error').html('<div style="color: #f00"><?php echo esc_html__('Please note that keywords are only available in pro plan. Please remove keywords from your prompt','gpt3-ai-content-generator')?></div>'); $('#wpcgai_load_plugin_settings').attr('disabled','disabled'); } else{ $('.wpaicg_meta_custom_prompt_auto_error').empty(); $('#wpcgai_load_plugin_settings').removeAttr('disabled'); } }); <?php endif; ?> }); </script>