晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
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/js_composer/include/classes/shortcodes/ |
Upload File : |
<?php
if ( ! defined( 'ABSPATH' ) ) {
die( '-1' );
}
VcShortcodeAutoloader::getInstance()->includeClass( 'WPBakeryShortCode_Vc_Tta_Accordion' );
/**
* Class WPBakeryShortCode_Vc_Tta_Tabs
*/
class WPBakeryShortCode_Vc_Tta_Tabs extends WPBakeryShortCode_Vc_Tta_Accordion {
public $layout = 'tabs';
public function enqueueTtaScript() {
wp_register_script( 'vc_tabs_script', vc_asset_url( 'lib/vc_tabs/vc-tabs.min.js' ), array( 'vc_accordion_script' ), WPB_VC_VERSION, true );
parent::enqueueTtaScript();
wp_enqueue_script( 'vc_tabs_script' );
}
/**
* @return string
*/
public function getWrapperAttributes() {
$attributes = array();
$attributes[] = 'class="' . esc_attr( $this->getTtaContainerClasses() ) . '"';
$attributes[] = 'data-vc-action="collapse"';
$autoplay = $this->atts['autoplay'];
if ( $autoplay && 'none' !== $autoplay && intval( $autoplay ) > 0 ) {
$attributes[] = 'data-vc-tta-autoplay="' . esc_attr( wp_json_encode( array(
'delay' => intval( $autoplay ) * 1000,
) ) ) . '"';
}
if ( ! empty( $this->atts['el_id'] ) ) {
$attributes[] = 'id="' . esc_attr( $this->atts['el_id'] ) . '"';
}
return implode( ' ', $attributes );
}
/**
* @return string
*/
public function getTtaGeneralClasses() {
$classes = parent::getTtaGeneralClasses();
if ( ! empty( $this->atts['no_fill_content_area'] ) ) {
$classes .= ' vc_tta-o-no-fill';
}
if ( isset( $this->atts['tab_position'] ) ) {
$classes .= ' ' . $this->getTemplateVariable( 'tab_position' );
}
$classes .= ' ' . $this->getParamAlignment( $this->atts, $this->content );
return $classes;
}
/**
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamTabPosition( $atts, $content ) {
if ( isset( $atts['tab_position'] ) && strlen( $atts['tab_position'] ) > 0 ) {
return 'vc_tta-tabs-position-' . $atts['tab_position'];
}
return null;
}
/**
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamTabsListTop( $atts, $content ) {
if ( empty( $atts['tab_position'] ) || 'top' !== $atts['tab_position'] ) {
return null;
}
return $this->getParamTabsList( $atts, $content );
}
/**
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamTabsListBottom( $atts, $content ) {
if ( empty( $atts['tab_position'] ) || 'bottom' !== $atts['tab_position'] ) {
return null;
}
return $this->getParamTabsList( $atts, $content );
}
/**
* Pagination is on top only if tabs are at bottom
*
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamPaginationTop( $atts, $content ) {
if ( empty( $atts['tab_position'] ) || 'bottom' !== $atts['tab_position'] ) {
return null;
}
return $this->getParamPaginationList( $atts, $content );
}
/**
* Pagination is at bottom only if tabs are on top
*
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamPaginationBottom( $atts, $content ) {
if ( empty( $atts['tab_position'] ) || 'top' !== $atts['tab_position'] ) {
return null;
}
return $this->getParamPaginationList( $atts, $content );
}
/**
* @param $atts
*
* @return string
*/
public function constructIcon( $atts ) {
vc_icon_element_fonts_enqueue( $atts['i_type'] );
$class = 'vc_tta-icon';
if ( isset( $atts[ 'i_icon_' . $atts['i_type'] ] ) ) {
$class .= ' ' . $atts[ 'i_icon_' . $atts['i_type'] ];
} else {
$class .= ' fa fa-adjust';
}
return '<i class="' . $class . '"></i>';
}
/**
* @param $atts
* @param $content
*
* @return string
*/
public function getParamTabsList( $atts, $content ) {
$isPageEditabe = vc_is_page_editable();
$html = array();
$html[] = '<div class="vc_tta-tabs-container">';
$html[] = '<ul class="vc_tta-tabs-list">';
if ( ! $isPageEditabe ) {
$active_section = $this->getActiveSection( $atts, false );
foreach ( WPBakeryShortCode_Vc_Tta_Section::$section_info as $nth => $section ) {
$classes = array( 'vc_tta-tab' );
if ( ( $nth + 1 ) === $active_section ) {
$classes[] = $this->activeClass;
}
$title = '<span class="vc_tta-title-text">' . $section['title'] . '</span>';
if ( 'true' === $section['add_icon'] ) {
$icon_html = $this->constructIcon( $section );
if ( 'left' === $section['i_position'] ) {
$title = $icon_html . $title;
} else {
$title = $title . $icon_html;
}
}
$a_html = '<a href="#' . $section['tab_id'] . '" data-vc-tabs data-vc-container=".vc_tta">' . $title . '</a>';
$html[] = '<li class="' . implode( ' ', $classes ) . '" data-vc-tab>' . $a_html . '</li>';
}
}
$html[] = '</ul>';
$html[] = '</div>';
return implode( '', apply_filters( 'vc-tta-get-params-tabs-list', $html, $atts, $content, $this ) );
}
/**
* @param $atts
* @param $content
*
* @return string|null
*/
public function getParamAlignment( $atts, $content ) {
if ( isset( $atts['alignment'] ) && strlen( $atts['alignment'] ) > 0 ) {
return 'vc_tta-controls-align-' . $atts['alignment'];
}
return null;
}
}