예제 #1
0
 public static function init()
 {
     if (!empty(self::$init)) {
         return;
     }
     //Determine the available languages and the currently displayed locale for this site.
     self::$langs = apply_filters('em_ml_langs', array());
     self::$wplang = apply_filters('em_ml_wplang', get_locale());
     self::$current_language = !empty($_REQUEST['em_lang']) && array_key_exists($_REQUEST['em_lang'], self::$langs) ? $_REQUEST['em_lang'] : get_locale();
     self::$current_language = apply_filters('em_ml_current_language', self::$current_language);
     //proceed with loading the plugin, we don't need to deal with the rest of this if no languages were defined by an extending class
     if (count(self::$langs) > 0) {
         //set flag to prevent unecessary counts
         self::$is_ml = true;
         do_action('em_ml_pre_init');
         //only initialize when this is a MultiLingual instance
         //make sure options are being translated immediately if needed
         include EM_DIR . '/multilingual/em-ml-options.php';
         //load all the extra ML helper classes
         if (is_admin()) {
             include EM_DIR . '/multilingual/em-ml-admin.php';
         }
         include EM_DIR . '/multilingual/em-ml-bookings.php';
         include EM_DIR . '/multilingual/em-ml-io.php';
         include EM_DIR . '/multilingual/em-ml-placeholders.php';
         include EM_DIR . '/multilingual/em-ml-search.php';
         //change some localized script vars
         add_filter('em_wp_localize_script', 'EM_ML::em_wp_localize_script');
     }
     self::$init = true;
     if (self::$is_ml) {
         do_action('em_ml_init');
     }
     //only initialize when this is a MultiLingual instance
 }
