class All_In_One_Redirection_Admin_Screen {
/**
* The ID of this plugin.
*
* @since 1.0.0
* @access private
* @var string $plugin_name The ID of this plugin.
*/
private $plugin_name;
/**
* The version of this plugin.
*
* @since 1.0.0
* @access private
* @var string $version The current version of this plugin.
*/
private $version;
/**
* The table name for this plugin
*
* @since 1.0.0
* @access protected
* @var string $db_table_name The table name for this plugin.
*/
protected $db_table_name;
/**
* The default site url for this plugin
*
* @since 1.0.0
* @access protected
* @var string $def_site_url The default site url for this plugin.
*/
protected $def_site_url;
/**
* The default setting site url for this plugin
*
* @since 1.0.0
* @access protected
* @var string $def_setting_site_url The default site url for this plugin.
*/
protected $def_setting_site_url;
/**
* Initialize the class and set its properties.
*
* @since 1.0.0
* @param string $plugin_name The name of this plugin.
* @param string $version The version of this plugin.
*/
public function __construct( $plugin_name, $version, $db_table_name, $def_site_url, $def_setting_site_url ) {
$this->plugin_name = $plugin_name;
$this->version = $version;
$this->db_table_name = $db_table_name;
$this->def_site_url = $def_site_url;
$this->def_setting_site_url = $def_setting_site_url;
}
// set the menu in admin section
public function vsz_add_admin_menu(){
add_menu_page(__( 'Redirection', 'all-in-one-redirection' ), __( 'Redirection', 'all-in-one-redirection' ), 'manage_options', 'all-in-one-redirection', array($this,'vsz_admin_redirection_screen'), 'dashicons-randomize', 40 );
add_submenu_page('all-in-one-redirection',__( 'Redirection Setting', 'all-in-one-redirection' ), __( 'Redirection Setting', 'all-in-one-redirection' ), 'manage_options', 'all-in-one-redirection-setting', array($this,'vsz_admin_redirection_setting_screen'),'', 41);
add_submenu_page('all-in-one-redirection',__( '404 Pages List', 'all-in-one-redirection' ), __( '404 Pages List', 'all-in-one-redirection' ), 'manage_options', 'all-in-one-redirection-404-pages-list', array($this,'vsz_admin_404_redirection_list_screen'),'', 42);
add_submenu_page('all-in-one-redirection',__( 'Tool', 'all-in-one-redirection' ), __( 'Tool', 'all-in-one-redirection' ), 'manage_options', 'all-in-one-redirection-tool', array($this,'vsz_admin_page_redirection_tool_screen'),'', 43);
}
// Redirection setting
public function vsz_admin_redirection_setting_screen(){
echo '
';
echo '
'.__( 'Redirection Setting', 'all-in-one-redirection' ).'
';
echo '
';
if(isset($_POST['redirection_setting_btn']) && !empty($_POST['redirection_setting_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['setting-nonce']), 'setting-page-redirection' )){
$redirection_setting = array();
$redirection_setting['host']=sanitize_text_field($_POST['host']);
$redirection_setting['www']=sanitize_text_field($_POST['www']);
//enable-disable host setting
if(sanitize_text_field($_POST['additional_setting'])=='CUSTOM-SETTING'){
$redirection_setting['setting_host_www']='TRUE';
}
else{
$redirection_setting['setting_host_www']='FALSE';
}
//default seeting based on site url
if(sanitize_text_field($_POST['additional_setting'])=='DEFAULT-SETTING'){
$redirection_setting['setting_default_siteurl']='TRUE';
$wp_vsz_site_url = $this->def_site_url;
if(strpos($wp_vsz_site_url,'https://') !== false ){
$redirection_setting['host']='HTTPS';
}
else{
$redirection_setting['host']='HTTP';
}
if(strpos($wp_vsz_site_url,'www.')){
$redirection_setting['www']='WWW';
}
else{
$redirection_setting['www']='NON-WWW';
}
}
else{
$redirection_setting['setting_default_siteurl']='FALSE';
}
//setting to remove all data during plugin deactive
if(sanitize_text_field($_POST['remove-redirection'])){
$redirection_setting['remove_redirection']='TRUE';
}
else{
$redirection_setting['remove_redirection']='FALSE';
}
update_option('all-in-one-redirection-setting',json_encode($redirection_setting));
echo '
'.__( 'Setting saved successfully.', 'all-in-one-redirection' ).'
';
}
else{
exit;
}
}
echo '
';
echo '
';
echo '
';
}
/*
* Add new redirection record
* List of all the redirection records
* Update optino for all records
* Delete Particular single records
* Delete all records
*/
public function vsz_admin_redirection_screen(){
global $wpdb;
$post_per_page = 20;
$no_of_page = 0;
$current_page = 0;
$record_start = 0;
$table_name = $this->db_table_name;
echo '';
echo '';
echo '
'.__( 'Redirection List', 'all-in-one-redirection' ).'
';
// set the filter variables
if(isset($_REQUEST['record-filter']) && !empty($_REQUEST['record-filter'])){
$filter_key = trim($_REQUEST['keyword']);
$filter_type = sanitize_text_field($_REQUEST['type']);
$filter_hide_record = sanitize_text_field($_REQUEST['hide']);
$filter_reg_record = sanitize_text_field($_REQUEST['regexp']);
}
// filter record form
echo '
';
// Delete all records
if(isset($_POST['delete_all_btn']) && !empty($_POST['delete_all_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['delete-all-nonce']), 'delete-all-page-redirection' )){
$del_all = $wpdb->query("DELETE FROM $table_name where rtype!=404");
if($del_all){
echo '
'.__( 'All Record deleted successfully.', 'all-in-one-redirection' ).'
';
}
}
else{
exit;
}
}
// Reset Hits Records
if(isset($_POST['reset_hits_btn']) && !empty($_POST['reset_hits_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['reset-all-hits-nonce']), 'reset-all-hits-redirection' )){
$reset_hits = $wpdb->query("update $table_name set hits=0 where rtype!=404");
if($reset_hits){
echo '
'.__( 'Hits records are reset successfully.', 'all-in-one-redirection' ).'
';
}
}
else{
exit;
}
}
// Update all the records
if(isset($_POST['update_list'])){
if(wp_verify_nonce( sanitize_text_field($_POST['redirection-list-nonce']), 'list-page-redirection' )){
$c_list = 0;
while($c_list
def_setting_site_url,'',trim($sourceurl));
if(empty($sourceurl)){
$sourceurl = '/';
}
if(!isset($_POST['destination_url'][$c_list]) || empty($_POST['destination_url'][$c_list])){
$destinationurl = $this->def_setting_site_url.'/';
}
else{
$destinationurl = esc_url($_POST['destination_url'][$c_list]);
}
if(isset($_POST['check_reg_exp_btn'][sanitize_text_field($_POST['redirection_id'][$c_list])])){
$regexpression = sanitize_text_field($_POST['check_reg_exp_btn'][sanitize_text_field($_POST['redirection_id'][$c_list])]);
if($regexpression!=1){
$regexpression=0;
}
}
else{
$regexpression=0;
}
if(isset($_POST['check_hide_btn'][sanitize_text_field($_POST['redirection_id'][$c_list])])){
$redirectionhide = sanitize_text_field($_POST['check_hide_btn'][sanitize_text_field($_POST['redirection_id'][$c_list])]);
if($redirectionhide!=1){
$redirectionhide=0;
}
}
else{
$redirectionhide=0;
}
$defsource = trim($_POST['source_url'][$c_list]);
if(isset($defsource) && !empty($defsource) && substr($sourceurl,0,1) == '/'){
$sourceurl = str_ireplace(' ', '%20', trim($sourceurl));
$wpdb->update(
$table_name,
array(
'rtype' => trim(sanitize_text_field($_POST['redirection_type'][$c_list])),
'source_url' => stripslashes(trim($sourceurl)),
'destination_url' => trim($destinationurl),
'reg_expression' => trim($regexpression),
'hide_url' => trim($redirectionhide)
),
array( 'id' => sanitize_text_field($_POST['redirection_id'][$c_list]) )
);
}
$c_list++;
}
echo ''.__( 'Record updated successfully.', 'all-in-one-redirection' ).'
';
}
else{
exit;
}
}
elseif(isset($_POST['delete_selected_list'])){
if(wp_verify_nonce( sanitize_text_field($_POST['redirection-list-nonce']), 'list-page-redirection' )){
if(!empty($_POST['check_delete_btns'])){
$page_id_list = implode(",",array_map('sanitize_text_field',$_POST['check_delete_btns']));
$del_record = $wpdb->query("DELETE from $table_name where id IN ($page_id_list)");
if($del_record){
echo ''.__( 'Record deleted successfully.', 'all-in-one-redirection' ).'
';
}
}
}
else{
exit;
}
}
// filter record fetch
$filter_where_condition = '';
if(isset($_REQUEST['record-filter']) && !empty($_REQUEST['record-filter'])){
if(isset($filter_key) && !empty($filter_key)){
$filter_where_condition .= " AND (source_url LIKE '%$filter_key%' OR destination_url LIKE '%$filter_key%')";
}
if(isset($filter_type) && !empty($filter_type)){
$filter_where_condition .= " AND rtype=$filter_type";
}
if(isset($filter_hide_record) && !empty($filter_hide_record)){
if($filter_hide_record=='true'){
$filter_where_condition .= " AND hide_url=1";
}
elseif($filter_hide_record=='false'){
$filter_where_condition .= " AND hide_url=0";
}
}
if(isset($filter_reg_record) && !empty($filter_reg_record)){
if($filter_reg_record=='true'){
$filter_where_condition .= " AND reg_expression=1";
}
elseif($filter_reg_record=='false'){
$filter_where_condition .= " AND reg_expression=0";
}
}
}
//No. of page - Pagination
$no_of_total_page = $wpdb->get_var("select COUNT(id) as no_of_total_record from $table_name where rtype!=404$filter_where_condition");
$no_of_page = ceil($wpdb->get_var("select COUNT(id) as no_of_record from $table_name where rtype!=404$filter_where_condition")/$post_per_page);
if(isset($_GET['paged']) && $_GET['paged']!=0){
$current_page = sanitize_text_field($_GET['paged']);
$record_start = ($current_page-1)*$post_per_page;
}
else{
$current_page = 1;
$record_start = ($current_page-1)*$post_per_page;
}
$select_query = "SELECT * FROM $table_name where rtype!=404$filter_where_condition order by id DESC limit $record_start,$post_per_page";
$redirection_list = $wpdb->get_results($select_query);
if($redirection_list){
echo '';
echo '';
echo '';
// custom pagination
$pagination_info = array();
$pagination_info['total_pages'] = $no_of_page;
$pagination_info['curr_page'] = $current_page;
if($no_of_page>1){
$filter_pagination_condition = '';
if(isset($_REQUEST['record-filter']) && !empty($_REQUEST['record-filter'])){
$filter_pagination_condition .= '&keyword='.stripslashes($filter_key);
$filter_pagination_condition .= '&type='.$filter_type;
$filter_pagination_condition .= '&hide='.$filter_hide_record;
$filter_pagination_condition .= '®exp='.$filter_reg_record;
$filter_pagination_condition .= '&record-filter=yes';
}
echo '';
} // END custom pagination
}
else{
if(!isset($del_all)){
echo ''.__( 'No record found.', 'all-in-one-redirection' ).'
';
}
}
echo ' ';
}
/*
* 404 pages list
* Add 404 page in redirection
*/
public function vsz_admin_404_redirection_list_screen(){
global $wpdb;
$post_per_page = 20;
$no_of_page = 0;
$current_page = 0;
$record_start = 0;
$table_name = $this->db_table_name;
echo '';
echo '
'.__( '404 Pages List', 'all-in-one-redirection' ).'
';
// set the filter variables
if(isset($_REQUEST['record-404-filter']) && !empty($_REQUEST['record-404-filter'])){
$filter_404_key = trim($_REQUEST['keyword']);
//var_dump($filter_404_key);exit;
}
// filter 404 record form
echo '
';
// delete selected all 404 page records
if(isset($_POST['delete-all-404-pages']) && !empty($_POST['delete-all-404-pages'])){
if(wp_verify_nonce( sanitize_text_field($_POST['delete-404-page-nonce']), 'delete-404-page-list' )){
$del_404_page_all = $wpdb->query("DELETE FROM $table_name where rtype=404");
if($del_404_page_all){
echo '
'.__( 'All Record deleted successfully.', 'all-in-one-redirection' ).'
';
}
}
else{
exit;
}
}
// delete selected 404 page records
if(isset($_POST['delete-404-pages']) && !empty($_POST['delete-404-pages'])){
if(wp_verify_nonce( sanitize_text_field($_POST['delete-404-page-nonce']), 'delete-404-page-list' )){
if(!empty($_POST['check_404_page_delete_btns'])){
$page_404_id_list = implode(",",array_map('sanitize_text_field',$_POST['check_404_page_delete_btns']));
$del_404_page = $wpdb->query("DELETE from $table_name where id IN ($page_404_id_list)");
if($del_404_page){
echo '
'.__( 'Record deleted successfully.', 'all-in-one-redirection' ).'
';
}
}
}
else{
exit;
}
}
// Save new 404 page record
if(isset($_POST['insert_404_page_redirection_btn'])){
$source_url = rtrim(trim($_POST['source_url_insert']),'/');
$source_url = str_ireplace($this->def_setting_site_url,'',trim($source_url));
if(empty($source_url)){
$source_url = '/';
}
if(!isset($_POST['destination_url_insert']) || empty($_POST['destination_url_insert'])){
$destination_url = $this->def_setting_site_url.'/';
}
else{
$destination_url = esc_url($_POST['destination_url_insert']);
}
$regexpression_check = sanitize_text_field($_POST['reg_expression_check']);
if($regexpression_check!=1){
$regexpression_check=0;
}
if(wp_verify_nonce( sanitize_text_field($_POST['insert-404-page-nonce']), 'insert-404-page-redirection' )){
$def_source = trim($_POST['source_url_insert']);
if(isset($def_source) && !empty($def_source)){
if(substr($source_url,0,1) == '/'){
$source_url = str_ireplace(' ', '%20', trim($source_url));
$chk_exist_rule = 0;
$chk_exist_rule_data = $wpdb->get_row("select * from ".$table_name." where source_url='".stripslashes(trim($source_url))."' and reg_expression=".$regexpression_check." and hide_url=0 and rtype!=404 order by id DESC");
if($chk_exist_rule_data){
if($chk_exist_rule_data->source_url==stripslashes(trim($source_url))){
$chk_exist_rule = 1;
}
}
if(!$chk_exist_rule){
$r_insert = $wpdb->insert(
$table_name,
array(
'rtype' => trim(sanitize_text_field($_POST['redirection_type'])),
'source_url' => stripslashes(trim($source_url)),
'destination_url' => trim($destination_url),
'reg_expression' => trim($regexpression_check),
'time' => current_time( 'mysql' )
)
);
if($r_insert){
$del_404_page_all = $wpdb->query("DELETE FROM $table_name where id=".sanitize_text_field($_POST['page_404_id']));
echo '
'.__( 'Record added successfully.', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'Please insert valid source url because of duplicate entry.', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'Please insert valid source url with slash(/).', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'Please insert the source url.', 'all-in-one-redirection' ).'
';
}
}
else{
exit;
}
}
// filter record fetch
$filter_404_where_condition = '';
if(isset($_REQUEST['record-404-filter']) && !empty($_REQUEST['record-404-filter'])){
if(isset($filter_404_key) && !empty($filter_404_key)){
$filter_404_where_condition .= " AND source_url LIKE '%$filter_404_key%'";
}
}
//No. of page - Pagination
$no_of_total_page = $wpdb->get_var("select COUNT(id) as no_of_total_record from $table_name where rtype=404$filter_404_where_condition");
$no_of_page = ceil($wpdb->get_var("select COUNT(id) as no_of_record from $table_name where rtype=404$filter_404_where_condition")/$post_per_page);
if(isset($_GET['paged']) && $_GET['paged']!=0){
$current_page = sanitize_text_field($_GET['paged']);
$record_start = ($current_page-1)*$post_per_page;
}
else{
$current_page = 1;
$record_start = ($current_page-1)*$post_per_page;
}
$select_404_page_query = "SELECT * FROM $table_name where rtype=404$filter_404_where_condition order by last_access DESC limit $record_start,$post_per_page";
$page_404_data = $wpdb->get_results($select_404_page_query);
if($page_404_data){
echo '
';
// custom pagination
$pagination_info = array();
$pagination_info['total_pages'] = $no_of_page;
$pagination_info['curr_page'] = $current_page;
if($no_of_page>1){
$filter_404_pagination_condition = '';
if(isset($_REQUEST['record-404-filter']) && !empty($_REQUEST['record-404-filter'])){
$filter_404_pagination_condition .= '&keyword='.stripslashes($filter_404_key);
$filter_404_pagination_condition .= '&record-404-filter=yes';
}
echo '';
} // END custom pagination
echo '
';
}
else{
if(!isset($del_404_page_all)){
echo '
'.__( 'No record found.', 'all-in-one-redirection' ).'
';
}
}
echo '
';
}
/*
* Tool - Import/Export Functionality
*/
public function vsz_admin_page_redirection_tool_screen(){
global $wpdb;
$table_name = $this->db_table_name;
echo '';
echo '
';
echo '
';
echo '
'.__( 'Redirection Bulk Import', 'all-in-one-redirection' ).'
';
if(isset($_POST['import_file_redirection_btn']) && !empty($_POST['import_file_redirection_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['file-import-nonce']), 'import-file-page-redirection' )){
require_once plugin_dir_path( __FILE__ ).'class/csv.class.php';
$flag=1;
$error_msg="";
$import_file_name = $_FILES['redirection-file']['name'];
$file_path = plugin_dir_path(dirname(dirname( __FILE__ ))).'upload/import/';
$file_basename = substr($import_file_name, 0, strripos($import_file_name, '.')); // get file name
$file_ext = substr($import_file_name, strripos($import_file_name, '.')); // get file extention
$allowed_file_types = array('.csv');
if($import_file_name){
if(in_array($file_ext,$allowed_file_types)){
$newfilename = $file_path.'all-in-one-redirection-import-'.date('Ymdhis').$file_ext;
if(move_uploaded_file($_FILES["redirection-file"]["tmp_name"], $newfilename)){
$import_csv_file = $newfilename;
if (($handle = fopen($import_csv_file, "r")) !== FALSE) {
$objCsv = new CSV($import_csv_file,"R");
$header = array("Codes","Status");
//Seperating the values by semicolon in csv
$row_count=0;
$skip_record_list=0;
$skip_record_flag=true;
while ($csv_data = $objCsv->GetArray(false,false,true)){
$row_count++;
if($row_count!=1){
$num_field = count($csv_data);
if($num_field == 5){
if(!empty($csv_data[0])){
$flag=1;
$file_source_url = rtrim($csv_data[1],'/');
$def_source = trim($csv_data[1]);
$file_source_url = str_ireplace($this->def_setting_site_url,'',trim($file_source_url));
if(empty($file_source_url)){
$file_source_url = '/';
}
if(!isset($csv_data[2]) || empty($csv_data[2])){
$file_destination_url = $this->def_setting_site_url.'/';
}
else{
$file_destination_url = esc_url($csv_data[2]);
}
$redirection_type = trim($csv_data[0]);
if($redirection_type!=301 && $redirection_type!=302){
$redirection_type=301;
}
$redirection_reg_expression = trim($csv_data[3]);
if($redirection_reg_expression!=1){
$redirection_reg_expression=0;
}
$redirection_hide = trim($csv_data[4]);
if($redirection_hide!=1){
$redirection_hide=0;
}
$skip_record_list++;
$chk_exist_rule = 0;
$chk_exist_rule_data = $wpdb->get_row("select * from ".$table_name." where source_url='".stripslashes(trim($file_source_url))."' and reg_expression=".$redirection_reg_expression." and hide_url=".$redirection_hide." and rtype!=404 order by id DESC");
if($chk_exist_rule_data){
if($chk_exist_rule_data->source_url==stripslashes(trim($file_source_url))){
$chk_exist_rule = 1;
}
}
if(isset($def_source) && !empty($def_source) && substr($file_source_url,0,1) == '/' && !$chk_exist_rule){
$wpdb->insert(
$table_name,
array(
'rtype' => $redirection_type,
'source_url' => stripslashes(trim($file_source_url)),
'destination_url' => trim($file_destination_url),
'reg_expression' => $redirection_reg_expression,
'hide_url' => $redirection_hide,
'time' => current_time( 'mysql' )
)
);
}
else{
if($skip_record_flag){
echo '
'.__( 'Below records are skipped because duplicate entry or source url is not valid. So, please check it.', 'all-in-one-redirection' ).'
';
$skip_record_flag=false;
}
echo '
'.__( 'Index ', 'all-in-one-redirection').($skip_record_list+1).': '.$csv_data[1].'
';
}
}
}
else{
$flag=0;
$error_msg = __( 'Number of fields in csv file does not matched and file must be separated with comma.', 'all-in-one-redirection' );
}
}
}
}
else{
$flag=0;
$error_msg = __( 'File permission not valid.', 'all-in-one-redirection' );
}
}
else{
$flag=0;
$error_msg = __( 'Folder permission not valid.', 'all-in-one-redirection' );
}
}
else{
$flag=0;
$error_msg = __( 'Invalid file type. Please upload the csv file.', 'all-in-one-redirection' );
}
}
else{
$flag=0;
$error_msg = __( 'Please upload the file.', 'all-in-one-redirection' );
}
if($flag==0){
echo '
'.$error_msg.'
';
}
else{
echo '
'.__( 'All records are added successfully.', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'There is some technical problem. Please try again.', 'all-in-one-redirection' ).'
';
}
}
echo '
';
echo '
';
echo '
';
echo '
'.__( 'Redirection Bulk Export', 'all-in-one-redirection' ).'
';
if(isset($_POST['export_file_redirection_btn']) && !empty($_POST['export_file_redirection_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['file-export-nonce']), 'export-file-page-redirection' )){
require_once plugin_dir_path( __FILE__ ).'class/csv.class.php';
$file_path = plugin_dir_path(dirname(dirname( __FILE__ ))).'upload/export/';
$file_field_header = array('Type','Source-URL','Destination-URL','Regular-Expression','Hide');
$newFileName = 'all-in-one-redirection-export-'.date('Ymdhis').'.csv';
$exportedFileName = $file_path.$newFileName;
// create csv object
$csvObj = new CSV($exportedFileName, "W",",");
if($csvObj->filename){
$flagCsv = $csvObj->CSV();
$arrInfo = array();
$arrInfo = array_values($file_field_header);
$csvObj->addArray($arrInfo);
unset($arrInfo);
$redirection_list_select = $wpdb->get_results( "SELECT * FROM $table_name where rtype!=404 order by id DESC" );
foreach($redirection_list_select as $key => $redirection_page){
$file_field_value = array($redirection_page->rtype,$redirection_page->source_url,$redirection_page->destination_url,$redirection_page->reg_expression,$redirection_page->hide_url);
$arrInfo = array();
$arrInfo = array_values($file_field_value);
$csvObj->addArray($arrInfo);
unset($arrInfo);
}
$csvObj->close();
$file_export_path = plugin_dir_url(dirname(dirname( __FILE__))).'upload/export/'.$newFileName;
echo '
';
//header('Location: '.$file_export_path);
//exit;
}
else{
echo '
'.__( 'There is some folder permission issue. Please set the proper file permission.', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'There is some technical problem. Please try again.', 'all-in-one-redirection' ).'
';
}
}
elseif(isset($_POST['export_file_404_pages_list_btn']) && !empty($_POST['export_file_404_pages_list_btn'])){
if(wp_verify_nonce( sanitize_text_field($_POST['file-export-nonce']), 'export-file-page-redirection' )){
require_once plugin_dir_path( __FILE__ ).'class/csv.class.php';
$file_path = plugin_dir_path(dirname(dirname( __FILE__ ))).'upload/export/';
$file_field_header = array('Access-Date','Source-URL','Hits');
$newFileName = 'all-in-one-404-page-list-export-'.date('Ymdhis').'.csv';
$exportedFileName = $file_path.$newFileName;
// create csv object
$csvObj = new CSV($exportedFileName, "W",",");
if($csvObj->filename){
$flagCsv = $csvObj->CSV();
$arrInfo = array();
$arrInfo = array_values($file_field_header);
$csvObj->addArray($arrInfo);
unset($arrInfo);
$redirection_list_select = $wpdb->get_results( "SELECT * FROM $table_name where rtype=404 order by last_access DESC" );
foreach($redirection_list_select as $key => $redirection_page){
$file_field_value = array(date('M d, Y h:i A',strtotime($redirection_page->last_access)),$redirection_page->source_url,$redirection_page->hits);
$arrInfo = array();
$arrInfo = array_values($file_field_value);
$csvObj->addArray($arrInfo);
unset($arrInfo);
}
$csvObj->close();
$file_export_path = plugin_dir_url(dirname(dirname( __FILE__))).'upload/export/'.$newFileName;
echo '
';
//header('Location: '.$file_export_path);
//exit;
}
else{
echo '
'.__( 'There is some folder permission issue. Please set the proper file permission.', 'all-in-one-redirection' ).'
';
}
}
else{
echo '
'.__( 'There is some technical problem. Please try again.', 'all-in-one-redirection' ).'
';
}
}
echo '
';
echo '
';
echo '
';
echo '
';
}
}