HEX
Server: nginx/1.28.1
System: Linux iZgw8b5bpgd4jyptfmmmxgZ 6.6.102-5.2.alnx4.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Nov 27 23:11:10 CST 2025 x86_64
User: www (1000)
PHP: 8.2.28
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,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_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/www.scdc-marine.com/wp-content/plugins/Static-Html-Output/plugin/WP2Static/View.php
<?php

class WP2Static_View {
    protected $variables = array();
    protected $path = null;
    protected $directory = 'views';
    protected $extension = '.phtml';
    protected $template = null;

    public function __construct() {
        list( $plugin_dir ) = explode( '/', plugin_basename( __FILE__ ) );
        $path_array = array( WP_PLUGIN_DIR, $plugin_dir, $this->directory );
        $this->path = implode( '/', $path_array );
    }

    public function setTemplate( $tpl ) {
        $this->template = $tpl;
        $this->variables = array();
        return $this;
    }

    public function __set( $name, $value ) {
        $this->variables[ $name ] = $value;
        return $this;
    }

    public function assign( $name, $value ) {
        return $this->__set( $name, $value );
    }

    public function __get( $name ) {
        $value = array_key_exists( $name, $this->variables ) ? $this->variables[ $name ] : null;
        return $value;
    }

    public function render() {
        $file = $this->path . '/' . $this->template . $this->extension;
        if ( ! is_readable( $file ) ) {
            error_log( 'Can\'t find view template: ' . $file );
        }
        include $file;
        return $this;
    }

    public function fetch() {
        ob_start();
        $this->render();
        $contents = ob_get_contents();
        ob_end_clean();
        return $contents;
    }
}