Skip to main content

Manage colorbox popup for django

Project description

coop-colorbox, make easy to use jquery.colorbox in a django app

Install

pip:

pip install apidev_coop-colorbox

Settings

In settings.py:

INSTALLED_APPS = (
    '...',
    'colorbox',
)

Views

views:

from django.utils.decorators import method_decorator
from django.http import HttpResponseRedirect, Http404

from colorbox.decorators import popup_redirect
class MyView(FormView):
    """edit the profile of the current user"""
    template_name = "form_popup_template.html"

    @method_decorator(popup_redirect)
    def dispatch(self, request, *args, **kwargs):
        """Manage close of the colorbox popup"""
        self.user = request.user
        return super(EditProfileView, self).dispatch(request, *args, **kwargs)

    def get_form_class(self):
        """returns the form class to use"""
        return MyForm

    def form_valid(self, form):
        form.save()
        return HttpResponseRedirect(reverse(’next_step'))

form_popup_template

template:

{% extends "colorbox/popup_form_base.html" %}
{% load i18n %}
{% block title %}{% trans "Edit" %}{% endblock %}
{% block form_url %}{% url 'my_view' %}{% endblock %}

You can also overrides or extends {% block form_intro %} {% block form_fields %}` {% block popup_buttons %} or {% block extra_head %}

main template

template:

{% load static i18n %}
<script type="text/javascript" charset="utf-8" src="{% static 'js/jquery.colorbox-min.js' %}"></script>
<script type="text/javascript" charset="utf-8" src="{% static 'js/jquery.form.js' %}"></script>
<script type="text/javascript" src="{% static 'js/colorbox.coop.js' %}"></script>
<link rel="stylesheet" href="{% static 'css/colorbox.css' %}" type="text/css" />
<script>
  $(function () {
    // activate popups
    $("a.colorbox-form").colorboxify();
  });
</script>
<a class="colorbox-form" href="{% url 'my_view' %}">{% trans "Edit" %}</a>

In tests

tests:

from colorbox.utils import assert_popup_redirects
assert_popup_redirects(response, reverse('my_view'))

License

coop-colorbox uses the BSD license see license.txt

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

apidev-coop_colorbox-1.6.0.tar.gz (52.5 kB view details)

Uploaded Source

Built Distribution

apidev_coop_colorbox-1.6.0-py3-none-any.whl (69.2 kB view details)

Uploaded Python 3

File details

Details for the file apidev-coop_colorbox-1.6.0.tar.gz.

File metadata

  • Download URL: apidev-coop_colorbox-1.6.0.tar.gz
  • Upload date:
  • Size: 52.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for apidev-coop_colorbox-1.6.0.tar.gz
Algorithm Hash digest
SHA256 230468108369dfadf365223c939e5dba537c39d193ead7da424b0084beeaba83
MD5 1b3b4b9836c36398e9989537973738b5
BLAKE2b-256 466227195d0d7a5b2cb9f06cbaab2d6ebff62c1a5b604296b538351300e0881c

See more details on using hashes here.

File details

Details for the file apidev_coop_colorbox-1.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for apidev_coop_colorbox-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eb74b193057b4a4469d348a41ceedd1d7a505175e6e1fee86b314d2f528c7037
MD5 18fb7c1951a3f197da4c333faebf6d9d
BLAKE2b-256 718c7ccc1da76991fa89f4a7cf95c34495c5a1d1d1fb7bbab464d0dd38a54ca4

See more details on using hashes here.

Supported by

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