Skip to main content

Pluggable admin bar system , works well with coop-cms

Project description

coop-bar, configurable toolbar
===============================================

* `What is coop_bar good for?`_
* `Quick start`_

.. _What is coop_bar good for?: #good-for
.. _Quick start?: #quick-start

.. _good-for:

.. figure:: https://raw.github.com/quinode/coop-bar/master/docs/coop_bar.png
:align: left

What is coop_bar good for?
------------------------------------
django-coop is a set of several apps for building cooperative websites. It is based on Django.

Thses apps may need a to display an admin toolbar. For example, the CMS component may use this bar
to display edit, cancel and save links.

coop_bar tries to provide a simple and configurable mechanism

.. _quick-start:

Quick start
------------------------------------
In settings.py, add 'coop_bar' (with an underscore) to the INSTALLED_APPS
Under Django 1.3, the static folder should be found automatically, as the templates folder
In urls.py add (r'^coop_bar/', include('coop_bar.urls')) to your urlpatterns

For each app needing to add links to coop_bar, create a coop_bar_cfg.py file
In this file, add a load_commands function as follows ::

from django.core.urlresolvers import reverse
from django.utils.translation import ugettext as _

def django_admin_command(request, context):
if request and request.user.is_staff: #request might be None
return u'<a href="{0}">{1}</a>'.format(reverse("admin:index"), _('Admin'))

def load_commands(coop_bar):
coop_bar.register_command(django_admin_command)


In load_commands, you can register as much callback functions as you want. A callback (django_admin_command in the previous example)
is just a function with request and context as args. It returns some html code to display in the bar or None.

In your base.html, add the following template tags::

{% load coop_bar_tags %}
<html>
<head>
...
{% coop_bar_headers %}
</head>
<body>
{% coop_bar %}
...
your page
...
{% coop_bar_footer %}
</body>


Humanized Messages
------------------------------------

.. figure:: https://raw.github.com/quinode/coop-bar/master/docs/humanmsg.png
:align: center

Coop-bar takes also care of providing a nice display of django session messages.
It's based on the `Humanized Message idea <http://code.google.com/p/humanmsg/>`_ , which displays a big fat sentence in the middle of the screen and fades away as soon as you move your mouse, or five seconds later.
You can add a Message log at the bottom of the web page by adding this to your django settings file::

DISPLAY_MESSAGES_LOG = True



License
=======

`Fugue icon set <http://p.yusukekamiyamane.com/>`_ by Yusuke Kamiyamane. All rights reserved. Licensed under a Creative Commons Attribution 3.0 License.

coop-bar itself uses the same license as Django (BSD).

coop-bar development was funded by `CREDIS <http://credis.org/>`_, FSE (European Social Fund) and Conseil Regional d'Auvergne.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coop-bar-0.4.6.tar.gz (2.1 MB view details)

Uploaded Source

File details

Details for the file coop-bar-0.4.6.tar.gz.

File metadata

  • Download URL: coop-bar-0.4.6.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for coop-bar-0.4.6.tar.gz
Algorithm Hash digest
SHA256 1f13561ffff168b13110e4babf4b7cd0dc98529a3ed97b9ef97a826a574767e1
MD5 f5ac89719fc4fd55a37530bd77f371ef
BLAKE2b-256 b53b975ed76074bb502540e1f709af0dda9cf83c62c45dca87bd23b7a0757adb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page