403Webshell
Server IP : 172.67.147.195  /  Your IP : 216.73.216.142
Web Server : Apache/2
System : Linux hosting8537.lvs 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : mienphi ( 1014)
PHP Version : 8.2.14
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/mienphi/public_html/wp-content/plugins/learnpress-import-export/inc/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/mienphi/public_html/wp-content/plugins/learnpress-import-export/inc//functions.php
<?php
/**
 * LearnPress Import Export Functions
 *
 * Define common functions for both front-end and back-end
 *
 * @author   ThimPress
 * @package  LearnPress/Import-Export/Functions
 * @version  3.0.0
 */

// Prevent loading this file directly
defined( 'ABSPATH' ) || exit;

if ( ! function_exists( 'lpie_admin_view' ) ) {
	/**
	 * Admin view.
	 *
	 * @param $name
	 * @param string $args
	 */
	function lpie_admin_view( $name, $args = '' ) {
		if ( ! preg_match( '~.php$~', $name ) ) {
			$name .= '.php';
		}
		if ( is_array( $args ) ) {
			extract( $args );
		}
		include LP_ADDON_IMPORT_EXPORT_INC . "admin/views/{$name}";
	}
}

if ( ! class_exists( 'lpie_get_export_source' ) ) {
	/**
	 * Get export sources (learnpress or other systems).
	 *
	 * @return mixed
	 */
	function lpie_get_export_source() {
		$source = array(
			'learnpress' => 'Learnpress'
		);

		return apply_filters( 'lpie_export_source', $source );
	}
}

if ( ! function_exists( 'lpie_get_exporter' ) ) {
	/**
	 * Get export provider class.
	 *
	 * @param $name
	 *
	 * @return mixed
	 */
	function lpie_get_exporter( $name ) {
		$provider = apply_filters( 'lpie_export_provider_class', 'LP_Export_' . $name . '_Provider', $name );
		if ( ! class_exists( $provider ) ) {
			return $provider;
		}

		return new $provider();
	}
}

if ( ! function_exists( 'lpie_root_path' ) ) {
	/**
	 * Get root path.
	 *
	 * @param string $a
	 *
	 * @return mixed
	 */
	function lpie_root_path( $a = 'basedir' ) {
		$upload_dir = wp_upload_dir();

		return $upload_dir[ $a ];
	}
}

if ( ! function_exists( 'lpie_root_url' ) ) {
	/**
	 * Get root url.
	 *
	 * @param string $a
	 *
	 * @return mixed
	 */
	function lpie_root_url( $a = 'baseurl' ) {
		$upload_dir = wp_upload_dir();

		return $upload_dir[ $a ];
	}
}

if ( ! function_exists( 'lpie_import_path' ) ) {
	/**
	 * Get import path.
	 *
	 * @param bool $root
	 *
	 * @return string
	 */
	function lpie_import_path( $root = true ) {
		return $root ? lpie_root_path() . '/learnpress/import' : 'learnpress/import';
	}
}

if ( ! function_exists( 'lpie_export_path' ) ) {
	/**
	 * Get export path.
	 *
	 * @param bool $root
	 *
	 * @return string
	 */
	function lpie_export_path( $root = true ) {
		return $root ? lpie_root_path() . '/learnpress/export' : 'learnpress/export';
	}
}

if ( ! function_exists( 'lpie_filesystem' ) ) {
	/**
	 * WP Filesystem.
	 *
	 * @return mixed
	 */
	function lpie_filesystem() {
		if ( ! function_exists( 'WP_Filesystem' ) ) {
			require_once ABSPATH . 'wp-admin/includes/file.php';
		}
		global $wp_filesystem;
		WP_Filesystem();

		return $wp_filesystem;
	}
}

if ( ! function_exists( 'lpie_mkdir' ) ) {
	/**
	 * Make directory.
	 *
	 * @param $dir
	 *
	 * @return string
	 */
	function lpie_mkdir( $dir ) {
		if ( wp_mkdir_p( lpie_root_path() . '/' . $dir ) ) {
			return $dir;
		}
		if ( $filesystem = lpie_filesystem() ) {
			if ( ! $filesystem->is_dir( lpie_root_path() . '/' . $dir ) ) {
				$folders = explode( '/', $dir );
				$return  = '';
				for ( $i = 0, $n = sizeof( $folders ); $i < $n; $i ++ ) {
					$subdir    = join( '/', array_slice( $folders, 0, $i + 1 ) );
					$make_path = lpie_root_path() . '/' . $subdir;
					if ( $filesystem->mkdir( $make_path, true ) ) {
						$return = $subdir;
						@$filesystem->chmod( $make_path, 0755 );
					} else {
						echo sprintf( __( 'Can not create dir [%d]', 'learnpress-import-export' ), $make_path ) . "\n";
					}
				}

				return $return;
			} else {
				return $dir;
			}
		} else {
			_e( 'Error with WP_Filesystem', 'learnpress-import-export' );
		}

		return $dir;
	}
}

