晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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/stando/public_html/wp-content/plugins/uwac/adminframework/fields/oembed/ |
Upload File : |
<?php if ( ! defined( 'ABSPATH' ) ) { die; } // Cannot access pages directly.
/**
*
* Field: OEmbed
*
* @since 1.0.0
* @version 1.0.0
*
*/
class CSSFramework_Option_oembed extends CSSFramework_Options {
public function __construct( $field = '', $value = '', $unique = '' ) {
parent::__construct( $field, $value, $unique );
}
static function init(){
/**
* Register Hooks
*/
// Register AJAX handler
add_action( 'wp_ajax_cssf-oembed-handler', array( 'CSSFramework_Option_oembed', 'oembed_handler' ) );
// Register Field Assets - Styles and Scripts
add_filter('cssf_register_framework_assets',array( 'CSSFramework_Option_oembed', 'register_assets' ),10);
}
static public function register_assets($styles_scripts){
$styles = $styles_scripts[0];
$scripts = $styles_scripts[1];
$url = CSSF_URI . '/fields/oembed/';
$styles['cssf-field-oembed'] = array(
$url . 'css/styles.css',
array(),
'1.0.0',
false,
);
$scripts['cssf-field-oembed'] = array(
$url . 'js/scripts.js',
array( 'cssf-plugins' ),
'1.0.0',
false,
);
return array($styles,$scripts);
}
public function oembed_handler(){
// check the nonce
if (check_ajax_referer( 'cssf-framework-nonce', 'nonce', false ) == false ) {
wp_send_json_error();
die('Permissions check failed. Please login or refresh (if already logged in) the page, then try Again.');
}
// grab and escape args
$args = array(
'width' => intval($_POST['width']),
'height' => intval($_POST['height'])
);
// generate the oEmbed
$embed = wp_oembed_get($_POST['oembed_url'], $args);
// generate the response
if ($embed){
// AJAX Response
$response = array(
'embed' => $embed,
);
wp_send_json_success($response);
} else {
// AJAX Response
$response = array(
'embed' => __('Not a valid oEmbed source','cssf-framework'),
);
wp_send_json_error($response);
}
die();
}
/**
*
* get_image_size_dimensions()
*
* Get width and height for a defined image size
* @param string $size A defined image size, eg 'medium'
* @return array ['width'] & ['height'] or false
*/
function get_image_size_dimensions($size) {
global $_wp_additional_image_sizes;
if (isset($_wp_additional_image_sizes[$size])) {
$width = intval($_wp_additional_image_sizes[$size]['width']);
$height = intval($_wp_additional_image_sizes[$size]['height']);
} else {
$width = get_option($size.'_size_w');
$height = get_option($size.'_size_h');
}
if ( $width && $height ) {
return array(
'width' => $width,
'height' => $height
);
} else return false;
}
/**
* Field Output
*/
public function output() {
$value = $this->element_value();
$value = ( ! empty( $value ) ) ? $value : $this->field['default'];
$settings = array(
'placeholder' => ( isset( $this->field['settings']['placeholder'] ) ) ? $this->field['settings']['placeholder'] : __('Search...','cssf-framework'),
'preview_size' => ( isset( $this->field['settings']['preview_size'] ) ) ? $this->field['settings']['preview_size'] : false,
'width' => ( isset( $this->field['settings']['width'] ) ) ? $this->field['settings']['width'] : 640,
'height' => ( isset( $this->field['settings']['height'] ) ) ? $this->field['settings']['height'] : 390,
);
$placeholder = $settings['placeholder'];
if ($settings['preview_size']){
$dimensions = $this->get_image_size_dimensions($field['preview_size']);
$preview = wp_oembed_get($value, $dimensions);
$width = $dimensions['width'];
$height = $dimensions['height'];
} else {
$preview = wp_oembed_get($value);
$width = $settings['width'];
$height = $settings['height'];
}
$hide_preview = (!$preview) ? 'hidden' : '';
$hide_loader = ($preview) ? 'hidden' : '';
echo $this->element_before();
echo "
<input type='hidden' name='". $this->element_name() ."' value='". $this->element_value() ."' ". $this->element_class('cssf-oembed-value') ."/>
<div class='cssf-field-inner-wrapper'>
<div class='cssf-field-header'>
<div class='cssf-field-text'>
<input type='url' value='". $this->element_value() ."' placeholder='{$placeholder}' class='cssf-oembed-search'/>
</div>
<div class='cssf-actions'>
<a data-name='cssf-clear-button' href='#' class='cssf-clear-button cssf-button-icon'><i class='cli cli-delete'></i></a>
</div>
</div>
<div class='cssf-oembed-canvas' data-preview-width='{$width}' data-preview-height='{$height}'>
<div class='cssf-oembed-canvas-media {$hide_preview}'>
{$preview}
</div>
<div class='cssf-loader {$hide_loader}'>
<i class='cli cli-image'></i>
</div>
</div>
</div>
";
echo $this->element_after();
}
}
CSSFramework_Option_oembed::init();