Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-04 Thread Dr. Tarique Sani
I understand your point of view as well and I know what the default helper
does. It is a pain but you are writing a custom helper - you can freely do
what you want :)

Why not override the templates in the config of your helper as Jose
suggested and have additional methods in your helper which create
input-groups? You may need to implement a widget for it...

T


On Mon, Aug 4, 2014 at 4:54 PM, Mikaël Capelle 
wrote:

> Thanks for you answer, I understand your point of view.
>
> Unfortunately the 'input' method does not generate only the HTML input tag
> (even when not using a custom helper):
>
> $this->Form->input('mail') ;
>
> 
>   Mail
>   
> 
>
> It is almost like the default CakePHP helper, I just changed the div class
> from 'input' to 'form-group'. So, now the problem with 'prepend' is that I
> need to insert HTML inside the HTML generated by the 'input' method:
>
> 
>   Mail
>   
>   
>   
> 
>
> On Monday, August 4, 2014 1:07:16 PM UTC+2, Dr. Tarique Sani wrote:
>
>> 
>>   @ This part of the input group 
>> is NOT a part of the form element thus as a best compromise I would put it 
>> in a separate helper method with options - so something like
>>
>>
>> $this->Form->inputGroup([class=>'input-group-addon', 'text'=>'@']);
>>
>> $this->Form->input('field',[moreoptions]);
>>
>>
>> but then IMHO it is plain abuse of CPU cycles
>>
>>
>> T
>>
>>
>>
>>
>> On Mon, Aug 4, 2014 at 3:06 PM, Mikaël Capelle 
>> wrote:
>>
>>> How would you do that?
>>>
>>> I can't do this:
>>>
>>> echo $htmlBefore.$this->Form->input().$htmlAfter ;
>>>
>>> because I need to include it inside the generated HTML. Of course, I
>>> could create the whole HTML outside the helper and use the "direct" method
>>> ('text' for example) to get only the input tag, but it would be more
>>> complicated and I would lose every advantage of using a custom helper.
>>>
>>> Actually, this is a plugin, so I just want it to be easy to use, even if
>>> it's not easy to write (well, my code is currently working so it is not
>>> that hard). I think it's easier to write:
>>>
>>> echo $this->Form->input('field', ['prepend' => '@']) ;
>>>
>>> than to write the whole bootstrap HTML.
>>>
>>>
>>> On Monday, August 4, 2014 8:57:54 AM UTC+2, Dr. Tarique Sani wrote:
>>>
 If I were to do it I would leave the HTML which is before and after the
 input tag out of the FormHelper  - Keep it simple...

 T




 On Fri, Aug 1, 2014 at 8:25 PM, Mikaël Capelle 
 wrote:

> Thanks for the link! Unfortunately it doesn't help since it does not
> allow user to create bootstrap 'input-group', it is only template for
> default input, which I've already done even if it's look better written
> this way.
>
>
> On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:
>>
>> Look at this project for inspiration:
>>
>> https://github.com/commercial-hippie/chocolate/blob/master/s
>> rc/View/Helper/BootstrapFormHelper.php
>>
>> On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>>>
>>> I think my question was not clear actually...
>>>
>>> What I'm doing is inheriting standard CakePHP FormHelper to generate
>>> HTML form with bootstrap templates. It's currently working well, but in 
>>> the
>>> 'input' method overload, I'm doing a temporary change to the 'input'
>>> template as shown in my first post.
>>>
>>> My question is: Is that a 'good' way of doing what I want? I mean,
>>> using temporary template changes.
>>>
>>> I don't want people to have to change the template manually when
>>> calling the 'input' method, it should be transparent for users.
>>>
>>> Thanks for your answer,
>>>
>>> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:

 You can make temporary changes to the templates both with
 Form->create() and Form->input()

 $this->From-input('foo', ['templates' => ['inputContainer' =>
 $template]]);

 An alternative is not using input(); but just build the html
 yourself in the template and call $this->Form->text('foo') , for 
 example

 On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>
> Thanks for your answer!
>
> The problem is still the same with 'inputContainer', I need to
> make a temporary update if I want to prepend / append something.
>
> I will look at custom widget but I am not sure it's match what I
> want... The prepend / append options should be available with most 
> type of
> input, it's not really a widget itself.
>
> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel
> wrote:
>>
>> use the `inputContainer` template to wrap the content like this:
>>
>> 'inputContainer' => '{{content}}’,
>>
>>>

Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-04 Thread Mikaël Capelle
Thanks for you answer, I understand your point of view.

Unfortunately the 'input' method does not generate only the HTML input tag 
(even when not using a custom helper):

$this->Form->input('mail') ;


  Mail
  


It is almost like the default CakePHP helper, I just changed the div class 
from 'input' to 'form-group'. So, now the problem with 'prepend' is that I 
need to insert HTML inside the HTML generated by the 'input' method:


  Mail
  
  
  


On Monday, August 4, 2014 1:07:16 PM UTC+2, Dr. Tarique Sani wrote:

