From 0b06c38e4928956a7d91513ef856c7b86633c75e Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Sun, 9 Jan 2011 14:39:13 +0100 Subject: Reinitialize the modification form when the item is changed --- ishtar/furnitures/forms.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py index 46a6f3075..50a433191 100644 --- a/ishtar/furnitures/forms.py +++ b/ishtar/furnitures/forms.py @@ -292,16 +292,17 @@ class Wizard(NamedUrlSessionFormWizard): def get_form_initial(self, request, storage, step): current_obj = self.get_current_object(request, storage) - if current_obj: - return self.get_instanced_init(current_obj, request, storage, - step) - elif step.startswith('selec-') and step in self.form_list \ + if step.startswith('selec-') and step in self.form_list \ and 'pk' in self.form_list[step].associated_models: model_name = self.form_list[step].associated_models['pk' ].__name__.lower() + self.reset_wizard(request, storage) val = model_name in request.session and request.session[model_name] if val: return {'pk':val} + elif current_obj: + return self.get_instanced_init(current_obj, request, storage, + step) return super(Wizard, self).get_form_initial(request, storage, step) def get_instanced_init(self, obj, request, storage, step): -- cgit v1.2.3