dossiers: fix MISES in health tab and replace FilteredSelect by select2

warning: new dependency on django-select2
This commit is contained in:
Jérôme Schneider 2014-06-20 11:21:51 +02:00
parent 224efd63ef
commit 78bae9a325
8 changed files with 24 additions and 17 deletions

View File

@ -18,6 +18,7 @@ from calebasse.ressources.models import (HealthCenter, LargeRegime,
CodeCFTMEA, SocialisationDuration, MDPHRequest, MDPHResponse)
from ajax_select import make_ajax_field
from django_select2.widgets import Select2MultipleWidget
logger = logging.getLogger(__name__)
@ -111,10 +112,6 @@ class CivilStatusForm(ModelForm):
fields = ('first_name', 'last_name', 'birthdate', 'birthplace', 'gender', 'nationality')
class FilteredSelectMultipleMise(django.contrib.admin.widgets.FilteredSelectMultiple):
def __init__(self, **kwargs):
super(FilteredSelectMultipleMise, self).__init__(u'Catégorie', False)
class PhysiologyForm(ModelForm):
cranium_perimeter = forms.DecimalField(label=u"Périmètre cranien",
max_digits=5, decimal_places=2, localize=True,
@ -135,10 +132,11 @@ class PhysiologyForm(ModelForm):
'deficiency_polyhandicap', 'deficiency_behavioral_disorder',
'deficiency_in_diagnostic', 'deficiency_other_disorder')
widgets = {
'mises_1': FilteredSelectMultipleMise,
'mises_2': FilteredSelectMultipleMise,
'mises_3': FilteredSelectMultipleMise,
}
'mises_1': Select2MultipleWidget(attrs={'style': 'width: 32em'}),
'mises_2': Select2MultipleWidget(attrs={'style': 'width: 32em'}),
'mises_3': Select2MultipleWidget(attrs={'style': 'width: 32em'}),
}
def __init__(self, instance, **kwargs):
super(PhysiologyForm, self).__init__(instance=instance, **kwargs)

View File

@ -10,10 +10,6 @@
{{ block.super }}
<script src="{{ STATIC_URL }}js/jquery.parse-url.js"></script>
<script src="{{ STATIC_URL }}js/calebasse.dossiers.js"></script>
<script src="{{ STATIC_URL }}filter-widget/js/i18n.js"></script>
<script src="{{ STATIC_URL }}filter-widget/js/core.js"></script>
<script src="{{ STATIC_URL }}filter-widget/js/SelectBox.js"></script>
<script src="{{ STATIC_URL }}filter-widget/js/SelectFilter2.js"></script>
{% endblock %}
{% block title %}{{ object.last_name }} {{ object.first_name }}{% if object.paper_id %} - Dossier {{ object.paper_id}}{% endif %}{% endblock %}

View File

@ -151,6 +151,7 @@ INSTALLED_APPS = (
'south',
'django.contrib.admin',
'ajax_select',
'django_select2',
#'debug_toolbar',
'widget_tweaks',
# Uncomment the next line to enable admin documentation:

View File

@ -112,3 +112,6 @@ div#tabs-4 div div.buttons {
margin-top: .4em;
}
.select2-choices {
font-size: 11pt;
}

View File

@ -77,14 +77,20 @@ function generic_ajaxform_dialog(url, title, id, width, btn_submit_name, redirec
}
/**
* Transform form(s) into your id to ajax forms
* Transform form(s) to ajax forms
* id: jQuery id where you want to replace form by ajaxForm
*/
function calebasse_ajax_form(id) {
function onsuccess(response, status, xhr, form) {
$(id).html(response);
$('form').ajaxForm({
success: onsuccess,
});
if ($('.errorlist', response).length != 0) {
$(id).html(response);
$('form').ajaxForm({
success: onsuccess,
});
}
else {
window.location.reload(true);
}
}
$('form').ajaxForm({
success: onsuccess,

View File

@ -27,6 +27,7 @@ service_patterns = patterns('',
url(r'^personnes/', include('calebasse.personnes.urls')),
url(r'^ressources/', include('calebasse.ressources.urls')),
url(r'^statistics/', include('calebasse.statistics.urls')),
url(r'^select2/', include('django_select2.urls')),
)
urlpatterns = patterns('',

View File

@ -18,4 +18,5 @@ django-localflavor
raven >= 3.5.2, < 3.6
M2Crypto
--allow-external pycairo
django_select2 < 4.3
#PyGTK doesn't work with pip

View File

@ -50,6 +50,7 @@ setup(name='calebasse',
'django-ajax-selects < 1.3.0',
'django-widget-tweaks < 1.2.0',
'django-tastypie == 0.9.14',
'django-select2 < 4.3',
'interval == 1.0.0',
'python-entrouvert >= 1.3'
'django-localflavor',