> 
>   @ This part of the input group 
> is NOT a part of the form element thus as a best compromise I would put it in 
> a separate helper method with options - so something like
>
>
> $this->Form->inputGroup([class=>'input-group-addon', 'text'=>'@']);
>
> $this->Form->input('field',[moreoptions]);
>
>
> but then IMHO it is plain abuse of CPU cycles
>
>
> T
>
>
>
>
> On Mon, Aug 4, 2014 at 3:06 PM, Mikaël Capelle  > wrote:
>
>> How would you do that?
>>
>> I can't do this:
>>
>> echo $htmlBefore.$this->Form->input().$htmlAfter ;
>>
>> because I need to include it inside the generated HTML. Of course, I 
>> could create the whole HTML outside the helper and use the "direct" method 
>> ('text' for example) to get only the input tag, but it would be more 
>> complicated and I would lose every advantage of using a custom helper.
>>
>> Actually, this is a plugin, so I just want it to be easy to use, even if 
>> it's not easy to write (well, my code is currently working so it is not 
>> that hard). I think it's easier to write:
>>
>> echo $this->Form->input('field', ['prepend' => '@']) ;
>>
>> than to write the whole bootstrap HTML.
>>
>>
>> On Monday, August 4, 2014 8:57:54 AM UTC+2, Dr. Tarique Sani wrote:
>>
>>> If I were to do it I would leave the HTML which is before and after the 
>>> input tag out of the FormHelper  - Keep it simple...
>>>
>>> T
>>>
>>>
>>>  
>>>
>>> On Fri, Aug 1, 2014 at 8:25 PM, Mikaël Capelle  
>>> wrote:
>>>
 Thanks for the link! Unfortunately it doesn't help since it does not 
 allow user to create bootstrap 'input-group', it is only template for 
 default input, which I've already done even if it's look better written 
 this way.


 On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:
>
> Look at this project for inspiration:
>
> https://github.com/commercial-hippie/chocolate/blob/master/s
> rc/View/Helper/BootstrapFormHelper.php
>
> On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>>
>> I think my question was not clear actually...
>>
>> What I'm doing is inheriting standard CakePHP FormHelper to generate 
>> HTML form with bootstrap templates. It's currently working well, but in 
>> the 
>> 'input' method overload, I'm doing a temporary change to the 'input' 
>> template as shown in my first post.
>>
>> My question is: Is that a 'good' way of doing what I want? I mean, 
>> using temporary template changes. 
>>
>> I don't want people to have to change the template manually when 
>> calling the 'input' method, it should be transparent for users.
>>
>> Thanks for your answer,
>>
>> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>>>
>>> You can make temporary changes to the templates both with 
>>> Form->create() and Form->input()
>>>
>>> $this->From-input('foo', ['templates' => ['inputContainer' => 
>>> $template]]); 
>>>
>>> An alternative is not using input(); but just build the html 
>>> yourself in the template and call $this->Form->text('foo') , for example
>>>
>>> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:

 Thanks for your answer!

 The problem is still the same with 'inputContainer', I need to make 
 a temporary update if I want to prepend / append something.

 I will look at custom widget but I am not sure it's match what I 
 want... The prepend / append options should be available with most 
 type of 
 input, it's not really a widget itself.

 On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>
> use the `inputContainer` template to wrap the content like this: 
>
> 'inputContainer' => '{{content}}’, 
>
> or create a custom widget, depending on how much customisation you 
> want 
>
>   
>
>
> On 01 Aug 2014, at 12:24, Mikaël Capelle  
> wrote: 
>
> > Hi everyone, 
> > 
> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am 
> facing some troubles with my custom FormHelper. The helpers are made 
> to be 
> used with bootstrap, the two form helpers can be found here: 
> > • CakePHP 2 - https://github.com/Holt59/cake
>

Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-04 Thread Dr. Tarique Sani

  @ This part of the input
group is NOT a part of the form element thus as a best compromise I
would put it in a separate helper method with options - so something
like


$this->Form->inputGroup([class=>'input-group-addon', 'text'=>'@']);

$this->Form->input('field',[moreoptions]);


but then IMHO it is plain abuse of CPU cycles


T




On Mon, Aug 4, 2014 at 3:06 PM, Mikaël Capelle 
wrote:

> How would you do that?
>
> I can't do this:
>
> echo $htmlBefore.$this->Form->input().$htmlAfter ;
>
> because I need to include it inside the generated HTML. Of course, I could
> create the whole HTML outside the helper and use the "direct" method
> ('text' for example) to get only the input tag, but it would be more
> complicated and I would lose every advantage of using a custom helper.
>
> Actually, this is a plugin, so I just want it to be easy to use, even if
> it's not easy to write (well, my code is currently working so it is not
> that hard). I think it's easier to write:
>
> echo $this->Form->input('field', ['prepend' => '@']) ;
>
> than to write the whole bootstrap HTML.
>
>
> On Monday, August 4, 2014 8:57:54 AM UTC+2, Dr. Tarique Sani wrote:
>
>> If I were to do it I would leave the HTML which is before and after the
>> input tag out of the FormHelper  - Keep it simple...
>>
>> T
>>
>>
>>
>>
>> On Fri, Aug 1, 2014 at 8:25 PM, Mikaël Capelle 
>> wrote:
>>
>>> Thanks for the link! Unfortunately it doesn't help since it does not
>>> allow user to create bootstrap 'input-group', it is only template for
>>> default input, which I've already done even if it's look better written
>>> this way.
>>>
>>>
>>> On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:

 Look at this project for inspiration:

 https://github.com/commercial-hippie/chocolate/blob/master/s
 rc/View/Helper/BootstrapFormHelper.php

 On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>
