Metadata-Version: 2.1
Name: collective.autoscaling
Version: 1.2
Summary: Automatic scaling of (too large) images in Plone sites
Home-page: https://pypi.python.org/pypi/collective.autoscaling
Author: Laurent Lasudry
Author-email: laurent.lasudry@affinitic.be
License: GPL version 2
Keywords: Python Plone
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Framework :: Plone
Classifier: Framework :: Plone :: 4.3
Classifier: Framework :: Plone :: 5.2
Classifier: Framework :: Plone :: 6.0
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Provides-Extra: test

======================
collective.autoscaling
======================

.. image:: https://github.com/collective/collective.autoscaling/actions/workflows/plone-package-test.yml/badge.svg
    :target: https://github.com/collective/collective.autoscaling/actions/workflows/plone-package-test.yml
    :alt: CI Status


This package allows automatic scaling of too large images in Plone sites.
Images can be either Image content type or any Image field on content types.

This is totally transparent to the user (except if you choose to show message).

There is also a view (``@@resize-images``) that you can call to scale existing images (under the context of your choice), for example :

 - http://localhost:8080/plone/@@resize-images
 - http://localhost:8080/plone/folder/subfolder/@@resize-images


Settings
--------

- Enable automatic scaling (yes / no)
- Maximum height at which images will be automatically resized (in pixels)
- Maximum width at which images will be automatically resized (in pixels)
- JPEG quality
- Show information message to user when images have been resized (yes / no)


Use case
--------

1. You configure collective.autoscaling to have images with maximum size of height 800px / width 1200px.
2. One of your user uploads a really big image : height 2000px / width 4000px.
3. This image will be resized to height 600px / width 1200px (aspect ratio is of course preserved).


Limitations
-----------

This add-on works only with Dexterity content types.

It has been developed on Plone 4.3, but works with Plone 5 and Plone 6 too.
Current branch is tested on Python 3 / Plone 6.


Translations
------------

This product has been translated into

- English
- French
- Norwegian
- Portuguese


Installation
------------

Install collective.autoscaling by adding it to your buildout::

    [buildout]

    ...

    eggs =
        collective.autoscaling


and then running ``bin/buildout``


Contribute
----------

- Issue Tracker: https://github.com/collective/collective.autoscaling/issues
- Source Code: https://github.com/collective/collective.autoscaling


License
-------

The project is licensed under the GPLv2.

Contributors
============

- Laurent Lasudry, Original Author [Affinitic]
- Espen Moe-Nilssen
- Marc Lavallée

Changelog
=========


1.2 (2022-02-21)
----------------

- Fix resize-images view that was saving nothing because of CSRF protection
  [laulaz]

- Add support for Python 3 / Plone 6
  [marclava, laulaz]

- Add new JPEG Quality setting
  [marclava]

- Improve resizing code
  [marclava]

- Add uninstall profile
  [laulaz]


1.1.2 (2019-01-15)
------------------

- Handle special cases when we don't get a request at ObjectAddedEvent
  (example : when an object is added at Zope startup)
  [laulaz]

- Remove useless dependency on CMFDefault (#5)
  [laulaz]


1.1.1 (2016-07-28)
------------------

- Pin plone.api to avoid any errors (#2)
  [laulaz]

- Add Portuguese translation
  [laulaz]


1.1 (2016-04-13)
----------------

- Remove dependency on plone.app.imagecropping (#1)
  [laulaz]

- Translations cleanup
  [laulaz]


1.0 (2016-04-11)
----------------

- Initial release.
  [laulaz]



