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 install apidev_coop-colorbox


Settings
=======

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


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
=======

{% 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
=======

{% 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
=======

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.

Filename, size & hash SHA256 hash help File type Python version Upload date
apidev-coop_colorbox-1.3.1.tar.gz (51.9 kB) Copy SHA256 hash SHA256 Source None Aug 28, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page