ID, 'amazon_ai_source_language', true ); if ( !empty($post_source_language) ) { echo '

'; } // Check if Translate (Amazon Translate) functionality is enabled. if ( $common->is_translation_enabled() ) { $number_of_translations = 0; foreach ($common->get_all_translable_languages() as $language_code) { $number_of_translations = $number_of_translations + inc_trans($common, $language_code ); } echo '
'; if ( ! empty( $number_of_translations ) ) { echo '
'; echo '

'; echo '

  You will translate it into

' . $number_of_translations . '

language(s).

'; echo '
'; echo '
'; } echo '

'; echo '
'; } } /** * Display Polly GUI on page for saving new post. * * @since 2.5.0 * @param string $post New post. */ function display_polly_gui($post) { $nonce = wp_create_nonce( 'amazon-polly' ); echo ''; $common = new AmazonAI_Common(); $common->init(); // Check if Text-To-Speech (Amazon Polly) functionality is enabled. if ( $common->is_polly_enabled() ) { // Check if Amazon Polly is enabled for specific post. // 1 - Means that it's enabled for post // 0 - Means that it's not enabled for the post // No value - Means that it's new post $is_polly_enabled_for_post = get_post_meta( $post->ID, 'amazon_polly_enable', true ); if ( '1' === $is_polly_enabled_for_post ) { $polly_checked = 'checked'; } elseif ( '0' === $is_polly_enabled_for_post ) { $polly_checked = ''; } else { if ( $common->is_polly_enabled_for_new_posts() ) { $polly_checked = 'checked'; } else { $polly_checked = ''; } } $post_options_visibility = ''; echo '

'; echo '
'; if (!function_exists('sort_polly_voices')) { function sort_polly_voices( $voice1, $voice2 ) { return strcmp( $voice1['LanguageName'], $voice2['LanguageName'] ); } } $voice_id = get_option( 'amazon_polly_voice_id' ); $voices = $common->get_polly_voices(); $language_name = $common->get_source_language_name(); $voice_id = get_post_meta( $post->ID, 'amazon_polly_voice_id', true ); $global_voice_id = get_option( 'amazon_polly_voice_id' ); if ( 0 === strcmp( $voice_id, '' ) && '' !== $global_voice_id ) { $voice_id = $global_voice_id; } usort( $voices['Voices'], 'sort_polly_voices' ); echo '

Voice name:

'; echo '
'; } if (!function_exists('inc_trans')) { /** * Method for calculating number of languages to which text should be converted. * * @since 2.5.0 * @param string $post New post. */ function inc_trans($common, $language_code ) { $is_language_translable = get_option( 'amazon_polly_trans_langs_' . $language_code, '' ); $source_language = $common->get_source_language(); if ( 'on' == $is_language_translable ) { $value = 1; } else { $value = 0; } if ( ( 'en' != $source_language ) && ( 'en' == $language_code ) ) { $value = 1; } return $value; } } }