> I think my question was not clear actually...
>
> What I'm doing is inheriting standard CakePHP FormHelper to generate
> HTML form with bootstrap templates. It's currently working well, but in 
> the
> 'input' method overload, I'm doing a temporary change to the 'input'
> template as shown in my first post.
>
> My question is: Is that a 'good' way of doing what I want? I mean,
> using temporary template changes.
>
> I don't want people to have to change the template manually when
> calling the 'input' method, it should be transparent for users.
>
> Thanks for your answer,
>
> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>>
>> You can make temporary changes to the templates both with
>> Form->create() and Form->input()
>>
>> $this->From-input('foo', ['templates' => ['inputContainer' =>
>> $template]]);
>>
>> An alternative is not using input(); but just build the html yourself
>> in the template and call $this->Form->text('foo') , for example
>>
>> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>>>
>>> Thanks for your answer!
>>>
>>> The problem is still the same with 'inputContainer', I need to make
>>> a temporary update if I want to prepend / append something.
>>>
>>> I will look at custom widget but I am not sure it's match what I
>>> want... The prepend / append options should be available with most type 
>>> of
>>> input, it's not really a widget itself.
>>>
>>> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:

 use the `inputContainer` template to wrap the content like this:

 'inputContainer' => '{{content}}’,

 or create a custom widget, depending on how much customisation you
 want




 On 01 Aug 2014, at 12:24, Mikaël Capelle 
 wrote:

 > Hi everyone,
 >
 > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am
 facing some troubles with my custom FormHelper. The helpers are made 
 to be
 used with bootstrap, the two form helpers can be found here:
 > • CakePHP 2 - https://github.com/Holt59/cake
 php-bootstrap3-helpers/blob/master/View/Helper/BootstrapFo
 rmHelper.php
 > • CakePHP 3 - https://github.com/Holt59/cake
 php3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFo
 rmHelper.php
 > In the BootstrapFormHelper::input method, I have a 'prepend' and
 'append' options which are used to create bootstrap input groups. With 
 the
 2.0 version, I used the 'before' and 'after' options to create such 
 groups
 but these options are not available anymore with CakePHP 3.0 so what 
 I'm
 doing is a temporary template change:
 >
 > $oldTemplate = $this->templates('input') ;

Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-04 Thread Mikaël Capelle
How would you do that?

I can't do this:

echo $htmlBefore.$this->Form->input().$htmlAfter ;

because I need to include it inside the generated HTML. Of course, I could 
create the whole HTML outside the helper and use the "direct" method 
('text' for example) to get only the input tag, but it would be more 
complicated and I would lose every advantage of using a custom helper.

Actually, this is a plugin, so I just want it to be easy to use, even if 
it's not easy to write (well, my code is currently working so it is not 
that hard). I think it's easier to write:

echo $this->Form->input('field', ['prepend' => '@']) ;

than to write the whole bootstrap HTML.

On Monday, August 4, 2014 8:57:54 AM UTC+2, Dr. Tarique Sani wrote:
>
> If I were to do it I would leave the HTML which is before and after the 
> input tag out of the FormHelper  - Keep it simple...
>
> T
>
>
>
>
> On Fri, Aug 1, 2014 at 8:25 PM, Mikaël Capelle  > wrote:
>
>> Thanks for the link! Unfortunately it doesn't help since it does not 
>> allow user to create bootstrap 'input-group', it is only template for 
>> default input, which I've already done even if it's look better written 
>> this way.
>>
>>
>> On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:
>>>
>>> Look at this project for inspiration:
>>>
>>> https://github.com/commercial-hippie/chocolate/blob/master/
>>> src/View/Helper/BootstrapFormHelper.php
>>>
>>> On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:

 I think my question was not clear actually...

 What I'm doing is inheriting standard CakePHP FormHelper to generate 
 HTML form with bootstrap templates. It's currently working well, but in 
 the 
 'input' method overload, I'm doing a temporary change to the 'input' 
 template as shown in my first post.

 My question is: Is that a 'good' way of doing what I want? I mean, 
 using temporary template changes. 

 I don't want people to have to change the template manually when 
 calling the 'input' method, it should be transparent for users.

 Thanks for your answer,

 On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>
