| Server IP : 167.99.224.18 / Your IP : 216.73.216.136 Web Server : Apache/2.4.41 (Ubuntu) System : Linux wordpress-ubuntu-s-1vcpu-1gb-nyc1-01 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.0.25 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/wp-content/plugins-old/simple-lightbox/includes/ |
Upload File : |
<?php
/**
* Theme
* @package Simple Lightbox
* @subpackage Themes
* @author Archetyped
*/
class SLB_Theme extends SLB_Component {
/* Properties */
protected $props_required = array( 'name' );
/**
* Public flag
* @var bool
*/
protected $public = true;
/* Get/Set */
/**
* Retrieve theme's ancestors
* @param bool $sort_topdown (optional) Ancestor sorting (Default: Nearest to Farthest)
* @return array Theme's ancestors (sorted by nearest to most distant ancestor)
*/
public function get_ancestors( $sort_topdown = false ) {
$ret = array();
/**
* @var SLB_Theme
*/
$thm = $this;
while ( $thm->has_parent() ) {
$par = $thm->get_parent();
// Add ancestor
if ( $par->is_valid() && ! in_array( $par, $ret, true ) ) {
$ret[] = $par;
}
// Get next ancestor
$thm = $par;
}
// Sorting
if ( $sort_topdown ) {
$ret = array_reverse( $ret );
}
return $ret;
}
/**
* Set public flag
* @param bool $public
*/
public function set_public( $public ) {
$this->public = ! ! $public;
}
/**
* Get privacy state
* @return bool
*/
public function get_public() {
return ! ! $this->public;
}
/* Templates */
/**
* Add template file
* @see `add_file()`
* @param string $handle Template handle
* @param string $src Template URI
* @return obj Current instance
*/
protected function add_template( $handle, $src ) {
return $this->add_file( 'template', $handle, $src );
}
/**
* Retrieve template file
* @see `get_file()`
* @param string $handle Template handle
* @param string $format (optional) Return value format
* @return mixed Template file (Default: array of file properties @see `Base_Object::add_file()`)
*/
protected function get_template( $handle, $format = null ) {
return $this->get_file( 'template', $handle, $format );
}
/* Layout */
/**
* Set theme layout
* @uses `add_template()`
* @param string $src Layout file URI
* @return Current instance
*/
public function set_layout( $src ) {
return $this->add_template( 'layout', $src );
}
/**
* Get layout
* @param string $format (optional) Layout data format
* @return mixed Theme layout
*/
public function get_layout( $format = null ) {
return $this->get_template( 'layout', $format );
}
}