slide on homepage

This commit is contained in:
Frédéric Péters 2012-04-18 09:17:57 +02:00
parent c63710d50d
commit 44f276a2ad
3 changed files with 25 additions and 14 deletions

View File

@ -48,6 +48,14 @@
permission="zope2.View"
/>
<browser:page
for=".misc.IPfbHomeFolder"
name="folder_listing"
class=".misc.PfbHomeFolder"
template="pfbhome_folder.pt"
permission="zope2.View"
/>
<browser:page
for=".misc.IPfbHomeFolder"
name="pfbhome_folder"

View File

@ -1,5 +1,6 @@
from Products.Five import BrowserView
from zope.interface import Interface
from Products.CMFCore.utils import getToolByName
try:
from plone.app.caching.operations.utils import setCacheHeaders
@ -17,5 +18,18 @@ class IPfbHomeFolder(Interface):
pass
class PfbHomeFolder(BrowserView, Cached):
pass
def slides_js(self):
portal = getToolByName(self.context, 'portal_url').getPortalObject()
images = getattr(portal, 'images-accueil').objectIds()
# move the first image to the last place, as it will be added statically
images = images[1:] + [images[0]]
s = '''SLIDES = new slideshow("SLIDES");\n'''
s += '\n'.join(['''
SLIDES.add_slide(s = new slide('/images-accueil/%s/image'));
s.filter = 'progid:DXImageTransform.Microsoft.Fade()';''' % x for x in images])
return s
def firstpic_url(self):
portal = getToolByName(self.context, 'portal_url').getPortalObject()
images = getattr(portal, 'images-accueil').objectIds()
return '/images-accueil/%s/image' % images[0]

View File

@ -17,23 +17,12 @@
<div tal:replace="structure provider:plone.abovecontentbody" />
<img name="SLIDESIMG" width="510" height="355" tal:attributes="src view/firstpic_url" alt=""/>
<!-- JavaScript Slideshow by Patrick Fitzgerald http://slideshow.barelyfitz.com/ -->
<script src="/slide_portlet/slideshow.js" type="text/javascript"></script>
<script type="text/javascript">// <![CDATA[
SLIDES = new slideshow("SLIDES");
// Create some slides and add custom filters for Microsoft IE
SLIDES.add_slide(s = new slide('/slide_portlet/pics/pic01i.jpg'));
s.filter = 'progid:DXImageTransform.Microsoft.Pixelate()';
SLIDES.add_slide(s = new slide('/slide_portlet/pics/pic02i.jpg'));
s.filter = 'progid:DXImageTransform.Microsoft.Fade()';
SLIDES.add_slide(s = new slide('/slide_portlet/pics/pic03i.jpg'));
s.filter = 'progid:DXImageTransform.Microsoft.Barn()';
// ]]></script>
<script type="text/javascript" tal:content="view/slides_js"></script>
<script type="text/javascript">// <![CDATA[
if (document.images) {