Git Product home page Git Product logo

phpbb-ext-skeleton's People

Contributors

3d-i avatar gmartenscb avatar imattpro avatar michaelcullum avatar nickvergessen avatar nicofuma avatar prototech avatar rxu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

phpbb-ext-skeleton's Issues

Symfony error

when clicking on the link I get a Symfony error.

  • phpbb 3.3 installed with Quickinstall.
  • php v7.3.20

Screenshot 2020-07-25 at 19 30 22

Fatal error: Uncaught Error: Call to undefined method Symfony\Component\Yaml\Parser::parseFile() in /Users/Nix/Sites/qi/boards/v3301/vendor/symfony/routing/Loader/YamlFileLoader.php on line 67

Cannot enable on phpbb 3.2.7

I get an informational error that says, "The selected extension cannot be enabled, please verify the extension’s requirements."

Add more extension parts to the skeleton

The "roadmap" for adding more elements to the skeleton extension for completeness:

  • Cron
  • Console command
  • Notification
  • UCP/MCP modules
  • ACP template event listener
  • ext.php
  • Build script

Convert "tpl" files to twig

Because of the power of twig, we're already using it a tiny bit in the skeleton "tpl" files. They should all be converted over completely, and move away from old silly phpBB template syntax. And then the work-arounds implemented to handle the weaknesses of the old syntax can also be removed.

Symphony component does not exists (finder/finder)

in skeleton/helper/packager the use of 'Symfony\Component\Finder\Finder' is declared and thus into the function 'create_zip($data)' it is called. But in phpBB 3.1.x that Symphony Folder does not exists hence this error:

Class 'Symfony\Component\Finder\Finder' not found in \ext\phpbb\skeleton\helper\packager.php on line 167 ...

---> line: $finder = new Finder();

phpbb/finder.php should be used? Maybe a switch to be created for the 2 phpBB series?

$phpbb_extension_manager?

Include vendor & extname when rendering page

When generating a controller, this line is added in the handle() method:

return $this->helper->render('myext_body.html', $name);

I think @vendor_extname should be included:

return $this->helper->render('@vendor_extname/myext_body.html', $name);

unable to delete store/ext-tmp/extname

Say you created an extension named "myawesomeextension" with some components but you aren't satisfied of the resulting package due to some cause, it doesn't really matter.. now you want to recreate it with the same name.

Here's a screenshot of the error (deleting from the store folder the old extension will do but..)
store_update_ext_1

Usability feedback

Some comments on usability after generating an extension with the latest changes:

  • All CP migration files are being generated even if they aren't all selected:
    image
    image
  • ACP language files are being generated with the package name for the key values instead of the display name.
  • depends_on for migrations assumes 3.1 (v31x\v314) even though minimum is automatically being set to 3.2.0 on the interface.

On that last one there seems to be some sort of desire to keep 3.1 support in this extension even though 3.1 has been EoL since January 2018. All 3.1 support in this extension should be retired in the next release.

Controllers

I think we should also create controllers for the CP Modules?
Cause I see more and more extensions with the same "issues".
Those being that $page_title and $tpl_name are not declared before usage.
That $user->lang[''] is still being used over $this->lang->lang('').
And that var should be replaced with public.

Anyways, I think a lot of good will come if we create controllers for the control panels modules.
I could have a go at it if you want.

extension:create cli does not register, nor does the created console skeleton sample command

The extension:create CLI command does not register when this extension is installed and enabled. The extension shows enabled in both the ACP and extension:show in the CLI, but no extension:create. This is on phpbb 3.3.4, php 7.4.23. If I take the sample skeleton and move it into the phpbb/console/command hierarchy and hack stuff up, I can get it to work, so the sample.php is fine, it's just the services.yml is not being read or something?

I don't see any errors in the logs, even with DEBUG and DEBUG_EXTRA on.

I actually can't find a single example of a working extension with a CLI component for modern phpbb...I guess I'll hack my stuff into the main tree for now?

Thanks,
Chris

Not required Migration files created.

Once the User control panel (UCP) and Moderator control panel (MCP) are un-checked the logic still creates those migration files.

To add, there is not a check-box for create schema, but the logic does create that migration file too.

Database migration should be better defined I guess.
Thx.

But the link remains always visible, also to guests

Am I wrong or the link to "Create skeleton extension" in the navbar remains always visible, also to guests?

I think very strange that a guest that visit my site, can create his own extensions....

Thanks, Marco

Make components disabled by default

The components should probably be disabled by default, so by default a bare minimum extension is made. The user should add the components they want. Currently we have the opposite where all are enabled by default, and you have to remove the components you don't want.

In the web UI this means all the component check boxes should be un-checked by default.

In the Cli it means "No" should be the default when confirming which components to add.

Enhance install_user_schema migration file template

The generated install_user_schema migration file could be enhanced a bit to include things like adding a config entry, config_text entry, permissions, a custom function, etc. that can serve as a basis (copy/paste-able) for whatever other migrations the extension author wants to create.

Feel free to include other useful migration features.

Shouldn't include epv

within packager which is building the composer.json file

'require-dev' => array( 'phpbb/epv' => 'dev-master',

don't believe this is a very good idea as extraneous, and possibly not wanted, directories will be included into an authors extension when compiled using composer update.

Web Interface Not Getting Component Data

I just tried this from the phpBB controller page interface, and I only selected php listeners and service components, left all the others unchecked, but it still built an extension with every possible component.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.