Metadata-Version: 1.0
Name: tgext.mobilemiddleware
Version: 0.1
Summary: Mobile Middleware utilities for Turbogears 2 detects mobile browsers
Home-page: http://bitbucket.org/_amol_/tgext.mobilemiddleware
Author: Alessandro Molina
Author-email: alessandro.molina@axant.it
License: LGPL
Description: About Mobile Middleware
        -------------------------
        
        Mobile Middleware is a middleware for WSGI applications.
        
        Thought to be used on Turbogears 2 applications it detects mobile browser and provides a way
        to detect and react to them. Detection expression can be customized and action can
        change from plain detection to exposing a specific custom template for mobile requests
        
        You will be able to see if your request is coming from a mobile browser with::
        
            from tg import request
            request.is_mobile
        
        Enabling Mobile Agents Detection
        ----------------------------------
        
        In your application *config/middleware.py* import **MobileMiddleware**:: 
        
            from tgext.mobilemiddleware import MobileMiddleware
        
        Change your **make_app** method::
        
            app = make_base_app(global_conf, full_stack=True, **app_conf)
            return MobileMiddleware(app, app_conf)
        
        Exposing Mobile Templates
        ----------------------------
        
        **tgext.mobilemiddleware** implements a *@expose_mobile* decorator that works like *@expose*
        TurboGears2 decorator which can be used to specify which template to expose for mobie requests.
        
        This will work by registering a custom template renderer with 'mobile' custom format.
        *@expose_mobile* supports the same template naming convention that @expose uses
        and can accept any rendering engine that has been registered in turbogears
        by specifing it as *engine:module.template_name* 
        
        Examples::
        
            @expose('app.templates.index')
            @expose_mobile('app.templates.mobile.index')
            def index(self, *args, **kw):
                return dict()
        
        
        Customizing User Agents Detection
        -----------------------------------
        
        **MobileMiddleware** by default checks user agent with a regular expression
        that can be customized by changing *[app:main]* section of your configuration
        file by adding something like::
        
            mobile.agents = android|fennec|iemobile|iphone|ipod|ipad
        
        
        
Keywords: turbogears pylons TG2
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Framework :: TurboGears
