HEX
Server: Apache
System: Linux msm5694.mjhst.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: camjab_ssh (1000)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: /home/httpd/html/xdudes.com/admin/functions.modules.php
<?php

    /**
     *  modulesStore - Store a module
     *  
     *  @param [in] $name Not yet documented.
     *  @return void
     *  
     */
    function modulesStore($name) {
        global $basepath;

        if (file_exists($basepath . '/admin/scripts/modules.json')) {
            $modules = (array) json_decode(file_get_contents($basepath . '/admin/scripts/modules.json'), true);
        }
        $modules["0"] = $name;
        $outJson = json_encode($modules);
        chmod($basepath . '/admin/scripts/modules.json', 0777);
        file_put_contents($basepath . '/admin/scripts/modules.json', $outJson);
    }

    /**
     *  modulesCheck - Check if module exists
     *  
     *  @param [in] $name Not yet documented.
     *  @return void
     *  
     */
    function modulesCheck($name) {
        global $basepath;

        if (file_exists($basepath . '/admin/scripts/modules.json')) {
            $modules = json_decode(file_get_contents($basepath . '/admin/scripts/modules.json'), true);
            if (in_array($name, $modules)) {
                return true;
            }
        }

        return false;
    }

    /**
     *  modulesUninstall - Uninstall module
     *  
     *  @param [in] $name Not yet documented.
     *  @return void
     *  
     */
    function modulesUninstall($name) {
        global $basepath;

        if (file_exists($basepath . '/admin/scripts/modules.json')) {
            $modules = json_decode(file_get_contents($basepath . '/admin/scripts/modules.json'), true);

            $mkey = array_search($name, $modules);
            if ($mkey !== false) {
                unset($modules[$mkey]);

                $mods = array_values($modules);

                $outJson = json_encode($mods);
                file_put_contents($basepath . '/admin/scripts/modules.json', $outJson);

                return true;
            }
        }

        return false;
    }

    /**
     *  modulesInclude - A summary has for this function has not yet been written.
     *  
     *  @return void
     *  
     */
    function modulesInclude() {
        global $basepath;

        if (file_exists("$basepath/admin/scripts/modules.json")) {
            $modules = json_decode(file_get_contents("$basepath/admin/scripts/modules.json"), true);
            if (is_array($modules)) {
                foreach ($modules as $mod) {
                    if (file_exists("$basepath/admin/modules/$mod/manifest.json")) {
                        $includes = json_decode(file_get_contents("$basepath/admin/modules/$mod/manifest.json"), true);
                        if (is_array($includes) && !empty($includes)) {
                            foreach ($includes as $inc) {
                                if (file_exists("$basepath/admin/modules/$mod/$inc")) {
                                    include("$basepath/admin/modules/$mod/$inc");
                                }
                            }
                        }
                    }
                }
            }
        }
    }
    
    /**
     *  modulesLoadSettings - A summary has for this function has not yet been written.
     *  
     *  @return void
     *  
     */
    function modulesLoadSettings() {
        global $basepath;

        $settings = array();
        if (file_exists("$basepath/admin/scripts/modules.json")) {
            $modules = json_decode(file_get_contents("$basepath/admin/scripts/modules.json"), true);
            if (is_array($modules)) {
                foreach ($modules as $mod) {
                    if (file_exists("$basepath/admin/modules/$mod/manifest.json")) {
                        $settings[$mod] = json_decode(file_get_contents("$basepath/admin/modules/$mod/manifest.json"), true);
                    }
                }
            }
        }
        
        return $settings;
    }