> You can make temporary changes to the templates both with 
> Form->create() and Form->input()
>
> $this->From-input('foo', ['templates' => ['inputContainer' => 
> $template]]); 
>
> An alternative is not using input(); but just build the html yourself 
> in the template and call $this->Form->text('foo') , for example
>
> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>>
>> Thanks for your answer!
>>
>> The problem is still the same with 'inputContainer', I need to make a 
>> temporary update if I want to prepend / append something.
>>
>> I will look at custom widget but I am not sure it's match what I 
>> want... The prepend / append options should be available with most type 
>> of 
>> input, it's not really a widget itself.
>>
>> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>>>
>>> use the `inputContainer` template to wrap the content like this: 
>>>
>>> 'inputContainer' => '{{content}}’, 
>>>
>>> or create a custom widget, depending on how much customisation you 
>>> want 
>>>
>>>   
>>>
>>>
>>> On 01 Aug 2014, at 12:24, Mikaël Capelle  
>>> wrote: 
>>>
>>> > Hi everyone, 
>>> > 
>>> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing 
>>> some troubles with my custom FormHelper. The helpers are made to be 
>>> used 
>>> with bootstrap, the two form helpers can be found here: 
>>> > • CakePHP 2 - https://github.com/Holt59/
>>> cakephp-bootstrap3-helpers/blob/master/View/Helper/
>>> BootstrapFormHelper.php 
>>> > • CakePHP 3 - https://github.com/Holt59/
>>> cakephp3-bootstrap3-helpers/blob/master/View/Helper/
>>> BootstrapFormHelper.php 
>>> > In the BootstrapFormHelper::input method, I have a 'prepend' and 
>>> 'append' options which are used to create bootstrap input groups. With 
>>> the 
>>> 2.0 version, I used the 'before' and 'after' options to create such 
>>> groups 
>>> but these options are not available anymore with CakePHP 3.0 so what 
>>> I'm 
>>> doing is a temporary template change: 
>>> > 
>>> > $oldTemplate = $this->templates('input') ; 
>>> > if ($options['prepend']) { 
>>> > $this->templates([ 
>>> > 'input' => /* ... */ 
>>> > ]) ; 
>>> > } 
>>> > $res = parent::input(/* ... */) ; 
>>> > $this->templates([ 
>>> > 'input' => $oldTemplate 
>>> > ]) ; 
>>> > return $res ; 
>>> > 
>>> > Is there a better way to do such thing with CakePHP 3.0? 
>>> > 
>>> > Thanks, 
>>> > 
>>> > -- 
>>> > Like Us on FaceBook https://www.facebook.com/CakePHP

Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-03 Thread Dr. Tarique Sani
If I were to do it I would leave the HTML which is before and after the
input tag out of the FormHelper  - Keep it simple...

T




On Fri, Aug 1, 2014 at 8:25 PM, Mikaël Capelle 
wrote:

> Thanks for the link! Unfortunately it doesn't help since it does not allow
> user to create bootstrap 'input-group', it is only template for default
> input, which I've already done even if it's look better written this way.
>
>
> On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:
>>
>> Look at this project for inspiration:
>>
>> https://github.com/commercial-hippie/chocolate/blob/master/
>> src/View/Helper/BootstrapFormHelper.php
>>
>> On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>>>
>>> I think my question was not clear actually...
>>>
>>> What I'm doing is inheriting standard CakePHP FormHelper to generate
>>> HTML form with bootstrap templates. It's currently working well, but in the
>>> 'input' method overload, I'm doing a temporary change to the 'input'
>>> template as shown in my first post.
>>>
>>> My question is: Is that a 'good' way of doing what I want? I mean, using
>>> temporary template changes.
>>>
>>> I don't want people to have to change the template manually when calling
>>> the 'input' method, it should be transparent for users.
>>>
>>> Thanks for your answer,
>>>
>>> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:

 You can make temporary changes to the templates both with
 Form->create() and Form->input()

 $this->From-input('foo', ['templates' => ['inputContainer' =>
 $template]]);

 An alternative is not using input(); but just build the html yourself
 in the template and call $this->Form->text('foo') , for example

 On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>
