Shouldn't this be

from gluon.contrib.user_agent_parser  import mobilize
@mobilize
...

On Sep 13, 3:22 am, Martin Weissenboeck <mweis...@gmail.com> wrote:
> Hi,
>
> I have tried to test the user_agent_parser. At the top of default.py there
> is
>
> from gluon.contrib import user_agent_parser
>
> @mobilize
> def m():
>     ua = request.user_agent()
>     if ua.is_mobile():
>         return dict(a='MOBILE')
>     else:
>         return dict(a='FIX')
>
> And I got:
>
> Traceback (most recent call last):
>   File "/home/web2py-trunk/public_html/gluon/restricted.py", line 194,
> in restricted
>
>     exec ccode in environment
>   File 
> "/home/web2py-trunk/public_html/applications/welcome/controllers/default.py "
> <https://web2py-trunk.fluxflex.com/admin/default/edit/welcome/controll...>,
> line 14, in <module>
>
>     @mobilize
> NameError: name 'mobilize' is not defined
>
> Version 1.99.0 (2011-09-13 04:16:50) I have checked it, in the source code
> there is:
>
> class mobilize(object):
>
>     def __init__(self, func):
>         self.func = func
>
>     def __call__(self):
>         from gluon import current
>         if current.session._user_agent and
> current.session._user_agent.is_mobile:
>             items = current.response.view.split('.')
>             items.insert(-1,'mobile')
>             current.response.view = '.'.join(items)
>         return self.func()
>
> Without @mobilize the program detects my Android phone - no errors. Maybe
> there is only a small error, but I cannot find it.
>
> Regards, Martin

Reply via email to