Kewne 0 Junior Poster in Training

Hi guys,

I just followed the tutorial on epesi and have finished making their tutorial on "Hello World". Now, I'm trying to create another module but it doesn't show up at the administrator availanble install. It was just a simple code following the skeleton presented at the HelloWorld tutorial just changing the classnames. This is the code:

SUP_EPESI_EMP_0.php

<?php

defined("_VALID_ACCESS") || die('Direct access forbidden'); 

class Custom_EMP extends Module { 

  public function body() {

    print('EMP');

    }
}

?>

SUP_EPESI_EMPInstall.php

<?php



defined("_VALID_ACCESS") || die('Direct access forbidden');



class Custom_EMPInstall extends ModuleInstall {

    public function install() { 
        return true; 

    }

    public function uninstall() { 

        return true; 

    }

    public function info() { 

        return array( 'Author'=>'NameMe',
            'License'=>'GPL',
                     'Description'=>'EMP');

    }

    public function simple_setup() {

        return array('package' => __('EMP'), 'version'=>'0.1'); 

    }

    public function requires($v) { 

        return array();

    }

    public function version() { 

        return array('0.1');

    }
}

?>

SUP_EPESI_EmpCommon_0.php

<?php

defined("_VALID_ACCESS") || die('Direct access forbidden');

class Custom_EMPCommon extends ModuleCommon {

    public static function menu() {

        return array(__('Module') => array('__submenu__' => 1, __('EMP') => array()));

    }
}

?>

Can anyone help me?

Dani AI

Generated

For — most likely the installer never sees the package because EPESI expects a strict module layout and a module-database rebuild after you add files. The framework looks for a module directory under epesi/modules/Custom/ (CamelCase), with three engine-recognised files and matching class names; after placing the files you must run “Rebuild modules database” in Admin so EPESI detects the new module. (epesi.org)

Quick checklist (do these in order):

  • Confirm location and names: the module should live in epesi/modules/Custom/<ModuleName>/. Files and class bases must match the module folder name exactly and respect case. Case mismatch or extra prefixes in filenames will prevent detection on case-sensitive systems.
  • Rebuild modules database from Admin → Modules administration & store so EPESI scans new files. (epesi.org)
  • Development cache: disable or clear common cache while developing (set CACHE_COMMON_FILES=0 in data/config.php or delete data/cache/common.php) so changes to Common files take effect. (epesi.org)
  • Permissions & errors: ensure webserver user can read the files (ownership/permissions). Check PHP/webserver error logs for parse/class-not-found errors — those tell you if a filename/class mismatch prevents loading.
  • Confirm install class methods: install() should return true and simple_setup()/version() must provide sensible values so the Admin UI lists the package.

Note on autoloading and naming: EPESI’s autoloader relies on consistent naming/underscores and folder layout; custom prefixes are allowable only when the class/file layout still maps correctly to the module path. During development, keeping names simple (matching folder base name) avoids subtle mismatches. (epesi.org)

If the above are correct and the module still doesn’t appear, capture the module directory listing and the first PHP/webserver error lines — they typically show the exact mismatch or parse error to fix.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.