Affichage de la date / heure de capture dans les métadonnées présentées.
[Portfolio.git] / skins / photo_layout_macros.pt
index 5a988be..0eb67c4 100644 (file)
@@ -5,17 +5,21 @@
   </head>
   <body>
     <div metal:define-macro="grid"
-         tal:define="slide_size portal_object/slide_size;"
+         tal:define="slide_size portal_object/slide_size;
+                     mayBeDropable exists:dropable;
+                     dropable python:True if mayBeDropable and dropable else False"
          i18n:domain="portfolio">
       <div metal:use-macro="here/batch_macros/macros/navigation">batch navigation</div>
-      <div id="lightbox" class="lightbox">
+      <div id="lightbox"
+           tal:attributes="class python:'lightbox photo-drop-target' if dropable else 'lightbox'">
         <span tal:repeat="info infos" tal:omit-tag="">
           <span tal:define="size info/thumbSize;
                             margin_top python:(slide_size - size['height']) / 2;
                             margin_left python:(slide_size - size['width']) / 2;
                             selected info/selected|nothing"
                 tal:attributes="class info/className;
-                                name info/cmf_uid">
+                                name info/cmf_uid"
+                metal:define-macro="thumbnail">
             <a class="slide" tal:attributes="href info/href; title info/title">
               <img border="0" tal:attributes="src info/thumbUrl;
                                  alt info/title;
       </div>
       <br clear="all"/>
       <div metal:use-macro="here/batch_macros/macros/navigation">batch navigation</div>
-      <script type="text/javascript">
-      // <!--
-      (function(){
+      <script type="text/javascript" tal:condition="not:dropable">
         new Lightbox(document.getElementById('lightbox'));
+      </script>
+      <script type="text/javascript"
+              tal:condition="dropable"
+              tal:content="structure python:'''
+      (function(){
+        var lb = document.getElementById('lightbox');
+        new Lightbox(lb);
+        var uploadUrl = '%(putUrl)s';
+        var options = {'slideSize' : %(slideSize)d,
+                       'thumbnailSize' : %(thumbnailSize)d};
+        new DDImageUploader(lb, uploadUrl, options);
       })();
-      // -->
+      ''' % {'putUrl' : '%s/put_upload' % here.absolute_url(),
+             'slideSize' : portal_object.slide_size,
+             'thumbnailSize' : portal_object.thumb_size}">
       </script>
     </div>
 
     <div metal:define-macro="film_bar" tal:omit-tag="">
       <div id="film_bar">
         <table cellspacing="0">
-          <tr tal:define="slide_size python:portal_object.thumb_height/2 + 10">
+          <tr tal:define="slide_size python:portal_object.thumb_size/2 + 10">
             <td tal:repeat="info contextInfos/infos">
                 <a href="." tal:attributes="href info/href;
                                             class info/className;
       <div class="jsslider">
         <span id="slider"></span>
       </div>
-      <br clear="all"/>
       <script type="text/javascript" tal:content="python:'''
           var startSlideShow, slideShowNext, stopSlideShow;
           (function(){
                            document.getElementById('image_toolbar'),
                            document.getElementById('Breadcrumbs'));
             startSlideShow = function() {return fs.startSlideShow();};
-            slideShowNext = function() {return fs.slideShowNext();};
             stopSlideShow = function() {return fs.stopSlideShow();};
+            slideShowPrevious = function() {return fs.slideShowPrevious();};
+            slideShowNext = function() {return fs.slideShowNext();};
+            slideShowImageLoaded = function() {return fs.slideShowImageLoaded();};
           })();
           ''' % {'filmLength': len(contextInfos['infos'])
                 ,'center': index
-                ,'slideSize': portal_object.thumb_width/2 + 11
+                ,'slideSize': portal_object.thumb_size/2 + 11
                 ,'reBaseCtxUrl':contextInfos['reBaseCtxUrl']
                 ,'canonicalUrl':contextInfos['canonicalUrl']
                 }">