Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Jmbo generic behaviour/templates app.
Python HTML JavaScript CSS
tag: 0.0.12

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
buildout
foundry-demo
foundry
funkload
.gitignore
AUTHORS.rst
CHANGELOG.rst
LICENSE
MANIFEST.in
README.rst
USERGUIDE.rst
setup.py
test_settings.py

README.rst

Jmbo Foundry

Jmbo foundry behavior/templates app.

Installation

  1. Install or add jmbo-foundry to your Python path.

  2. Install django-preferences as described here.

  3. Add foundry to your INSTALLED_APPS setting.

  4. Add foundry URL include to your project's urls.py file:

    (r'^', include('foundry.urls')),
    
  5. jmbo-foundry includes a number of template sets allowing you to deliver lightweight(zero), mobile(basic) or desktop/touch(full) specific output. Specifying which template set to use is simply a matter of specifying a TEMPLATE_TYPE setting, and adding foundry.loaders.TypeLoader to the TEMPLATE_LOADERS setting. For example to use the basic template set update your settings as follows:

    TEMPLATE_TYPE = "basic"
    
    TEMPLATE_LOADERS = (
        'foundry.loaders.TypeLoader',
        ...other template loader classes...
    )
    

    This causes templates to be loaded from a path prefixed with whatever value was specified as the TEMPLATE_TYPE setting. For example in this case a template specified as foundry/home.html would actually be loaded from basic/foundry/home.html.

    Note

    You have to add TypeLoader as the first loader for it to resolve templates correctly.

  6. jmbo-foundry includes static media resources which you need to configure as described in Django`s managing static files documentation.

  7. Add foundry.middleware.AgeGateway to your MIDDLEWARES setting after AuthenticationMiddleware.

  8. Optionally add foundry.middleware.VerboseRequestMeta to your MIDDLEWARES setting as the last entry. It adds more information to the request for easier debugging.

Models

foundry.models.Link

Used in conjunction with {% menu %} and {% navbar %} to provide an admin configurable navbar and menu.

Fields

title

A short descriptive title for link.

view_name

View name to which this link will redirect. This takes precedence over category and url fields.

category

Category to which this link will redirect. This takes precedence over url field.

url

URL to which this menu link will redirect. Only used if view_name is not specified.

Methods & Properties

get_absolute_url(self)

Returns URL to which link should redirect based on a reversed view name as specified in view_name field or category view for category specified in category field or otherwise an explicitly provided URL as specified in url field.

is_active(self, request)

Determines whether or not the link can be consider active based on the request path. True if the request path can be resolved to the same view name as is contained in view_name field. Otherwise True if request path starts with URL as resolved for category contained in category field. Otherwise True if request path starts with URL as contained in url field.

foundry.models.LinkPosition

Used to determine position/order of elements in {% menu %} and {% navbar %} inclusion tags.

Fields

position

Specifies position/order of link in {% menu %} and {% navbar %} inclusion tags.

Inclusion Tags

foundry.templatetags.foundry_inclusion_tags

Provides foundry inclusion tags like {% menu %} and {% navbar %}. Load these tags by including {% load foundry_inclusion_tags %} in your templates.

{% menu %}

Renders a navigation menu normally used as part of footer navigation element. Utilizes foundry.models.Link objects configurable via Menu Preferences in admin to provide a flexible menu navigation system. Elements are ordered using position values as specified on foundry.models.LinkPosition objects via admin. You can customize the resulting HTML by overriding the foundry/inclusion_tags/menu.html template file. The template receives an object_list context variable, which is a collection of ordered foundry.models.Link elements to display.

{% navbar %}

Renders a navigation bar normally used as part of main navigation element positioned at top of pages. Utilizes foundry.models.Link objects configurable via Navbar Preferences in admin to provide a flexible navbar system. Elements are ordered using position values as specified on foundry.models.LinkPosition objects via admin. You can customize the resulting HTML by overriding the foundry/inclusion_tags/navbar.html template file. The template receives object_list and active_link context variables. object_list is a collection of ordered foundry.models.Link elements to display and active_link is an foundry.models.Link object determined to be active for the requested path.

Something went wrong with that request. Please try again.