> Thanks for your answer!
>
> The problem is still the same with 'inputContainer', I need to make a
> temporary update if I want to prepend / append something.
>
> I will look at custom widget but I am not sure it's match what I
> want... The prepend / append options should be available with most type of
> input, it's not really a widget itself.
>
> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>>
>> use the `inputContainer` template to wrap the content like this:
>>
>> 'inputContainer' => '{{content}}’,
>>
>> or create a custom widget, depending on how much customisation you
>> want
>>
>>
>>
>>
>> On 01 Aug 2014, at 12:24, Mikaël Capelle 
>> wrote:
>>
>> > Hi everyone,
>> >
>> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing
>> some troubles with my custom FormHelper. The helpers are made to be used
>> with bootstrap, the two form helpers can be found here:
>> > • CakePHP 2 - https://github.com/Holt59/
>> cakephp-bootstrap3-helpers/blob/master/View/Helper/
>> BootstrapFormHelper.php
>> > • CakePHP 3 - https://github.com/Holt59/
>> cakephp3-bootstrap3-helpers/blob/master/View/Helper/
>> BootstrapFormHelper.php
>> > In the BootstrapFormHelper::input method, I have a 'prepend' and
>> 'append' options which are used to create bootstrap input groups. With 
>> the
>> 2.0 version, I used the 'before' and 'after' options to create such 
>> groups
>> but these options are not available anymore with CakePHP 3.0 so what I'm
>> doing is a temporary template change:
>> >
>> > $oldTemplate = $this->templates('input') ;
>> > if ($options['prepend']) {
>> > $this->templates([
>> > 'input' => /* ... */
>> > ]) ;
>> > }
>> > $res = parent::input(/* ... */) ;
>> > $this->templates([
>> > 'input' => $oldTemplate
>> > ]) ;
>> > return $res ;
>> >
>> > Is there a better way to do such thing with CakePHP 3.0?
>> >
>> > Thanks,
>> >
>> > --
>> > Like Us on FaceBook https://www.facebook.com/CakePHP
>> > Find us on Twitter http://twitter.com/CakePHP
>> >
>> > ---
>> > You received this message because you are subscribed to the Google
>> Groups "CakePHP" group.
>> > To unsubscribe from this group and stop receiving emails from it,
>> send an email to cake-php+u...@googlegroups.com.
>> > To post to this group, send email to cake...@googlegroups.com.
>> > Visit this group at http://groups.google.com/group/cake-php.
>> > For more options, visit https://groups.google.com/d/optout.
>>
>>  --
> Like Us on FaceBook https://www.facebook.com/CakePHP
> Find us on Twitter http://twitter.com/CakePHP
>
> ---
> You received this message because you are subscribed to the Google Groups
> "CakePHP" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to cake-php+unsubscr...@googlegroups.com.
> To post to this group, send email to cake-php@googlegroups.com.
> Visi

Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread Mikaël Capelle
Thanks for the link! Unfortunately it doesn't help since it does not allow 
user to create bootstrap 'input-group', it is only template for default 
input, which I've already done even if it's look better written this way.

On Friday, August 1, 2014 4:49:42 PM UTC+2, José Lorenzo wrote:
>
> Look at this project for inspiration:
>
>
> https://github.com/commercial-hippie/chocolate/blob/master/src/View/Helper/BootstrapFormHelper.php
>
> On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>>
>> I think my question was not clear actually...
>>
>> What I'm doing is inheriting standard CakePHP FormHelper to generate HTML 
>> form with bootstrap templates. It's currently working well, but in the 
>> 'input' method overload, I'm doing a temporary change to the 'input' 
>> template as shown in my first post.
>>
>> My question is: Is that a 'good' way of doing what I want? I mean, using 
>> temporary template changes. 
>>
>> I don't want people to have to change the template manually when calling 
>> the 'input' method, it should be transparent for users.
>>
>> Thanks for your answer,
>>
>> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>>>
>>> You can make temporary changes to the templates both with Form->create() 
>>> and Form->input()
>>>
>>> $this->From-input('foo', ['templates' => ['inputContainer' => 
>>> $template]]); 
>>>
>>> An alternative is not using input(); but just build the html yourself in 
>>> the template and call $this->Form->text('foo') , for example
>>>
>>> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:

 Thanks for your answer!

 The problem is still the same with 'inputContainer', I need to make a 
 temporary update if I want to prepend / append something.

 I will look at custom widget but I am not sure it's match what I 
 want... The prepend / append options should be available with most type of 
 input, it's not really a widget itself.

 On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>
> use the `inputContainer` template to wrap the content like this: 
>
> 'inputContainer' => '{{content}}’, 
>
> or create a custom widget, depending on how much customisation you 
> want 
>
>   
>
>
> On 01 Aug 2014, at 12:24, Mikaël Capelle  
> wrote: 
>
> > Hi everyone, 
> > 
> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing 
> some troubles with my custom FormHelper. The helpers are made to be used 
> with bootstrap, the two form helpers can be found here: 
> > • CakePHP 2 - 
> https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>  
> > • CakePHP 3 - 
> https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>  
> > In the BootstrapFormHelper::input method, I have a 'prepend' and 
> 'append' options which are used to create bootstrap input groups. With 
> the 
> 2.0 version, I used the 'before' and 'after' options to create such 
> groups 
> but these options are not available anymore with CakePHP 3.0 so what I'm 
> doing is a temporary template change: 
> > 
> > $oldTemplate = $this->templates('input') ; 
> > if ($options['prepend']) { 
> > $this->templates([ 
> > 'input' => /* ... */ 
> > ]) ; 
> > } 
> > $res = parent::input(/* ... */) ; 
> > $this->templates([ 
> > 'input' => $oldTemplate 
> > ]) ; 
> > return $res ; 
> > 
> > Is there a better way to do such thing with CakePHP 3.0? 
> > 
> > Thanks, 
> > 
> > -- 
> > Like Us on FaceBook https://www.facebook.com/CakePHP 
> > Find us on Twitter http://twitter.com/CakePHP 
> > 
> > --- 
> > You received this message because you are subscribed to the Google 
> Groups "CakePHP" group. 
> > To unsubscribe from this group and stop receiving emails from it, 
> send an email to cake-php+u...@googlegroups.com. 
> > To post to this group, send email to cake...@googlegroups.com. 
> > Visit this group at http://groups.google.com/group/cake-php. 
> > For more options, visit https://groups.google.com/d/optout. 
>
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread José Lorenzo
Look at this project for inspiration:

