Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/aimogen-pro/class-setup-wizard.php

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + <?php
2 + class Aiomatic_Setup_Wizard {
3 + private $step = '';
4 + private $steps = array();
5 + public function __construct()
6 + {
7 + if ( current_user_can( 'access_aiomatic_menu' ) )
8 + {
9 + if ( empty( $_GET['page'] ) || 'aiomatic_admin_settings' !== $_GET['page'] )
10 + {
11 + return;
12 + }
13 + $name = md5(get_bloginfo());
14 + $aiomatic_Main_Settings = get_option('aiomatic_Main_Settings', false);
15 + wp_enqueue_script($name . '-main-script', plugins_url('scripts/main.js', __FILE__), array('jquery'), AIMOGEN_MAJOR_VERSION);
16 + wp_enqueue_script($name . '-setup-script', plugins_url('scripts/setup.js', __FILE__), array('jquery'), AIMOGEN_MAJOR_VERSION);
17 + if(!isset($aiomatic_Main_Settings['best_user']))
18 + {
19 + $best_user = '';
20 + }
21 + else
22 + {
23 + $best_user = $aiomatic_Main_Settings['best_user'];
24 + }
25 + if(!isset($aiomatic_Main_Settings['best_password']))
26 + {
27 + $best_password = '';
28 + }
29 + else
30 + {
31 + $best_password = $aiomatic_Main_Settings['best_password'];
32 + }
33 + $header_main_settings = array(
34 + 'best_user' => $best_user,
35 + 'best_password' => $best_password,
36 + 'ajaxurl' => admin_url('admin-ajax.php'),
37 + 'nonce' => wp_create_nonce('openai-ajax-nonce'),
38 + );
39 + wp_localize_script($name . '-main-script', 'mycustommainsettings', $header_main_settings);
40 + $plugin = plugin_basename(__FILE__);
41 + $plugin_slug = explode('/', $plugin);
42 + $plugin_slug = $plugin_slug[0];
43 + $footer_conf_settings = array(
44 + 'ajaxurl' => admin_url('admin-ajax.php'),
45 + 'plugin_slug' => $plugin_slug
46 + );
47 + wp_localize_script($name . '-main-script', 'mycustomsettings', $footer_conf_settings);
48 + wp_register_style($name . '-browser-style', plugins_url('styles/aiomatic-browser.css', __FILE__), false, AIMOGEN_MAJOR_VERSION);
49 + wp_enqueue_style($name . '-browser-style');
50 + wp_register_style($name . '-custom-style', plugins_url('styles/coderevolution-style.css', __FILE__), false, AIMOGEN_MAJOR_VERSION);
51 + wp_enqueue_style($name . '-custom-style');
52 + wp_enqueue_script('jquery');
53 + wp_enqueue_script('jquery-ui-core');
54 + wp_enqueue_script('interface');
55 + wp_enqueue_script('jquery-ui-sortable');
56 + wp_enqueue_script('media-upload');
57 + wp_enqueue_script('thickbox');
58 + wp_enqueue_style('thickbox');
59 + $this->setup_wizard($aiomatic_Main_Settings);
60 + }
61 + }
62 + public function setup_wizard($aiomatic_Main_Settings)
63 + {
64 + $this->steps = array(
65 + 'intro' => array(
66 + 'name' => esc_html__( 'Welcome', 'aiomatic-automatic-ai-content-writer' ),
67 + 'view' => array( $this, 'setup_step_introduction' ),
68 + 'handler' => ''
69 + ),
70 + 'activation' => array(
71 + 'name' => esc_html__( 'Activation', 'aiomatic-automatic-ai-content-writer' ),
72 + 'view' => array( $this, 'setup_step_basic' ),
73 + 'handler' => array( $this, 'setup_step_basic_save' )
74 + ),
75 + 'apikeys' => array(
76 + 'name' => esc_html__( 'API Keys', 'aiomatic-automatic-ai-content-writer' ),
77 + 'view' => array( $this, 'setup_step_api' ),
78 + 'handler' => array( $this, 'setup_step_api_save' )
79 + ),
80 + 'content' => array(
81 + 'name' => esc_html__( 'Content', 'aiomatic-automatic-ai-content-writer' ),
82 + 'view' => array( $this, 'setup_step_content' ),
83 + 'handler' => array( $this, 'setup_step_content_save' )
84 + ),
85 + 'editor' => array(
86 + 'name' => esc_html__( 'Editor', 'aiomatic-automatic-ai-content-writer' ),
87 + 'view' => array( $this, 'setup_step_editor' ),
88 + 'handler' => array( $this, 'setup_step_editor_save' ),
89 + ),
90 + 'chatbot' => array(
91 + 'name' => esc_html__( 'Chatbot', 'aiomatic-automatic-ai-content-writer' ),
92 + 'view' => array( $this, 'setup_step_chatbot' ),
93 + 'handler' => array( $this, 'setup_step_chatbot_save' ),
94 + ),
95 + 'forms' => array(
96 + 'name' => esc_html__( 'AI Forms', 'aiomatic-automatic-ai-content-writer' ),
97 + 'view' => array( $this, 'setup_step_forms' ),
98 + 'handler' => array( $this, 'setup_step_forms_save' ),
99 + ),
100 + 'playground' => array(
101 + 'name' => esc_html__( 'Playground', 'aiomatic-automatic-ai-content-writer' ),
102 + 'view' => array( $this, 'setup_step_playground' ),
103 + 'handler' => array( $this, 'setup_step_playground_save' ),
104 + ),
105 + 'more' => array(
106 + 'name' => esc_html__( 'More', 'aiomatic-automatic-ai-content-writer' ),
107 + 'view' => array( $this, 'setup_step_more' ),
108 + 'handler' => array( $this, 'setup_step_more_save' ),
109 + ),
110 + 'next_steps' => array(
111 + 'name' => esc_html__( 'Ready!', 'aiomatic-automatic-ai-content-writer' ),
112 + 'view' => array( $this, 'setup_step_ready' ),
113 + 'handler' => ''
114 + )
115 + );
116 +
117 + $this->step = isset( $_GET['step'] ) ? sanitize_key( $_GET['step'] ) : current( array_keys( $this->steps ) );
118 + wp_enqueue_style( 'aiomatic-setup', plugins_url('styles/setup.css', __FILE__), array( 'dashicons', 'install' ) );
119 +
120 + if ( isset($_POST['save_step']) && ! empty( $_POST['save_step'] ) && isset( $this->steps[ $this->step ]['handler'] ) )
121 + {
122 + call_user_func( $this->steps[ $this->step ]['handler'] );
123 + }
124 + $plugin = plugin_basename(__FILE__);
125 + $plugin_slug = explode('/', $plugin);
126 + $plugin_slug = $plugin_slug[0];
127 + if(isset($_POST[$plugin_slug . '_register_setup']) && isset($_POST[$plugin_slug. '_register_code_setup']) && trim($_POST[$plugin_slug . '_register_code_setup']) != '' && isset($_POST['aiomatic_nonce_setup']) && wp_verify_nonce( $_POST['aiomatic_nonce_setup'], 'openai-secret-nonce'))
128 + {
129 + if(strlen(trim($_POST[$plugin_slug . '_register_code_setup'])) != 36 || strstr($_POST[$plugin_slug . '_register_code_setup'], '-') == false)
130 + {
131 + aiomatic_log_to_file('Invalid registration code submitted: ' . $_POST[$plugin_slug . '_register_code_setup']);
132 + aiomatic_update_option('aiomatic_activation_status', 'Invalid registration code submitted: ' . $_POST[$plugin_slug . '_register_code_setup']);
133 + }
134 + else
135 + {
136 + $ch = curl_init('https://wpinitiate.com/verify-purchase/purchase.php');
137 + if($ch !== false)
138 + {
139 + $data = array();
140 + $data['code'] = trim($_POST[$plugin_slug . '_register_code_setup']);
141 + $data['siteURL'] = get_bloginfo('url');
142 + $data['siteName'] = get_bloginfo('name');
143 + $data['siteEmail'] = get_bloginfo('admin_email');
144 + $fdata = "";
145 + foreach ($data as $key => $val) {
146 + $fdata .= "$key=" . urlencode(trim($val)) . "&";
147 + }
148 + curl_setopt($ch, CURLOPT_POST, 1);
149 + curl_setopt($ch, CURLOPT_POSTFIELDS, $fdata);
150 + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
151 + curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
152 + curl_setopt($ch, CURLOPT_TIMEOUT, 60);
153 + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
154 + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
155 + $result = curl_exec($ch);
156 +
157 + if($result === false)
158 + {
159 + aiomatic_log_to_file('Failed to get verification response: ' . curl_error($ch));
160 + aiomatic_update_option('aiomatic_activation_status', 'Failed to get verification response: ' . curl_error($ch));
161 + }
162 + else
163 + {
164 + $rj = json_decode($result, true);
165 + if(isset($rj['error']))
166 + {
167 + aiomatic_update_option('aiomatic_activation_status', 'Activation error: ' . $rj['error']);
168 + }
169 + elseif(isset($rj['item_name']))
170 + {
171 + $rj['code'] = $_POST[$plugin_slug . '_register_code_setup'];
172 + if($rj['item_id'] == '38877369' || $rj['item_id'] == '13371337' || $rj['item_id'] == '19200046')
173 + {
174 + if (is_multisite())
175 + {
176 + $main_site_id = get_network()->site_id;
177 + switch_to_blog($main_site_id);
178 + aiomatic_update_option($plugin_slug . '_registration', $rj);
179 + restore_current_blog();
180 + }
181 + else
182 + {
183 + aiomatic_update_option($plugin_slug . '_registration', $rj);
184 + }
185 + }
186 + else
187 + {
188 + aiomatic_log_to_file('Invalid response from purchase code verification (are you sure you submitted the right purchase code?): ' . print_r($rj, true));
189 + aiomatic_update_option('aiomatic_activation_status', 'Invalid response from purchase code verification (are you sure you submitted the right purchase code?): ' . print_r($rj, true));
190 + }
191 + }
192 + else
193 + {
194 + aiomatic_log_to_file('Invalid json from purchase code verification: ' . print_r($result, true));
195 + aiomatic_update_option('aiomatic_activation_status', 'Invalid json from purchase code verification: ' . print_r($result, true));
196 + }
197 + }
198 + curl_close($ch);
199 + }
200 + else
201 + {
202 + aiomatic_log_to_file('Failed to init curl when trying to make purchase verification.');
203 + aiomatic_update_option('aiomatic_activation_status', 'Failed to init curl when trying to make purchase verification');
204 + }
205 + }
206 + }
207 + if(isset($_POST[$plugin_slug . '_revoke_license_setup']) && trim($_POST[$plugin_slug . '_revoke_license_setup']) != '' && isset($_POST['aiomatic_nonce_setup']) && wp_verify_nonce( $_POST['aiomatic_nonce_setup'], 'openai-secret-nonce'))
208 + {
209 + $ch = curl_init('https://wpinitiate.com/verify-purchase/revoke.php');
210 + if($ch !== false)
211 + {
212 + $data = array();
213 + $data['siteURL'] = get_bloginfo('url');
214 + $fdata = "";
215 + foreach ($data as $key => $val) {
216 + $fdata .= "$key=" . urlencode(trim($val)) . "&";
217 + }
218 + curl_setopt($ch, CURLOPT_POST, 1);
219 + curl_setopt($ch, CURLOPT_POSTFIELDS, $fdata);
220 + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
221 + curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
222 + curl_setopt($ch, CURLOPT_TIMEOUT, 60);
223 + curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
224 + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
225 + $result = curl_exec($ch);
226 +
227 + if($result === false)
228 + {
229 + aiomatic_log_to_file('Failed to revoke verification response: ' . curl_error($ch));
230 + }
231 + if (is_multisite())
232 + {
233 + $main_site_id = get_network()->site_id;
234 + switch_to_blog($main_site_id);
235 + aiomatic_update_option($plugin_slug . '_registration', false);
236 + restore_current_blog();
237 + }
238 + else
239 + {
240 + aiomatic_update_option($plugin_slug . '_registration', false);
241 + }
242 + }
243 + else
244 + {
245 + aiomatic_log_to_file('Failed to init curl to revoke verification response.');
246 + aiomatic_update_option('aiomatic_activation_status', 'Failed to init curl to revoke verification response.');
247 + }
248 + }
249 +
250 + ob_start();
251 + $this->setup_wizard_header();
252 + $this->setup_wizard_steps($aiomatic_Main_Settings);
253 + $this->setup_wizard_content();
254 + $this->setup_wizard_footer();
255 + exit;
256 + }
257 +
258 + public function get_next_step_link() {
259 + $keys = array_keys( $this->steps );
260 + return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ) ) + 1 ], remove_query_arg( 'translation_updated' ) );
261 + }
262 +
263 + public function get_prev_step_link() {
264 + $keys = array_keys( $this->steps );
265 + return add_query_arg( 'step', $keys[ array_search( $this->step, array_keys( $this->steps ) ) - 1 ], remove_query_arg( 'translation_updated' ) );
266 + }
267 +
268 + public function setup_wizard_header() {
269 + ?>
270 + <!DOCTYPE html>
271 + <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
272 + <head>
273 + <meta name="viewport" content="width=device-width" />
274 + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
275 + <title><?php esc_html_e( 'Aimogen Quick Setup & Tutorial', 'aiomatic-automatic-ai-content-writer' ); ?></title>
276 + <?php remove_action( 'admin_print_styles', 'wp_enqueue_emoji_styles' );do_action( 'admin_print_styles' );add_action( 'admin_print_styles', 'wp_enqueue_emoji_styles' ); ?>
277 + <?php do_action( 'admin_print_scripts' ); ?>
278 + <?php /*remove_action( 'admin_head', 'wp_enqueue_admin_bar_header_styles' );do_action( 'admin_head' );add_action( 'admin_print_styles', 'wp_enqueue_admin_bar_header_styles' );*/ ?>
279 + </head>
280 + <body class="aiomatic-setup wp-core-ui">
281 + <h1 id="aiomatic-logo" class="aiomatic-logo"><a target="_blank" href="https://wpbay.com/product/aimogen-pro/"><?php esc_html_e( 'Aimogen Quick Setup & Tutorial', 'aiomatic-automatic-ai-content-writer' ); ?></a></h1>
282 + <?php
283 + }
284 +
285 + public function setup_wizard_footer() {
286 + ?>
287 + <?php remove_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 80 );remove_action( 'wp_footer', 'the_block_template_skip_link' );do_action( 'wp_footer' );add_action( 'wp_footer', 'the_block_template_skip_link' );add_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 80 ); ?>
288 + </body>
289 + </html>
290 + <?php
291 + }
292 +
293 + public function setup_wizard_steps($aiomatic_Main_Settings) {
294 + $output_steps = $this->steps;
295 + ?>
296 + <ol class="aiomatic-setup-steps">
297 + <?php $apifound = false;
298 + foreach ( $output_steps as $step_key => $step ) : ?>
299 + <li class="<?php
300 + if ( $step_key === $this->step ) {
301 + echo 'active';
302 + } elseif ( array_search( $this->step, array_keys( $this->steps ) ) > array_search( $step_key, array_keys( $this->steps ) ) ) {
303 + echo 'done';
304 + }
305 + ?>"><a <?php if(!aiomatic_validate_activation() && ($this->step == 'intro' || $this->step == 'activation') && $step_key !== 'intro' && $step_key != 'activation'){ echo ' href="#" ';}else{?>href=<?php if($apifound === true){echo '"#" title="' . esc_html__( 'You need to add an AiomaticAPI/OpenAI/Azure OpenAI API key to use these features!', 'aiomatic-automatic-ai-content-writer' ) . '"';}else {echo '"' . esc_url_raw( admin_url( 'admin.php?page=aiomatic_admin_settings&step=' . $step_key ) ) . '"';}}?>><?php echo esc_html( $step['name'] ); ?></a>
306 + </li>
307 + <?php
308 + if($step_key == 'apikeys' && (!isset($aiomatic_Main_Settings['app_id']) || $aiomatic_Main_Settings['app_id'] == ''))
309 + {
310 + $apifound = true;
311 + }
312 + endforeach; ?>
313 + </ol>
314 + <?php
315 + }
316 +
317 + public function setup_wizard_content()
318 + {
319 + echo '<div class="aiomatic-setup-content">';
320 + if ( isset( $this->steps[ $this->step ]['view'] ) )
321 + {
322 + call_user_func( $this->steps[ $this->step ]['view'] );
323 + }
324 + echo '</div>';
325 + }
326 +
327 + public function next_step_buttons($first = false, $required = false, $show_save = false, $no_go = false) {
328 + ?>
329 + <p class="aiomatic-setup-actions step">
330 + <?php
331 + if($no_go === false)
332 + {
333 + if($show_save === true)
334 + {
335 + ?>
336 + <input type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( 'Save & Continue', 'aiomatic-automatic-ai-content-writer' ); ?>" name="save_step" />
337 + <?php
338 + }
339 + else
340 + {
341 + ?>
342 + <input type="submit" class="button-primary button button-large button-next" value="<?php esc_attr_e( 'Continue', 'aiomatic-automatic-ai-content-writer' ); ?>" name="save_step" />
343 + <?php
344 + }
345 + }
346 + if($required === false)
347 + {
348 + ?>
349 + <a href="<?php echo esc_url_raw( $this->get_next_step_link() ); ?>" class="button button-large button-next"><?php esc_html_e( 'Skip', 'aiomatic-automatic-ai-content-writer' ); ?></a>
350 + <?php
351 + }
352 + if($first == false)
353 + {
354 + echo '<a href="' . esc_url_raw( $this->get_prev_step_link() ) . '" class="button button-large button-next">' . esc_html__( 'Back', 'aiomatic-automatic-ai-content-writer' ) . '</a>';
355 + }
356 + echo '<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&aiomatic_done_config=1') ) . '" class="button button-large button-next">' . esc_html__( 'Abort', 'aiomatic-automatic-ai-content-writer' ) . '</a>';
357 + wp_nonce_field( 'aiomatic_admin_settings' ); ?>
358 + </p>
359 + <?php
360 + }
361 +
362 + public function setup_step_introduction() {
363 + ?>
364 + <h1><?php esc_html_e( 'Congratulations on choosing Aimogen!', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
365 + <p><?php echo wp_kses_post( esc_html__('You are about to streamline your WordPress experience with the top AI content creation tool available. This Quick Setup Wizard is designed to help you configure the essential settings of Aimogen swiftly and effortlessly. Setting up should take no more than a few minutes.', 'aiomatic-automatic-ai-content-writer' ) ); ?></p>
366 + <h3><?php esc_html_e( 'Why use the Quick Setup?', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
367 + <ul>
368 + <li><b><?php esc_html_e( 'Efficient Configuration:', 'aiomatic-automatic-ai-content-writer' );?></b>&nbsp;<?php esc_html_e( 'Get your plugin up and running with settings that cater to your needs.', 'aiomatic-automatic-ai-content-writer' );?></li>
369 + <li><b><?php esc_html_e( 'Flexibility:', 'aiomatic-automatic-ai-content-writer' );?></b>&nbsp;<?php esc_html_e( 'You can also customize the settings later in the Aimogen dashboard.', 'aiomatic-automatic-ai-content-writer' );?></li>
370 + <li><b><?php esc_html_e( 'Guidance:', 'aiomatic-automatic-ai-content-writer' );?></b>&nbsp;<?php esc_html_e( 'Step-by-step assistance to make setup a breeze.', 'aiomatic-automatic-ai-content-writer' );?></li>
371 + </ul>
372 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/sJqEfTzc8gQ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
373 + <br/><br/>
374 + <h3><?php esc_html_e( 'What you\'ll need:', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
375 + <ul>
376 + <li><?php echo sprintf( wp_kses( __( "Your API key for <a href='%s' target='_blank'>AiomaticAPI</a>, <a href='%s' target='_blank'>OpenAI</a> or <a href='%s' target='_blank'>Microsoft Azure OpenAI</a> (whichever you prefer). Other, secondary AI services will also be able to be used in the plugin, like: Anthropic (Claude), Google AI Studio (Gemini Pro), Perplexity AI, Hugging Face, Groq, Ollama, xAI, Nvidia AI or OpenRouter - each will provide a set of AI models for use in the plugin.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), "https://aiomaticapi.com/api-keys/", "https://platform.openai.com/api-keys", "https://portal.azure.com/?microsoft_azure_marketplace_ItemHideKey=microsoft_openai_tip#home" );?></li>
377 + <li><?php esc_html_e( 'Basic configuration details like your preferred AI model and content generation preferences.', 'aiomatic-automatic-ai-content-writer' );?></li>
378 + </ul>
379 + <h3><?php esc_html_e( 'Optional but helpful:', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
380 + <ul>
381 + <li><?php esc_html_e( 'Access to tutorial videos that provide a visual guide on configuring and maximizing Aimogen:', 'aiomatic-automatic-ai-content-writer' );?></li>
382 + <li><a href="https://www.youtube.com/watch?v=_Ft1czw-VPU&list=PLEiGTaa0iBIhRvgICiyvwBXH-dMBM4VAt" target="_blank"><?php esc_html_e( 'Watch Aimogen\'s Quick Setup Tutorials', 'aiomatic-automatic-ai-content-writer' );?></a></li>
383 + <li><a href="https://www.youtube.com/watch?v=aD7PkrUdzb8&list=PLEiGTaa0iBIhsRSgl5czLEDAhawr_SHx2" target="_blank"><?php esc_html_e( 'Watch Aimogen\'s Update Videos', 'aiomatic-automatic-ai-content-writer' );?></a></li>
384 + </ul>
385 + <h3><?php esc_html_e( 'Not the right time?', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
386 + <ul>
387 + <li><?php esc_html_e( 'Feel free to skip this setup wizard and jump straight to the Aimogen dashboard. You can return to this setup wizard anytime to fine-tune your configuration. To do so, go to the plugin\' \'Settings\' menu -> \'Welcome\' tab, where you will be able to access this wizard again in the future.', 'aiomatic-automatic-ai-content-writer' );?></li>
388 + </ul>
389 + <p><b><?php esc_html_e( 'Let\'s get started and unlock the full potential of your WordPress site with AI-powered content!', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
390 + <p><?php esc_html_e( 'Need help or have questions? Our comprehensive', 'aiomatic-automatic-ai-content-writer' ); ?><a href="https://coderevolution.ro/support/tickets/aiomatic-support/" target="_blank">&nbsp;<?php esc_html_e( 'support center', 'aiomatic-automatic-ai-content-writer' ); ?></a>&nbsp;<?php esc_html_e( 'is here for you', 'aiomatic-automatic-ai-content-writer' ); ?></p>
391 + <p><b><?php esc_html_e( 'Thank you for choosing Aimogen - where powerful AI meets content creation.', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Let\'s make something amazing together!', 'aiomatic-automatic-ai-content-writer' ); ?></p>
392 + <p class="aiomatic-setup-actions step">
393 + <a href="<?php echo esc_url_raw( $this->get_next_step_link() ); ?>" class="button-primary button button-large button-next"><?php esc_html_e( 'Let\'s Go!', 'aiomatic-automatic-ai-content-writer' ); ?></a>
394 + <a href="<?php echo esc_url_raw( admin_url( 'admin.php?page=aiomatic_admin_settings&aiomatic_done_config=1' ) ); ?>" class="button button-large"><?php esc_html_e( 'Not right now', 'aiomatic-automatic-ai-content-writer' ); ?></a>
395 + </p>
396 + <?php
397 + }
398 +
399 + public function setup_step_basic() {
400 + ?>
401 + <h1><?php esc_html_e( 'License Activation', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
402 +
403 + <form id="registerForm" method="post">
404 + <table class="form-table">
405 + <tr>
406 + <td colspan="2">
407 + <?php
408 + $plugin = plugin_basename(__FILE__);
409 + $plugin_slug = explode('/', $plugin);
410 + $plugin_slug = $plugin_slug[0];
411 + $uoptions = array();
412 + $is_activated = aiomatic_is_activated($plugin_slug, $uoptions);
413 + if($is_activated === true)
414 + {
415 + ?>
416 + <h3><b><?php echo esc_html__("Plugin Registration Info - Automatic Updates Enabled:", 'aiomatic-automatic-ai-content-writer');?></b> </h3>
417 + <ul>
418 + <li><b><?php echo esc_html__("Item Name:", 'aiomatic-automatic-ai-content-writer');?></b> <?php echo esc_html($uoptions['item_name']);?></li>
419 + <li>
420 + <b><?php echo esc_html__("Item ID:", 'aiomatic-automatic-ai-content-writer');?></b> <?php echo esc_html($uoptions['item_id']);?>
421 + </li>
422 + <li>
423 + <b><?php echo esc_html__("Created At:", 'aiomatic-automatic-ai-content-writer');?></b> <?php echo esc_html($uoptions['created_at']);?>
424 + </li>
425 + <li>
426 + <b><?php echo esc_html__("Buyer Name:", 'aiomatic-automatic-ai-content-writer');?></b> <?php echo esc_html($uoptions['buyer']);?>
427 + </li>
428 + </ul>
429 + <p>
430 + <input type="submit" onclick="unsaved = false;" class="button button-primary" name="<?php echo esc_html($plugin_slug);?>_revoke_license_setup" value="<?php echo esc_html__("Revoke License", 'aiomatic-automatic-ai-content-writer');?>">
431 + <input name="aiomatic_nonce_setup" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>">
432 + </p>
433 + <?php
434 + }
435 + elseif($is_activated === 2)
436 + {
437 + ?>
438 + <div class="notice notice-error"><p><?php echo esc_html__("This is a demo version of the Aimogen plugin, it has limited functionality in some cases. In the demo mode, the plugin does not need purchase code activation. To use it also on your site, you can purchase a license for it from here: ", 'aiomatic-automatic-ai-content-writer');?><a href="https://wpbay.com/product/aimogen-pro/" target="_blank"><?php echo esc_html__("Aimogen on WPBay", 'aiomatic-automatic-ai-content-writer');?></a></p></div>
439 + <?php
440 + }
441 + elseif($is_activated === -1)
442 + {
443 + ?>
444 + <div class="notice notice-error"><p><?php echo esc_html__("You are using a PIRATED version of the plugin! Because of this, the main functionality of the plugin is not available. Please revoke your license and activate a genuine license for the Aimogen plugin. Note that the only place where you can get a valid license for the plugin is found here (if you find the plugin for sale also on other websites, do not buy, they are selling pirated copies): ", 'aiomatic-automatic-ai-content-writer');?><a href="https://wpbay.com/product/aimogen-pro/" target="_blank"><?php echo esc_html__("Aimogen on WPBay", 'aiomatic-automatic-ai-content-writer');?></a></p></div>
445 + <input type="submit" onclick="unsaved = false;" class="button button-primary" name="<?php echo esc_html($plugin_slug);?>_revoke_license_setup" value="<?php echo esc_html__("Revoke License", 'aiomatic-automatic-ai-content-writer');?>">
446 + <input name="aiomatic_nonce_setup" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>">
447 + <?php
448 + }
449 + elseif($is_activated === -2)
450 + {
451 + ?>
452 + <div class="notice notice-warning">
453 + <p>
454 + <?php
455 + printf(
456 + esc_html__(
457 + "Your Aiomatic license was created on Envato before the WPBay migration. Starting %s, Envato-based licenses purchased before this date will no longer be supported directly in the plugin.",
458 + 'aiomatic-automatic-ai-content-writer'
459 + ),
460 + esc_html( AIMOGEN_MIGRATION_CUTOFF_DATE )
461 + );
462 + ?>
463 + <br>
464 + <?php
465 + echo esc_html__(
466 + "To continue receiving updates and functionality, please migrate your license to WPBay before the cutoff date. During this grace period, your plugin will keep working normally.",
467 + 'aiomatic-automatic-ai-content-writer'
468 + );
469 + ?>
470 + <br><br>
471 +
472 + <!-- VIDEO LINK -->
473 + <strong><?php echo esc_html__("Watch the announcement video:", 'aiomatic-automatic-ai-content-writer');?></strong>
474 + <a href="https://www.youtube.com/watch?v=EAiBAczyuoA" target="_blank">
475 + <?php echo esc_html__("Plugin rename and migration explained", 'aiomatic-automatic-ai-content-writer');?>
476 + </a>
477 +
478 + <br><br>
479 + <strong><?php echo esc_html__("Migrate now:", 'aiomatic-automatic-ai-content-writer');?></strong>
480 + <a href="https://wpbay.com/product/aimogen-pro/#pills-migration" target="_blank">
481 + <?php echo esc_html__("Go to WPBay migration page", 'aiomatic-automatic-ai-content-writer');?>
482 + </a>
483 + </p>
484 + </div>
485 +
486 + <input type="submit" onclick="unsaved = false;" class="button button-primary" name="<?php echo esc_html($plugin_slug);?>_revoke_license_setup" value="<?php echo esc_html__("Revoke License", 'aiomatic-automatic-ai-content-writer');?>">
487 + <input name="aiomatic_nonce_setup" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>">
488 + <?php
489 + }
490 +
491 + elseif($is_activated === -3)
492 + {
493 + ?>
494 + <div class="notice notice-error">
495 + <p>
496 + <?php
497 + printf(
498 + esc_html__(
499 + "Your Aiomatic license was created on Envato before the WPBay migration. As of %s, Envato-based licenses purchased before this date are no longer supported in the plugin.",
500 + 'aiomatic-automatic-ai-content-writer'
501 + ),
502 + esc_html( AIMOGEN_MIGRATION_CUTOFF_DATE )
503 + );
504 + ?>
505 + <br>
506 + <?php
507 + echo esc_html__(
508 + "Your current license is no longer valid for activation or updates. To continue using the plugin and receive new features, please migrate your license to WPBay.",
509 + 'aiomatic-automatic-ai-content-writer'
510 + );
511 + ?>
512 + <br><br>
513 +
514 + <!-- VIDEO LINK -->
515 + <strong><?php echo esc_html__("Watch the announcement video:", 'aiomatic-automatic-ai-content-writer');?></strong>
516 + <a href="https://www.youtube.com/watch?v=EAiBAczyuoA" target="_blank">
517 + <?php echo esc_html__("Plugin rename and migration explained", 'aiomatic-automatic-ai-content-writer');?>
518 + </a>
519 +
520 + <br><br>
521 + <strong><?php echo esc_html__("Migrate now:", 'aiomatic-automatic-ai-content-writer');?></strong>
522 + <a href="https://wpbay.com/product/aimogen-pro/#pills-migration" target="_blank">
523 + <?php echo esc_html__("Go to WPBay migration page", 'aiomatic-automatic-ai-content-writer');?>
524 + </a>
525 + </p>
526 + </div>
527 +
528 + <input type="submit" onclick="unsaved = false;" class="button button-primary" name="<?php echo esc_html($plugin_slug);?>_revoke_license_setup" value="<?php echo esc_html__("Revoke License", 'aiomatic-automatic-ai-content-writer');?>">
529 + <input name="aiomatic_nonce_setup" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>">
530 + <?php
531 + }
532 + else
533 + {
534 + $last_action = get_option('aiomatic_activation_status', '');
535 + if(!empty($last_action))
536 + {
537 + delete_option('aiomatic_activation_status');
538 + echo '<div class="cr_red notice notice-error is-dismissible">' . esc_html__("Failed to change the plugin license status: ", 'aiomatic-automatic-ai-content-writer') . esc_html($last_action) . '</div>';
539 + }
540 + ?>
541 + <div class="notice notice-error is-dismissible"><p><?php echo esc_html__("To unlock all the features of Aimogen and start generating high-quality AI content, please activate your license key. By activating the plugin you will also benefit of automatic updates. Activation is a one-time process and provides you access to the best of Aimogen in compliance with our terms of use.", 'aiomatic-automatic-ai-content-writer');?></p></div>
542 + </td>
543 + </tr>
544 + <tr>
545 + <td>
546 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
547 + <div class="bws_hidden_help_text cr_min_260px">
548 + <?php
549 + echo sprintf( wp_kses( __( 'Please input your purchase code, to enable automatic updates in the plugin. To get your purchase code, please follow <a href="%s" target="_blank">this tutorial</a>. Info submitted to the registration server consists of: purchase code, site URL, site name, admin email. All these data will be used strictly for registration purposes.', 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), '//coderevolution.ro/knowledge-base/faq/how-do-i-find-my-items-purchase-code-for-plugin-license-activation/' );
550 + ?>
551 + </div>
552 + </div>
553 + <b><?php echo esc_html__("Aimogen Purchase Code:", 'aiomatic-automatic-ai-content-writer');?></b>
554 + </td>
555 + <td><input type="text" required name="<?php echo esc_html($plugin_slug);?>_register_code_setup" value="" placeholder="<?php echo esc_html__("Purchase Code", 'aiomatic-automatic-ai-content-writer');?>" class="cr_width_full">
556 + <input name="aiomatic_nonce_setup" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>"></td>
557 + </tr>
558 + <tr>
559 + <td colspan="2"><input type="submit" name="<?php echo esc_html($plugin_slug);?>_register_setup" id="<?php echo esc_html($plugin_slug);?>_register_setup" class="button button-primary" onclick="unsaved = false;" value="<?php echo esc_html__("Activate License", 'aiomatic-automatic-ai-content-writer');?>"/>
560 + <?php
561 + }
562 + ?>
563 + </td>
564 + </tr>
565 + </table>
566 + <?php
567 + if($is_activated === true || $is_activated === 2 || $is_activated === -2)
568 + {
569 + $this->next_step_buttons(true, true);
570 + }
571 + else
572 + {
573 + $this->next_step_buttons(true, true, false, true);
574 + }
575 + ?>
576 + </form>
577 + <br/><br/>
578 + <?php
579 + }
580 + public function setup_step_content() {
581 + ?>
582 + <h1><?php esc_html_e( 'AI Content Creation', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
583 + <p><?php esc_html_e( 'From here on, the Quick Setup will teach you the basics of the plugin\'s usage, check each step and read the provided explanations carefully. Also, watching the tutorial videos can be very helpful for a better understanding of the plugin\'s functionality.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
584 + <p><?php esc_html_e( 'Aimogen revolutionizes content creation with AI-driven capabilities designed to cater to a wide range of content needs. From single posts to bulk articles, and from video captions to product reviews, this plugin covers all bases, streamlining the content generation process for your WordPress site. There will be both manual and automatic variants of content creation, check below the options offered by the plugin:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
585 + <hr/>
586 + <h3 class="ai-section-title"><?php esc_html_e( 'Single AI Post Creator', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
587 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_single_panel'));?>" target="_blank"><?php esc_html_e( 'Single AI Post Creator Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
588 + <p><?php esc_html_e( 'The Single AI Post Creator allows you to effortlessly create individual blog posts using AI. Here, you can manually edit and publish each AI-generated article, complete with images. The Single AI Post Creator has two different modes in which it can be used:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
589 + <p><b><?php esc_html_e( '1. Express Mode:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Quickly generate a post with AI-assisted content, ideal for when you need content fast.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
590 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Single AI Post Creator Express Mode:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
591 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/3W-UGm7pbsU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
592 + <br/><br/>
593 + <p><b><?php esc_html_e( '2. Advanced Mode:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Offers detailed controls to fine-tune the AI output, perfect for when you need a more tailored approach.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
594 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Single AI Post Creator Advanced Mode:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
595 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/rlDtQ8qgGYg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
596 + <br/><br/>
597 +
598 + <hr/>
599 + <h3 class="ai-section-title"><?php esc_html_e( 'Bulk AI Post Creator', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
600 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_items_panel'));?>" target="_blank"><?php esc_html_e( 'Bulk AI Post Creator Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
601 + <p><?php esc_html_e( 'For those looking to scale their content creation, the Bulk AI Post Creator automates the process, allowing you to publish multiple posts according to a schedule. Here also you will find two different ways which will be able to be used, to create content in bulk:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
602 + <p><b><?php esc_html_e( '1. Title Based Post Creator:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'A more straight forward approach, allowing you to input titles, and the AI will generate corresponding posts, streamlining the creation process. This is recommended if you want to create shorter articles (the entire article will be created with a single API call).', 'aiomatic-automatic-ai-content-writer' ); ?></p>
603 + <p><b><?php esc_html_e( '2. Section Based Post Creator:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Start with keywords, and the AI develops long-form content, crafted to provide depth and value. This is recommended for detailed articles, which are based on multiple sections (each section will be created with a different API call).', 'aiomatic-automatic-ai-content-writer' ); ?></p>
604 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Bulk AI Post Creator:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
605 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/dhWhsEIccPU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
606 + <br/><br/>
607 +
608 + <hr/>
609 + <h3 class="ai-section-title"><?php esc_html_e( 'YouTube Videos to Blog Posts', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
610 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_youtube_panel'));?>" target="_blank"><?php esc_html_e( 'YouTube to Blog Posts Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
611 + <p><?php esc_html_e( 'Transform YouTube videos into engaging blog articles. This function parses video captions and employs AI to craft comprehensive posts based on the video content.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
612 + <p><b><?php esc_html_e( 'Watch a Tutorial for the YouTube to Blog Posts:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
613 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/MWpu_ly5ZKE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
614 + <br/><br/>
615 +
616 + <hr/>
617 + <h3 class="ai-section-title"><?php esc_html_e( 'Amazon Product Roundup', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
618 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_amazon_panel'));?>" target="_blank"><?php esc_html_e( 'Amazon Product Roundup Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
619 + <p><?php esc_html_e( 'Create compelling product comparison articles with the Amazon Product Roundup feature. By entering search keywords, you\'ll get AI-generated articles that compare various Amazon products, utilizing imported product info for accuracy and depth.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
620 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Amazon Product Roundup:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
621 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/li3UhcGpVc0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
622 + <br/><br/>
623 +
624 + <hr/>
625 + <h3 class="ai-section-title"><?php esc_html_e( 'Amazon Product Review', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
626 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_review_panel'));?>" target="_blank"><?php esc_html_e( 'Amazon Product Review Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
627 + <p><?php esc_html_e( 'Delve into detailed reviews with the Amazon Product Review feature. Each article is crafted based on the extensive descriptions available on Amazon, providing your readers with thorough insights into the products.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
628 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Amazon Product Review:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
629 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/X_sxxlbdKXU" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
630 + <br/><br/>
631 +
632 + <hr/>
633 + <h3 class="ai-section-title"><?php esc_html_e( 'CSV Post Creator', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
634 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_csv_panel'));?>" target="_blank"><?php esc_html_e( 'CSV Post Creator', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
635 + <p><?php esc_html_e( 'For data-driven content creation, the CSV Post Creator allows articles to be automatically generated from data uploaded in CSV format. This feature is perfect for creating content that includes data analytics, comparisons, or listings.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
636 + <p><b><?php esc_html_e( 'Watch a Tutorial for the CSV Post Creator:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
637 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/3ZhuTt81F58" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
638 + <br/><br/>
639 +
640 + <hr/>
641 + <h3 class="ai-section-title"><?php esc_html_e( 'OmniBlocks', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
642 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_omniblocks#tab-1'));?>" target="_blank"><?php esc_html_e( 'OmniBlocks', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
643 + <p><?php esc_html_e( 'OmniBlocks is the most advanced feature of this plugin, you can also call it the Ultimate AI Content Creation Tool, offering custom queues of blocks that work in unison to generate AI content. This includes text, images, videos, as well as integrating data from Amazon products, YouTube videos, web scrapes, RSS feeds, and Google search results. Content can be crafted into posts, published across social media platforms, or used to call webhooks for extensive automation.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
644 + <ul>
645 + <li>
646 + <b><?php esc_html_e( 'Content Types:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Generate diverse content types including posts for social media like Facebook, X (formerly Twitter), Threads, Instagram, Pinterest, YouTube Community, LinkedIn, and Reddit.', 'aiomatic-automatic-ai-content-writer' ); ?>
647 + </li>
648 + <li>
649 + <b><?php esc_html_e( 'Advanced Integration:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Use webhooks for dynamic content creation and distribution strategies.', 'aiomatic-automatic-ai-content-writer' ); ?>
650 + </li>
651 + <li>
652 + <b><?php esc_html_e( 'Continuous Development:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'New OmniBlock templates and types are continuously added to the plugin in new updates, allowing you to use them in more and more powerful ways.', 'aiomatic-automatic-ai-content-writer' ); ?>
653 + </li>
654 + </ul>
655 + <p><b><?php esc_html_e( 'Watch a Tutorial for the OmniBlocks:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
656 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/vuyssxmxP_Y" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
657 + <br/><br/>
658 + <p><?php esc_html_e( 'These features are designed to harness the power of AI to not only simplify content creation but also to enhance the quality and relevance of the content you publish on your WordPress site. Dive into each feature, explore its potential, and transform the way you create content online.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
659 + <p><?php esc_html_e( 'These features are designed to harness the power of AI to not only simplify content creation but also to enhance the quality and relevance of the content you publish on your WordPress site. Dive into each feature, explore its potential, and transform the way you create content online.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
660 + <form method="post">
661 + <?php $this->next_step_buttons(); ?>
662 + </form>
663 + <br/><br/>
664 + <?php
665 + }
666 +
667 + public function setup_step_forms() {
668 + ?>
669 + <h1><?php esc_html_e( 'AI Forms', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
670 + <p><?php esc_html_e( 'AI Forms within the Aimogen plugin offer a dynamic way to interact with your site visitors through customizable input forms. These forms can be configured to use textual inputs or to generate images with Dall-E, Midjourney, Replicate, Ideogram or Stable Diffusion models, enhancing the functionality and interactivity of your WordPress site.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
671 + <p><b><?php esc_html_e( 'What are AI Forms?', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
672 + <p><?php esc_html_e( 'AI Forms allow for the creation of fully customizable forms that users can interact with directly on your site. These forms support multiple types of inputs including text boxes, radio buttons, checkboxes, and even AI-generated image selectors. You can integrate these forms anywhere on your site using the [aimogen-form id="FORM_ID"] shortcode.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
673 + <?php esc_html_e( 'Potential Uses:', 'aiomatic-automatic-ai-content-writer' ); ?>
674 + <ul>
675 + <li>
676 + <b><?php esc_html_e( 'Customized User Interactions:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Tailor responses to user queries or inputs.', 'aiomatic-automatic-ai-content-writer' ); ?>
677 + </li>
678 + <li>
679 + <b><?php esc_html_e( 'AI Membership Sites:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Facilitate user engagement and content personalization.', 'aiomatic-automatic-ai-content-writer' ); ?>
680 + </li>
681 + <li>
682 + <b><?php esc_html_e( 'Enhanced Site Functionality:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Leverage AI to provide unique services or features.', 'aiomatic-automatic-ai-content-writer' ); ?>
683 + </li>
684 + <li>
685 + <b><?php esc_html_e( 'Built-in Shortcodes:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Extend form capabilities with built-in shortcodes detailed in the \'Built-in Shortcodes\' tab.', 'aiomatic-automatic-ai-content-writer' ); ?>
686 + </li>
687 + </ul>
688 +
689 + <hr/>
690 + <h3 class="ai-section-title"><?php esc_html_e( 'Getting Started with AI Forms', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
691 + <p><b><?php esc_html_e( 'Step 0: Preparation', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
692 + <p><?php esc_html_e( 'Ensure you understand the full capabilities and setup process by reading this tutorial and watching the associated tutorial video from below.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
693 + <p><b><?php esc_html_e( 'Step 1a: Import Default AI Forms', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
694 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_shortcodes_panel#tab-4'));?>" target="_blank"><?php esc_html_e( 'AI Forms Importer/Exporter', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
695 + <p><?php esc_html_e( 'For quick deployment, import default forms that come bundled with the plugin:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
696 + <ul>
697 + <li>
698 + <?php esc_html_e( 'Navigate to the \'AI Forms Importer/Exporter\' tab.', 'aiomatic-automatic-ai-content-writer' ); ?>
699 + </li>
700 + <li>
701 + <?php esc_html_e( 'Click \'Import Default Forms\' to instantly add pre-configured forms to your site.', 'aiomatic-automatic-ai-content-writer' ); ?>
702 + </li>
703 + </ul>
704 + <p><b><?php esc_html_e( 'Step 1b: Create Your Own AI Forms', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
705 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_shortcodes_panel#tab-2'));?>" target="_blank"><?php esc_html_e( 'Add A New AI Form', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
706 + <p><?php esc_html_e( 'Customize and create your forms tailored to your needs:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
707 + <ul>
708 + <li>
709 + <b><?php esc_html_e( 'Form Types:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Choose from text, Dall-E image, Midjourney, Replicate, Ideogram or Stable Diffusion image forms.', 'aiomatic-automatic-ai-content-writer' ); ?>
710 + </li>
711 + <li>
712 + <b><?php esc_html_e( 'Form Setup:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Assign a name and description. Add custom input fields using the \'Add A New Form Input Field\' button.', 'aiomatic-automatic-ai-content-writer' ); ?>
713 + </li>
714 + <li>
715 + <b><?php esc_html_e( 'Input Fields:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'For each input field, set an ID to use as a shortcode within the form\'s AI prompts (e.g., %%input_field_ID%%).', 'aiomatic-automatic-ai-content-writer' ); ?>
716 + </li>
717 + <li>
718 + <b><?php esc_html_e( 'Advanced Settings:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Configure AI model settings and submit button text and much more.', 'aiomatic-automatic-ai-content-writer' ); ?>
719 + </li>
720 + </ul>
721 + <p><b><?php esc_html_e( 'Step 2: Use AI Forms on Your Site', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
722 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_shortcodes_panel#tab-3'));?>" target="_blank"><?php esc_html_e( 'List AI Forms', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
723 + <p><?php esc_html_e( 'List and deploy AI Forms and manage them effectively:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
724 + <ul>
725 + <li>
726 + <b><?php esc_html_e( 'Embedding Forms:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Use the [aimogen-form id="FORM_ID"] shortcode to add forms to posts, pages, or widgets.', 'aiomatic-automatic-ai-content-writer' ); ?>
727 + </li>
728 + <li>
729 + <b><?php esc_html_e( 'Manage Forms:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Edit, delete, or preview existing forms through the \'List AI Forms\' tab.', 'aiomatic-automatic-ai-content-writer' ); ?>
730 + </li>
731 + </ul>
732 + <hr/>
733 + <h3 class="ai-section-title"><?php esc_html_e( 'Finalizing Your AI Forms Setup', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
734 + <p><?php esc_html_e( 'Transform your site with AI Forms\'start engaging your users in more meaningful ways today! AI Forms pave the way for innovative interactions and content personalization, enhancing your digital presence and user experience.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
735 + <p><?php esc_html_e( 'Congratulations on setting up your AI Forms! These forms are not just tools for data collection but gateways to sophisticated interactions that utilize the full potential of AI within your WordPress environment.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
736 +
737 + <p><b><?php esc_html_e( 'Watch a Tutorial for AI Forms:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
738 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/NhbEeIXxu-0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
739 + <br/><br/>
740 +
741 + <form method="post">
742 + <?php $this->next_step_buttons(); ?>
743 + </form>
744 + <div class="cr_center"><?php esc_html_e( 'For more settings, check the plugin\'s ', 'aiomatic-automatic-ai-content-writer' ); echo '"<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_shortcodes_panel#tab-3') ) . '" target="_blank">';esc_html_e( 'AI Forms', 'aiomatic-automatic-ai-content-writer' ); echo '</a>" tab.'; ?></div>
745 + <br/><br/>
746 + <?php
747 + }
748 + public function setup_step_api() {
749 + $aiomatic_Main_Settings = get_option('aiomatic_Main_Settings', false);
750 + if (isset($aiomatic_Main_Settings['api_selector'])) {
751 + $api_selector = $aiomatic_Main_Settings['api_selector'];
752 + } else {
753 + $api_selector = 'openai';
754 + }
755 + if (isset($aiomatic_Main_Settings['azure_endpoint'])) {
756 + $azure_endpoint = $aiomatic_Main_Settings['azure_endpoint'];
757 + } else {
758 + $azure_endpoint = 'openai';
759 + }
760 + if (isset($aiomatic_Main_Settings['app_id_claude'])) {
761 + $app_id_claude = $aiomatic_Main_Settings['app_id_claude'];
762 + } else {
763 + $app_id_claude = '';
764 + }
765 + if (isset($aiomatic_Main_Settings['app_id_google'])) {
766 + $app_id_google = $aiomatic_Main_Settings['app_id_google'];
767 + } else {
768 + $app_id_google = '';
769 + }
770 + if (isset($aiomatic_Main_Settings['app_id_perplexity'])) {
771 + $app_id_perplexity = $aiomatic_Main_Settings['app_id_perplexity'];
772 + } else {
773 + $app_id_perplexity = '';
774 + }
775 + if (isset($aiomatic_Main_Settings['app_id_groq'])) {
776 + $app_id_groq = $aiomatic_Main_Settings['app_id_groq'];
777 + } else {
778 + $app_id_groq = '';
779 + }
780 + if (isset($aiomatic_Main_Settings['app_id_nvidia'])) {
781 + $app_id_nvidia = $aiomatic_Main_Settings['app_id_nvidia'];
782 + } else {
783 + $app_id_nvidia = '';
784 + }
785 + if (isset($aiomatic_Main_Settings['app_id_xai'])) {
786 + $app_id_xai = $aiomatic_Main_Settings['app_id_xai'];
787 + } else {
788 + $app_id_xai = '';
789 + }
790 + if (isset($aiomatic_Main_Settings['app_id_openrouter'])) {
791 + $app_id_openrouter = $aiomatic_Main_Settings['app_id_openrouter'];
792 + } else {
793 + $app_id_openrouter = '';
794 + }
795 + if (isset($aiomatic_Main_Settings['app_id_huggingface'])) {
796 + $app_id_huggingface = $aiomatic_Main_Settings['app_id_huggingface'];
797 + } else {
798 + $app_id_huggingface = '';
799 + }
800 + if (isset($aiomatic_Main_Settings['ollama_url'])) {
801 + $ollama_url = $aiomatic_Main_Settings['ollama_url'];
802 + } else {
803 + $ollama_url = '';
804 + }
805 + if (isset($aiomatic_Main_Settings['app_id'])) {
806 + $app_id = $aiomatic_Main_Settings['app_id'];
807 + } else {
808 + $app_id = '';
809 + }
810 + if (isset($aiomatic_Main_Settings['custom_endpoint'])) {
811 + $custom_endpoint = $aiomatic_Main_Settings['custom_endpoint'];
812 + } else {
813 + $custom_endpoint = '';
814 + }
815 + ?>
816 + <h1><?php esc_html_e( 'API Keys', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
817 +
818 + <form method="post">
819 + <input name="aiomatic_nonce_rand" type="hidden" value="<?php echo esc_html(wp_create_nonce('openai-secret-nonce'));?>">
820 + <table class="form-table">
821 + <tr><td colspan="2"><h3><?php echo esc_html__("Main AI API Settings (Required):", 'aiomatic-automatic-ai-content-writer');?></h3></td></tr>
822 + <tr>
823 + <td>
824 + <div>
825 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
826 + <div class="bws_hidden_help_text cr_min_260px">
827 + <?php
828 + echo esc_html__("Select the AI API service to use to generate content in the plugin using the GPT models (originally released by OpenAI).", 'aiomatic-automatic-ai-content-writer');
829 + ?>
830 + </div>
831 + </div>
832 + <span><?php echo esc_html__("Main API Service Provider Selector:", 'aiomatic-automatic-ai-content-writer');?></span>
833 + </div>
834 + </td>
835 + <td>
836 + <div>
837 + <select id="api_selector" name="aiomatic_Main_Settings[api_selector]" class="cr_width_full">
838 + <option value="openai"<?php
839 + if ($api_selector == "openai") {
840 + echo " selected";
841 + }
842 + ?>><?php echo esc_html__("OpenAI / AiomaticAPI", 'aiomatic-automatic-ai-content-writer');?></option>
843 + <option value="azure"<?php
844 + if ($api_selector == "azure") {
845 + echo " selected";
846 + }
847 + ?>><?php echo esc_html__("Microsoft Azure", 'aiomatic-automatic-ai-content-writer');?></option>
848 + <option value="custom"<?php
849 + if ($api_selector == "custom") {
850 + echo " selected";
851 + }
852 + ?>><?php echo esc_html__("Custom OpenAI Compatible API", 'aiomatic-automatic-ai-content-writer');?></option>
853 + </select>
854 + </div>
855 + </td>
856 + </tr>
857 + <tr class="customhide aiomatic-title-holder"><td colspan="2"><h2><?php echo esc_html__("Custom OpenAI Compatible API Settings", 'aiomatic-automatic-ai-content-writer');?></h2></td></tr>
858 + <tr class="customhide">
859 + <th>
860 + <div>
861 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
862 + <div class="bws_hidden_help_text cr_min_260px">
863 + <?php
864 + echo esc_html__("Insert a custom OpnAI Compatible API Base URL which will be used for API calls.", 'aiomatic-automatic-ai-content-writer');
865 + ?>
866 + </div>
867 + </div>
868 + <b><?php echo esc_html__("OpenAI Compabible API Base URL:", 'aiomatic-automatic-ai-content-writer');?></b>
869 + </div>
870 + </th>
871 + <td>
872 + <div>
873 + <input type="url" class="cr_width_full" autocomplete="off" id="custom_endpoint" name="aiomatic_Main_Settings[custom_endpoint]" placeholder="<?php echo esc_html__("Custom OpenAI Compatible API Base URL", 'aiomatic-automatic-ai-content-writer');?>" value="<?php echo esc_attr($custom_endpoint);?>">
874 + </div>
875 + </td>
876 + </tr>
877 + <tr class="azurehide">
878 + <td colspan="2">
879 + <span class="cr_red">
880 + <?php echo sprintf( wp_kses( __( "Check <a href='%s' target='_blank'>this detailed step-by-step tutorial</a> and also <a href='%s' target='_blank'>this tutorial video</a> for info on setup and usage of Microsoft Azure OpenAI API in Aimogen.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://coderevolution.ro/knowledge-base/faq/how-to-setup-microsoft-azure-api-in-aiomatic/', 'https://www.youtube.com/watch?v=56ZHp2B4qgY' );?></span></td>
881 + </tr>
882 + <tr>
883 + <td>
884 + <div>
885 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
886 + <div class="bws_hidden_help_text cr_min_260px">
887 + <?php
888 + echo sprintf( wp_kses( __( "Insert your API Keys (one per line). For OpenAI API, get your API key <a href='%s' target='_blank'>here</a>. For AiomaticAPI, get your API key <a href='%s' target='_blank'>here</a>. For Azure, get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://platform.openai.com/api-keys', 'https://aiomaticapi.com/pricing/', 'https://portal.azure.com/?microsoft_azure_marketplace_ItemHideKey=microsoft_openai_tip#home' );
889 + ?>
890 + </div>
891 + </div>
892 + <span class="cr_red"><span id="apilinks"><a href='https://platform.openai.com/api-keys' target='_blank'>OpenAI</a>&nbsp;/&nbsp;<a href='https://aiomaticapi.com/api-keys/' target='_blank'>AiomaticAPI</a></span>&nbsp;<?php echo esc_html__("API Keys (One Per Line) - *Required:", 'aiomatic-automatic-ai-content-writer');?></span>
893 + <?php
894 + $token = '';
895 + $appids = preg_split('/\r\n|\r|\n/', trim($aiomatic_Main_Settings['app_id']));
896 + $appids = array_filter($appids);
897 + if(count($appids) == 1)
898 + {
899 + $token = $appids[array_rand($appids)];
900 + $token = apply_filters('aimogen_openai_api_key', $token);$token = apply_filters('aiomatic_openai_api_key', $token);
901 + if(aiomatic_is_aiomaticapi_key($token))
902 + {
903 + $call_count = get_transient('aiomaticapi_tokens');
904 + if($token != '' && $call_count !== false)
905 + {
906 + echo esc_html__("Remaining API Tokens: ", 'aiomatic-automatic-ai-content-writer') . '<b>' . esc_html($call_count) . '</b>';
907 + }
908 + }
909 + }
910 +
911 + ?>
912 + </div>
913 + </td>
914 + <td>
915 + <div>
916 + <textarea rows="2" id="app_id" required onkeyup="keyUpdated();" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id]" placeholder="<?php echo esc_html__("Please insert your OpenAI/AiomaticAPI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
917 + echo esc_textarea($app_id);
918 + ?></textarea>
919 + </div>
920 + </td>
921 + </tr>
922 + <tr class="azurehide">
923 + <td>
924 + <div>
925 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
926 + <div class="bws_hidden_help_text cr_min_260px">
927 + <?php
928 + echo sprintf( wp_kses( __( "Insert your Azure OpenAI API endpoint. Get one in the <a href='%s' target='_blank'>Microsoft Azure Services panel</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://portal.azure.com/?microsoft_azure_marketplace_ItemHideKey=microsoft_openai_tip#home' );
929 + ?>
930 + </div>
931 + </div>
932 + <span><?php echo esc_html__("Azure OpenAI Endpoint:", 'aiomatic-automatic-ai-content-writer');?></span>
933 + </div>
934 + </td>
935 + <td>
936 + <div>
937 + <input type="url" class="cr_width_full" autocomplete="off" id="azure_endpoint" name="aiomatic_Main_Settings[azure_endpoint]" placeholder="<?php echo esc_html__("Azure Endpoint", 'aiomatic-automatic-ai-content-writer');?>" value="<?php echo esc_attr($azure_endpoint);?>">
938 + </div>
939 + </td>
940 + </tr><tr class="azurehide"><td colspan="2"><h4><?php echo esc_html__("Azure AI Model Deployments List", 'aiomatic-automatic-ai-content-writer');
941 + ?>:</h4></td></tr>
942 + <?php
943 + foreach (AIMOGEN_AZURE_MODELS as $model) {
944 + ?>
945 + <tr class="azurehide">
946 + <td>
947 + <div>
948 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
949 + <div class="bws_hidden_help_text cr_min_260px">
950 + <?php
951 + echo sprintf( wp_kses( __( "Insert your Azure OpenAI API deployment name for %s model. Create one in the <a href='%s' target='_blank'>Microsoft Azure Services panel</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), esc_html($model), 'https://portal.azure.com/?microsoft_azure_marketplace_ItemHideKey=microsoft_openai_tip#home' );
952 + ?>
953 + </div>
954 + </div>
955 + <span><?php echo esc_html__("Azure OpenAI Deployment Name For '", 'aiomatic-automatic-ai-content-writer') . esc_html($model) . "':";?></span>
956 + </div>
957 + </td>
958 + <td>
959 + <div>
960 + <input type="text" class="cr_width_full" autocomplete="off" id="azure_model_deployments_<?php echo esc_attr($model); ?>" name="aiomatic_Main_Settings[azure_model_deployments][<?php echo esc_attr($model); ?>]" placeholder="<?php echo esc_html__("Azure deployment name for ", 'aiomatic-automatic-ai-content-writer') . esc_html($model);?>" value="<?php echo esc_attr( isset($azure_model_deployments[$model]) ? $azure_model_deployments[$model] : '' );?>">
961 + </div>
962 + </td>
963 + </tr>
964 + <?php
965 + }
966 + ?>
967 + <tr class="azurehide">
968 + <th>
969 + <div>
970 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
971 + <div class="bws_hidden_help_text cr_min_260px">
972 + <?php
973 + echo sprintf( wp_kses( __( "Insert your Azure OpenAI API deployment name for %s model. Create one in the <a href='%s' target='_blank'>Microsoft Azure Services panel</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), esc_html('dall-e-3'), 'https://portal.azure.com/?microsoft_azure_marketplace_ItemHideKey=microsoft_openai_tip#home' );
974 + ?>
975 + </div>
976 + </div>
977 + <b><?php echo esc_html__("Azure OpenAI Deployment Name For '", 'aiomatic-automatic-ai-content-writer') . 'Dall-E 3' . "':";?></b>
978 + </div>
979 + </th>
980 + <td>
981 + <div>
982 + <input type="text" class="cr_width_full" autocomplete="off" id="azure_model_deployments_dall-e-3" name="aiomatic_Main_Settings[azure_model_deployments][dall-e-3]" placeholder="<?php echo esc_html__("Azure deployment name for ", 'aiomatic-automatic-ai-content-writer') . 'dall-e-3';?>" value="<?php echo esc_attr( isset($azure_model_deployments['dall-e-3']) ? $azure_model_deployments['dall-e-3'] : '' );?>">
983 + </div>
984 + </td>
985 + </tr>
986 + <tr><td colspan="2"><h3><?php echo esc_html__("Additional AI API Settings (Optional):", 'aiomatic-automatic-ai-content-writer');?></h3></td></tr>
987 + <tr>
988 + <th>
989 + <div>
990 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
991 + <div class="bws_hidden_help_text cr_min_260px">
992 + <?php
993 + echo sprintf( wp_kses( __( "Adding your xAI API key in this settings field, will make the xAI models to appear in all model selector boxes from the plugin. To make it work, insert your xAI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://accounts.x.ai/sign-in?redirect=cloud-console' );
994 + ?>
995 + </div>
996 + </div>
997 + <b class="cr_red"><span id="apilinksxai"><a href='https://accounts.x.ai/sign-in?redirect=cloud-console' target='_blank'>xAI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></b>
998 + </div>
999 + </th>
1000 + <td>
1001 + <div>
1002 + <textarea rows="2" id="app_id_xai" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_xai]" placeholder="<?php echo esc_html__("Please insert your xAI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1003 + echo esc_textarea($app_id_xai);
1004 + ?></textarea>
1005 + </div>
1006 + </td>
1007 + </tr>
1008 + <tr>
1009 + <td>
1010 + <div>
1011 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1012 + <div class="bws_hidden_help_text cr_min_260px">
1013 + <?php
1014 + echo sprintf( wp_kses( __( "Adding your Anthropic Claude API key in this settings field, will make the Anthropic Claude models to appear in all model selector boxes from the plugin. To make it work, insert your Anthropic Claude API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://console.anthropic.com/account/keys' );
1015 + ?>
1016 + </div>
1017 + </div>
1018 + <span class="cr_red"><span id="apilinksClaude"><a href='https://console.anthropic.com/account/keys' target='_blank'>Anthropic Claude</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></span>
1019 + </div>
1020 + </td>
1021 + <td>
1022 + <div>
1023 + <textarea rows="2" id="app_id_claude" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_claude]" placeholder="<?php echo esc_html__("Please insert your Anthropic Claude API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1024 + echo esc_textarea($app_id_claude);
1025 + ?></textarea>
1026 + </div>
1027 + </td>
1028 + </tr>
1029 + <tr>
1030 + <td>
1031 + <div>
1032 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1033 + <div class="bws_hidden_help_text cr_min_260px">
1034 + <?php
1035 + echo sprintf( wp_kses( __( "Adding your Google AI Studio API key in this settings field, will make the Google AI Studio AI models to appear in all model selector boxes from the plugin. To make it work, insert your Google AI Studio AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://aistudio.google.com/app/apikey' );
1036 + ?>
1037 + </div>
1038 + </div>
1039 + <span class="cr_red"><span id="apilinksGoogle"><a href='https://aistudio.google.com/app/apikey' target='_blank'>Google AI Studio AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></span>
1040 + </div>
1041 + </td>
1042 + <td>
1043 + <div>
1044 + <textarea rows="2" id="app_id_google" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_google]" placeholder="<?php echo esc_html__("Please insert your Google AI Studio AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1045 + echo esc_textarea($app_id_google);
1046 + ?></textarea>
1047 + </div>
1048 + </td>
1049 + </tr>
1050 + <tr>
1051 + <td>
1052 + <div>
1053 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1054 + <div class="bws_hidden_help_text cr_min_260px">
1055 + <?php
1056 + echo sprintf( wp_kses( __( "Adding your Perplexity key in this settings field, will make the Perplexity AI models to appear in all model selector boxes from the plugin. To make it work, insert your Perplexity AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://www.perplexity.ai/settings/api' );
1057 + ?>
1058 + </div>
1059 + </div>
1060 + <span class="cr_red"><span id="apilinksPerplexity"><a href='https://www.perplexity.ai/settings/api' target='_blank'>Perplexity AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></span>
1061 + </div>
1062 + </td>
1063 + <td>
1064 + <div>
1065 + <textarea rows="2" id="app_id_perplexity" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_perplexity]" placeholder="<?php echo esc_html__("Please insert your Perplexity AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1066 + echo esc_textarea($app_id_perplexity);
1067 + ?></textarea>
1068 + </div>
1069 + </td>
1070 + </tr>
1071 + <tr>
1072 + <th>
1073 + <div>
1074 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1075 + <div class="bws_hidden_help_text cr_min_260px">
1076 + <?php
1077 + echo sprintf( wp_kses( __( "Adding your Groq AI API key in this settings field, will make the Groq AI models to appear in all model selector boxes from the plugin. To make it work, insert your Groq AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://console.groq.com/keys' );
1078 + ?>
1079 + </div>
1080 + </div>
1081 + <b class="cr_red"><span id="apilinksGroq"><a href='https://console.groq.com/keys' target='_blank'>Groq AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></b>
1082 + </div>
1083 + </th>
1084 + <td>
1085 + <div>
1086 + <textarea rows="2" id="app_id_groq" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_groq]" placeholder="<?php echo esc_html__("Please insert your Groq AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1087 + echo esc_textarea($app_id_groq);
1088 + ?></textarea>
1089 + </div>
1090 + </td>
1091 + </tr>
1092 + <tr>
1093 + <th>
1094 + <div>
1095 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1096 + <div class="bws_hidden_help_text cr_min_260px">
1097 + <?php
1098 + echo sprintf( wp_kses( __( "Adding your Nvidia AI API key in this settings field, will make the Nvidia AI models to appear in all model selector boxes from the plugin. To make it work, insert your Nvidia AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://build.nvidia.com/nvidia' );
1099 + ?>
1100 + </div>
1101 + </div>
1102 + <b class="cr_red"><span id="apilinksNvidia"><a href='https://build.nvidia.com/nvidia' target='_blank'>Nvidia AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></b>
1103 + </div>
1104 + </th>
1105 + <td>
1106 + <div>
1107 + <textarea rows="2" id="app_id_nvidia" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_nvidia]" placeholder="<?php echo esc_html__("Please insert your Nvidia AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1108 + echo esc_textarea($app_id_nvidia);
1109 + ?></textarea>
1110 + </div>
1111 + </td>
1112 + </tr>
1113 + <tr>
1114 + <td>
1115 + <div>
1116 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1117 + <div class="bws_hidden_help_text cr_min_260px">
1118 + <?php
1119 + echo sprintf( wp_kses( __( "Adding your OpenRouter key in this settings field, will make the OpenRouter AI models to appear in all model selector boxes from the plugin. To make it work, insert your OpenRouter AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://openrouter.ai/keys' );
1120 + ?>
1121 + </div>
1122 + </div>
1123 + <span class="cr_red"><span id="apilinksOpenrouter"><a href='https://openrouter.ai/keys' target='_blank'>OpenRouter AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></span>
1124 + </div>
1125 + </td>
1126 + <td>
1127 + <div>
1128 + <textarea rows="2" id="app_id_openrouter" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_openrouter]" placeholder="<?php echo esc_html__("Please insert your OpenRouter AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1129 + echo esc_textarea($app_id_openrouter);
1130 + ?></textarea>
1131 + </div>
1132 + </td>
1133 + </tr>
1134 + <tr>
1135 + <th>
1136 + <div>
1137 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1138 + <div class="bws_hidden_help_text cr_min_260px">
1139 + <?php
1140 + echo sprintf( wp_kses( __( "Adding your HuggingFace key in this settings field, will make the HuggingFace AI models to appear in all model selector boxes from the plugin. To make it work, insert your HuggingFace AI API Keys (one per line). Get your API key <a href='%s' target='_blank'>here</a>.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'https://huggingface.co/settings/tokens' );
1141 + ?>
1142 + </div>
1143 + </div>
1144 + <b class="cr_red"><span id="apilinksHuggingFace"><a href='https://huggingface.co/settings/tokens' target='_blank'>HuggingFace AI</a>&nbsp;<?php echo esc_html__("API Keys (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></b>
1145 + </div>
1146 + </th>
1147 + <td>
1148 + <div>
1149 + <textarea rows="2" id="app_id_huggingface" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[app_id_huggingface]" placeholder="<?php echo esc_html__("Please insert your HuggingFace AI API Key", 'aiomatic-automatic-ai-content-writer');?>"><?php
1150 + echo esc_textarea($app_id_huggingface);
1151 + ?></textarea>
1152 + </div>
1153 + </td>
1154 + </tr>
1155 + <tr>
1156 + <th>
1157 + <div>
1158 + <div class="bws_help_box bws_help_box_right dashicons dashicons-editor-help cr_align_middle">
1159 + <div class="bws_hidden_help_text cr_min_260px">
1160 + <?php
1161 + echo sprintf( wp_kses( __( "Add your Ollama Server URL. This can be the local installation of Ollama, from your server. If you are running Ollama locally, the default IP address + port will be %s - You can download the installation files of Ollama, <a href='%s' target='_blank'>here</a>. Check <a href='%s' target='_blank'>this tutorial video</a> for details on installing Ollama locally. Check <a href='%s' target='_blank'>this other tutorial video</a> for details on installing Ollama remotely on Digital Ocean droplets.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), 'http://localhost:11434', 'https://ollama.com/download', 'https://youtu.be/cRn4feaz0po', 'https://youtu.be/SOOx6TSEh3k' );
1162 + ?>
1163 + </div>
1164 + </div>
1165 + <b class="cr_red"><span id="apilinksOllama"><a href='https://ollama.com/download' target='_blank'>Ollama</a>&nbsp;<?php echo esc_html__("Server URL (One Per Line):", 'aiomatic-automatic-ai-content-writer');?></b>
1166 + <?php
1167 + if($ollama_url != '')
1168 + {
1169 + $phchecked = get_transient('aiomatic_ollama_check');
1170 + if($phchecked === false)
1171 + {
1172 + $ollama = aiomatic_testOllama();
1173 + if($ollama === 0)
1174 + {
1175 + echo '<br/><span class="cr_red12"><b>' . esc_html__('INFO: Ollama not found - please install it and set it up correctly!', 'aiomatic-automatic-ai-content-writer') . '</b> <a href=\'https://ollama.com/\' target=\'_blank\'>' . esc_html__('Download and install Ollama', 'aiomatic-automatic-ai-content-writer') . '</a></span>';
1176 + }
1177 + elseif($ollama === 1)
1178 + {
1179 + echo '<br/><span class="cr_green12"><b>' . esc_html__('INFO: Ollama Test Successful', 'aiomatic-automatic-ai-content-writer') . '</b></span>';
1180 + set_transient('aiomatic_ollama_check', '1', 2592000);
1181 + }
1182 + }
1183 + else
1184 + {
1185 + echo '<br/><span class="cr_green12"><b>' . esc_html__('INFO: Ollama OK', 'aiomatic-automatic-ai-content-writer') . '</b></span><br/><a id="ollamaButton" href="#" onclick="aiomaticRefreshOllama();" class="button">' . esc_html__('Refresh Ollama Model List', 'aiomatic-automatic-ai-content-writer') . '</a>';
1186 + }
1187 + }
1188 + else
1189 + {
1190 + delete_option('aiomatic_ollama_models');
1191 + }
1192 + ?>
1193 + </div>
1194 + </th>
1195 + <td>
1196 + <div>
1197 + <textarea rows="2" id="ollama_url" class="cr_textarea_pass cr_width_full" name="aiomatic_Main_Settings[ollama_url]" placeholder="<?php echo esc_html__("Please insert your Ollama Server URL", 'aiomatic-automatic-ai-content-writer');?>"><?php
1198 + echo esc_textarea($ollama_url);
1199 + ?></textarea>
1200 + </div>
1201 + </td>
1202 + </tr>
1203 + </table>
1204 +
1205 + <?php $this->next_step_buttons(false, true, true); ?>
1206 + </form>
1207 + <div class="cr_center"><?php esc_html_e( 'For more options and to set up more APIs which can be used in the plugin, check the plugin\'s ', 'aiomatic-automatic-ai-content-writer' ); echo '"<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&skip_config=1#tab-2') ) . '" target="_blank">';esc_html_e( 'API Keys', 'aiomatic-automatic-ai-content-writer' ); echo '</a>" tab.'; ?></div>
1208 + <br/><br/>
1209 + <?php
1210 + }
1211 +
1212 + public function setup_step_more() {
1213 + ?>
1214 + <h1><?php esc_html_e( 'More Features', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
1215 + <p><?php esc_html_e( 'While Aimogen is known for its powerful core functionalities, it also boasts a suite of hidden gems that can significantly enhance your digital experience on WordPress. From content management to interactive engagement, these additional features are designed to supercharge your website\'s capabilities. Let\'s delve into these exciting features.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1216 +
1217 + <h3 class="ai-section-title"><?php esc_html_e( 'Use AI Assistants Instead Of AI Models', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1218 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_assistants_panel') );?>" target="_blank"><?php esc_html_e( 'AI Assistants', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1219 + <p><b><?php esc_html_e( 'Step 1a: Create a New Assistant', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1220 + <ul>
1221 + <li>
1222 + <b><?php esc_html_e( 'Add New Assistant:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Click the \'Add New Assistant\' button to start configuring a new assistant.', 'aiomatic-automatic-ai-content-writer' ); ?>
1223 + </li>
1224 + <li>
1225 + <b><?php esc_html_e( 'Configuration Details:', 'aiomatic-automatic-ai-content-writer' ); ?></b>
1226 + <br/><ul>
1227 + <li><b><?php esc_html_e( 'Name and Description:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Provide a name and a detailed description of the assistant\'s responsibilities.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1228 + <li><b><?php esc_html_e( 'AI Model Selection:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Choose an AI model that best suits the tasks you expect the assistant to perform.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1229 + <li><b><?php esc_html_e( 'Context Prompt:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( ' In the \'Assistant Context Prompt\' field, input necessary background information which the assistant should consistently remember (e.g., its name, role, and any specific tasks it needs to handle).', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1230 + <li><b><?php esc_html_e( 'Advanced Features:', 'aiomatic-automatic-ai-content-writer' ); ?></b>
1231 + <ul>
1232 + <li>
1233 + <?php esc_html_e( 'Enable features like \'Code Interpreter\' for running snippets of code.', 'aiomatic-automatic-ai-content-writer' ); ?>
1234 + </li>
1235 + <li>
1236 + <?php esc_html_e( 'Enable \'File Search\' for fetching and using external data.', 'aiomatic-automatic-ai-content-writer' ); ?>
1237 + </li>
1238 + <li>
1239 + <?php esc_html_e( 'Add custom functions that the assistant can use to process requests.', 'aiomatic-automatic-ai-content-writer' ); ?>
1240 + </li>
1241 + <li>
1242 + <?php esc_html_e( 'Upload files that the assistant can reference or extract content from.', 'aiomatic-automatic-ai-content-writer' ); ?>
1243 + </li>
1244 + </ul>
1245 + </li>
1246 + <li><b><?php esc_html_e( 'Avatar Assignment:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Assign an avatar that will represent the assistant, particularly useful when the assistant is utilized in chatbot functions.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1247 + </ul>
1248 + </li>
1249 + </ul>
1250 + <p><b><?php esc_html_e( 'Step 1b: Import Existing Assistants', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1251 + <p><?php esc_html_e( 'If you have pre-configured assistants on OpenAI\'s platform, use the \'Import Assistants From OpenAI\' button to integrate them directly into your WordPress site. All imported and created assistants will be available for selection and use within the plugin.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1252 + <p><b><?php esc_html_e( 'Step 2: Utilize Assistants in Plugin Settings', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1253 + <p><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1254 + <p><b><?php esc_html_e( 'Assign your AI Assistants to specific tasks within your site: in the relevant plugin settings section, replace the traditional AI model with one of your configured or imported assistants using the \'AI Assistant Name\' settings field.', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1255 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/x2mkjdOZI9Y" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1256 + <br/><br/>
1257 +
1258 + <h3 class="ai-section-title"><?php esc_html_e( 'AI Embeddings', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1259 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_embeddings_panel') );?>" target="_blank"><?php esc_html_e( 'AI Embeddings', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1260 + <p><?php esc_html_e( 'Embeddings are essentially snippets of pre-processed data that help the AI understand the context or specific details about a subject without the need to train a completely new model. This method is highly efficient for providing the AI with the necessary background to accurately address complex queries about your company, products, or content.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1261 + <p><b><?php esc_html_e( 'Setting Up AI Embeddings', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1262 + <p><?php esc_html_e( 'Step 1: Create Data for Embeddings - Quality Data Creation: Focus on developing precise questions and answers that provide clear, concise, and relevant context. Data Volume: Unlike full AI training, embeddings do not require vast amounts of data. Include just enough information to guide the AI accurately.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1263 + <p><?php esc_html_e( 'Step 2: Auto Index Existing Posts - Automatically generate embeddings from existing content. Set the plugin to index posts, pages, products, or custom post types and create embeddings from this content. Template Customization: Adjust the auto-created embeddings template from the \'Embeddings\' tab under \'Settings\' menu, to fit the specific format you need for your data.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1264 + <p><?php esc_html_e( 'Step 3: Manage Embeddings - Review and refine your embeddings: edit or delete embeddings as needed to keep the dataset current and effective.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1265 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1266 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/hkk0d7W0kIs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1267 + <br/><br/>
1268 +
1269 + <h3 class="ai-section-title"><?php esc_html_e( 'AI Model Training', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1270 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_openai_training') );?>" target="_blank"><?php esc_html_e( 'AI Model Training', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1271 + <p><?php esc_html_e( 'Fine-tuning AI models involves customizing a pre-trained AI model to enhance its understanding and output based on specific tasks or datasets. This feature within Aimogen allows you to tailor the AI responses to closely align with your organizational needs, whether for creating a niche chatbot, generating targeted content, or providing precise customer support. Fine-tuning is the process of training an AI model on a tailored dataset to specialize its responses and functionalities. This method significantly improves the model\'s accuracy on specific topics by adjusting its parameters to reflect the nuances of the provided data.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1272 + <p><b><?php esc_html_e( 'Setting Up AI Fine-Tuning', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1273 + <p><?php esc_html_e( 'Step 1: Create Your Dataset - Prepare your dataset, which is critical for the fine-tuning process:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1274 + <ul>
1275 + <li>
1276 + <b><?php esc_html_e( 'Dataset Uploader (Step 1a):', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Directly upload your JSONL file if it\'s ready. Ensure it uses the prompt and completion format, with each line containing a pair. Upload Guidelines: Check your WordPress settings to accommodate the file size. Use tools like OpenAI\'s CLI Data Preparation Tool to format your data correctly.', 'aiomatic-automatic-ai-content-writer' ); ?>
1277 + </li>
1278 + <li>
1279 + <b><?php esc_html_e( 'Manual Entry (Step 1b):', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Input data manually into the plugin or use tools to systematically gather and convert your content into a dataset.', 'aiomatic-automatic-ai-content-writer' ); ?>
1280 + </li>
1281 + <li>
1282 + <b><?php esc_html_e( 'Dataset Converter (Step 1c):', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically convert website content (posts, pages, products) into a structured dataset where titles are questions and content are answers.', 'aiomatic-automatic-ai-content-writer' ); ?>
1283 + </li>
1284 + </ul>
1285 + <p><?php esc_html_e( 'Step 2: Initiate Model Training - Once your dataset is prepared and uploaded:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1286 + <ul>
1287 + <li>
1288 + <b><?php esc_html_e( 'Start Training:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Navigate to the \'Datasets\' tab, select your dataset, and click \'Create Fine-Tune\'. Choose to fine-tune a new model or an existing one.', 'aiomatic-automatic-ai-content-writer' ); ?>
1289 + </li>
1290 + <li>
1291 + <b><?php esc_html_e( 'Training Duration:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Training time can vary; a typical 500-row dataset might take about 20 minutes to process.', 'aiomatic-automatic-ai-content-writer' ); ?>
1292 + </li>
1293 + </ul>
1294 + <p><?php esc_html_e( 'Step 3: Monitor and Deploy - After initiating the fine-tune:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1295 + <ul>
1296 + <li>
1297 + <b><?php esc_html_e( 'Check Progress:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Monitor the status of your fine-tuning under the \'Model Finetunes\' tab. Ensure the model lists as \'succeeded\' before use.', 'aiomatic-automatic-ai-content-writer' ); ?>
1298 + </li>
1299 + <li>
1300 + <b><?php esc_html_e( 'Deployment:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Once successful, the fine-tuned model will be available in the plugin\'s model selection dropdown.', 'aiomatic-automatic-ai-content-writer' ); ?>
1301 + </li>
1302 + </ul>
1303 + <p><b><?php esc_html_e( 'Tips for Effective Fine-Tuning', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1304 + <ul>
1305 + <li>
1306 + <b><?php esc_html_e( 'Dataset Quality:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'The quality and size of your dataset are paramount. More comprehensive and well-structured data leads to better model performance.', 'aiomatic-automatic-ai-content-writer' ); ?>
1307 + </li>
1308 + <li>
1309 + <b><?php esc_html_e( 'Continuous Monitoring:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Regularly check the model\'s performance and make adjustments to the dataset as needed.', 'aiomatic-automatic-ai-content-writer' ); ?>
1310 + </li>
1311 + <li>
1312 + <b><?php esc_html_e( 'Iterative Process:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Fine-tuning can be an iterative process. Initial results should be analyzed and used to refine the dataset and model parameters continually.', 'aiomatic-automatic-ai-content-writer' ); ?>
1313 + </li>
1314 + </ul>
1315 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1316 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/MV5F2X6z_X4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1317 + <br/><br/>
1318 +
1319 + <h3 class="ai-section-title"><?php esc_html_e( 'Limits and Statistics', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1320 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_openai_status') );?>" target="_blank"><?php esc_html_e( 'Limits and Statistics menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1321 + <p><?php esc_html_e( 'The Aimogen plugin includes comprehensive tools for managing and monitoring AI service usage. The \'Limits and Statistics\' feature provides detailed logs, graphs, and usage controls, enabling you to efficiently oversee operations within your WordPress site. Check features available in this section of the plugin:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1322 + <ul>
1323 + <li>
1324 + <b><?php esc_html_e( 'Usage Logs:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'This tab displays a detailed table with usage metrics for each AI request made through the plugin:', 'aiomatic-automatic-ai-content-writer' ); ?>
1325 + <ul>
1326 + <li>
1327 + <?php esc_html_e( 'User: Who made the request.', 'aiomatic-automatic-ai-content-writer' ); ?>
1328 + </li>
1329 + <li>
1330 + <?php esc_html_e( 'IP: The IP address from which the request originated.', 'aiomatic-automatic-ai-content-writer' ); ?>
1331 + </li>
1332 + <li>
1333 + <?php esc_html_e( 'Source: Where the request was made (e.g., post editor, widget).', 'aiomatic-automatic-ai-content-writer' ); ?>
1334 + </li>
1335 + <li>
1336 + <?php esc_html_e( 'Model: Which AI model was used.', 'aiomatic-automatic-ai-content-writer' ); ?>
1337 + </li>
1338 + <li>
1339 + <?php esc_html_e( 'Mode: Operational mode (e.g., automatic, manual).', 'aiomatic-automatic-ai-content-writer' ); ?>
1340 + </li>
1341 + <li>
1342 + <?php esc_html_e( 'Units: Number of units (tokens) used.', 'aiomatic-automatic-ai-content-writer' ); ?>
1343 + </li>
1344 + <li>
1345 + <?php esc_html_e( 'Type: Type of units used (e.g., tokens).', 'aiomatic-automatic-ai-content-writer' ); ?>
1346 + </li>
1347 + <li>
1348 + <?php esc_html_e( 'Price: Cost incurred for the request.', 'aiomatic-automatic-ai-content-writer' ); ?>
1349 + </li>
1350 + <li>
1351 + <?php esc_html_e( 'Time: Timestamp of the request.', 'aiomatic-automatic-ai-content-writer' ); ?>
1352 + </li>
1353 + <li>
1354 + <?php esc_html_e( 'Session ID: Identifier for the session during which the request was made.', 'aiomatic-automatic-ai-content-writer' ); ?>
1355 + </li>
1356 + </ul>
1357 + </li>
1358 + <li>
1359 + <b><?php esc_html_e( 'Usage Graphs:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Visualize the plugin\'s usage through several types of graphs:', 'aiomatic-automatic-ai-content-writer' ); ?>
1360 + <ul>
1361 + <li>
1362 + <?php esc_html_e( 'Call Count: Number of API calls made over time.', 'aiomatic-automatic-ai-content-writer' ); ?>
1363 + </li>
1364 + <li>
1365 + <?php esc_html_e( 'Token Count: Number of tokens used over time.', 'aiomatic-automatic-ai-content-writer' ); ?>
1366 + </li>
1367 + <li>
1368 + <?php esc_html_e( 'Usage Cost: Costs incurred over time.', 'aiomatic-automatic-ai-content-writer' ); ?>
1369 + </li>
1370 + <li>
1371 + <?php esc_html_e( 'AI Image Count: Number of AI-generated images over time.', 'aiomatic-automatic-ai-content-writer' ); ?>
1372 + </li>
1373 + </ul>
1374 + </li>
1375 + <li>
1376 + <b><?php esc_html_e( 'Usage Limits:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Set and manage usage limits to prevent abuse and manage costs:', 'aiomatic-automatic-ai-content-writer' ); ?>
1377 + <ul>
1378 + <li>
1379 + <?php esc_html_e( 'Limit Types: Configure limits based on token usage, price, or call count.', 'aiomatic-automatic-ai-content-writer' ); ?>
1380 + </li>
1381 + <li>
1382 + <?php esc_html_e( 'User-Specific Limits: Set different limits for logged-in users versus guests.', 'aiomatic-automatic-ai-content-writer' ); ?>
1383 + </li>
1384 + <li>
1385 + <?php esc_html_e( 'Role-Based Limits: Apply distinct limits based on user roles, allowing more flexibility for administrators or other roles.', 'aiomatic-automatic-ai-content-writer' ); ?>
1386 + </li>
1387 + <li>
1388 + <?php esc_html_e( 'Membership Integration: Utilize integration with the \'Ultimate Membership Pro\' plugin, \'Paid Memberships Pro\' plugin or the \'Restrict Content Pro\' to set varying limits for different membership levels.', 'aiomatic-automatic-ai-content-writer' ); ?>
1389 + </li>
1390 + </ul>
1391 + </li>
1392 + <li>
1393 + <b><?php esc_html_e( 'OpenAI Status:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Keep track of OpenAI\'s operational status and any incidents that might affect service availability: current status and health of the OpenAI API, also check incident reports, showing details of any ongoing or past issues that might have impacted service.', 'aiomatic-automatic-ai-content-writer' ); ?>
1394 + </li>
1395 + </ul>
1396 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1397 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/skwJz6yeqIg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1398 + <br/><br/>
1399 +
1400 + <h3 class="ai-section-title"><?php esc_html_e( 'Aimogen Extensions', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1401 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_extensions') );?>" target="_blank"><?php esc_html_e( 'Aimogen Extensions menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1402 + <p><?php esc_html_e( 'Extend your Aimogen plugin with extra features and functionality. Check additional available Extensions in this menu of the plugin. Some examples of extensions available for the plugin:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1403 + <ul>
1404 + <li>
1405 + <b><?php esc_html_e( 'PDF Parsing:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'PDF file parsing and storage using OmniBlocks', 'aiomatic-automatic-ai-content-writer' ); ?>
1406 + </li>
1407 + <li>
1408 + <b><?php esc_html_e( 'Amazon S3 Storage For Images:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Store royalty-free or AI-generated images on Amazon S3', 'aiomatic-automatic-ai-content-writer' ); ?>
1409 + </li>
1410 + <li>
1411 + <b><?php esc_html_e( 'MCP Server:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Create a MCP server on your website, allowing AI tools to connect directly to it and use its features directly.', 'aiomatic-automatic-ai-content-writer' ); ?>
1412 + </li>
1413 + <li>
1414 + <b><?php esc_html_e( 'Amazon API:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Use the official Amazon API instead of using web scraping, to get Amazon product details', 'aiomatic-automatic-ai-content-writer' ); ?>
1415 + </li>
1416 + <li>
1417 + <b><?php esc_html_e( 'Social Sharing:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Adds multiple chatbot extension & OmniBlock extensions for sharing on various social networks, like: Facebook, Twitter, Threads, Instagram, Pinterest, LinkedIn, Reddit, YouTube Community.', 'aiomatic-automatic-ai-content-writer' ); ?>
1418 + </li>
1419 + </ul>
1420 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1421 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/DIUZkvD4Y6U" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1422 + <br/><br/>
1423 +
1424 + <h3 class="ai-section-title"><?php esc_html_e( 'Content Wizard', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1425 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&skip_config=1#tab-16') );?>" target="_blank"><?php esc_html_e( 'Content Wizard Tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1426 + <p><?php esc_html_e( 'The Content Wizard acts as your personal content strategist, aiding in various aspects of content management:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1427 + <ul>
1428 + <li>
1429 + <b><?php esc_html_e( 'AI-Powered Meta Tags:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically generates meta tags for your posts, optimizing them for better SEO.', 'aiomatic-automatic-ai-content-writer' ); ?>
1430 + </li>
1431 + <li>
1432 + <b><?php esc_html_e( 'Keyword Suggestions:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Provides keyword recommendations to improve search engine visibility.', 'aiomatic-automatic-ai-content-writer' ); ?>
1433 + </li>
1434 + <li>
1435 + <b><?php esc_html_e( 'Content Optimization:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Offers insights and suggestions to enhance the quality and SEO of your text.', 'aiomatic-automatic-ai-content-writer' ); ?>
1436 + </li>
1437 + </ul>
1438 + <p><?php esc_html_e( 'This tool is essential for anyone looking to improve their content\'s reach and impact efficiently.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1439 + <p><b><?php esc_html_e( 'Watch a Tutorial for the Content Wizard:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1440 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/e5tPgqOB8ss" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1441 + <br/><br/>
1442 +
1443 + <h3 class="ai-section-title"><?php esc_html_e( 'AI Media Library Extensions', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1444 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('upload.php?page=aiomatic-automatic-ai-content-writer') );?>" target="_blank"><?php esc_html_e( 'Media Library Extension', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1445 + <p><?php esc_html_e( 'Elevate your media library with AI-driven extensions to create AI generated images and also to add alt and SEO meta tags to existing images:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1446 + <ul>
1447 + <li>
1448 + <?php esc_html_e( 'Create AI generated images and autoamtically add them to your Media Library', 'aiomatic-automatic-ai-content-writer' ); ?>
1449 + </li>
1450 + <li>
1451 + <?php esc_html_e( 'Automatically generates alt text, captions, and descriptions for images, enhancing accessibility and SEO.', 'aiomatic-automatic-ai-content-writer' ); ?>
1452 + </li>
1453 + <li>
1454 + <?php esc_html_e( 'Suggests relevant tags and keywords for your media files, ensuring they are discoverable and rank well in search engines.', 'aiomatic-automatic-ai-content-writer' ); ?>
1455 + </li>
1456 + </ul>
1457 + <p><?php esc_html_e( 'These extensions save time and streamline the process of media optimization.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1458 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1459 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/wRY6ElVZawI" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1460 + <br/><br/>
1461 +
1462 + <h3 class="ai-section-title"><?php esc_html_e( 'Comment Replier', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1463 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&skip_config=1#tab-21') );?>" target="_blank"><?php esc_html_e( 'Comment Replier', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1464 + <p><?php esc_html_e( 'Interact with your audience effortlessly with the Comment Replier feature. This tool uses AI to:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1465 + <ul>
1466 + <li>
1467 + <?php esc_html_e( 'Analyze Comments: Understands the context and sentiment of user comments.', 'aiomatic-automatic-ai-content-writer' ); ?>
1468 + </li>
1469 + <li>
1470 + <?php esc_html_e( 'Suggest Responses: Provides intelligent reply suggestions to help maintain active and engaging conversations.', 'aiomatic-automatic-ai-content-writer' ); ?>
1471 + </li>
1472 + </ul>
1473 + <p><?php esc_html_e( 'The Comment Replier is invaluable for keeping your community lively and responsive.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1474 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1475 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/VknKvIcKRuw" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1476 + <br/><br/>
1477 +
1478 + <h3 class="ai-section-title"><?php esc_html_e( 'AI Taxonomy Description Writer', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1479 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&skip_config=1#tab-22') );?>" target="_blank"><?php esc_html_e( 'AI Taxonomy Description Writer', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1480 + <p><?php esc_html_e( 'Optimize your WordPress taxonomies (categories and tags) with AI-crafted descriptions that boost SEO:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1481 + <ul>
1482 + <li>
1483 + <?php esc_html_e( 'Automated Descriptions: AI generates insightful and keyword-rich descriptions for each taxonomy to enhance search visibility.', 'aiomatic-automatic-ai-content-writer' ); ?>
1484 + </li>
1485 + </ul>
1486 + <p><?php esc_html_e( 'This feature is crucial for anyone looking to improve their site\'s organizational SEO efforts.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1487 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1488 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/k5BFo9jcmcs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1489 + <br/><br/>
1490 +
1491 + <h3 class="ai-section-title"><?php esc_html_e( '[aicontent] Shortcode', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1492 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&skip_config=1#tab-20') );?>" target="_blank"><?php esc_html_e( '[aicontent] Shortcode', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1493 + <p><?php esc_html_e( 'Integrate Aimogen\'s capabilities across your WordPress plugins with the [aicontent] shortcode. This powerful shortcode:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1494 + <ul>
1495 + <li>
1496 + <?php esc_html_e( 'Universal Integration: Works with any plugin, enabling AI-generated content for posts, pages, and custom post types created by other plugins.', 'aiomatic-automatic-ai-content-writer' ); ?>
1497 + </li>
1498 + <li>
1499 + <?php esc_html_e( 'Dynamic Content Generation: Ensures that all content, whether scraped or manually entered, remains fresh and engaging.', 'aiomatic-automatic-ai-content-writer' ); ?>
1500 + </li>
1501 + </ul>
1502 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1503 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/z_mGPlBsQQA" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1504 + <br/><br/>
1505 +
1506 + <h3 class="ai-section-title"><?php esc_html_e( 'Developer Tools Documentation', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1507 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( 'https://coderevolution.ro/knowledge-base/faq/aiomatic-plugin-custom-filters-documentation/' );?>" target="_blank"><?php esc_html_e( 'Developer Tools Documentation', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1508 + <p><?php esc_html_e( 'Aimogen allows developers to deeply customize AI interactions:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1509 + <ul>
1510 + <li>
1511 + <?php esc_html_e( 'Custom Prompts and Responses: Modify the AI prompts and fine-tune the responses for specific needs, enhancing the customizability and relevance of the output.', 'aiomatic-automatic-ai-content-writer' ); ?>
1512 + </li>
1513 + </ul>
1514 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1515 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/lDJOnhSS_5o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1516 + <br/><br/>
1517 +
1518 + <h3 class="ai-section-title"><?php esc_html_e( '\'Ultimate Membership Pro\' Integration', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1519 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_openai_status#tab-2') );?>" target="_blank"><?php esc_html_e( 'AI Usage Limits tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1520 + <p><?php esc_html_e( 'Enhance your membership site with Aimogen\'s advanced features:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1521 + <ul>
1522 + <li>
1523 + <?php esc_html_e( 'Exclusive AI Features: Restrict Aimogen\'s functionalities to members based on their subscription levels, adding immense value to your membership packages.', 'aiomatic-automatic-ai-content-writer' ); ?>
1524 + </li>
1525 + </ul>
1526 + <p><b><?php esc_html_e( 'Watch a Tutorial for this feature:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1527 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/Ej4fPlA91N4" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1528 + <br/><br/>
1529 +
1530 + <h3 class="ai-section-title"><?php esc_html_e( '\'Restrict Content Pro\' Integration', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1531 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_openai_status#tab-2') );?>" target="_blank"><?php esc_html_e( 'AI Usage Limits tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1532 + <p><?php esc_html_e( 'Provide alternative features for your membership sites:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1533 + <ul>
1534 + <li>
1535 + <?php esc_html_e( 'Exclusive AI Features: Restrict Aimogen\'s functionalities to members based on their subscription levels, adding immense value to your membership packages.', 'aiomatic-automatic-ai-content-writer' ); ?>
1536 + </li>
1537 + </ul>
1538 + <h3 class="ai-section-title"><?php esc_html_e( '\'Paid Memberships Pro\' Integration', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1539 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_openai_status#tab-2') );?>" target="_blank"><?php esc_html_e( 'AI Usage Limits tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1540 + <p><?php esc_html_e( 'Provide alternative features for your membership sites:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1541 + <ul>
1542 + <li>
1543 + <?php esc_html_e( 'Exclusive AI Features: Restrict Aimogen\'s functionalities to members based on their subscription levels, adding immense value to your membership packages.', 'aiomatic-automatic-ai-content-writer' ); ?>
1544 + </li>
1545 + </ul>
1546 + <br/><br/>
1547 + <form method="post">
1548 + <?php $this->next_step_buttons(); ?>
1549 + </form>
1550 + <br/><br/>
1551 + <?php
1552 + }
1553 +
1554 + public function setup_step_playground() {
1555 + ?>
1556 + <h1><?php esc_html_e( 'AI Playground', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
1557 + <p><?php esc_html_e( 'Welcome to the AI Playground, a feature-rich section of the Aimogen plugin that leverages advanced AI technologies to enhance your digital experience. This tutorial will guide you through various functionalities available in the AI Playground, including text completion, text editing, image generation, chatbot interactions, speech-to-text conversion, and text moderation. Each feature is designed to assist in content generation, user interaction, and content management.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1558 +
1559 + <h3 class="ai-section-title"><?php esc_html_e( 'Available Features in AI Playground', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1560 + <p><b><?php esc_html_e( 'Text Completion', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1561 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-1'));?>" target="_blank"><?php esc_html_e( 'Text Completion', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1562 + <p><?php esc_html_e( 'This feature allows the AI to extend a piece of text provided by the user, which can be used to generate creative content, complete narratives, or finish sentences in a coherent and contextually appropriate manner.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1563 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Ideal for brainstorming sessions, story development, or as an aid for writing assignments.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1564 +
1565 + <p><b><?php esc_html_e( 'Text Editing', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1566 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-2'));?>" target="_blank"><?php esc_html_e( 'Text Editing', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1567 + <p><?php esc_html_e( 'Modify text according to specific instructions. You can reformulate the style, correct grammar, simplify explanations, or adjust the tone to suit different audiences.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1568 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Perfect for refining articles, preparing formal or informal communications, and enhancing the readability of existing content.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1569 +
1570 + <p><b><?php esc_html_e( 'Image Generation Using DALL-E 2, DALL-E 3, Midjourney, Replicate, Ideogram and Stable Diffusion', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1571 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-3'));?>" target="_blank"><?php esc_html_e( 'Dall-E 2', 'aiomatic-automatic-ai-content-writer' ); ?></a>, <a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-8'));?>" target="_blank"><?php esc_html_e( 'Dall-E 3', 'aiomatic-automatic-ai-content-writer' ); ?></a>, <a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-4'));?>" target="_blank"><?php esc_html_e( 'Stable Diffusion', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1572 + <p><?php esc_html_e( 'Generate images from text prompts using state-of-the-art models like DALL-E 2, Midjourney, Replicate, Ideogram and Stable Diffusion. Input a descriptive prompt, and the AI will create a corresponding image.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1573 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Useful for artists, bloggers, and content creators who need original visuals to accompany text posts or to visualize concepts.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1574 +
1575 + <p><b><?php esc_html_e( 'Chatbot', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1576 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-5'));?>" target="_blank"><?php esc_html_e( 'Chatbot', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1577 + <p><?php esc_html_e( 'You can also use the chatbot in the playground. Interact with an AI-powered chatbot that can answer questions, provide information, and engage in conversation. Set up the chatbot to handle FAQs, customer support, or casual interactions.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1578 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Enhances user engagement on platforms such as customer service portals, informational sites, and interactive campaigns.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1579 +
1580 + <p><b><?php esc_html_e( 'Speech to Text Using the Whisper API', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1581 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-6'));?>" target="_blank"><?php esc_html_e( 'Whisper Speech To Text', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1582 + <p><?php esc_html_e( 'Convert spoken language into written text with the Whisper API. Record audio and the AI will transcribe it accurately.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1583 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Essential for journalists, researchers, and professionals who need to transcribe interviews, lectures, or meetings efficiently.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1584 +
1585 + <p><b><?php esc_html_e( 'Text Moderation', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1586 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-7'));?>" target="_blank"><?php esc_html_e( 'Text Moderation', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1587 + <p><?php esc_html_e( 'Automate the moderation of user-generated content. Define criteria for acceptable content, and let the AI filter out spam, offensive language, or any content that doesn\'t meet your standards.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1588 + <p><b><?php esc_html_e( 'Use Case:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Ideal for maintaining a healthy online community, moderating comments on blogs or forums, and ensuring content appropriateness.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1589 +
1590 + <p><b><?php esc_html_e( 'Plagiarism Checker', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1591 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-9'));?>" target="_blank"><?php esc_html_e( 'Plagiarism Checker', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1592 + <p><?php esc_html_e( 'Check text for plagiarism, using the PlagiarismCheck API.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1593 +
1594 + <p><b><?php esc_html_e( 'AI Content Detector', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1595 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel#tab-10'));?>" target="_blank"><?php esc_html_e( 'AI Content Checker', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1596 + <p><?php esc_html_e( 'Check texts and detect if are fully AI generated or if they contain chunks of AI generated content, using the PlagiarismCheck API.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1597 +
1598 + <form method="post">
1599 + <?php $this->next_step_buttons(); ?>
1600 + </form>
1601 + <div class="cr_center"><?php esc_html_e( 'For more settings, check the plugin\'s ', 'aiomatic-automatic-ai-content-writer' ); echo '"<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_playground_panel') ) . '" target="_blank">';esc_html_e( 'AI Playground', 'aiomatic-automatic-ai-content-writer' ); echo '</a>" tab.'; ?></div>
1602 + <br/><br/>
1603 + <?php
1604 + }
1605 +
1606 + public function setup_step_basic_save()
1607 + {
1608 + check_admin_referer( 'aiomatic_admin_settings' );
1609 + $this->aiomatic_update_site_settings('activation');
1610 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1611 + exit;
1612 + }
1613 + public function setup_step_api_save() {
1614 + check_admin_referer( 'aiomatic_admin_settings' );
1615 + $this->aiomatic_update_site_settings('apikeys');
1616 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1617 + exit;
1618 + }
1619 + public function setup_step_content_save() {
1620 + check_admin_referer( 'aiomatic_admin_settings' );
1621 + $this->aiomatic_update_site_settings('content');
1622 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1623 + exit;
1624 + }
1625 + public function setup_step_forms_save() {
1626 + check_admin_referer( 'aiomatic_admin_settings' );
1627 + $this->aiomatic_update_site_settings('forms');
1628 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1629 + exit;
1630 + }
1631 + public function setup_step_playground_save() {
1632 + check_admin_referer( 'aiomatic_admin_settings' );
1633 + $this->aiomatic_update_site_settings('playground');
1634 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1635 + exit;
1636 + }
1637 + public function setup_step_more_save() {
1638 + check_admin_referer( 'aiomatic_admin_settings' );
1639 + $this->aiomatic_update_site_settings('more');
1640 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1641 + exit;
1642 + }
1643 + public function setup_step_chatbot_save() {
1644 + check_admin_referer( 'aiomatic_admin_settings' );
1645 + $this->aiomatic_update_site_settings('chatbot');
1646 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1647 + exit;
1648 + }
1649 + public function setup_step_editor_save() {
1650 + check_admin_referer( 'aiomatic_admin_settings' );
1651 + $this->aiomatic_update_site_settings('wizplug');
1652 + wp_redirect( esc_url_raw( $this->get_next_step_link() ) );
1653 + exit;
1654 + }
1655 +
1656 + public function setup_step_chatbot() {
1657 + ?>
1658 + <h1><?php esc_html_e( 'AI Chatbot', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
1659 + <p><?php esc_html_e( 'Enhance your WordPress site\'s interactivity with a fully customizable AI-powered chatbot provided by the Aimogen plugin. This tutorial will guide you through the setup process, allowing you to deploy a responsive chatbot that can engage visitors, answer inquiries, and offer personalized support.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1660 +
1661 + <hr/>
1662 + <h3 class="ai-section-title"><?php esc_html_e( 'Step 1: Customize the Chatbot Behavior', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1663 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_chatbot_panel'));?>" target="_blank"><?php esc_html_e( 'AI Chatbot Menu', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1664 + <p><?php esc_html_e( 'Begin by navigating to the "AI Chatbot" menu within the Aimogen settings page. You\'ll find several tabs here dedicated to customizing your chatbot:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1665 + <ul>
1666 + <li><b><?php esc_html_e( 'Chatbot Customization Tab:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Set rules for how the chatbot responds to specific inputs from users.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1667 + <li><b><?php esc_html_e( 'Chatbot Default Styling Tab:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Modify the visual style and appearance of the chatbot to match your site\'s aesthetics.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1668 + <li><b><?php esc_html_e( 'Chatbot Settings Tab:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Further define the behavior and operational settings of the chatbot.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1669 + <li><b><?php esc_html_e( 'Default API Parameters Tab:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Adjust the default settings that control the chatbot\'s interactions based on the chosen AI model.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1670 + </ul>
1671 + <h3 class="ai-section-title"><?php esc_html_e( 'Step 2: Add the Chatbot to Your Website', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1672 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_chatbot_panel#tab-5'));?>" target="_blank"><?php esc_html_e( 'Chatbot Website Injection Tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1673 + <p><?php esc_html_e( 'Incorporate the chatbot into your site either globally or on specific posts and pages:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1674 + <ul>
1675 + <li><b><?php esc_html_e( 'Globally:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'To add the chatbot across your entire site, including the backend for admin interactions, use the settings provided in the \'Chatbot Website Injection\' tab. Here, you can decide if the chatbot should appear on all pages or only specific areas of your site.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1676 + <li><b><?php esc_html_e( 'Locally:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'For adding the chatbot to specific pages, use the [aimogen-chat-form] shortcode where you want the chatbot to appear. To customize the shortcode easily and make it exactly like you need it, you can use the ', 'aiomatic-automatic-ai-content-writer' ); ?>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_chatbot_panel#tab-7'));?>" target="_blank"><?php esc_html_e( 'Custom Chatbot Builder', 'aiomatic-automatic-ai-content-writer' ); ?></a>.</li>
1677 + </ul>
1678 + <h3 class="ai-section-title"><?php esc_html_e( 'Step 3: Test the Chatbot', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1679 + <p><?php esc_html_e( 'After deployment, start interacting with the chatbot:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1680 + <ul>
1681 + <li><?php esc_html_e( 'If the chatbot is added globally to your site, locate the chatbot icon or window.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1682 + <li><?php esc_html_e( 'Type questions or phrases into the chat window.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1683 + <li><?php esc_html_e( 'Observe the responses and make sure they align with the configurations you\'ve set up.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1684 + </ul>
1685 + <p><?php esc_html_e( 'Testing ensures that the chatbot is ready to effectively communicate with your visitors and provide them with valuable assistance. You can give the chatbot a basic test drive, below:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1686 + <?php
1687 + $preview_settings = array( 'live_preview' => 'yes', 'temperature' => '', 'top_p' => '', 'presence_penalty' => '', 'frequency_penalty' => '', 'model' => '', 'instant_response' => '', 'show_in_window' => 'off', 'no_padding' => 'on' );
1688 + echo aiomatic_chat_shortcode($preview_settings);
1689 + ?>
1690 + <p><b><?php esc_html_e( 'Watch a Tutorial for the AI Chatbot:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1691 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/QCkNkCrFi-o" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1692 + <br/><br/>
1693 +
1694 + <form method="post" class="form-table">
1695 + <?php $this->next_step_buttons(); ?>
1696 + </form>
1697 + <div class="cr_center"><?php esc_html_e( 'For more settings, check the plugin\'s ', 'aiomatic-automatic-ai-content-writer' ); echo '"<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_chatbot_panel') ) . '" target="_blank">';esc_html_e( 'AI Chatbot', 'aiomatic-automatic-ai-content-writer' ); echo '</a>" menu.'; ?></div>
1698 + <br/><br/>
1699 + <?php
1700 + }
1701 + public function setup_step_editor() {
1702 + ?>
1703 + <h1><?php esc_html_e( 'AI Content Editor', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
1704 + <p><?php esc_html_e( 'The AI Content Editor within the Aimogen plugin is a robust tool designed to automatically refine and enhance your posts using advanced artificial intelligence. Whether updating newly published, drafted, or existing posts, this feature streamlines the editing process, improving content quality and engagement effortlessly.', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1705 +
1706 + <hr/>
1707 + <h3 class="ai-section-title"><?php esc_html_e( 'Editing Template Manager', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1708 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_spinner_panel#tab-1'));?>" target="_blank"><?php esc_html_e( 'Editing Template Manager Tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1709 + <p><?php esc_html_e( 'Determine exactly how posts should be edited through various AI-enhanced features. These features can be automatically applied to newly published posts or to exiting posts from your website:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1710 + <ul>
1711 + <li><b><?php esc_html_e( 'AI Content Rewriting:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Toggle rewriting to refresh and improve article quality.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1712 + <li><b><?php esc_html_e( 'Featured Image Creation/Editing:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically assign or revise featured images using AI-driven visuals.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1713 + <li><b><?php esc_html_e( 'Editing Of Images From The Post Content:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically edit the images found in the post content, change them, making them unique.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1714 + <li><b><?php esc_html_e( 'AI-Generated Content Addition:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Append or prepend AI-crafted content to enhance detail and richness.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1715 + <li><b><?php esc_html_e( 'Internal Links:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Insert AI-selected internal links to boost SEO and user engagement.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1716 + <li><b><?php esc_html_e( 'Auto Generate Post Categories/Tags:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Add relevant, AI generated categories and tags to your posts.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1717 + <li><b><?php esc_html_e( 'AI-Generated Comments:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Add relevant, AI-created comments to foster community and discussion.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1718 + <li><b><?php esc_html_e( 'SEO Meta Descriptions:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically generate compelling SEO descriptions for posts.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1719 + <li><b><?php esc_html_e( 'Add Text To Speech/Video To Posts:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically generate text to speech/video based on the textual content of posts and add the multimedia content to your posts.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1720 + <li><b><?php esc_html_e( 'Transcribe Audio To Text:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Automatically transcribe to text any audio files added to the post content. Summarize the text using AI, using the [aicontent] shortcode.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1721 + <li><b><?php esc_html_e( 'Post Status Adjustment:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Change the post\'s status post-editing to reflect new updates or revisions.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1722 + </ul>
1723 + <h3 class="ai-section-title"><?php esc_html_e( 'Automatic Content Editing Settings', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1724 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_spinner_panel#tab-3'));?>" target="_blank"><?php esc_html_e( 'Automatic Content Editing Settings Tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1725 + <p><?php esc_html_e( 'Configure the AI to automatically edit newly published posts based on specific conditions and preferences:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1726 + <ul>
1727 + <li><b><?php esc_html_e( 'When to Edit Posts:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Choose to auto-edit content upon publishing, drafting, or setting as pending.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1728 + <li><b><?php esc_html_e( 'Post Types to Edit:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Select which types of content (e.g., posts, pages, custom post types) should be automatically refined.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1729 + <li><b><?php esc_html_e( 'Editing Delay:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Set a time delay for edits to allow personal review before AI enhancements are applied.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1730 + <li><b><?php esc_html_e( 'Exclusions:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Specify categories or tags to exclude from automatic editing.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1731 + </ul>
1732 + <h3 class="ai-section-title"><?php esc_html_e( 'Manual Content Editing Settings', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1733 + <p><b><?php esc_html_e( 'Location:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<a href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_spinner_panel#tab-4'));?>" target="_blank"><?php esc_html_e( 'Manual Content Editing Settings Tab', 'aiomatic-automatic-ai-content-writer' ); ?></a></p>
1734 + <p><?php esc_html_e( 'Manually set conditions for editing existing posts from your website, to fine-tune content long after initial publication:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1735 + <ul>
1736 + <li><b><?php esc_html_e( 'Filter Options:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Extensive filtering allows for precise control over which posts, pages, or custom types are edited.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1737 + <li><b><?php esc_html_e( 'Editing Of Existing Posts On a Schedule:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'You can also set up a process which will be automatically started at a schedule, which will automatically edit existing posts from your site.', 'aiomatic-automatic-ai-content-writer' ); ?></li>
1738 + </ul>
1739 + <p><b><?php esc_html_e( 'Watch a Tutorial for the AI Content Editor:', 'aiomatic-automatic-ai-content-writer' ); ?></b></p>
1740 + <iframe class="cr-youtube-video" src="https://www.youtube.com/embed/WVccxtXQTcc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
1741 + <br/><br/>
1742 +
1743 + <form method="post" class="form-table">
1744 + <?php $this->next_step_buttons(); ?>
1745 + </form>
1746 + <div class="cr_center"><?php esc_html_e( 'For more settings, check the plugin\'s ', 'aiomatic-automatic-ai-content-writer' ); echo '"<a href="' . esc_url_raw( admin_url('admin.php?page=aiomatic_spinner_panel') ) . '" target="_blank">';esc_html_e( 'AI Content Editor', 'aiomatic-automatic-ai-content-writer' ); echo '</a>" menu.'; ?></div>
1747 + <br/><br/>
1748 + <?php
1749 + }
1750 +
1751 + public function setup_step_ready() {
1752 + ?>
1753 +
1754 + <div class="final-step">
1755 + <h1><?php esc_html_e( 'Congratulations! You\'re All Set.', 'aiomatic-automatic-ai-content-writer' ); ?></h1>
1756 + </div>
1757 + <div>
1758 + <p><b><?php esc_html_e( 'Aimogen is now ready to work its magic!', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;
1759 + <?php esc_html_e( 'You\'ve successfully configured the essential settings, learned the basics of the plugin\'s usage and your WordPress site is now empowered with cutting-edge AI capabilities. Here\'s what you can do next:', 'aiomatic-automatic-ai-content-writer' ); ?></p>
1760 + <ul><li>
1761 + <b><?php esc_html_e( 'Explore Aimogen:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Discover the vast array of features Aimogen offers, from AI-driven content creation to automated SEO enhancements.', 'aiomatic-automatic-ai-content-writer' ); ?>
1762 + </li><li>
1763 + <b><?php esc_html_e( 'Create Content:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Start generating engaging, relevant, and high-quality content for your site with just a few clicks.', 'aiomatic-automatic-ai-content-writer' ); ?>
1764 + </li><li>
1765 + <b><?php esc_html_e( 'Chat With The Chatbot:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Set up the chatbot on your site and use it as a virtual assistant to streamline your work.', 'aiomatic-automatic-ai-content-writer' ); ?>
1766 + </li><li>
1767 + <b><?php esc_html_e( 'Customize Settings:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Tailor Aimogen further by adjusting the settings to perfectly match your content strategy.', 'aiomatic-automatic-ai-content-writer' ); ?>
1768 + </li></ul>
1769 + <h3><?php esc_html_e( 'What\'s Next?', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1770 + <ul><li>
1771 + <b><?php esc_html_e( 'Test Drive:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Feel free to experiment with different settings and features to see what works best for your needs.', 'aiomatic-automatic-ai-content-writer' ); ?>
1772 + </li><li>
1773 + <b><?php esc_html_e( 'Need Inspiration?', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Check our tutorial videos for creative uses of Aimogen, on', 'aiomatic-automatic-ai-content-writer' ); ?>&nbsp;<a href="https://www.youtube.com/@CodeRevolutionTV" target="_blank">CodeRevolutionTV @YouTube</a>
1774 + </li><li>
1775 + <b><?php esc_html_e( 'Dive Deeper:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php esc_html_e( 'Visit the Aimogen Dashboard to fine-tune additional settings or explore advanced features.', 'aiomatic-automatic-ai-content-writer' ); ?>
1776 + </li><li>
1777 + <b><?php esc_html_e( 'Suggest New Features For The Plugin:', 'aiomatic-automatic-ai-content-writer' ); ?></b>&nbsp;<?php echo sprintf( wp_kses( __( "Visit the <a href=\"%s\" target=\"_blank\">Aimogen's Update Ideas Boad</a> , where you will be able to vote for new features and also leave your own new feature ideas, to be implemented and added in new plugin updates.", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), "https://trello.com/b/2yxVZapo/aiomatic-feature-ideas" ); ?>
1778 + </li></ul>
1779 + <h3><?php esc_html_e( 'Need Assistance?', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1780 + <p>
1781 + <?php echo sprintf( wp_kses( __( "Our <a href=\"%s\" target=\"_blank\">support system</a> is ready to help you with any questions or issues you might encounter. Don't hesitate to reach out!", 'aiomatic-automatic-ai-content-writer'), array( 'a' => array( 'href' => array(), 'target' => array() ) ) ), "https://coderevolution.ro/support" ); ?>
1782 + </p>
1783 + <h3><?php esc_html_e( 'Stay Updated!', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1784 + <p>
1785 + <?php esc_html_e( 'Keep your plugin updated to enjoy the latest features and improvements. Check the update log regularly for the latest updates.', 'aiomatic-automatic-ai-content-writer' ); ?>
1786 + </p>
1787 + <h3><?php esc_html_e( 'Thank You for Choosing Aimogen!', 'aiomatic-automatic-ai-content-writer' ); ?></h3>
1788 + <p>
1789 + <?php esc_html_e( 'We are excited to see the incredible content you will create and the success it will bring to your site. Let\'s make your WordPress experience phenomenal!', 'aiomatic-automatic-ai-content-writer' ); ?>
1790 + </p>
1791 + </div>
1792 + <div class="final-step">
1793 + <div class="aiomatic-setup-next-steps">
1794 + <div class="aiomatic-setup-next-steps-first">
1795 + <h2><?php esc_html_e( 'Next Steps', 'aiomatic-automatic-ai-content-writer' ); ?> &rarr;</h2>
1796 + <a class="button button-primary button-large"
1797 + href="<?php echo esc_url_raw( admin_url('admin.php?page=aiomatic_admin_settings&aiomatic_done_config=3') ); ?>">
1798 + <?php esc_html_e( 'Go to Aimogen Dashboard!', 'aiomatic-automatic-ai-content-writer' );
1799 + ?>
1800 + </a>
1801 + </div>
1802 + </div>
1803 + </div>
1804 + <?php
1805 + }
1806 + function aiomatic_update_site_settings($where)
1807 + {
1808 + if($where == 'apikeys')
1809 + {
1810 + if(isset($_POST['aiomatic_nonce_rand']) && wp_verify_nonce( $_POST['aiomatic_nonce_rand'], 'openai-secret-nonce') && isset($_POST['aiomatic_Main_Settings']) && is_array($_POST['aiomatic_Main_Settings']))
1811 + {
1812 + $change_done = false;
1813 + $aiomatic_Main_Settings = get_option('aiomatic_Main_Settings', false);
1814 + foreach($_POST['aiomatic_Main_Settings'] as $save_option => $save_value)
1815 + {
1816 + $aiomatic_Main_Settings[$save_option] = $save_value;
1817 + $change_done = true;
1818 + }
1819 + if($change_done == true)
1820 + {
1821 + aiomatic_update_option('aiomatic_Main_Settings', $aiomatic_Main_Settings);
1822 + }
1823 + }
1824 + }
1825 + }
1826 + }