예제 #2
0
 public static function init()
 {
     if (!empty(self::$init)) {
         return;
     }
     //Determine the available languages and the currently displayed locale for this site.
     self::$langs = apply_filters('em_ml_langs', array());
     self::$wplang = apply_filters('em_ml_wplang', get_locale());
     self::$current_language = !empty($_REQUEST['em_lang']) && array_key_exists($_REQUEST['em_lang'], self::$langs) ? $_REQUEST['em_lang'] : get_locale();
     self::$current_language = apply_filters('em_ml_current_language', self::$current_language);
     //proceed with loading the plugin, we don't need to deal with the rest of this if no languages were defined by an extending class
     if (count(self::$langs) > 0) {
         //set flag to prevent unecessary counts
         self::$is_ml = true;
         //define the translatable options for the plugin
         self::$translatable_options = apply_filters('em_ml_translatable_options', array('dbem_events_anonymous_result_success', 'dbem_events_form_result_success', 'dbem_events_form_result_success_updated', 'dbem_event_list_groupby_format', 'dbem_event_list_item_format_header', 'dbem_event_list_item_format', 'dbem_event_list_item_format_footer', 'dbem_no_events_message', 'dbem_list_date_title', 'dbem_single_event_format', 'dbem_event_excerpt_format', 'dbem_event_excerpt_alt_format', 'dbem_search_form_submit', 'dbem_search_form_advanced_hide', 'dbem_search_form_advanced_show', 'dbem_search_form_text_label', 'dbem_search_form_categories_label', 'dbem_search_form_category_label', 'dbem_search_form_countries_label', 'dbem_search_form_country_label', 'dbem_search_form_regions_label', 'dbem_search_form_region_label', 'dbem_search_form_states_label', 'dbem_search_form_state_label', 'dbem_search_form_towns_label', 'dbem_search_form_town_label', 'dbem_search_form_geo_label', 'dbem_search_form_geo_units_label', 'dbem_search_form_dates_label', 'dbem_search_form_dates_separator', 'dbem_date_format', 'dbem_date_format_js', 'dbem_dates_separator', 'dbem_time_format', 'dbem_times_separator', 'dbem_event_all_day_message', 'dbem_small_calendar_month_format', 'dbem_small_calendar_event_title_format', 'dbem_small_calendar_event_title_separator', 'dbem_full_calendar_month_format', 'dbem_full_calendar_event_format', 'dbem_display_calendar_events_limit_msg', 'dbem_ical_description_format', 'dbem_ical_real_description_format', 'dbem_ical_location_format', 'dbem_location_list_item_format_header', 'dbem_location_list_item_format', 'dbem_location_list_item_format_footer', 'dbem_no_locations_message', 'dbem_location_page_title_format', 'dbem_single_location_format', 'dbem_location_event_list_item_header_format', 'dbem_location_event_list_item_format', 'dbem_location_event_list_item_footer_format', 'dbem_location_no_events_message', 'dbem_location_event_single_format', 'dbem_location_no_event_message', 'dbem_categories_list_item_format_header', 'dbem_categories_list_item_format', 'dbem_categories_list_item_format_footer', 'dbem_no_categories_message', 'dbem_category_page_title_format', 'dbem_category_page_format', 'dbem_category_event_list_item_header_format', 'dbem_category_event_list_item_format', 'dbem_category_event_list_item_footer_format', 'dbem_category_no_events_message', 'dbem_category_no_event_message', 'dbem_category_event_single_format', 'dbem_tags_list_item_format_header', 'dbem_tags_list_item_format', 'dbem_tags_list_item_format_footer', 'dbem_no_tags_message', 'dbem_tag_page_title_format', 'dbem_tag_page_format', 'dbem_tag_event_list_item_header_format', 'dbem_tag_event_list_item_format', 'dbem_tag_event_list_item_footer_format', 'dbem_tag_no_events_message', 'dbem_tag_event_single_format', 'dbem_tag_no_event_message', 'dbem_rss_main_description', 'dbem_rss_main_title', 'dbem_rss_title_format', 'dbem_rss_description_format', 'dbem_map_text_format', 'dbem_location_baloon_format', 'dbem_bookings_currency_thousands_sep', 'dbem_bookings_currency_decimal_point', 'dbem_bookings_currency_format', 'dbem_booking_feedback_cancelled', 'dbem_booking_warning_cancel', 'dbem_bookings_form_msg_disabled', 'dbem_bookings_form_msg_closed', 'dbem_bookings_form_msg_full', 'dbem_bookings_form_msg_attending', 'dbem_bookings_form_msg_bookings_link', 'dbem_booking_feedback', 'dbem_booking_feedback_pending', 'dbem_booking_feedback_full', 'dbem_booking_feedback_error', 'dbem_booking_feedback_email_exists', 'dbem_booking_feedback_log_in', 'dbem_booking_feedback_nomail', 'dbem_booking_feedback_already_booked', 'dbem_booking_feedback_min_space', 'dbem_booking_feedback_spaces_limit', 'dbem_booking_button_msg_book', 'dbem_booking_button_msg_booking', 'dbem_booking_button_msg_booked', 'dbem_booking_button_msg_already_booked', 'dbem_booking_button_msg_error', 'dbem_booking_button_msg_full', 'dbem_booking_button_msg_cancel', 'dbem_booking_button_msg_canceling', 'dbem_booking_button_msg_cancelled', 'dbem_booking_button_msg_cancel_error', 'dbem_bookings_submit_button', 'dbem_bookings_contact_email_pending_subject', 'dbem_bookings_contact_email_pending_body', 'dbem_bookings_contact_email_confirmed_subject', 'dbem_bookings_contact_email_confirmed_body', 'dbem_bookings_contact_email_rejected_subject', 'dbem_bookings_contact_email_rejected_body', 'dbem_bookings_contact_email_cancelled_subject', 'dbem_bookings_contact_email_cancelled_body', 'dbem_bookings_email_confirmed_subject', 'dbem_bookings_email_confirmed_body', 'dbem_bookings_email_pending_subject', 'dbem_bookings_email_pending_body', 'dbem_bookings_email_rejected_subject', 'dbem_bookings_email_rejected_body', 'dbem_bookings_email_cancelled_subject', 'dbem_bookings_email_cancelled_body', 'dbem_event_submitted_email_subject', 'dbem_event_submitted_email_body', 'dbem_event_resubmitted_email_subject', 'dbem_event_resubmitted_email_body', 'dbem_event_published_email_subject', 'dbem_event_published_email_body', 'dbem_event_approved_email_subject', 'dbem_event_approved_email_body', 'dbem_event_reapproved_email_subject', 'dbem_event_reapproved_email_body', 'dbem_bookings_email_registration_subject', 'dbem_bookings_email_registration_body'));
         //load all the extra ML helper classes
         if (is_admin()) {
             include EM_DIR . '/multilingual/em-ml-admin.php';
         }
         include EM_DIR . '/multilingual/em-ml-bookings.php';
         include EM_DIR . '/multilingual/em-ml-io.php';
         include EM_DIR . '/multilingual/em-ml-options.php';
         include EM_DIR . '/multilingual/em-ml-placeholders.php';
         include EM_DIR . '/multilingual/em-ml-search.php';
         //Switch EM page IDs to translated versions if they exist, so e.g. the events page in another language grabs the right translated page format if available
         if (!is_admin()) {
             add_filter('option_dbem_events_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_locations_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_categories_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_tags_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_edit_events_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_edit_locations_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_edit_bookings_page', 'EM_ML::get_translated_page');
             add_filter('option_dbem_my_bookings_page', 'EM_ML::get_translated_page');
         }
         //change some localized script vars
         add_filter('em_wp_localize_script', 'EM_ML::em_wp_localize_script');
     }
     self::$init = true;
 }