is the endgame really let response.menu generate a structure than is 
converted every time server-side ?
Shouldn't we avoid server-side dom at all costs ?

On Friday, December 13, 2013 3:21:28 PM UTC+1, Paolo Caruccio wrote:
>
> Thank you LightDot.
> In the next few days I'll send to your private email the files for 
> bootstrap3 and foundation5 so you will able to check my code and yours.
> My bootstrap 3 code supports multilevel (2, 3 and so on) menu also. Both 
> bs3 and f5 manage the errors in form (see attached image) and the auth 
> navbar is easily customizable by the user. There are other small features 
> too. Of course they are responsive and should work also in mobile machines. 
> But more important thing is that by making small changes to it,  the code 
> can be applied also to other framework and therefore we will isolate this 
> matters from web2py core. The package for each framework  is constitued by 
> a python module, custom css file and a custom js file  in addition to the 
> framework files obviously.
> I hope this will be the first step to the web2py theming.
>
>
> Il giorno venerdì 13 dicembre 2013 11:54:21 UTC+1, LightDot ha scritto:
>>
>> That's excellent! I just started converting the welcome app to bs3 
>> yesterday and got as far as converting and tweaking the html and adding 2nd 
>> level submenu support. Foundation 5 was the next on my list.
>>
>> It seems that you've gotten further along so I'll wait for your code and 
>> help out once it's published. Drop me a note directly if you could use any 
>> help before that.
>>
>> Regards
>>
>>
>> On Thursday, December 12, 2013 11:25:34 PM UTC+1, Paolo Caruccio wrote:
>>>
>>> In this days I'm finishing an external module (based on DOM server-side 
>>> manipulation) that converts web2py elements (at the moment: the auth 
>>> navbar, the menu and SQLform) to bootstrap3. It is my intention make this 
>>> module easy to extend to other frameworks also. Bootstrap3 and Foundation5 
>>> are almost ready and I'm working on "ink sapo framework" just to try if 
>>> it's possible the porting to something different. 
>>> I'm posting the code and examples on this group before xmas for testing 
>>> and feedback purposes. Some screenshots here attached.
>>>
>>>
>>> Il giorno giovedì 12 dicembre 2013 22:32:32 UTC+1, Massimo Di Pierro ha 
>>> scritto:
>>>>
>>>> Can you please open a ticket about this so it does not get lost? We 
>>>> need to port welcome to bootstrap 3 asap.
>>>>
>>>> On Thursday, 12 December 2013 12:08:15 UTC-6, Annet wrote:
>>>>>
>>>>> Some field definitions in my models have comments, which in a 
>>>>> Bootstrap form are
>>>>> being displayed in a help-block.
>>>>>
>>>>> The problem is that this help-block
>>>>>
>>>>> <span class="help-block">my comment</span>
>>>>>
>>>>> is added to every form field, resulting in 20 px of extra padding 
>>>>> between form fields, margin-bottom: 10px
>>>>> and margin-bottom: 5px. Is there a way to make adding a help-block 
>>>>> conditional?
>>>>>
>>>>> So far I made the following adjustments to a custom formstyle function:
>>>>>
>>>>> def bootstrap3(form, fields):
>>>>>     form.add_class('form-horizontal')
>>>>>     parent = FIELDSET()
>>>>>     for id, label, controls, help in fields:
>>>>>         # wrappers
>>>>>         _help = SPAN(help, _class='help-block')
>>>>>         # embed _help into _controls
>>>>>         _controls = DIV(controls, _help, _class='controls col-sm-8')
>>>>>         # submit unflag by default
>>>>>         _submit = False
>>>>>
>>>>>         if isinstance(controls, INPUT):
>>>>>             controls.add_class('form-control')
>>>>>             if controls['_type'] == 'submit':
>>>>>                 # flag submit button
>>>>>                 _submit = True
>>>>>                 controls['_class'] = 'btn btn-primary'
>>>>>             if controls['_type'] == 'file':
>>>>>                 controls['_class'] = 'input-file'
>>>>>
>>>>>         # For password fields, which are wrapped in a CAT object.
>>>>>         if isinstance(controls, CAT) and isinstance(controls[0], 
>>>>> INPUT):
>>>>>             controls[0].add_class('form-control')
>>>>>
>>>>>         if isinstance(controls, SELECT):
>>>>>             controls.add_class('form-control')
>>>>>
>>>>>         if isinstance(controls, TEXTAREA):
>>>>>             controls.add_class('form-control')
>>>>>
>>>>>         if isinstance(label, LABEL):
>>>>>             label['_class'] = 'col-sm-4 control-label'
>>>>>
>>>>>         if _submit:
>>>>>             # submit button has unwrapped label and controls, 
>>>>> different class
>>>>>             parent.append(DIV(label, controls, _class='col-sm-offset-4 
>>>>> col-sm-8 form-actions', _id=id))
>>>>>             # unflag submit (possible side effect)
>>>>>             _submit = False
>>>>>         else:
>>>>>             # unwrapped label
>>>>>             parent.append(DIV(label, _controls, _class='form-group', 
>>>>> _id=id))
>>>>>     return parent
>>>>>
>>>>>
>>>>>
>>>>> Kind regards,
>>>>>
>>>>> Annet
>>>>>
>>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to