return translated * * @param string $setting_slug * @param $section_slug * * @return string * @since 1.33 */ protected function _get_maybe_wpml_translated_string($setting_slug, $section_slug) { // && isset($this->wpml_labels[$key]) if ( class_exists('SitePress') ) { // SKIP if we on Default language global $sitepress; $current_language = $sitepress->get_current_language(); $default_language = $sitepress->get_default_language(); /** * Switch Language for AJAX * @since 1.33 */ if ( defined("LRM_IS_AJAX") ) { /** * @var WPML_Language_Resolution $wpml_language_resolution */ global $wpml_language_resolution; if ($current_language != $wpml_language_resolution->get_referrer_language_code()) { $sitepress->switch_lang($wpml_language_resolution->get_referrer_language_code()); $current_language = $sitepress->get_current_language(); } } if ( $default_language == $current_language ) { return null; } $fields = $this->get_section_settings_fields($section_slug); /** * @see https://wpml.org/wpml-hook/wpml_translate_single_string/ * @since 1.29 */ return apply_filters( 'wpml_translate_single_string', $fields[$setting_slug]->default_value(), 'AJAX Login & Registration modal', $fields[$setting_slug]->name(). ' [' . $fields[$setting_slug]->group() . '/' .$fields[$setting_slug]->slug() . ']' ); //return wpml_register_single_string('AJAX Login & Registration modal', $fields[$setting_slug]->name(). ' [' . $fields[$setting_slug]->group() . '/' .$fields[$setting_slug]->slug() . ']', $fields[$setting_slug]->default_value()); } return null; } /** * Add strings to WPML strings translator * * @since 1.33 */ protected function register_wpml_strings() { do_action( 'wpml_multilingual_options', 'lrm_messages' ); do_action( 'wpml_multilingual_options', 'lrm_mails' ); do_action( 'wpml_multilingual_options', 'lrm_messages_pro' ); // && function_exists('icl_register_string') if ( class_exists('SitePress') ) { //switch_to_locale( 'en_US' ); // $messages = $this->get_section_settings_fields('messages'); // $mails = $this->get_section_settings_fields('mails'); // // $all = $messages + $mails; // // if ( lrm_is_pro() ) { // $messages_pro = $this->get_section_settings_fields('messages_pro'); // $all = $all + $messages_pro; // } // // foreach ($all as $key => $field) { // /** // * @see https://wpml.org/wpml-hook/wpml_register_single_string // * @since 1.29 // */ // do_action( 'wpml_register_single_string', 'AJAX Login & Registration modal', $field->name(). ' [' . $field->group() . '/' .$field->slug() . ']', $field->default_value() ); // // icl_register_string is deprecated // //icl_register_string( 'AJAX Login & Registration modal', $field->name(). ' [' . $field->group() . '/' .$field->slug() . ']', $field->default_value() ); // } //restore_previous_locale(); } } /** * Get all fields from section * * @param string $section_slug * * @since 1.24 * * @return \underDEV\Utils\Settings\Field[] */ public function get_section_settings_fields( $section_slug ) { $fields = array(); $section = $this->settings->get_section( $section_slug ); foreach ( $section->get_groups() as $group_slug => $group ) { foreach ( $group->get_fields() as $field_slug => $field ) { $fields[ $section_slug . '/' . $group_slug . '/' . $field_slug ] = $field; } } return $fields; } /** * Get all fields from section * * @param string $section_slug * * @since 1.24 * * @return \underDEV\Utils\Settings\Field[] */ public function get_sections( ) { return $this->settings->get_sections( ); } private function _reset_translations() { delete_option( "lrm_messages" ); echo "Reset done!"; die(); } /** * @return LRM_Settings */ public static function get(){ if ( !self::$instance ) { self::$instance = new LRM_Settings(); } return self::$instance; } }