$translations ) ); } $file_content = file_get_contents( $file_path ); $entries = explode( "\n\n", $file_content ); $translations = array(); foreach ( $entries as $entry ) { $lines = explode( "\n", $entry ); $msgid = ''; $msgstr = ''; foreach ( $lines as $line ) { if ( strpos( $line, 'msgid' ) === 0 ) { $msgid = trim( substr( $line, 6, -1 ) ); } elseif ( strpos( $line, 'msgstr' ) === 0 ) { $msgstr = trim( substr( $line, 7, -1 ) ); $msgid = trim( stripcslashes( $msgid ), '"' ); $msgstr = trim( stripcslashes( $msgstr ), '"' ); if ( empty( $msgstr ) ) { $msgstr = ''; for ( $i = 1; $i < count( $lines ); $i++ ) { $next_line = trim( $lines[ $i ] ); if ( ! empty( $next_line ) && strpos( $next_line, 'msgid' ) !== 0 ) { $msgstr .= str_replace( array( 'msgstr', ' ' ), '', $next_line ) . ''; } } $msgstr = trim( stripcslashes( str_replace( '"', '', $msgstr ) ) ); } } } if ( ! empty( $msgid ) && ! empty( $msgstr ) ) { $msgid = trim( stripcslashes( $msgid ), '"' ); $msgstr = trim( stripcslashes( $msgstr ), '"' ); $translations[ $msgid ] = $msgstr; } } return wp_json_encode( array( 'translations' => $translations ) ); } } /** * Include shortcodes and initialize them */ require_once MUXVIDEO_PLUGIN_DIR . '/views/shortcodes/asset-player.php'; function muxvideo_shortcodes_init() { add_shortcode( 'muxvideo_asset', 'muxvideo_asset_player_shortcode' ); } add_action( 'init', 'muxvideo_shortcodes_init' ); function muxvideo_frontend_load_freemius_data() { global $current_user; $current_fs_user = Freemius::_get_user_by_email( $current_user->user_email ); $current_fs_user = is_object( $current_fs_user ) ? $current_fs_user->id : 'not reachable'; wp_localize_script( 'muxvideo-functions-script', 'freemiusData', array( 'current_fs_user' => $current_fs_user, ) ); } add_action( 'admin_enqueue_scripts', 'muxvideo_frontend_load_freemius_data' ); if ( MUXVIDEO_FS_CAN_USE_PREMIUM_CODE ) { function muxvideo_add_class_if_is_premium( $classes ) { $classes .= ' muxvideo_fs-premium'; return $classes; } add_filter( 'admin_body_class', 'muxvideo_add_class_if_is_premium' ); } if ( IS_MUXVIDEO_PLUGIN ) { function muxvideo_add_class_media( $classes ) { $classes .= ' mux-media-body two-coders-integration-mux-video-body'; return $classes; } add_filter( 'admin_body_class', 'muxvideo_add_class_media' ); }