https://github.com/commercial-hippie/chocolate/blob/master/src/View/Helper/BootstrapFormHelper.php

On Friday, August 1, 2014 2:31:44 PM UTC+2, Mikaël Capelle wrote:
>
> I think my question was not clear actually...
>
> What I'm doing is inheriting standard CakePHP FormHelper to generate HTML 
> form with bootstrap templates. It's currently working well, but in the 
> 'input' method overload, I'm doing a temporary change to the 'input' 
> template as shown in my first post.
>
> My question is: Is that a 'good' way of doing what I want? I mean, using 
> temporary template changes. 
>
> I don't want people to have to change the template manually when calling 
> the 'input' method, it should be transparent for users.
>
> Thanks for your answer,
>
> On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>>
>> You can make temporary changes to the templates both with Form->create() 
>> and Form->input()
>>
>> $this->From-input('foo', ['templates' => ['inputContainer' => 
>> $template]]); 
>>
>> An alternative is not using input(); but just build the html yourself in 
>> the template and call $this->Form->text('foo') , for example
>>
>> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>>>
>>> Thanks for your answer!
>>>
>>> The problem is still the same with 'inputContainer', I need to make a 
>>> temporary update if I want to prepend / append something.
>>>
>>> I will look at custom widget but I am not sure it's match what I want... 
>>> The prepend / append options should be available with most type of input, 
>>> it's not really a widget itself.
>>>
>>> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:

 use the `inputContainer` template to wrap the content like this: 

 'inputContainer' => '{{content}}’, 

 or create a custom widget, depending on how much customisation you want 

   


 On 01 Aug 2014, at 12:24, Mikaël Capelle  wrote: 

 > Hi everyone, 
 > 
 > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing 
 some troubles with my custom FormHelper. The helpers are made to be used 
 with bootstrap, the two form helpers can be found here: 
 > • CakePHP 2 - 
 https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
  
 > • CakePHP 3 - 
 https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
  
 > In the BootstrapFormHelper::input method, I have a 'prepend' and 
 'append' options which are used to create bootstrap input groups. With the 
 2.0 version, I used the 'before' and 'after' options to create such groups 
 but these options are not available anymore with CakePHP 3.0 so what I'm 
 doing is a temporary template change: 
 > 
 > $oldTemplate = $this->templates('input') ; 
 > if ($options['prepend']) { 
 > $this->templates([ 
 > 'input' => /* ... */ 
 > ]) ; 
 > } 
 > $res = parent::input(/* ... */) ; 
 > $this->templates([ 
 > 'input' => $oldTemplate 
 > ]) ; 
 > return $res ; 
 > 
 > Is there a better way to do such thing with CakePHP 3.0? 
 > 
 > Thanks, 
 > 
 > -- 
 > Like Us on FaceBook https://www.facebook.com/CakePHP 
 > Find us on Twitter http://twitter.com/CakePHP 
 > 
 > --- 
 > You received this message because you are subscribed to the Google 
 Groups "CakePHP" group. 
 > To unsubscribe from this group and stop receiving emails from it, 
 send an email to cake-php+u...@googlegroups.com. 
 > To post to this group, send email to cake...@googlegroups.com. 
 > Visit this group at http://groups.google.com/group/cake-php. 
 > For more options, visit https://groups.google.com/d/optout. 



-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread Mikaël Capelle
I think my question was not clear actually...

What I'm doing is inheriting standard CakePHP FormHelper to generate HTML 
form with bootstrap templates. It's currently working well, but in the 
'input' method overload, I'm doing a temporary change to the 'input' 
template as shown in my first post.

My question is: Is that a 'good' way of doing what I want? I mean, using 
temporary template changes. 

I don't want people to have to change the template manually when calling 
the 'input' method, it should be transparent for users.

Thanks for your answer,

