├── .coveragerc ├── .gitignore ├── .travis.yml ├── AUTHORS ├── CREDITS ├── LICENSE ├── MANIFEST.in ├── README.rst ├── feedback ├── __init__.py ├── admin.py ├── forms.py ├── locale │ ├── cs │ │ └── LC_MESSAGES │ │ │ ├── django.mo │ │ │ └── django.po │ ├── eu │ │ └── LC_MESSAGES │ │ │ ├── django.mo │ │ │ └── django.po │ └── ru │ │ └── LC_MESSAGES │ │ ├── django.mo │ │ └── django.po ├── migrations │ ├── 0001_initial.py │ ├── 0002_auto_20150811_1733.py │ └── __init__.py ├── models.py ├── static │ └── feedback │ │ ├── images │ │ ├── big_black.png │ │ ├── big_white.png │ │ ├── close.png │ │ ├── close2.png │ │ ├── close_med.png │ │ ├── feedback_b.png │ │ ├── feedback_bl.png │ │ ├── feedback_bl_sm.png │ │ ├── feedback_br.png │ │ ├── feedback_br_sm.png │ │ ├── feedback_wl.png │ │ ├── feedback_wl_sm.png │ │ ├── feedback_wr.png │ │ └── feedback_wr_sm.png │ │ ├── jquery.form.js │ │ ├── main.css │ │ └── main.js ├── templates │ └── feedback │ │ ├── button.html │ │ ├── feedback.html │ │ └── header.html ├── test_views.py ├── urls.py └── views.py ├── manage.py ├── setup.py ├── test ├── test.py └── test_settings.py └── test_settings.py /.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | include = *feedback* 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | build/ 2 | *.pyc 3 | .vim* 4 | MANIFEST 5 | dist/ 6 | django_feedback.egg-info/ 7 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: python 3 | env: 4 | - DJANGO_VERSION="Django>=1.8,<1.9" 5 | - DJANGO_VERSION="Django>=1.9,<1.10" 6 | - DJANGO_VERSION="Django>=1.10,<1.11" 7 | - DJANGO_VERSION="Django>=1.11,<2.0" 8 | - DJANGO_VERSION="Django>=2.0,<2.1" 9 | - DJANGO_VERSION='https://github.com/django/django/archive/master.tar.gz' 10 | python: 11 | - "2.7" 12 | - "3.4" 13 | - "3.5" 14 | - "3.6" 15 | before_script: 16 | - pip install coverage coveralls 17 | - pip install -q $DJANGO_VERSION 18 | - python setup.py install 19 | script: 20 | - django-admin --version 21 | - coverage run manage.py test --settings=test_settings 22 | after_script: 23 | - coveralls 24 | matrix: 25 | exclude: 26 | - env: DJANGO_VERSION="Django>=2.0,<2.1" 27 | python: "2.7" 28 | - env: DJANGO_VERSION='https://github.com/django/django/archive/master.tar.gz' 29 | python: "2.7" 30 | - env: DJANGO_VERSION='https://github.com/django/django/archive/master.tar.gz' 31 | python: "3.4" 32 | allow_failures: 33 | - env: DJANGO_VERSION='https://github.com/django/django/archive/master.tar.gz' 34 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | Jared Forsyth 2 | Unai Zalakain 3 | -------------------------------------------------------------------------------- /CREDITS: -------------------------------------------------------------------------------- 1 | Thanks to spikeekips@gmail.com for letting us use the name django-feedback 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2013 Jared Forsyth 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include feedback/static/feedback/jquery.form.js 2 | include feedback/static/feedback/main.css 3 | include feedback/static/feedback/main.js 4 | include feedback/static/feedback/images/*.png 5 | recursive-include feedback/templates *.html 6 | recursive-include feedback/locale *.po 7 | -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- 1 | Feedback 2 | ======== 3 | 4 | Creates an ajax "feedback" button on your site, which pops up a form for the 5 | user to fill. 6 | 7 | + Add it to your installed apps:: 8 | 9 | INSTALLED_APPS += ('feedback',) 10 | 11 | 12 | + Sync the database 13 | 14 | + Add a line to your urls.py:: 15 | 16 | url(r'^feedback/', include('feedback.urls')), 17 | 18 | + Use it (only requires template modifications):: 19 | 20 | 21 | {% include "feedback/header.html" %} 22 | 23 | 24 | {% include "feedback/button.html" %} 25 | 26 | + Or use your own button which pops up feedback form:: 27 | 28 | 29 | {% include "feedback/feedback.html" %} 30 |