function ls_sliders_bulk_action() { // Remove if ($_POST['action'] === 'remove') { if (is_array($_POST['sliders']) && !empty($_POST['sliders'])) { foreach ($_POST['sliders'] as $item) { layerslider_removeslider($item); } } header('Location: admin.php?page=layerslider&message=removeSuccess'); die; } // Delete if ($_POST['action'] === 'delete') { if (is_array($_POST['sliders']) && !empty($_POST['sliders'])) { foreach ($_POST['sliders'] as $item) { LS_Sliders::delete($item); } } header('Location: admin.php?page=layerslider&message=removeSuccess'); die; } // Restore if ($_POST['action'] === 'restore') { if (is_array($_POST['sliders']) && !empty($_POST['sliders'])) { foreach ($_POST['sliders'] as $item) { LS_Sliders::restore($item); } } header('Location: admin.php?page=layerslider&message=removeSuccess'); die; } // Merge if ($_POST['action'] === 'merge') { // Error check if (!isset($_POST['sliders'][1]) || !is_array($_POST['sliders'])) { header('Location: admin.php?page=layerslider&error=1&message=mergeSelectError'); die; } // Vars global $wpdb; $ids = array(); $slider = array(); // Iterate over the sliders foreach ($_POST['sliders'] as $key => $item) { $ids[] = '#' . $item; $data = lsSliderById($item); if ($key === 0) { $slider = $data['data']; } else { $slider['layers'] = array_merge($slider['layers'], $data['data']['layers']); } } // DB data $name = esc_sql($slider['properties']['title'] = 'Merged sliders of ' . implode(', ', $ids)); $data = esc_sql(json_encode($slider)); // Save as new slider $table_name = $wpdb->prefix . LS_DB_TABLE; $wpdb->query("INSERT INTO {$table_name} (name, data, date_c, date_m) VALUES ('{$name}', '{$data}', '" . time() . "', '" . time() . "')"); header('Location: admin.php?page=layerslider&message=mergeSuccess'); die; } }
/********************************************************/ // Activation hook for creating the initial DB table register_activation_hook(__FILE__, 'layerslider_activation_scripts'); // Register custom settings menu add_action('admin_menu', 'layerslider_settings_menu'); // Link content resources add_action('wp_enqueue_scripts', 'layerslider_enqueue_content_res'); // Link admin resources add_action('admin_enqueue_scripts', 'layerslider_enqueue_admin_res'); // Add shortcode add_shortcode("layerslider", "layerslider_init"); // Widget action add_action('widgets_init', create_function('', 'register_widget("LayerSlider_Widget");')); // Remove slider if (isset($_GET['page']) && $_GET['page'] == 'layerslider' && isset($_GET['action']) && $_GET['action'] == 'remove') { layerslider_removeslider($_GET['id']); } // Duplicate slider if (isset($_GET['page']) && $_GET['page'] == 'layerslider' && isset($_GET['action']) && $_GET['action'] == 'duplicate') { layerslider_duplicateslider($_GET['id']); } // Import sample sliders if (isset($_GET['page']) && $_GET['page'] == 'layerslider' && isset($_GET['action']) && $_GET['action'] == 'import_sample') { layerslider_import_sample_slider(); } // Convert data storage if (isset($_GET['page']) && $_GET['page'] == 'layerslider' && isset($_GET['action']) && $_GET['action'] == 'convert') { layerslider_convert(); } // Help menu add_filter('contextual_help', 'layerslider_help', 10, 3);