diff options
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/widgets.py | 12 | ||||
| -rw-r--r-- | ishtar_common/wizards.py | 8 | 
2 files changed, 18 insertions, 2 deletions
| diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index 60e5fc016..192de6f65 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -25,6 +25,7 @@ from django import forms  from django.conf import settings  from django.core.urlresolvers import reverse, NoReverseMatch  from django.db.models import fields +from django.db.models.fields.files import ImageFieldFile  from django.forms import ClearableFileInput  from django.forms.utils import flatatt  from django.forms.widgets import CheckboxSelectMultiple as \ @@ -294,6 +295,17 @@ class ImageFileInput(ClearableFileInput):      template_name = 'widgets/image_input.html'      NO_FORM_CONTROL = True +    def format_value(self, value): +        if self.is_initial(value): +            return value +        # try to display posted images +        if hasattr(value, 'file'): +            full_path = unicode(value.file) +            if full_path.startswith(settings.MEDIA_ROOT): +                value.url = settings.MEDIA_URL + full_path[ +                                                 len(settings.MEDIA_ROOT):] +        return value +  class SquareMeterWidget(forms.TextInput):      def render(self, name, value, attrs=None, renderer=None): diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 8e7cd0c74..e47d5b48b 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -19,6 +19,7 @@  import datetime  import logging +import os  # from functools import wraps  from django.conf import settings @@ -28,7 +29,7 @@ from formtools.wizard.views import NamedUrlWizardView, normalize_name, \  from django.contrib.sites.models import Site  from django.core.exceptions import ObjectDoesNotExist  from django.core.files.images import ImageFile -from django.core.files.storage import default_storage +from django.core.files.storage import default_storage, FileSystemStorage  from django.core.mail import send_mail  from django.db.models.fields.files import FileField, ImageFieldFile  from django.db.models.fields.related import ManyToManyField @@ -143,7 +144,9 @@ class Wizard(NamedUrlWizardView):      current_obj_slug = ''      current_object_key = 'pk'      ignore_init_steps = [] -    file_storage = default_storage +    file_storage = FileSystemStorage( +        location=os.path.join(settings.MEDIA_ROOT, 'tmp') +    )      main_item_select_keys = ('selec-',)      formset_pop_deleted = True @@ -358,6 +361,7 @@ class Wizard(NamedUrlWizardView):          # not last step: validation          if current_step != self.steps.last:              return context +          final_form_list = []          for form_key in self.get_form_list().keys():              form_obj = self.get_form( | 