On Friday, August 1, 2014 2:21:34 PM UTC+2, José Lorenzo wrote:
>
> You can make temporary changes to the templates both with Form->create() 
> and Form->input()
>
> $this->From-input('foo', ['templates' => ['inputContainer' => 
> $template]]); 
>
> An alternative is not using input(); but just build the html yourself in 
> the template and call $this->Form->text('foo') , for example
>
> On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>>
>> Thanks for your answer!
>>
>> The problem is still the same with 'inputContainer', I need to make a 
>> temporary update if I want to prepend / append something.
>>
>> I will look at custom widget but I am not sure it's match what I want... 
>> The prepend / append options should be available with most type of input, 
>> it's not really a widget itself.
>>
>> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>>>
>>> use the `inputContainer` template to wrap the content like this: 
>>>
>>> 'inputContainer' => '{{content}}’, 
>>>
>>> or create a custom widget, depending on how much customisation you want 
>>>
>>>   
>>>
>>>
>>> On 01 Aug 2014, at 12:24, Mikaël Capelle  wrote: 
>>>
>>> > Hi everyone, 
>>> > 
>>> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing 
>>> some troubles with my custom FormHelper. The helpers are made to be used 
>>> with bootstrap, the two form helpers can be found here: 
>>> > • CakePHP 2 - 
>>> https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>>>  
>>> > • CakePHP 3 - 
>>> https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>>>  
>>> > In the BootstrapFormHelper::input method, I have a 'prepend' and 
>>> 'append' options which are used to create bootstrap input groups. With the 
>>> 2.0 version, I used the 'before' and 'after' options to create such groups 
>>> but these options are not available anymore with CakePHP 3.0 so what I'm 
>>> doing is a temporary template change: 
>>> > 
>>> > $oldTemplate = $this->templates('input') ; 
>>> > if ($options['prepend']) { 
>>> > $this->templates([ 
>>> > 'input' => /* ... */ 
>>> > ]) ; 
>>> > } 
>>> > $res = parent::input(/* ... */) ; 
>>> > $this->templates([ 
>>> > 'input' => $oldTemplate 
>>> > ]) ; 
>>> > return $res ; 
>>> > 
>>> > Is there a better way to do such thing with CakePHP 3.0? 
>>> > 
>>> > Thanks, 
>>> > 
>>> > -- 
>>> > Like Us on FaceBook https://www.facebook.com/CakePHP 
>>> > Find us on Twitter http://twitter.com/CakePHP 
>>> > 
>>> > --- 
>>> > You received this message because you are subscribed to the Google 
>>> Groups "CakePHP" group. 
>>> > To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to cake-php+u...@googlegroups.com. 
>>> > To post to this group, send email to cake...@googlegroups.com. 
>>> > Visit this group at http://groups.google.com/group/cake-php. 
>>> > For more options, visit https://groups.google.com/d/optout. 
>>>
>>>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread José Lorenzo
You can make temporary changes to the templates both with Form->create() 
and Form->input()

$this->From-input('foo', ['templates' => ['inputContainer' => $template]]); 

An alternative is not using input(); but just build the html yourself in 
the template and call $this->Form->text('foo') , for example

On Friday, August 1, 2014 1:51:48 PM UTC+2, Mikaël Capelle wrote:
>
> Thanks for your answer!
>
> The problem is still the same with 'inputContainer', I need to make a 
> temporary update if I want to prepend / append something.
>
> I will look at custom widget but I am not sure it's match what I want... 
> The prepend / append options should be available with most type of input, 
> it's not really a widget itself.
>
> On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>>
>> use the `inputContainer` template to wrap the content like this: 
>>
>> 'inputContainer' => '{{content}}’, 
>>
>> or create a custom widget, depending on how much customisation you want 
>>
>>   
>>
>>
>> On 01 Aug 2014, at 12:24, Mikaël Capelle  wrote: 
>>
>> > Hi everyone, 
>> > 
>> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing some 
>> troubles with my custom FormHelper. The helpers are made to be used with 
>> bootstrap, the two form helpers can be found here: 
>> > • CakePHP 2 - 
>> https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>>  
>> > • CakePHP 3 - 
>> https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>>  
>> > In the BootstrapFormHelper::input method, I have a 'prepend' and 
>> 'append' options which are used to create bootstrap input groups. With the 
>> 2.0 version, I used the 'before' and 'after' options to create such groups 
>> but these options are not available anymore with CakePHP 3.0 so what I'm 
>> doing is a temporary template change: 
>> > 
>> > $oldTemplate = $this->templates('input') ; 
>> > if ($options['prepend']) { 
>> > $this->templates([ 
>> > 'input' => /* ... */ 
>> > ]) ; 
>> > } 
>> > $res = parent::input(/* ... */) ; 
>> > $this->templates([ 
>> > 'input' => $oldTemplate 
>> > ]) ; 
>> > return $res ; 
>> > 
>> > Is there a better way to do such thing with CakePHP 3.0? 
>> > 
>> > Thanks, 
>> > 
>> > -- 
>> > Like Us on FaceBook https://www.facebook.com/CakePHP 
>> > Find us on Twitter http://twitter.com/CakePHP 
>> > 
>> > --- 
>> > You received this message because you are subscribed to the Google 
>> Groups "CakePHP" group. 
>> > To unsubscribe from this group and stop receiving emails from it, send 
>> an email to cake-php+u...@googlegroups.com. 
>> > To post to this group, send email to cake...@googlegroups.com. 
>> > Visit this group at http://groups.google.com/group/cake-php. 
>> > For more options, visit https://groups.google.com/d/optout. 
>>
>>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread Mikaël Capelle
Thanks for your answer!

The problem is still the same with 'inputContainer', I need to make a 
temporary update if I want to prepend / append something.

