From 9f27bbc41e8e948786eedebe39037d123ee6c8f6 Mon Sep 17 00:00:00 2001 From: helmutm Date: Fri, 5 Nov 2010 07:05:59 +0000 Subject: [PATCH] work in progress: add media manager and media (attachment) functionality git-svn-id: svn://svn.cy55.de/Zope3/src/cybertools/trunk@4058 fd906abe-77d9-0310-91a1-e0d9ade77398 --- wiki/browser/media.pt | 13 ++++++++++++ wiki/browser/media.py | 48 +++++++++++++++++++++++++++++++++++++++++++ wiki/generic/mixin.py | 5 +++++ 3 files changed, 66 insertions(+) create mode 100644 wiki/browser/media.pt create mode 100644 wiki/browser/media.py diff --git a/wiki/browser/media.pt b/wiki/browser/media.pt new file mode 100644 index 0000000..749db5f --- /dev/null +++ b/wiki/browser/media.pt @@ -0,0 +1,13 @@ + + + + +

Media Manager

+
+ +
+
+ + + diff --git a/wiki/browser/media.py b/wiki/browser/media.py new file mode 100644 index 0000000..48120b5 --- /dev/null +++ b/wiki/browser/media.py @@ -0,0 +1,48 @@ +# +# Copyright (c) 2010 Helmut Merz helmutm@cy55.de +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# + +""" +Media manager and media object views. + +$Id$ +""" + +from zope.app.pagetemplate import ViewPageTemplateFile +from zope.cachedescriptors.property import Lazy +from zope import component +from zope.event import notify +from zope.lifecycleevent import ObjectModifiedEvent +from zope.traversing.browser import absoluteURL + +from cybertools.wiki.interfaces import IMediaManager + + +class MediaManagerView(object): + + default_template = ViewPageTemplateFile('default.pt') + + content_renderer = 'media_manager' + + def update(self): + return True + + def listObjects(self): + mmName = self.context.getConfig('mediaManager') + mm = component.getAdapter(self.context, IMediaManager, name=mmName) + return mm.listObjects() + diff --git a/wiki/generic/mixin.py b/wiki/generic/mixin.py index f1642cb..b2d146a 100644 --- a/wiki/generic/mixin.py +++ b/wiki/generic/mixin.py @@ -160,3 +160,8 @@ class LinkManager(BaseLinkManager): def getObject(self, uid): return self.manager.getObject(uid) + +class MediaContainer(object): + + pass +