show_top_navigation_menus(); switch (sanitize_title($_REQUEST['page'])) { case 'user-uci-dashboard': $uci_user_admin->show_uci_dashboard(); break; case 'user-uci-import': $uci_user_admin->show_import_screen(); break; case 'user-uci-settings': $uci_user_admin->show_settings_screen(); break; case 'user-uci-support': $uci_user_admin->show_support_screen(); break; default: break; } return false; } public function show_top_navigation_menus() { echo '
'; $myDir = USER_SM_UCI_DEFAULT_UPLOADS_DIR; if(is_dir($myDir)) { echo ""; } else { echo ""; } if(is_writable($myDir)) { echo ""; } else { echo ""; } } public function show_import_screen() { global $uci_user_admin; $parserObj = new User_SmackCSVParser(); $uci_user_admin->show_notices($parserObj); $step = isset($_REQUEST['step']) ? sanitize_title($_REQUEST['step']) : ''; switch ($step) { case 'import_file': // Step one include ( 'views/form-file-import-method.php' ); break; case 'suggested_template': # NOTE: Removed the suggested template view break; case 'mapping_config': // Step two if(isset($_REQUEST['eventKey']) ? sanitize_key($_REQUEST['eventKey']):'' ) : if(isset($_POST) && !empty($_POST)) : $_POST = filter_input_array(INPUT_POST, FILTER_SANITIZE_STRING); $parserObj->screenData = array('import_file' => $_POST); update_option($_REQUEST['eventKey'], $parserObj->screenData); else: $parserObj->screenData = get_option($_REQUEST['eventKey']); endif; endif; if(empty($parserObj->screenData)): $parserObj->wp_session = "Your mapping configuration may lost. Please configure your mapping again!"; endif; if(isset($_REQUEST['mapping_type'])) { $mapping_type = $_REQUEST['mapping_type']; } else { $mapping_type = ''; } switch($mapping_type) { case 'advanced': include ( 'views/form-advanced-mapping-configuration.php' ); break; case 'normal': default: include ( 'views/form-mapping-configuration.php' ); break; } break; case 'media_config': include ( 'views/form-media-handling.php' ); break; case 'import_config': include ( 'views/form-import-configuration.php' ); break; case 'confirm': include ( 'views/form-ignite-import.php' ); break; default: include ( 'views/form-file-import-method.php' ); break; } return true; } public function show_manager_screen() { // include ('views/form-manager-view.php' ); // return true; } public function show_uci_dashboard() { include ('views/form-dashboard-view.php'); } public function show_export_screen() { //include ( 'views/form-export-data.php' ); } public function show_settings_screen() { include ('views/form-settings-view.php' ); return true; } public function show_support_screen() { include ('views/form-support-view.php' ); return true; } public function show_notices($parseObj) { } public static function PieChart(){ echo ''; } public static function LineChart(){ echo ''; } public function get_mapping_widgets_order ($import_type) { $widgets = array(); global $uci_user_admin; $customposts = $uci_user_admin->get_import_custom_post_types(); if (in_array($import_type, get_taxonomies())) { $import_type = 'Taxonomies'; } if (in_array($import_type, $customposts)) { $import_type = 'CustomPosts'; } switch ($import_type) { case 'Users': $widgets = array('Core Fields','WordPress Custom Fields', 'Custom Fields by WP-Members', 'Billing And Shipping Information', 'ACF Pro Fields', 'ACF Fields', 'ACF Repeater Fields', 'Types Custom Fields', 'PODS Custom Fields', 'CCTM Custom Fields'); break; } return $widgets; } public function available_widgets ($import_type, $importAs) { global $uci_user_admin; $widgets = array(); $widgets_order = $uci_user_admin->get_mapping_widgets_order($import_type); $supported_widgets = $uci_user_admin->get_available_widgets($import_type, $importAs); if(!empty($widgets_order) && !empty($supported_widgets)) : foreach($widgets_order as $item) { # TODO: Need to check whether this item (widget) to be related with the $import_type if(array_key_exists($item, $supported_widgets)) : $widgets[$item] = $supported_widgets[$item]; endif; } endif; return $widgets; } public function get_available_widgets ($import_type, $importAs) { $possible_widgets = array(); global $uci_user_admin; $customposts = $uci_user_admin->get_import_custom_post_types(); if (in_array($import_type, $customposts)) { $import_type = 'CustomPosts'; } if (in_array($import_type, get_taxonomies())) { $import_type = 'Taxonomies'; } $possible_widgets['Core Fields'] = 'CORE'; if($import_type == 'Posts' || $import_type == 'Pages' || $import_type == 'CustomPosts' || $import_type == 'WooCommerce' || $import_type == 'MarketPress' || $import_type == 'WPeCommerce' || $import_type == 'eShop' || $import_type == 'Users') { $possible_widgets['WordPress Custom Fields'] = 'CORECUSTFIELDS'; } $active_plugins = $this->get_active_plugins(); if(!empty($active_plugins)) { foreach($active_plugins as $plugin) { switch ($plugin) { case 'wp-members/wp-members.php': if($import_type == 'Users') { $possible_widgets['Custom Fields by WP-Members'] = 'WPMEMBERS'; } break; } } if($import_type == 'Users') { if( in_array('marketpress/marketpress.php', $this->get_active_plugins()) || in_array('wordpress-ecommerce/marketpress.php', $this->get_active_plugins()) || in_array('woocommerce/woocommerce.php', $this->get_active_plugins()) ) { $possible_widgets['Billing And Shipping Information'] = 'BSI'; } } if($import_type != 'Pages') $possible_widgets['Terms and Taxonomies'] = 'TERMS'; } return $possible_widgets; } public function get_widget_fields($widget_name, $import_type, $importAs, $mode = null) { $fields = array(); switch ($widget_name) { case 'Core Fields': $fields = $this->coreFields($import_type); break; case 'Billing And Shipping Information': $fields = $this->billing_information_for_users(); break; case 'Custom Fields by WP-Members': $fields = $this->custom_fields_by_wp_members(); break; case 'Custom Fields by Ultimate Member': $fields = $this->custom_fields_by_ultimate_member(); break; } return $fields; } public function get_available_groups($type) { $groups = array(); if ($type == 'Posts') { $groups = array('CORE', 'CCTM', 'ACF', 'RF', 'TYPES', 'PODS', 'AIOSEO', 'YOASTSEO', 'CORECUST', 'TERMS', 'TAXO'); } if ($type == 'Pages') { $groups = array('CORE', 'CCTM', 'ACF', 'RF', 'TYPES', 'PODS', 'AIOSEO', 'YOASTSEO', 'CORECUST', 'TAXO'); } if ($type == 'WooCommerce') { $groups = array('CORE', 'CCTM', 'ACF', 'RF', 'TYPES', 'PODS', 'AIOSEO', 'YOASTSEO', 'ECOMMETA', 'CORECUST', 'TERMS', 'TAXO'); } return $groups; } public static function initializing_scheduler() { if( !wp_next_scheduled( 'smack_uci_image_scheduler' )) { wp_schedule_event(time(), 'wp_ultimate_csv_importer_scheduled_images', 'smack_uci_image_scheduler'); } if( !wp_next_scheduled( 'smack_uci_email_scheduler' )) { wp_schedule_event(time(), 'wp_ultimate_csv_importer_scheduled_emails', 'smack_uci_email_scheduler'); } if( !wp_next_scheduled( 'smack_uci_replace_inline_images' )) { wp_schedule_event(time(), 'wp_ultimate_csv_importer_replace_inline_images', 'smack_uci_replace_inline_images'); } } } add_action('init', array('User_SmackUCIAdmin', 'show_admin_menus')); global $uci_user_admin; $uci_user_admin = new User_SmackUCIAdmin();