I will look at custom widget but I am not sure it's match what I want... 
The prepend / append options should be available with most type of input, 
it's not really a widget itself.

On Friday, August 1, 2014 1:37:54 PM UTC+2, Thomas von Hassel wrote:
>
> use the `inputContainer` template to wrap the content like this: 
>
> 'inputContainer' => '{{content}}’, 
>
> or create a custom widget, depending on how much customisation you want 
>
>   
>
>
> On 01 Aug 2014, at 12:24, Mikaël Capelle  > wrote: 
>
> > Hi everyone, 
> > 
> > I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing some 
> troubles with my custom FormHelper. The helpers are made to be used with 
> bootstrap, the two form helpers can be found here: 
> > • CakePHP 2 - 
> https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>  
> > • CakePHP 3 - 
> https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>  
> > In the BootstrapFormHelper::input method, I have a 'prepend' and 
> 'append' options which are used to create bootstrap input groups. With the 
> 2.0 version, I used the 'before' and 'after' options to create such groups 
> but these options are not available anymore with CakePHP 3.0 so what I'm 
> doing is a temporary template change: 
> > 
> > $oldTemplate = $this->templates('input') ; 
> > if ($options['prepend']) { 
> > $this->templates([ 
> > 'input' => /* ... */ 
> > ]) ; 
> > } 
> > $res = parent::input(/* ... */) ; 
> > $this->templates([ 
> > 'input' => $oldTemplate 
> > ]) ; 
> > return $res ; 
> > 
> > Is there a better way to do such thing with CakePHP 3.0? 
> > 
> > Thanks, 
> > 
> > -- 
> > Like Us on FaceBook https://www.facebook.com/CakePHP 
> > Find us on Twitter http://twitter.com/CakePHP 
> > 
> > --- 
> > You received this message because you are subscribed to the Google 
> Groups "CakePHP" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to cake-php+u...@googlegroups.com . 
> > To post to this group, send email to cake...@googlegroups.com 
> . 
> > Visit this group at http://groups.google.com/group/cake-php. 
> > For more options, visit https://groups.google.com/d/optout. 
>
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


Re: CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread Thomas von Hassel
use the `inputContainer` template to wrap the content like this:

'inputContainer' => '{{content}}',

or create a custom widget, depending on how much customisation you want

 


On 01 Aug 2014, at 12:24, Mikaël Capelle  wrote:

> Hi everyone,
> 
> I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing some 
> troubles with my custom FormHelper. The helpers are made to be used with 
> bootstrap, the two form helpers can be found here:
>   * CakePHP 2 - 
> https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
>   * CakePHP 3 - 
> https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
> In the BootstrapFormHelper::input method, I have a 'prepend' and 'append' 
> options which are used to create bootstrap input groups. With the 2.0 
> version, I used the 'before' and 'after' options to create such groups but 
> these options are not available anymore with CakePHP 3.0 so what I'm doing is 
> a temporary template change:
> 
> $oldTemplate = $this->templates('input') ;
> if ($options['prepend']) {
> $this->templates([
> 'input' => /* ... */
> ]) ;
> }
> $res = parent::input(/* ... */) ;
> $this->templates([
> 'input' => $oldTemplate
> ]) ;
> return $res ;
> 
> Is there a better way to do such thing with CakePHP 3.0?
> 
> Thanks,
> 
> -- 
> Like Us on FaceBook https://www.facebook.com/CakePHP
> Find us on Twitter http://twitter.com/CakePHP
> 
> --- 
> You received this message because you are subscribed to the Google Groups 
> "CakePHP" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to cake-php+unsubscr...@googlegroups.com.
> To post to this group, send email to cake-php@googlegroups.com.
> Visit this group at http://groups.google.com/group/cake-php.
> For more options, visit https://groups.google.com/d/optout.

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.


CakePHP 3.0 - Correct way to append / prepend HTML on FormHelper

2014-08-01 Thread Mikaël Capelle
Hi everyone,

I am porting my CakePHP 2.0 helpers to CakePHP 3.0 and I am facing some 
troubles with my custom FormHelper. The helpers are made to be used with 
bootstrap, the two form helpers can be found here:

   - CakePHP 2 - 
   
https://github.com/Holt59/cakephp-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php
   - CakePHP 3 - 
   
https://github.com/Holt59/cakephp3-bootstrap3-helpers/blob/master/View/Helper/BootstrapFormHelper.php

In the BootstrapFormHelper::input method, I have a 'prepend' and 'append' 
options which are used to create bootstrap input groups 
. With the 2.0 version, I 
used the 'before' and 'after' options to create such groups but these 
options are not available anymore with CakePHP 3.0 so what I'm doing is a 
temporary template change:

$oldTemplate = $this->templates('input') ;
if ($options['prepend']) {
$this->templates([
'input' => /* ... */
]) ;
}
$res = parent::input(/* ... */) ;
$this->templates([
'input' => $oldTemplate
]) ;
return $res ;

Is there a better way to do such thing with CakePHP 3.0?

Thanks,

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.