eggification
[Photo.git] / Products / Photo / __init__.py
1 # -*- coding: utf-8 -*-
2 #######################################################################################
3 # Photo is a part of Plinn - http://plinn.org #
4 # Copyright (C) 2004-2008 Beno\94t PIN <benoit.pin@ensmp.fr> #
5 # #
6 # This program is free software; you can redistribute it and/or #
7 # modify it under the terms of the GNU General Public License #
8 # as published by the Free Software Foundation; either version 2 #
9 # of the License, or (at your option) any later version. #
10 # #
11 # This program is distributed in the hope that it will be useful, #
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of #
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
14 # GNU General Public License for more details. #
15 # #
16 # You should have received a copy of the GNU General Public License #
17 # along with this program; if not, write to the Free Software #
18 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. #
19 #######################################################################################
20 """ Product for photos manipulation.
21 main features:
22 - keep origninal uploaded data
23 - automatic convertion to jpeg (if needed) from supported PIL image's formats
24 - resizing support
25 - metadata extraction
26
27 experimental features:
28 - full psd support with Adobe photoshop (windows only, drived by pythoncom)
29 - tile support (to display a grid of tiles with a javascript web interface)
30
31
32
33 """
34
35 from AccessControl.Permissions import add_documents_images_and_files
36 import xmp_jpeg
37
38 from Photo import Photo, addPhotoForm, addPhoto
39 import blobbases
40
41 def initialize(registrar) :
42 registrar.registerClass(
43 Photo,
44 constructors = (addPhotoForm, addPhoto),
45 icon = 'dtml/photo_icon.gif'
46 )
47
48 registrar.registerClass(
49 blobbases.File,
50 permission = add_documents_images_and_files,
51 constructors = (('blobFileAdd', blobbases.manage_addFileForm), blobbases.manage_addFile),
52 icon='dtml/File_icon.gif'
53 )
54
55 registrar.registerClass(
56 blobbases.Image,
57 permission = add_documents_images_and_files,
58 constructors = (('blobImageAdd', blobbases.manage_addImageForm), blobbases.manage_addImage),
59 icon='dtml/Image_icon.gif'
60 )