# |
Sep 4th 2019, 13:44 |
neon1024 |
When you’re casting it to int above |
# |
Sep 4th 2019, 13:44 |
neon1024 |
Plus this seems very odd `return ! $managerNotRequired ? (bool) $value : true;` |
# |
Sep 4th 2019, 13:44 |
neon1024 |
Do you have another rule called `custom` ? |
# |
Sep 4th 2019, 13:33 |
slackebot |
reason the message is a generic one: `This field cannot be left empty` and the check does not seem to be triggered in the closure. Any ideas what's missing here? |
# |
Sep 4th 2019, 13:33 |
davorminchorov |
Hi! I have the following custom validation rule in my table class: ``` $validator->add('assignment_manager_id', 'custom', [ 'rule' => function ($value, $context) { $managerNotRequired = (int) $context['data']['manager_not_required']; return ! $managerNotRequired ? (bool) $value : true; }, 'message' => 'Manager selection is required', ]); ``` For some |
# |
Sep 4th 2019, 13:14 |
spriz |
We killed it after figuring out cake query distinct added `GROUP BY` :) :) |
# |
Sep 4th 2019, 11:53 |
alexdd55976 |
made my API crash after an update... took me hours to find the problem |
# |
Sep 4th 2019, 11:52 |
dereuromark |
:slightly_smiling_face: jepjep |
# |
Sep 4th 2019, 11:51 |
alexdd55976 |
`FULL_GROUP_BY` annyoing problem |
# |
Sep 4th 2019, 11:31 |
javier.villanueva |
yes, i read this issue, thanks |
# |
Sep 4th 2019, 11:31 |
javier.villanueva |
ok |
# |
Sep 4th 2019, 11:31 |
neon1024 |
If you happen to use `->group()` or similar |
# |
Sep 4th 2019, 11:30 |
neon1024 |
The only thing you might need to change would be the MySQL options if you’re using `FULL_GROUP_BY` |
# |
Sep 4th 2019, 11:29 |
javier.villanueva |
@spriz thanks for response. Mysql 8 + Cake 3.8 does not require special changes? |
# |
Sep 4th 2019, 11:23 |
spriz |
@javier.villanueva I'd use the most recent stable :+1: |
# |
Sep 4th 2019, 11:11 |
javier.villanueva |
there are a recommended mysql version for cakephp 3.8? |
# |
Sep 4th 2019, 11:01 |
conehead |
If no duration is set for the configuration, it is infinite? |
# |
Sep 4th 2019, 10:39 |
spriz |
Yeah but this is cases where our support roles in our admin/root UI and it affects cutsomers |
# |
Sep 4th 2019, 10:39 |
neon1024 |
You could update the permission and write back to the session if you wanted to |
# |
Sep 4th 2019, 10:38 |
spriz |
although that is quite rare |
# |
Sep 4th 2019, 10:38 |
spriz |
We stored it in session - only troubles are when they change they have to relog or wait until session expires |
# |
Sep 4th 2019, 10:29 |
neon1024 |
Can’t really think of any disadvantages to session storage, except perhaps session hijacking or similar |
# |
Sep 4th 2019, 10:23 |
conehead |
But caching could be a solution as well |
# |
Sep 4th 2019, 10:22 |
conehead |
Would there be any disadvantages to put permissions into the session? Except that user would have to log out/in again when changes occur? |
# |
Sep 4th 2019, 10:22 |
neon1024 |
To minimize links which got to a failed Authorize page |
# |
Sep 4th 2019, 10:21 |
neon1024 |
Maybe set the cache as 3-5 minutes |
# |
Sep 4th 2019, 10:21 |
neon1024 |
So if two users share the same permissions they can both get the same cached navigation |
# |
Sep 4th 2019, 10:21 |
neon1024 |
Perhaps cache the generated navigation using a cache key of the composed permissions |
# |
Sep 4th 2019, 10:20 |
conehead |
Was just wondering because I got like 20 menu items. And every time I load a page it is checked if the permission exists for each of these elements |
# |
Sep 4th 2019, 10:20 |
neon1024 |
My Auth finder does load permissions into the session though |
# |
Sep 4th 2019, 10:19 |
neon1024 |
At least then if someone changes someone’s access, my RoleAuthorize class checks the DB. Otherwise they’ll have permissions until they close the browser |
# |
Sep 4th 2019, 10:18 |
neon1024 |
I do both |
# |
Sep 4th 2019, 10:13 |
conehead |
Right now I still check from database. rbac |
# |
Sep 4th 2019, 10:13 |
conehead |
Would you keep user permissions in sessions? |
# |
Sep 4th 2019, 10:03 |
neon1024 |
Well any help we can give, do let us know :thumbsup: |
# |
Sep 4th 2019, 10:02 |
felix.robaglia |
(just an intern, I have a lot to learn hehe) |
# |
Sep 4th 2019, 10:02 |
felix.robaglia |
It is a tinyint indeed, didn't know I could use a boolean but that makes sense actually. Would make the code clearer, thanks :slightly_smiling_face: |
# |
Sep 4th 2019, 10:00 |
neon1024 |
If it’s a `TINYINT(1)` you could use a boolean too :slightly_smiling_face: |
# |
Sep 4th 2019, 10:00 |
felix.robaglia |
I'm not sure, prolly cause i'm dumb, just tested without quoting and it works :C |
# |
Sep 4th 2019, 09:57 |
neon1024 |
Just curious @felix.robaglia why do you quote your `'1'` ? |
# |
Sep 4th 2019, 09:56 |
conehead |
Challgren`s option is best if you would like to define your query further |