if ( ! function_exists( 'lpie_put_contents' ) ) {
	/**
	 * Put content.
	 *
	 * @param $file
	 * @param $contents
	 */
	function lpie_put_contents( $file, $contents ) {
		if ( $filesystem = lpie_filesystem() ) {
			$file_dir = dirname( $file );
			lpie_mkdir( $file_dir );
			$filesystem->put_contents( lpie_root_path() . '/' . $file, $contents );
		}
	}
}

if ( ! function_exists( 'lpie_get_contents' ) ) {
	/**
	 * Get contents.
	 *
	 * @param $file
	 *
	 * @return mixed
	 */
	function lpie_get_contents( $file ) {
		if ( $filesystem = lpie_filesystem() ) {
			return $filesystem->get_contents( lpie_root_path() . '/' . $file );
		}

		return null;
	}
}

if ( ! function_exists( '' ) ) {
	/**
	 * Delete file.
	 *
	 * @param $file
	 */
	function lpie_delete_file( $file ) {
		if ( $filesystem = lpie_filesystem() ) {
			unlink( lpie_root_path() . '/' . $file );
		}
	}
}

if ( ! function_exists( 'lpie_get_export_files' ) ) {
	/**
	 * Get export files.
	 *
	 * @return array
	 */
	function lpie_get_export_files() {
		$files = array();
		if ( $filesystem = lpie_filesystem() ) {
			$list = $filesystem->dirlist( lpie_root_path() . '/learnpress/export' );
			if ( $list ) {
				foreach ( $list as $file ) {
					if ( ! preg_match( '!\.xml$!', $file['name'] ) ) {
						continue;
					}
					$files[] = $file;
				}
			}
			usort( $files, '_lpie_sort_files' );
		}

		return $files;
	}
}

if ( ! function_exists( 'lpie_get_import_files' ) ) {
	/**
	 * Get import files.
	 *
	 * @return array
	 */
	function lpie_get_import_files() {
		$files = array();
		if ( $filesystem = lpie_filesystem() ) {
			$list = $filesystem->dirlist( lpie_root_path() . '/learnpress/import' );
			if ( $list ) {
				foreach ( $list as $file ) {
					// if ( ! preg_match( "/!\.xml$!,|,!\.csv$!/", $file['name'] ) ) {
					// 	continue;
					// }
					$files[] = $file;
				}
			}
			usort( $files, '_lpie_sort_files' );

		} else {
			_e( 'FileSystem error!', 'learnpress-import-export' );
		}

		return $files;
	}
}

if ( ! function_exists( 'lpie_get_url' ) ) {
	/**
	 * Get file url.
	 *
	 * @param $file
	 *
	 * @return string
	 */
	function lpie_get_url( $file ) {
		return lpie_root_path( 'baseurl' ) . '/' . $file;
	}
}

if ( ! function_exists( 'lpie_export_header' ) ) {
	/**
	 * Export header.
	 *
	 * @param $filename
	 */
	function lpie_export_header( $filename ) {
		header( 'Content-Description: File Transfer' );
		header( 'Content-Disposition: attachment; filename=' . $filename );
		header( 'Content-Type: text/xml; charset=' . get_option( 'blog_charset' ), true );
	}
}

if ( ! function_exists( 'lpie_get_current_tab' ) ) {
	/**
	 * Admin current tab.
	 *
	 * @return string
	 */
	function lpie_get_current_tab() {
		$current_tab = ! empty( $_REQUEST['tab'] ) ? $_REQUEST['tab'] : 'export';

		return $current_tab;
	}
}

if ( ! function_exists( 'lpie_get_import_instructors' ) ) {
	/**
	 * Get import instructors.
	 *
	 * @param $file
	 *
	 * @return bool
	 * @throws Exception
	 */
	function lpie_get_import_instructors( $file ) {
		$xml_file = lpie_root_path() . '/learnpress/' . $file;
		if ( ! file_exists( $xml_file ) ) {
			throw new Exception( sprintf( __( 'The file %s doesn\'t exists', 'learnpress-import-export' ), $xml_file ) );
		}
		$parser = new LPR_Export_Import_Parser();
		$data   = $parser->parse( $xml_file );
		if ( ! empty( $data['authors'] ) ) {
			return $data['authors'];
		}

		return false;
	}
}

if ( ! function_exists( '_lpie_sort_files' ) ) {
	/**
	 * Sort files.
	 *
	 * @param $a
	 * @param $b
	 *
	 * @return bool
	 */
	function _lpie_sort_files( $a, $b ) {
		return $a['lastmodunix'] < $b['lastmodunix'];
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit