Log message #4265236

# At Username Text
# Jun 11th 2021, 12:11 kevin.pfeifer basically that https://stackoverflow.com/questions/57730430/cakephp-3-how-to-extend-an-helper
# Jun 11th 2021, 12:10 tomrwaller I didn't! Although I suspected there is a whole bunch you can do that I have no clue about! Do you have a link or search term I can look for in the book maybe?
# Jun 11th 2021, 12:08 kevin.pfeifer sure :) Do you know that you can extend basically any class and use that instead of the “core” one to have some custom logic in there?
# Jun 11th 2021, 12:07 tomrwaller Sorry! I think this is my lack of knowledge shining through :) I have a Form Template not Helper.
# Jun 11th 2021, 12:06 kevin.pfeifer or am I not aware of some feature that the Helpers can do with these form templates :thinking_face:
# Jun 11th 2021, 12:00 kevin.pfeifer no i mean do you have `src/View/Helper/MyFormHelper.php` which extends the base FormHelper
# Jun 11th 2021, 12:00 slackebot {{attrs}} type="submit">{{text}}</button></div></div>',`         `'inputContainerError' => '<div class="form-group has-error" {{required}}>{{content}}</div>{{error}}',`     `]` `?>`
# Jun 11th 2021, 12:00 slackebot name={{name}}[]>{{content}}</select>',`         `'error'               => '<p class="text-danger">{{content}}</p>',`         `'textarea'            => '<div class="form-group"><textarea class="form-control" name="{{name}}" {{attrs}}>{{value}}</textarea></div>',`         `'button'              => '<div class="form-group"><div><button class="btn btn-primary"
# Jun 11th 2021, 12:00 slackebot />',`         `'label'               => '<label {{attrs}} class="form-label text-primary" style="text-transform: uppercase">{{text}}</label>',`         `'select'              => '<select class="form-control" {{attrs}} name={{name}}>{{content}}</select>',`         `'selectMultiple'      => '<select class="form-select" multiple {{attrs}}
# Jun 11th 2021, 12:00 slackebot {{attrs}} />',`         `'checkboxWrapper'     => '<div class="form-check">{{label}}</div>',`         `'inputContainer'      => '<div class="form-group mb-3">{{content}}<span class="help form-text text-muted small"><i class="fas fa-fw fa-question-circle"></i>andnbsp{{help}}</span></div>',`         `'input'               => '<input type="{{type}}" name="{{name}}" {{attrs}}
# Jun 11th 2021, 12:00 tomrwaller Yes I guess I could pass the class through the control - thanks for the tip! I do have a custom FormHelper already, albeit very basic! `<?php`     `return [`         `'checkboxFormGroup'   => '<div class="form-check"><div class="checkbox">{{label}}</div></div>',`         `'checkbox'            => '<input type="checkbox" class="form-check-input" name="{{name}}" value="{{value}}"
# Jun 11th 2021, 11:59 kevin.pfeifer I am not aware that you ccan do conditional logic purely in form templates
# Jun 11th 2021, 11:58 kevin.pfeifer i would guess you would have to add that logic to the `control()` (or whatever function you are using in your template) So do you have a custom FormHelper already?
# Jun 11th 2021, 11:52 tomrwaller So I have one for input: 'input' => '<input type="{{type}}" name="{{name}}" {{attrs}} />', This applies to both text input and range input though. I want text input to have a class of form-control in order for it to be Bootstrap 5 formatted. If I add form-control here, it borks my range inputs.
# Jun 11th 2021, 11:51 kevin.pfeifer so you just need a class with the type of the input?
# Jun 11th 2021, 11:47 tomrwaller Quick follow up question on Form Helpers if I may - is there anyway in the template to differentiate between a text input and say a range input? If I add form-control class to the input template, it messes up the range, and if I remove it, range works but text box doesn't.
# Jun 11th 2021, 10:50 paolo.bragagni I pointed my debug breackpoint in the fetch action and I didnt notice the error
# Jun 11th 2021, 10:50 paolo.bragagni but (I dont know why) if I access via ajax it goes to beforefind
# Jun 11th 2021, 10:49 paolo.bragagni if I browse directly it doesnt went to beforefind and I got debugging
# Jun 11th 2021, 10:48 paolo.bragagni there was an erro in my controller beforefind
# Jun 11th 2021, 10:48 kevin.pfeifer ok, then I ran into another problem with my app where i had to manually add that token :shrug:
# Jun 11th 2021, 10:48 paolo.bragagni yes it works
# Jun 11th 2021, 10:47 slackebot <paolo.bragagni>
# Jun 11th 2021, 10:46 kevin.pfeifer the CsrfMiddleware is a security feature which is enabled by default so it would be pretty bad if you disable it just for that ^^
# Jun 11th 2021, 10:46 kevin.pfeifer does it still work?
# Jun 11th 2021, 10:46 kevin.pfeifer well if you enable it now
# Jun 11th 2021, 10:46 paolo.bragagni trying to enable?
# Jun 11th 2021, 10:46 paolo.bragagni yes
# Jun 11th 2021, 10:45 kevin.pfeifer do you still have the CsrfMiddleware disabled?
# Jun 11th 2021, 10:45 kevin.pfeifer but!
# Jun 11th 2021, 10:45 kevin.pfeifer nice
# Jun 11th 2021, 10:45 slackebot <paolo.bragagni>
# Jun 11th 2021, 10:45 paolo.bragagni thenks kevin
# Jun 11th 2021, 10:27 wizardfix Many thanks @kevin.pfeifer I'll try that. :)
# Jun 11th 2021, 10:26 kevin.pfeifer so if you need to stay on 3.5.17 you can add that try-catch block in your `/app/vendor/cakephp/cakephp/src/Database/Driver/PDODriverTrait.php`
# Jun 11th 2021, 10:23 kevin.pfeifer well according to https://stackoverflow.com/questions/32239205/php-pdo-hide-error-message-when-failed-connecting-to-mysql-server Its basically an exception from the PDO Class which needs to be catched via a try-catch block.
# Jun 11th 2021, 10:20 wizardfix Haha yes I know @kevin.pfeifer the powers that be are nervous of upgrading...
# Jun 11th 2021, 10:18 kevin.pfeifer @wizardfix thats quite the old cakephp version ,:)
# Jun 11th 2021, 10:17 kevin.pfeifer @paolo.bragagni json should be returned like so ```$response = $this->getResponse(); $this->autoRender = false; return $response->withType( 'application/json' ) ->withStringBody( json_encode( $results ) );```
# Jun 11th 2021, 10:15 wizardfix @kevin.pfeifer '3.5.17'
# Jun 11th 2021, 10:15 paolo.bragagni is not possible anymore?