HEX
Server: Apache
System: Linux host.fiblib.com 5.14.0-570.28.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Jul 22 07:56:01 EDT 2025 x86_64
User: scientificreligi (1062)
PHP: 8.0.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/scientificreligi/public_html/wp-content/themes/scientific-religion/functions.php
<?php
// Do not allow directly accessing this file.
if ( ! defined( 'ABSPATH' ) ) {
	exit( 'Direct script access denied.' );
}

/**
 * Include the main theme class.
 */
if (!class_exists('G5Plus_Auteur')) {
    class G5Plus_Auteur
    {

        /**
         * The instance of this object
         *
         * @static
         * @access private
         * @var null | object
         */
        private static $_instance;

        public static function getInstance()
        {
            if (self::$_instance == NULL) {
                self::$_instance = new self();
            }

            return self::$_instance;
        }

        public function init()
        {
            spl_autoload_register(array($this, 'incAutoload'));

            $this->hook()->init();

            $this->custom_css()->init();

            $this->custom_js()->init();

            $this->image_resize()->init();

            $this->requirePlugin()->init();

            $this->includes();

            $this->cache()->init();

            if (class_exists( 'WooCommerce' )) {
                $this->woocommerce()->init();
                $this->authors()->init();
            }

            $this->portfolio()->init();

            if (class_exists( 'G5Plus_Auteur_Event' )) {
                $this->event()->init();
            }
        }

        private function includes()
        {
            require_once($this->themeDir('inc/theme-functions.php'));
        }



        /**
         * Get Theme Dir
         *
         * @param string $path
         * @return string
         */
        public function themeDir($path = '') {

            return trailingslashit(get_template_directory()) . $path;
        }

        /**
         * Get Theme url
         * @param string $path
         * @return string
         */
        public function themeUrl($path = '') {
            return trailingslashit(get_template_directory_uri()) . $path;
        }


        /**
         * Register sidebar
         */
        public function registerSidebar()
        {
            return G5Plus_Auteur_Register_Sidebar::getInstance();
        }


        /**
         * Inc library auto loader
         *
         * @param $class
         */
        public function incAutoload($class)
        {
            $file_name = preg_replace('/^G5Plus_Auteur_/', '', $class);
            if ($file_name !== $class) {
                $file_name = strtolower($file_name);
                $file_name = str_replace('_', '-', $file_name);
                $this->loadFile($this->themeDir("inc/{$file_name}.class.php"));
            }
        }


        public function loadFile($path) {
            if ( $path && is_readable($path) ) {
                include_once($path);
                return true;
            }
            return false;
        }


        /**
         * Custom Css Object
         *
         * @return G5Plus_Auteur_Custom_Css
         */
        public function custom_css()
        {
            return G5Plus_Auteur_Custom_Css::getInstance();
        }

        /**
         * Custom Js Object
         *
         * @return G5Plus_Auteur_Custom_Js
         */
        public function custom_js()
        {
            return G5Plus_Auteur_Custom_Js::getInstance();
        }

        /**
         * Breadcrumbs Object
         *
         * @return G5Plus_Auteur_Breadcrumbs|null|object
         */
        public function breadcrumbs()
        {
            return G5Plus_Auteur_Breadcrumbs::getInstance();
        }

        /**
         * Helper Object
         *
         * @return G5Plus_Auteur_Helper|null|object
         */
        public function helper()
        {
            return G5Plus_Auteur_Helper::getInstance();
            //return G5Plus_Helper::init();
        }

        /**
         * Template Object
         *
         * @return G5Plus_Auteur_Templates|null|object
         */
        public function templates()
        {
            return G5Plus_Auteur_Templates::getInstance();
        }

        /**
         * Blog Object
         *
         * @return G5Plus_Auteur_Blog|null|object
         */
        public function blog()
        {
            return G5Plus_Auteur_Blog::getInstance();
        }

        /**
         * Ajax Object
         * @return G5Plus_Auteur_Ajax|null|object
         */
        public function ajax()
        {
            return G5Plus_Auteur_Ajax::getInstance();
        }

        /**
         * Image Resize
         * @return G5Plus_Image_Resize|null|object
         */
        public function image_resize()
        {
            require_once(G5Plus_Auteur()->themeDir('inc/libs/class-g5plus-image-resize.php'));
            return G5Plus_Image_Resize::getInstance();
        }

        /**
         * Query
         * @return G5Plus_Auteur_Query|null|object
         */
        public function query() {
            return G5Plus_Auteur_Query::getInstance();
        }

        /**
         * G5Plus Assets
         *
         * @return G5Plus_Auteur_Assets
         */
        public function assets() {
            return G5Plus_Auteur_Assets::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Hook
         */
        public function hook() {
            return G5Plus_Auteur_Hook::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Options
         */
        public function options() {
            return G5Plus_Auteur_Options::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Options_Skin
         */
        public function optionsSkin() {
            return G5Plus_Auteur_Options_Skin::getInstance();
        }

        /**
         * @return G5Plus_Auteur_MetaBox
         */
        public function metaBox() {
            return G5Plus_Auteur_MetaBox::getInstance();
        }

        /**
         * @return G5Plus_Auteur_MetaBox_Post
         */
        public function metaBoxPost() {
            return G5Plus_Auteur_MetaBox_Post::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Theme_Setup
         */
        public function themeSetup() {
            return G5Plus_Auteur_Theme_Setup::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Require_Plugin
         */
        public function requirePlugin() {
            return G5Plus_Auteur_Require_Plugin::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Font_Icon
         */
        public function fontIcons() {
            return G5Plus_Auteur_Font_Icon::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Term_Meta
         */
        public function termMeta() {
            return G5Plus_Auteur_Term_Meta::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Term_Meta_Product
         */
        public function termMetaProduct() {
            return G5Plus_Auteur_Term_Meta_Product::getInstance();
        }
        /**
         * @return G5Plus_Auteur_User_Meta
         */
        public function userMeta() {
            return G5Plus_Auteur_User_Meta::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Woocommerce
         */
        public function woocommerce() {
            return G5Plus_Auteur_Woocommerce::getInstance();
        }


	    /**
	     * @return G5Plus_Auteur_Authors
	     */
	    public function authors() {
		    return G5Plus_Auteur_Authors::getInstance();
	    }

        /**
         * @return G5Plus_Auteur_Portfolio
         */
        public function portfolio() {
            return G5Plus_Auteur_Portfolio::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Event
         */
        public function event() {
            return G5Plus_Auteur_Event::getInstance();
        }

        /**
         * @return G5Plus_Auteur_MetaBox_Product
         */
        public function metaBoxProduct() {
            return G5Plus_Auteur_MetaBox_Product::getInstance();
        }

        /**
         * @return G5Plus_Auteur_Cache
         */
        public function cache() {
            return G5Plus_Auteur_Cache::getInstance();
        }

        /**
         * @return G5Plus_Auteur_MetaBox_Portfolio
         */
        public function metaBoxPortfolio() {
            return G5Plus_Auteur_MetaBox_Portfolio::getInstance();
        }
        /**
         * @return G5Plus_Auteur_MetaBox_Event
         */
        public function metaBoxEvent() {
            return G5Plus_Auteur_MetaBox_Event::getInstance();
        }
        public function getMetaPrefix() {
            if (function_exists('G5P')) {
                return G5P()->getMetaPrefix();
            }
            return 'gsf_auteur_';
        }
    }

    function G5Plus_Auteur()
    {
        return G5Plus_Auteur::getInstance();
    }

    G5Plus_Auteur()->init();
}