Metadata-Version: 1.0
Name: django-awesome-avatar
Version: 1.1.2
Summary: Django Avatar field
Home-page: https://github.com/dimka665/django-awesome-avatar
Author: Dmitry Voronin
Author-email: dimka665@gmail.com
License: BSD
Description: =====================
        django-awesome-avatar
        =====================
        
        Django-awesome-avatar is a reusable application providing Avatar model field.
        It allows crop selected area before saving image.
        
        Purpose
        =======
        
        | Unlike django-avatar_ and django-upload-avatar_  
        | django-awesome-avatar_ uses:
        
        - field in profile model instead creating model for saving images
        - HTML5 File API instead hidden iframe AJAX for image preview
        - easy customizable presence (any view and widget templates)
        
        Install
        =======
        
        To integrate ``django-awesome-avatar`` with your site, there are few things
        that are required:
        
        #. Installing::
        
               pip install django-awesome-avatar
        
        #. List this application in the ``INSTALLED_APPS`` portion of your settings file.
           Your settings file will look something like::
        
                INSTALLED_APPS = (
                    ...
                    'awesome_avatar',
                )
        
        Usage examples
        ==============
        
        with ModelForm
        --------------
        
        Add the ``AvatarField`` to your user or profile model::
                
            from awesome_avatar.fields import AvatarField
         
            class Profile(Model):
                user = OneToOneField(User, related_name='profile')
                ...
                avatar = AvatarField(upload_to='avatars', width=100, height=100)
        
        Use model form usually way::
        
            class AvatarChangeForm(ModelForm):
                class Meta:
                    model = Profile
                    fields = ['avatar']
                
            def change_avatar(request):
                if request.method == 'POST':
                    form = AvatarChangeForm(request.POST, request.FILES,
                                            instance=request.user.profile)
                    if form.is_valid():
                        form.save()
                        return HttpResponseRedirect('/profile/')
                else:
                    form = AvatarChangeForm(instance=request.user.profile)
        
                return render(request, 'template.html', {'form': form})
                    
        with Form
        ---------
        
        Define some model for saving images::
            
            class Images(Model):
                image = ImageField(upload_to='images')
                    
        Use form field for cropping image::
        
            from awesome_avatar import forms as avatar_forms
        
            class UploadAndCropImageForm(Form):
                image = avatar_forms.AvatarField()
         
            def upload_and_crop_image(request):
                if request.method == 'POST':
                    form = UploadAndCropImageForm(request.POST)
                        
                    if form.is_valid():
                        Images(image=form.image).save()
                        return HttpResponseRedirect('/any/')
                else:
                    form = UploadAndCropImageForm()
        
                return render(request, 'template.html', {'form': form})
                    
                
        Global Settings
        ===============
        
        Django's ``settings.py``::
             
            AWESOME_AVATAR = {
                'width': 100,
                'height': 100,
                
                'select_area_width': 400,
                'select_area_height': 300,
                
                'save_quality': 90,
                'save_format': 'png',
                ...
            }
             
        .. _django-avatar: https://github.com/jezdez/django-avatar
        .. _django-upload-avatar: https://github.com/yueyoum/django-upload-avatar
        .. _django-awesome-avatar: https://github.com/dimka665/django-awesome-avatar
        
Platform: UNKNOWN
