Can try... But my guess is that it's cause by the "ifs" there must be some
annoying thing happening cause of them... But when I look into the page
source everything seems fine... I am suspecting something with javascript...

Richard

On Thu, Jun 23, 2016 at 5:28 AM, Massimo Di Pierro <
massimo.dipie...@gmail.com> wrote:

> Can you reproduce the problem with some simpler code?
>
>
> On Tuesday, 21 June 2016 14:42:03 UTC-5, Richard wrote:
>>
>> Any clue?
>>
>> On Tue, Jun 21, 2016 at 10:51 AM, Richard <ml.richard.vez...@gmail.com>
>> wrote:
>>
>>> As you which!!
>>>
>>> # Controllers
>>> Form 1
>>> def phone_numbers_form():
>>>     """
>>>     phone_numbers_form() allow to create/update/display phone(s)
>>> number(s).
>>>
>>>     Args (vars):
>>>         readonlyform: If set to "True" the function only display phones
>>> numbers in row, no create form and buttons
>>>                       to modify add phone number is available.
>>>         remove_phone_number_id: If phone number id is passed through url
>>> with this vars phone number specify id
>>>                                 record is deleted.
>>>         request_modify_phone_id: The passed phone number with this vars
>>> will make the phone_numbers_form() to return
>>>                                  an update form for the specified phone
>>> number id record.
>>>
>>>     """
>>>     user_id = None
>>>
>>>     # To display only the phone numbers
>>>     readonlyform = False
>>>     if request.vars.readonlyform:
>>>         if request.vars.readonlyform in ['True']:
>>>             readonlyform = True
>>>
>>>     if request.args(0) is not None:
>>>         try:
>>>             user_id = int(request.args(0))
>>>         except:
>>>             user_id = db(db.auth_user.username ==
>>> request.args(0)).select(db.auth_user.id).first().id
>>>     if user_id is None:
>>>         user_id = auth.user_id
>>>     if request.vars.remove_phone_number_id is not None:
>>>         db(db.phone_number.id ==
>>> int(request.vars.remove_phone_number_id)).delete()
>>>     record_to_modify = request.vars.request_modify_phone_id
>>>     phone_numbers = db(db.phone_number.user_id == user_id).select()
>>>     db.phone_number.user_id.default = user_id
>>>     db.phone_number.user_id.update = user_id
>>>     if record_to_modify is None:
>>>         buttons = [
>>>             TAG.button(I('', _class='icon-ban-circle icon-large
>>> icon-white'), _type='button',
>>>
>>>  _onClick='web2py_component("%s","phone_number_component");' %
>>> URL(c='directory',
>>>
>>>                  f='phone_numbers_form',
>>>
>>>                  extension='load',
>>>
>>>                  args=request.args(0)),
>>>                        _class='btn btn-mini btn-inverse'),
>>>             TAG.button((I('', _class='icon-ok icon-large icon-white'),
>>> CAT('  '), STRONG(T('Add'))), _type='submit',
>>>                        _class='btn btn-mini btn-primary',
>>> _style='white-space: nowrap;')]
>>>     else:
>>>         buttons = [
>>>             TAG.button(I('', _class='icon-ban-circle icon-large
>>> icon-white'), _type='button',
>>>
>>>  _onClick='web2py_component("%s","phone_number_component");' %
>>> URL(c='directory',
>>>
>>>                  f='phone_numbers_form',
>>>
>>>                  extension='load',
>>>
>>>                  args=request.args(0)),
>>>                        _class='btn btn-mini btn-inverse'),
>>>             TAG.button((I('', _class='icon-ok icon-large icon-white'),
>>> CAT('  '), STRONG(T('Ok'))), _type='submit',
>>>                        _class='btn btn-mini btn-primary')]
>>>         # form.element(_type='submit')['_value'] = T('ok')
>>>         # form.element(_type='submit')['_class'] = 'btn btn-mini
>>> pull-right'
>>>     form = SQLFORM(db.phone_number, record=None if record_to_modify is
>>> None else int(record_to_modify),
>>>                    buttons=buttons if readonlyform is False else None,
>>>                    readonly=True if readonlyform is True else False,
>>>                    _id='phone_number_form_id')
>>>     if form.process(formname='phone_number_form').accepted:
>>>         if record_to_modify is not None:
>>>             response.flash = T('Successfully inserted')
>>>         else:
>>>             response.flash = T('Successfully updated')
>>>         response.js =
>>> 'web2py_component("%(URL)s","phone_number_component");' % {'URL':
>>> URL(c='directory',
>>>
>>>                     f='phone_numbers_form',
>>>
>>>                     extension='load',
>>>
>>>                     args=request.args(0))}
>>>     elif form.errors:
>>>         response.flash = T('Errors...')
>>>
>>>     #
>>> -----------------------------------------------------------------------------
>>>     # <script>
>>>     #     $(document).ready(function() {
>>>     #         var add_phone_number_translation = "{{=T('Add a phone
>>> number')}}"
>>>     #         $("tr#input_new_phone_number").children().hide();
>>>     #         $("tr#input_new_phone_number").append('<td colspan="3"
>>> id="new_phone_number"><button type="button" class="btn btn-small
>>> pull-right" onclick="$(\'tr#input_new_phone_number\').children().show();
>>> $(\'td#new_phone_number\').hide();"><strong>' +
>>> add_phone_number_translation + '</strong></button></td>');
>>>     #         });
>>>     # </script>
>>>     # What below is a replacement for the jQuery code above
>>>     if readonlyform is False:
>>>         controller_view_js = \
>>>
>>> common_functions.flash_message_from_js(tr_id='new_phone_number',
>>>                                                    colspan='3',
>>>                                                    button_text='Add a
>>> phone number',
>>>                                                    flash_text='Please
>>> add your phone number...',
>>>
>>>  form_id='phone_number_form_id')
>>>     else:
>>>         controller_view_js = ''
>>>     #
>>> -----------------------------------------------------------------------------
>>>
>>>     return dict(phone_numbers=phone_numbers,
>>>                 form=form,
>>>                 controller_view_js=controller_view_js,
>>>                 readonlyform=readonlyform)
>>>
>>>
>>> Form 2
>>>
>>> def group_membership():
>>>     if not auth.has_membership('admin'):
>>>         redirect(URL(c='permission', f='not_authorized'))
>>>     user_id = None
>>>     if request.args(0) is not None:
>>>         try:
>>>             user_id = int(request.args(0))
>>>         except ValueError:
>>>             user_id = db(db.auth_user.username ==
>>> request.args(0)).select(db.auth_user.id).first().id
>>>     # if user_id is None:
>>>     #     user_id = auth.user_id  # Extrêmement douteux...
>>>     if request.vars.remove_membership_id is not None:
>>>         db(db.auth_membership.id ==
>>> int(request.vars.remove_membership_id)).delete()
>>>     record_to_modify = request.vars.request_modify_membership_id
>>>     memberships = db(db.auth_membership.user_id == user_id
>>>                      ).select(db.auth_membership.ALL,
>>>                               db.auth_group.ALL,
>>>                               join=db.auth_group.on(db.auth_group.id ==
>>> db.auth_membership.group_id),
>>>                               orderby=db.auth_group.role_gui)
>>>     db.auth_membership.user_id.default = user_id
>>>     db.auth_membership.user_id.update = user_id
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     # We don't need all the user id to be present in the drop down as
>>> group selected should apply to only a single user
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     user_id_set = db(db.auth_user.id == user_id)
>>>     db.auth_membership.user_id.requires = IS_IN_DB(user_id_set, '
>>> auth_user.id', '%(first_name)s %(last_name)s (%(id)s)')
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     # We don't need other user_X groups as the user can't be assign to
>>> other user group
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     groups_set = db(~db.auth_group.role.startswith('user_'))
>>>     db.auth_membership.group_id.requires = IS_IN_DB(groups_set, '
>>> auth_group.id', '%(role)s-%(description)s (%(id)s)')
>>>     #
>>> ------------------------------------------------------------------------------------------------------------------
>>>     if record_to_modify is None:
>>>         buttons = [
>>>             TAG.button(I('', _class='icon-ban-circle icon-large
>>> icon-white'), _type='button',
>>>
>>>  _onClick='web2py_component("%s","membership_component");' %
>>> URL(c='directory',
>>>
>>>                  f='group_membership',
>>>
>>>                  extension='load',
>>>
>>>                  args=request.args(0)),
>>>                        _class='btn btn-mini btn-inverse'),
>>>             TAG.button((I('', _class='icon-ok icon-large icon-white'),
>>> CAT('  '), STRONG(T('Add'))), _type='submit',
>>>                        _class='btn btn-mini btn-primary',
>>> _style='white-space: nowrap;')]
>>>     else:
>>>         buttons = [
>>>             TAG.button(I('', _class='icon-ban-circle icon-large
>>> icon-white'), _type='button',
>>>
>>>  _onClick='web2py_component("%s","membership_component");' %
>>> URL(c='directory',
>>>
>>>                  f='group_membership',
>>>
>>>                  extension='load',
>>>
>>>                  args=request.args(0)),
>>>                        _class='btn btn-mini btn-inverse'),
>>>             TAG.button((I('', _class='icon-ok icon-large icon-white'),
>>> CAT('  '), STRONG(T('Ok'))), _type='submit',
>>>                        _class='btn btn-mini btn-primary')]
>>>         # form.element(_type='submit')['_value'] = T('ok')
>>>         # form.element(_type='submit')['_class'] = 'btn btn-mini
>>> pull-right'
>>>     form = SQLFORM(db.auth_membership, record=None if record_to_modify
>>> is None else int(record_to_modify),
>>>                    buttons=buttons, _id='membership_form_id')
>>>     if form.process(formname='membership_form').accepted:
>>>         if record_to_modify is None:
>>>             response.flash = T('Successfully inserted')
>>>         else:
>>>             response.flash = T('Successfully updated')
>>>         response.js =
>>> 'web2py_component("%(URL)s","membership_component");' % {'URL':
>>> URL(c='directory',
>>>
>>>                   f='group_membership',
>>>
>>>                   extension='load',
>>>
>>>                   args=request.args(0))}
>>>     elif form.errors:
>>>         response.flash = T('Errors...')
>>>
>>>     thead = THEAD(TR(TH(T('Role(s)'))))
>>>     trs = []
>>>     for r in memberships:
>>>         if request.vars.request_modify_membership_id is not None and \
>>>                 r.auth_membership.id ==
>>> int(request.vars.request_modify_membership_id):
>>>             trs.append(TR(TD(form.custom.widget.group_id,
>>>                              DIV(A(I('', _class='icon-ban-circle
>>> icon-large icon-white'),
>>>                                    _class='btn btn-mini btn-inverse',
>>>                                    _href=URL('group_membership',
>>> extension='load',
>>>                                              args=request.args(0)),
>>> cid=request.cid),
>>>                                  BUTTON(I('', _class='icon-ok icon-large
>>> icon-white'),
>>>                                         _class='btn btn-mini
>>> btn-primary',
>>>                                         _type='submit'),
>>>                                  _class='pull-right'))))
>>>         else:
>>>             trs.append(TR(TD(T(r.auth_group.role_gui),
>>>                              DIV(A(I('', _class='icon-edit icon-large'),
>>> _class='btn btn-mini',
>>>                                    _href=URL('group_membership',
>>> extension='load', args=request.args(0),
>>>
>>>  vars=dict(request_modify_membership_id=r.auth_membership.id)),
>>>                                    cid=request.cid),
>>>                                  A(I('', _class='icon-remove icon-large
>>> icon-white'), _class='btn btn-mini btn-danger',
>>>                                    _href=URL('group_membership',
>>> extension='load', args=request.args(0),
>>>
>>>  vars=dict(remove_membership_id=r.auth_membership.id)),
>>> cid=request.cid),
>>>                                  _class='pull-right'))))
>>>     if request.vars.request_modify_membership_id == None:
>>>         trs.append(TR(TD(form.custom.widget.group_id,
>>>                          SPAN(form.custom.widget.user_id,
>>> _style='display: none;'),  # There is an issue with this...
>>>
>>>              # NO form.vars.user_id available
>>>
>>>              # for update form!!
>>>                          SPAN(form.custom.submit, _class='pull-right')),
>>> _id='input_new_membership'))
>>>     memberships_table = TABLE(thead, TBODY(*trs), _class='table
>>> table-condensed table-hover')
>>>
>>>     #
>>> -----------------------------------------------------------------------------
>>>     # $(document).ready(function() {
>>>     #     var add_membership_translation = '{{=T('Add membership')}}'
>>>     #     $("tr#input_new_membership").children().hide();
>>>     #     $("tr#input_new_membership").append('<td colspan="3"
>>> id="new_membership"><button type="button" class="btn btn-small pull-right"
>>> onclick="$(\'tr#input_new_membership\').children().show();
>>> $(\'td#new_membership\').hide();"><strong>' + add_membership_translation +
>>> '</strong></button></td>');
>>>     #     });
>>>     # What below is a replacement for the jQuery code above
>>>     controller_view_js = \
>>>         common_functions.flash_message_from_js(tr_id='new_membership',
>>>                                                colspan='3',
>>>                                                button_text='Add
>>> membership',
>>>                                                flash_text='Please select
>>> a role...',
>>>
>>>  form_id='membership_form_id')
>>>     #
>>> -----------------------------------------------------------------------------
>>>
>>>     return dict(memberships_table=memberships_table, form=form,
>>> controller_view_js=controller_view_js)
>>>
>>> Container page controller
>>> @auth.requires_login()
>>> def manage_users():
>>>     if not auth.has_membership('manage_users'):
>>>         redirect(URL(c='permission', f='not_authorized'))
>>>     if request.args(0) is not None:
>>>         try:
>>>                 user_id = int(request.args(0))
>>>         except ValueError:
>>>             user_id = db(db.auth_user.username ==
>>> request.args(0)).select(db.auth_user.id).first().id
>>>     else:
>>>         user_id = None
>>>         db.auth_user.address_id.requires = \
>>>             IS_EMPTY_OR(IS_IN_DB(db, db.address.id, '%(address_code)s -
>>> %(door_number)s, %(street)s'))
>>>         db.auth_user.initials.requires = \
>>>             IS_EMPTY_OR(IS_NOT_IN_DB(db, 'auth_user.initials',
>>> error_message=T('Initials already exist!')))
>>>         db.auth_user.password.requires =
>>> IS_EMPTY_OR(CRYPT(min_length=auth.settings.password_min_length,
>>>
>>>  error_message=T('too short')))
>>>
>>>     for field in db.auth_user.fields:
>>>         db.auth_user[field].readable = False
>>>         db.auth_user[field].writable = False
>>>     fields = (db.auth_user.first_name,
>>>               db.auth_user.last_name,
>>>               db.auth_user.address_id,
>>>               db.auth_user.email,
>>>               db.auth_user.initials,
>>>               db.auth_user.title_fr,
>>>               db.auth_user.title_en,
>>>               db.auth_user.manager_id,
>>>               db.auth_user.gender,
>>>               db.auth_user.registration_key,
>>>               db.auth_user.picture)
>>>     for field in fields:
>>>         field.readable = True
>>>         field.writable = True
>>>     db.auth_user.registration_key.requires =
>>> IS_EMPTY_OR(IS_IN_SET(['pending', 'disabled']))
>>>     db.auth_user.registration_key.default = 'pending'
>>>     buttons = [TAG.button((I('', _class='icon-ban-circle icon-large
>>> icon-white'), CAT('  '), STRONG(T('Cancel'))),
>>>                           _type='button',
>>>                           _onClick="javascript:void(history.go(-1))",
>>>                           _class='btn btn-small btn-inverse'),
>>>                TAG.button((I('', _class='icon-ok icon-large
>>> icon-white'), CAT('  '), STRONG(T('Update'))),
>>>                           _type='submit',
>>>                           _class='btn btn-small btn-primary')]
>>>     form = SQLFORM(db.auth_user, record=user_id, buttons=buttons,
>>> formstyle=formstyle, separator=separator)
>>>     if form.process(dbio=False).accepted:
>>>         if user_id is None:
>>>             session.flash = T('User created')
>>>             form.vars.ceo = False
>>>             form.vars.note = ''
>>>             if form.vars.email is not None:
>>>                 form.vars.username = form.vars.email.split('@')[0]
>>>             id = db.auth_user.insert(**{str(var): form.vars[var] for var
>>> in form.vars})
>>>             user_id_role_exist = db(db.auth_group.role == 'user_%d' %
>>> id).count() == 1
>>>             if user_id_role_exist is False:
>>>                 db.auth_group.insert(role='user_%d' % id,
>>> description='Individual user group user_ + user id',
>>>                                      role_gui=form.vars.username)
>>>             member_of_basic_access_group = \
>>>                 db((db.auth_membership.user_id == id) &
>>>                    (db.auth_membership.group_id == db(db.auth_group.role
>>> == 'basic_access'
>>>                                                       ).select(
>>> db.auth_group.id).first().id)
>>>                    ).count() == 1
>>>             if member_of_basic_access_group is False:
>>>                 db.auth_membership.insert(user_id=id,
>>>                                           group_id=db(db.auth_group.role
>>> == 'basic_access'
>>>                                                       ).select(
>>> db.auth_group.id).first().id)
>>>             # Push new user into Redmine
>>>             redmine_utility.push_active_user_into_redmine(db=db)
>>>         else:
>>>             session.flash = T('User updated')
>>>             db(db.auth_user.id == user_id).update(**{str(var):
>>> form.vars[var] for var in form.vars})
>>>
>>>         if form.vars.title_fr is not None and form.vars.title_fr != '' \
>>>                 and form.vars.title_en is not None and
>>> form.vars.title_en != '':
>>>
>>> common_functions.value_translation_update(en_field_name='title_en',
>>> fr_field_name='title_fr', form=form)
>>>         if request.args(0) is not None:
>>>             username = request.args(0)
>>>         elif form.vars.username is not None:
>>>             username = form.vars.username
>>>         else:
>>>             username = None
>>>         redirect(URL(c='directory', f='employee', args=username))
>>>     elif form.errors:
>>>         response.flash = T('Form has error')
>>>     else:
>>>         response.flash = T('Please complete or update the form')
>>>     return dict(form=form)
>>>
>>>
>>>
>>>
>>>
>>> # View ".load"
>>> Form 1
>>> <strong>{{=T('Phone numbers')}}</strong>
>>> {{=form.custom.begin}}
>>> <table class="table table-condensed table-hover">
>>>     <tbody>
>>>         {{for phone_number in phone_numbers:}}
>>>             <tr>
>>>                 {{if request.vars.request_modify_phone_id is not None
>>> and phone_number.id == int(request.vars.request_modify_phone_id):}}
>>>                     <td>{{=form.custom.widget.phone_number_kind_id}}</td>
>>>                     <td>{{=form.custom.widget.phone_number}}</td>
>>>                     <td>
>>>                         <span style="display:
>>> none;">{{=form.custom.widget.user_id}}</span>
>>>                         {{=form.custom.widget.extension}}
>>>                         <div class="pull-right">
>>>                         {{=A(I('', _class='icon-ban-circle icon-white'),
>>> _class='btn btn-mini btn-inverse',
>>>                              _href=URL('phone_numbers_form',
>>> extension='load', args=request.args(0)), cid=request.cid)}}
>>>                         {{=BUTTON(I('', _class='icon-ok icon-white'),
>>> _class='btn btn-mini btn-primary', _type='submit')}}
>>>                         </div>
>>>                     </td>
>>>                 {{else:}}
>>>
>>> <td>{{=db.phone_number_kind[phone_number.phone_number_kind_id].phone_number_kind}}</td>
>>>                     <td>{{=phone_number.phone_number}}</td>
>>>                     <td>
>>>                         {{if phone_number.extension is not None and
>>> phone_number.extension != '':}}
>>>                             ({{=phone_number.extension}})
>>>                         {{pass}}
>>>                         {{if readonlyform is False:}}
>>>                             <div class="pull-right">
>>>                             {{=A(I('',_class='icon-edit'), _class='btn
>>> btn-mini',
>>>                                  _href=URL('phone_numbers_form',
>>> extension='load', args=request.args(0),
>>>
>>>  vars=dict(request_modify_phone_id=phone_number.id)), cid=request.cid)}}
>>>                             {{=A(I('',_class='icon-remove icon-white'),
>>> _class='btn btn-mini btn-danger',
>>>                                  _href=URL('phone_numbers_form',
>>> extension='load', args=request.args(0),
>>>
>>>  vars=dict(remove_phone_number_id=phone_number.id)), cid=request.cid)}}
>>>                             </div>
>>>                         {{pass}}
>>>                     </td>
>>>                 {{pass}}
>>>             </tr>
>>>         {{pass}}
>>>         {{if readonlyform is False:}}
>>>             {{if request.vars.request_modify_phone_id == None:}}
>>>                 <tr id="input_new_phone_number">
>>>                     <td>{{=form.custom.widget.phone_number_kind_id}}</td>
>>>                     <td>{{=form.custom.widget.phone_number}}</td>
>>>                     <td>{{=form.custom.widget.extension}}
>>>                         <span style="display:
>>> none;">{{=form.custom.widget.user_id}}</span>
>>>                         <span
>>> class='pull-right'>{{=form.custom.submit}}</span>
>>>                     </td>
>>>                 </tr>
>>>             {{pass}}
>>>         {{pass}}
>>>     </tbody>
>>> </table>
>>> {{=form.custom.end}}
>>>
>>> <script>
>>>     {{=XML(controller_view_js)}}
>>> </script>
>>>
>>>
>>>
>>> Form 2
>>> <strong>{{=T('User membership')}}</strong>
>>> {{=form.custom.begin}}
>>>     {{=memberships_table}}
>>> {{=form.custom.end}}
>>>
>>> <script>
>>>     {{=XML(controller_view_js)}}
>>> </script>
>>>
>>>
>>> Container page
>>> {{extend 'layout_form.html'}}
>>>
>>>     <div class="span4">
>>>         <div class="thumbnail">
>>>             <div>
>>>                 {{=form}}
>>>             </div>
>>>         </div>
>>>     </div>
>>>     {{if request.args(0) is not None:}}
>>>         <div class="span6">
>>>             <div class="thumbnail">
>>>                 <div>
>>>                     {{=LOAD(c='directory', f='phone_numbers_form',
>>> extension='load',
>>>                             args=request.args(0), ajax=True,
>>> target='phone_number_component')}}
>>>                 </div>
>>>             </div>
>>>         </div>
>>>         {{if auth.has_membership('admin') and request.args(0) is not
>>> None:}}
>>>             <div class="span6">
>>>                 <div class="thumbnail">
>>>                     <div>
>>>                         {{=LOAD(c='directory', f='group_membership',
>>> extension='load',
>>>                                 args=request.args(0), ajax=True,
>>> target='membership_component')}}
>>>                     </div>
>>>                 </div>
>>>             </div>
>>>         {{pass}}
>>>     {{pass}}
>>>
>>>
>>>
>>>
>>> # modules JS generation snippet
>>> def flash_message_from_js(tr_id, colspan, button_text, flash_text,
>>> form_id=None):
>>>     """
>>>     Set flash message with $.web2py.flash() so the flash message get
>>> fire in the right context
>>>     Need this in view :
>>>
>>>     <script>
>>>         {{=XML(controller_view_js)}}
>>>     </script>
>>>
>>>     NOTE: We now generate this piece of JS from python to solve issue
>>> with quoting escape cause by to many single
>>>           and double quotes. The code breaks when whe translate "Please
>>> fill out the form..." with
>>>           "S'il vous plaît remplir le formulaire..." the single quote
>>> were not escape properly with the Javascript
>>>           implementation.
>>>     NOTE: The issue has multiple facet... Mainly the issue is related to
>>> the fact that we want to translate flash
>>>           message and for this reason we need to generate JS at some
>>> level from python even if it only the content of
>>>           a string variable. Then since we need to generating also HTML
>>> from Javascript it makes multiple level of
>>>           abstraction and a lot of quoting... When you add over all that
>>> there is single quote using in the translated
>>>           text and that we deal with byte (python str) and not
>>> unicode... That were you end up...
>>>
>>>           :param colspan:
>>>           :param tr_id:
>>>           :param flash_text:
>>>           :param button_text:
>>>     """
>>>     elements_to_be_added = \
>>>         TD(TAG.button(STRONG(current.T(button_text).decode('utf8')),
>>>                       _type='button',
>>>                       _class='btn btn-small pull-right',
>>>                       _onclick='$("tr#input_%s").children().show(); '
>>>                                '$("td#%s").hide(); '
>>>                                '$.web2py.flash("%s");' % (tr_id, tr_id,
>>> current.T(flash_text).decode('utf8'))),
>>>            _colspan=colspan,
>>>            _id=tr_id)
>>>
>>>     controller_view_js = \
>>>         '''$(document).ready(function() {
>>>             if(!$('#%s .error').length) {
>>>                 $("tr#input_%s").children().hide();
>>>                 $("tr#input_%s").append('%s');
>>>                 }
>>>             });''' % (form_id, tr_id, tr_id, elements_to_be_added)
>>>     #
>>> -----------------------------------------------------------------------------
>>>     return controller_view_js
>>>
>>>
>>>
>>>
>>> You have everything...
>>>
>>> --
>>> 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/d/optout.
>>>
>>
>> --
> 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/d/optout.
>

-- 
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/d/optout.

Reply via email to