Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install products.quota

How to install Products.Quota

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install products.quota
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.0b3 Available View build log
1.0b1 Available View build log
0.2 Available View build log
Windows (64-bit)
1.0b3 Available View build log
1.0b1 Available View build log
0.2 Available View build log
Mac OS X (10.5+)
1.0b3 Available View build log
1.0b1 Available View build log
0.2 Available View build log
Linux (32-bit)
1.0b3 Available View build log
1.0b1 Available View build log
0.2 Available View build log
Linux (64-bit)
1.0b3 Available View build log
1.0b1 Available View build log
0.2 Available View build log
 
License
GPL
Dependencies
Lastest release
version 1.0b3 on Oct 5th, 2011

Introduction

This is a product (tested with plone >= 3.0) that allows site managers to set quotas on containers. By default it comes with a special content type, quota folder, derived from ATFolder, usable as a quota aware replacement for ATFolder, and also useful as an example to make other container types quota aware. Basically, what is needed to make a container type quota aware is for it to implement the IQuotaAware interface.

The quota can be set globally (in quota settings in the plone control panel) or locally in the metadata (properties) tab of any quota aware container. There are two settings: max size and size threshold. If the contained size of a quota aware containers goes up between max size and max size + size threshold, the user will get a warning; if it goes up over max size + size threshold, the user will get an error.

If the local quota is set, it will take precedence over the global quota; additionally, you can check "enforce quota" in the global control panel, so that any local settings that set a higher quota than the global quota will be overridden by the global settings.

Caveat: non AT content will not be properly sized. In order to take into account the size of non archetype content, custom IQuotaSizer adapters should be developed for those content types. For an example, see ATQuotaSizer in adapters.py in package root folder or dexterity subfolder.

TODO
  • action quota editable with kss?
  • add tests for dexterity quota
  • add more beautiful error messages

Changelog

1.0b3 - 2011-10-04
  • only show limit error on quota page if exceeded limit [vangheem]
  • Fix problem of adaptation errors if there are objects in a quota folder that do not adapt IQuotaSizer. This fixes issues if syndication is already enabled on a folder. [vangheem]
1.0b2 - 2011-10-01
  • Fixed import for older versions of ATContentTypes [vangheem]
  • put error message into portal status message container so it is easier to style and more plone-like. [vangheem]
1.0b1 - 2011-08-09
  • Added behavior for dexterity content types which is only included using zcml:condition if plone.app.dexterity is installed. [saily]
  • move documentation from Products/Quota into docs folder. [toutpt]
  • more translations from old style (i18n folder) to new style (locales folder) [toutpt]
  • remove types.xml (useless for Plone > 3.0) [toutpt]
  • remove importstep to notify quickinstaller of installed add-on, now qi use profiles [toutpt]
0.2 - 2010-11-16
  • Replace deprecated imports of zope.app.event with zope.lifecycleevent. [saily]
  • Removed unnecessary imports. [saily]
  • Added basic quota portlet. [saily]
  • Changed calc base to 1024 not 1000 (it's the default behaviour on linux too) [saily]
  • Fixed a bug in ATQuotaSizer adapter. get_increment was called by passing an additional argument which was not expected:: TypeError: get_increment() takes exactly 1 argument (2 given)
  • Rebuild pot file using i18ndude and added german translation file. [saily]
0.1dev (unreleased)
  • Initial release

Subscribe to package updates

Last updated Oct 5th, 2011

Download Stats

Last month:3

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.