public function render_csv_tab() { switch ($this->state) { case 'map': try { $file = new Tribe__Events__Importer__File_Reader(Tribe__Events__Importer__File_Uploader::get_file_path()); } catch (RuntimeException $e) { $this->errors[] = __('The file went away. Please try again.', 'tribe-events-calendar'); $this->state = ''; return $this->render_admin_page_contents(); } $header = $file->get_header(); if (get_option('tribe_events_importer_has_header', 0) == 0) { $letter = 'A'; $size = count($header); $header = array(); for ($i = 0; $i < $size; $i++) { $header[] = $letter++; } } $import_type = get_option('tribe_events_import_type'); $messages = $this->errors; include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/columns.php'); break; case 'importing': $messages = $this->messages; include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/in-progress.php'); break; case 'complete': $log = get_option('tribe_events_import_log'); $skipped = get_option('tribe_events_import_failed_rows', array()); include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/result.php'); break; default: $messages = $this->errors; include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/import.php'); break; } }
public function render_csv_tab() { switch ($this->state) { case 'map': try { $file = new Tribe__Events__Importer__File_Reader(Tribe__Events__Importer__File_Uploader::get_file_path()); } catch (RuntimeException $e) { $this->errors[] = esc_html__('The file went away. Please try again.', 'the-events-calendar'); $this->state = ''; return $this->render_admin_page_contents(); } $header = $file->get_header(); if (get_option('tribe_events_importer_has_header', 0) == 0) { $letter = 'A'; $size = count($header); $header = array(); for ($i = 0; $i < $size; $i++) { $header[] = $letter++; } } $import_type = get_option('tribe_events_import_type'); $import_type_titles_map = array(); /** * Allows filtering the import type titles to go from a slug to a pretty title. * * @param array $import_type_titles_map */ $import_type_titles_map = apply_filters('tribe_events_import_type_titles_map', $import_type_titles_map); $import_type_title = isset($import_type_titles_map[$import_type]) ? $import_type_titles_map[$import_type] : ucwords($import_type); $messages = $this->errors; include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/columns.php'); break; case 'importing': $messages = $this->messages; include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/in-progress.php'); break; case 'complete': $log = get_option('tribe_events_import_log'); $skipped = get_option('tribe_events_import_failed_rows', array()); $encoded = get_option('tribe_events_import_encoded_rows', array()); include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/result.php'); break; default: $messages = $this->errors; $import_options = array('venues' => esc_html__('Venues', 'the-events-calendar'), 'organizers' => esc_html__('Organizers', 'the-events-calendar'), 'events' => esc_html__('Events', 'the-events-calendar')); /** * Filters the CSV import options available to the user. * * @param array $import_options An associative array of option values and labels. */ $import_options = apply_filters('tribe_events_import_options_rows', $import_options); $default_selected_import_option = 'events'; /** * Filters the default selected option for the import options. * * @param string $default_selected_import_option */ $default_selected_import_option = apply_filters('tribe_events_import_options_default_selected', $default_selected_import_option); include Tribe__Events__Importer__Plugin::path('src/io/csv/admin-views/import.php'); break; } }