103 lines
No EOL
2.7 KiB
PHP
Executable file
103 lines
No EOL
2.7 KiB
PHP
Executable file
<?php
|
|
/** no direct access **/
|
|
defined('MECEXEC') or die();
|
|
|
|
/**
|
|
* Webnus MEC compatibility class.
|
|
* @author Webnus <info@webnus.net>
|
|
*/
|
|
class MEC_feature_compatibility extends MEC_base
|
|
{
|
|
/**
|
|
* @var MEC_factory
|
|
*/
|
|
public $factory;
|
|
|
|
/**
|
|
* @var MEC_main
|
|
*/
|
|
public $main;
|
|
|
|
/**
|
|
* To Override default HTML ID of MEC template files
|
|
* @var string
|
|
*/
|
|
public $html_id = '';
|
|
|
|
/**
|
|
* To add HTML Classes to MEC template files
|
|
* @var array
|
|
*/
|
|
public $html_class = [];
|
|
|
|
/**
|
|
* Constructor method
|
|
* @author Webnus <info@webnus.net>
|
|
*/
|
|
public function __construct()
|
|
{
|
|
// Import MEC Factory
|
|
$this->factory = $this->getFactory();
|
|
|
|
// Import MEC Main
|
|
$this->main = $this->getMain();
|
|
}
|
|
|
|
/**
|
|
* Initialize compatibility
|
|
* @author Webnus <info@webnus.net>
|
|
*/
|
|
public function init()
|
|
{
|
|
// MEC Filters for changing HTML ID of MEC Pages
|
|
$this->factory->filter('mec_archive_page_html_id', array($this, 'html_id'));
|
|
$this->factory->filter('mec_category_page_html_id', array($this, 'html_id'));
|
|
$this->factory->filter('mec_single_page_html_id', array($this, 'html_id'));
|
|
|
|
// MEC Filters for changing HTML class of MEC Pages
|
|
$this->factory->filter('mec_archive_page_html_class', array($this, 'html_class'));
|
|
$this->factory->filter('mec_category_page_html_class', array($this, 'html_class'));
|
|
$this->factory->filter('mec_single_page_html_class', array($this, 'html_class'));
|
|
|
|
// Make MEC compatible with themes and child themes
|
|
$this->factory->action('init', array($this, 'make_it_compatible'));
|
|
}
|
|
|
|
/**
|
|
* Make MEC compatible by adding/changing HTML Classes/IDs
|
|
* @author Webnus <info@webnus.net>
|
|
*/
|
|
public function make_it_compatible()
|
|
{
|
|
$template = get_template();
|
|
|
|
if($template == 'logitrans')
|
|
{
|
|
$this->html_class = ['wrapper'];
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Return HTML ID of MEC Pages
|
|
* @author Webnus <info@webnus.net>
|
|
* @param string $id
|
|
* @return string
|
|
*/
|
|
public function html_id($id)
|
|
{
|
|
if(trim($this->html_id)) return $this->html_id;
|
|
else return $id;
|
|
}
|
|
|
|
/**
|
|
* Return HTML Class of MEC Pages
|
|
* @author Webnus <info@webnus.net>
|
|
* @param string $class
|
|
* @return string
|
|
*/
|
|
public function html_class($class)
|
|
{
|
|
if(is_array($this->html_class) and count($this->html_class)) return $class.' '.implode(' ', $this->html_class);
|
|
else return $class;
|
|
}
|
|
} |