# |
May 17th 2021, 15:18 |
paolo.bragagni |
thanks I'll give it a try!!!! |
# |
May 17th 2021, 15:14 |
kevin.pfeifer |
and add the use statesments at the start of course ```use Cake\Event\EventInterface; use Cake\Event\EventManager;``` |
# |
May 17th 2021, 15:14 |
slackebot |
logout actions to the Users controller $view->set('actions', [ 'login', 'logout', 'index', 'view', 'add', 'edit', 'delete' ]); } } ); }``` |
# |
May 17th 2021, 15:14 |
kevin.pfeifer |
``` public function bootstrap(): void { if (PHP_SAPI === 'cli') { $this->bootstrapCli(); } } protected function bootstrapCli(): void { EventManager::instance()->on( 'Bake.beforeRender.Controller.controller', function (EventInterface $event) { $view = $event->getSubject(); if ($view->get('name') === 'Users') { // add the login and |
# |
May 17th 2021, 15:13 |
kevin.pfeifer |
and do the same as what your src/Application.php does where it checks for cli and adds that function https://github.com/cakephp/app/blob/master/src/Application.php#L51 |
# |
May 17th 2021, 15:12 |
paolo.bragagni |
can you make an example please? |
# |
May 17th 2021, 15:12 |
kevin.pfeifer |
so you can overwrite/extend the bootstrap function |
# |
May 17th 2021, 15:12 |
kevin.pfeifer |
you basically have the same functions in your src/plugin.php as in your src/Application.php https://book.cakephp.org/4/en/plugins.html#plugin-objects |
# |
May 17th 2021, 15:12 |
paolo.bragagni |
how about the views and model and policy .. etc?? |
# |
May 17th 2021, 15:11 |
paolo.bragagni |
and this solve the 'action' problem |
# |
May 17th 2021, 15:11 |
paolo.bragagni |
(how?) |
# |
May 17th 2021, 15:10 |
kevin.pfeifer |
instead of using the src/Application::bootstrapCli() can'ÄT you use the bootstrapCli function which is overwritten by the plugin? |
# |
May 17th 2021, 15:10 |
paolo.bragagni |
(at start) |
# |
May 17th 2021, 15:10 |
paolo.bragagni |
all my tables will have the same actions and views |
# |
May 17th 2021, 15:09 |
kevin.pfeifer |
unless all of your tables should have that extra action |
# |
May 17th 2021, 15:09 |
kevin.pfeifer |
well you need to specify the View inside that event as well so its basically pretty application specific |
# |
May 17th 2021, 15:08 |
paolo.bragagni |
I'll have to write many applications and I'd like that all of them have the same template, so with my actions, my views, my model etc |
# |
May 17th 2021, 15:08 |
kevin.pfeifer |
which I can't you in more detail |
# |
May 17th 2021, 15:08 |
kevin.pfeifer |
well basically you can do it anywhere before the Bake.initialize event is being called |
# |
May 17th 2021, 15:07 |
paolo.bragagni |
cant we do it inside the 'theme' plugin? |
# |
May 17th 2021, 15:07 |
paolo.bragagni |
I'd like to do it but not in my src/Application |
# |
May 17th 2021, 15:06 |
kevin.pfeifer |
have you added the event listener to add the additional action which should be baked? |
# |
May 17th 2021, 15:05 |
kevin.pfeifer |
so you already got a custom bake plugin working |
# |
May 17th 2021, 15:05 |
kevin.pfeifer |
well basically yes but probably i can help you in more detail :) |
# |
May 17th 2021, 15:05 |
paolo.bragagni |
no.. or.. yes.. you said to look at https://book.cakephp.org/bake/2/en/development.html#bake-events |
# |
May 17th 2021, 14:57 |
neon1024 |
https://book.cakephp.org/authorization/2/en/request-authorization-middleware.html |
# |
May 17th 2021, 14:57 |
neon1024 |
Ah found it |
# |
May 17th 2021, 14:57 |
kevin.pfeifer |
so my comment from yesterday (or whenever I tried to explain that) didn't help? |
# |
May 17th 2021, 14:50 |
neon1024 |
I don’t fancy updating all our tests and re-doing a big chunk of the project |
# |
May 17th 2021, 14:49 |
neon1024 |
Sadly the Authorization docs don’t have a section on migrating from AuthComponent like the Authentication plugin docs do |
# |
May 17th 2021, 14:48 |
neon1024 |
Is there a neat upgrade path from a customer 3.x Authorize class to the new Authorization plugin? Or do I need to make some Frankensteins Monster RoleAuthorizePolicy class? |
# |
May 17th 2021, 14:09 |
virtudavi99 |
Yes/No? |
# |
May 17th 2021, 13:09 |
neon1024 |
I guess it just looks big compared to `$this->Auth->user('id')` |
# |
May 17th 2021, 13:05 |
ndm |
IMHO it's pretty straightforward |
# |
May 17th 2021, 13:04 |
ndm |
I mean... |
# |
May 17th 2021, 13:03 |
neon1024 |
Short of some nifty class aliases |
# |
May 17th 2021, 13:03 |
neon1024 |
Thanks @ndm so I guess no elegant way then |
# |
May 17th 2021, 13:02 |
neon1024 |
Perhaps that’s what the docblock means when it says path |
# |
May 17th 2021, 13:01 |
neon1024 |
Strange that `getOriginalData` doesn’t take a dot hash |
# |
May 17th 2021, 13:01 |
ndm |
`$this->Authentication->getIdentity()->organisation_id` `$this->Authentication->getIdentity()->get('organisation_id')` `$this->Authentication->getIdentityData('organisation_id')` |
# |
May 17th 2021, 12:57 |
neon1024 |
Both seem very long |