[ Avaa Bypassed ]




Upload:

Command:

www-data@3.144.124.77: ~ $
<?php
/**
 * The main class for controllers
 *
 * @package HMWP/Main
 * @file The Front Controller file
 *
 */

defined('ABSPATH') || die('Cheatin\' uh?');

class HMWP_Classes_FrontController
{

    /**
     * The class Model from /models
     *
     * @var object of the model class 
     */
    public $model;

    /**
     * The class view from /views
     *
     * @var object of the view class 
     */
    public $view;

    /**
     * The class name
     *
     * @var string name of theclass 
     */
    protected $name;

    /**
     * HMWP_Classes_FrontController constructor.
     *
     * @throws Exception
     */
    public function __construct()
    {

        /* get the name of the current class */
        $this->name = get_class($this);

        /* load the model and hooks here for WordPress actions to take efect */
        /* create the model and view instances */
        $model_classname = str_replace('Controllers', 'Models', $this->name);
        if(HMWP_Classes_ObjController::getClassByPath($model_classname)) {
            $this->model = HMWP_Classes_ObjController::getClass($model_classname);
        }

        //IMPORTANT TO LOAD HOOKS HERE
        /* check if there is a hook defined in the controller clients class */
        HMWP_Classes_ObjController::getClass('HMWP_Classes_HookController')->setHooks($this);

        /* Set the debug if activated */
        if (defined('HMWP_DEBUG') && HMWP_DEBUG) {
            HMWP_Classes_ObjController::getClass('HMWP_Classes_Debug');
        }

        /* Load the rewrite */
        HMWP_Classes_ObjController::getClass('HMWP_Controllers_Rewrite');

        /* Load the Main classes Actions Handler */
        HMWP_Classes_ObjController::getClass('HMWP_Classes_Action');
        HMWP_Classes_ObjController::getClass('HMWP_Classes_DisplayController');
        HMWP_Classes_ObjController::getClass('HMWP_Models_Compatibility_Abstract');

    }

    /**
     * load sequence of classes
     * Function called usualy when the controller is loaded in WP
     *
     * @return HMWP_Classes_FrontController
     * @throws Exception
     */
    public function init()
    {
        return $this;
    }

    /**
     * Get the block view
     *
     * @param  string $view
     * @param  stdClass $obj
     * @return string HTML
     * @throws Exception
     */
    public function getView($view = null, $obj = null)
    {
        if(!isset($obj)) {
            $obj = $this;
        }

        //Get the view class name if not defined
        if (!isset($view)) {
            if ($class = HMWP_Classes_ObjController::getClassByPath($this->name)) {
                $view = $class['name'];
            }
        }

        //Call the display class to load the view
        if (isset($view)) {
            $this->view = HMWP_Classes_ObjController::getClass('HMWP_Classes_DisplayController');
            return $this->view->getView($view, $obj);
        }

        return '';
    }

    /**
     * Called as menu callback to show the block
     *
     * @param  string $view
     * @throws Exception
     */
    public function show($view = null)
    {
        echo $this->getView($view);
    }

    /**
     * first function call for any class on form submit
     */
    protected function action()
    {
        // called within each class with the action
    }


    /**
     * initialize settings
     * Called from index
     *
     * @return void
     */
    public function hookInit()
    { 
    }


    /**
     * Called on frontend. For disconnected users
     */
    public function hookFrontinit()
    { 
    }

    /**
     * Hook the admin head
     * This function will load the media in the header for each class
     *
     * @return void
     */
    public function hookHead()
    { 
    }

}

Filemanager

Name Type Size Permission Actions
Action.php File 6.38 KB 0644
Debug.php File 2.66 KB 0644
DisplayController.php File 2.98 KB 0644
Error.php File 3.85 KB 0644
FrontController.php File 3.69 KB 0644
HookController.php File 2.71 KB 0644
ObjController.php File 5.61 KB 0644
Tools.php File 71.25 KB 0644