晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/rainic/www/oldTZh/wp-content/plugins/powerpack-elements/includes/ |
Upload File : |
<?php
namespace PowerpackElements;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
class Extensions_Manager {
const DISPLAY_CONDITIONS = 'display-conditions';
const BACKGROUND_EFFECTS = 'background-effects';
const WRAPPER_LINK = 'wrapper-link';
const CUSTOM_CURSOR = 'custom-cursor';
const ANIMATED_GRADIENT_BACKGROUND = 'animated-gradient-background';
const TOOLTIPS = 'tooltips';
private $_extensions = null;
public $available_extensions = [
self::DISPLAY_CONDITIONS,
self::BACKGROUND_EFFECTS,
self::WRAPPER_LINK,
self::CUSTOM_CURSOR,
self::ANIMATED_GRADIENT_BACKGROUND,
self::TOOLTIPS,
];
/**
* Loops though available extensions and registers them
*
* @since 1.4.7
*
* @access public
* @return void
*/
public function register_extensions() {
$this->_extensions = [];
$available_extensions = $this->available_extensions;
foreach ( $available_extensions as $index => $extension_id ) {
$extension_filename = str_replace( '_', '-', $extension_id );
$extension_name = str_replace( '-', '_', $extension_id );
$extension_filename = POWERPACK_ELEMENTS_PATH . "extensions/{$extension_filename}.php";
require $extension_filename;
$class_name = str_replace( '-', '_', $extension_id );
$class_name = __NAMESPACE__ . '\Extensions\Extension_' . $class_name;
if ( ! $this->is_available( $extension_name ) ) {
unset( $this->available_extensions[ $index ] );
}
// Skip extension if it's disabled in admin settings
if ( $this->is_extension_disabled( $extension_name ) ) {
continue;
}
$this->register_extension( $extension_id, new $class_name() );
}
do_action( 'powerpack_elements/extensions/extensions_registered', $this );
}
/**
* Check if extension is enabled through admin settings
*
* @since 1.4.8.2
*
* @access public
* @return bool
*/
public function is_extension_disabled( $extension = '' ) {
$enabled_extensions = pp_get_enabled_extensions();
if ( ! is_array( $enabled_extensions ) ) {
$enabled_extensions = array();
}
$extension = str_replace( '_', '-', $extension );
$extension_name = 'pp-' . $extension;
if ( in_array( $extension_name, $enabled_extensions ) || isset( $enabled_extensions[ $extension_name ] ) ) {
return false;
}
return true;
}
/**
* Check if extension is disabled by default
*
* @since 1.4.7
*
* @access public
* @return bool
*/
public function is_default_disabled( $extension_name ) {
if ( ! $extension_name ) {
return false;
}
$class_name = str_replace( '-', '_', $extension_name );
$class_name = 'PowerpackElements\Extensions\Extension_' . ucwords( $class_name );
if ( $class_name::is_default_disabled() ) {
return true;
}
return false;
}
/**
* Check if extension is available at all
*
* @since 1.4.7
*
* @access public
* @return bool
*/
public function is_available( $extension_name ) {
if ( ! $extension_name ) {
return false;
}
$class_name = str_replace( '-', '_', $extension_name );
$class_name = 'PowerpackElements\Extensions\Extension_' . ucwords( $class_name );
if ( $class_name::requires_elementor_pro() && ! is_elementor_pro_active() ) {
return false;
}
return true;
}
/**
* @since 1.4.7
*
* @param $extension_id
* @param Extension_Base $extension_instance
*/
public function register_extension( $extension_id, Base\Extension_Base $extension_instance ) {
$this->_extensions[ $extension_id ] = $extension_instance;
}
/**
* @since 1.4.7
*
* @param $extension_id
* @return bool
*/
public function unregister_extension( $extension_id ) {
if ( ! isset( $this->_extensions[ $extension_id ] ) ) {
return false;
}
unset( $this->_extensions[ $extension_id ] );
return true;
}
/**
* @since 1.4.7
*
* @return Extension_Base[]
*/
public function get_extensions() {
if ( null === $this->_extensions ) {
$this->register_extensions();
}
return $this->_extensions;
}
/**
* @since 1.4.7
*
* @param $extension_id
* @return bool|\PowerpackElements\Extension_Base
*/
public function get_extension( $extension_id ) {
$extensions = $this->get_extensions();
return isset( $extensions[ $extension_id ] ) ? $extensions[ $extension_id ] : false;
}
private function require_files() {
require POWERPACK_ELEMENTS_PATH . 'base/extension-base.php';
}
public function __construct() {
$this->require_files();
$this->register_extensions();
}
}