]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/plugins/contrib/album/discussion.mdwn
forgot to sign
[ikiwiki.git] / doc / plugins / contrib / album / discussion.mdwn
index 0356860d8302389156a6b0a2d639645284dd8570..8e5c5b5a79639bb4e6978db19720c092aea6cb84 100644 (file)
@@ -58,6 +58,8 @@ i'm new to ikiwiki, apologies if this is dealt with elsewhere.  -brush
 
 ----
 
+## design feedback from joeyh on an earlier version
+
 You had wanted my feedback on the design of this. I have not looked at the
 code or tried it yet, but here goes. --[[Joey]]        
 
@@ -259,6 +261,8 @@ code or tried it yet, but here goes. --[[Joey]]
 
 ----
 
+## alternative "special extension" design (conclusion: "don't")
+
 '''I think the "special extension" design is a dead-end, but here's what
 happened when I tried to work out how it would work. --[[smcv]]'''
 
@@ -402,3 +406,190 @@ Things that would be nice, and are probably possible:
 * some way to deep-link to memes/badger.jpg with a wikilink, without knowing a
   priori that it's secretly a JPEG (probably harder than it looks - you'd
   have to make a directive for it and it's probably not worth it)
+
+----
+
+## bug: unable to vary thumbnail size
+
+Hi smcv, great plugin. I am an ikiwiki newbie but so far I've had success using your plugin.
+I've integrated the jquery masonry plugin into the albumitem template and it works great.
+But is there a way to create thumnails of different sizes? I've passed thumnailsize option
+and value to album directive and while it does create the new thumbnail sizes it doesn't use them,
+The 96x96 thumbnails still appear on the page no matter what I do. - jaime
+
+> [[KathrynAndersen]] fixed this, see below. --[[smcv]]
+
+----
+
+## failed installation
+
+Hi, the plugin looks great, but I am probably too dumb to use it ;( here is what I did:
+created page gal.mdwn with just \[\[!album\]\] directive (no arguments) and subdirectory gal/ with images in form img_1234.jpg
+
+when I run ikiwiki, I get something completely wrong though:
+
+generated gal/index.html page contains following code repeated for every image:
+
+    <div class="album-viewer">
+      <div id="album-img">
+        <div class="album-finish">
+          <a href="./"><span class="album-arrow">↑</span></a>
+        </div>
+      </div>
+    </div>
+
+So no links to any images, etc.
+
+The pages for individual images are generated though, but also not correct. Trails section is perfect, but the main part is wrong:
+
+    <div class="album-prev">
+      <a><span class="album-arrow">â†<90></span></a><br />
+      <div class="album-thumbnail">
+        <span class="selflink">
+          <img src="./96x96-img_2913.jpg" width="96" height="72" alt="img 2913" title="img 2913" class="img" /></span>
+      </div>
+    </div>
+
+This really seems like this should be in the album page and not individul page. It is only thumbnail and not full image. Also the full image is not in the generated html tree at all!
+
+I am using ikiwiki 3.20130518, and got the album sources from the links of [this page](http://ikiwiki.info/plugins/contrib/album/) (part manual installation)
+
+Any hint about what do I do wrong?
+
+Thanks Lukas
+
+> This plugin is not really finished. I probably need to update it for
+> current ikiwiki. I'll try to update it (and also update my demo
+> and installation instructions) at some point. --[[smcv]]
+
+>> I have to appologize, I accidentally copied the template wrongly and that caused all the issues ;(
+>> So now after two days debugging and tracing, I just fixed that and it works. Well, at least a learnt
+>> a lot about ikiwiki internal ;-)
+>> Thanks for all the work you did on the plugin! --Lukas
+
+----
+
+## bug + patch: not all images shown on album page
+
+Hi smcv, we spoke on irc the other day. Passed `show => "0"` on line 126 in album.pm to remove the limit on the thumbnails shown on the album page. Setting it on the album directive didn't work.
+
+--kjs
+
+> That sounds like a correct solution. I'll fix that in my branch when I work on
+> this again. --[[smcv]]
+
+----
+
+## bug: thumbnailsize doesn't work
+
+As mentioned above by Jaime setting the thumbnailsize doesn't catch either. Or rather if I git push after changing the album directive the generated thumbnails (the image files) are the correct size as set in the directive. The html however uses the default thumbnailsize as hardcoded in album.pm and has broken thumbnails as it links to a file with the default size in the filename.
+
+> [[KathrynAndersen]] fixed this, see below. --[[smcv]]
+
+Issuing `ikiwiki --rebuild` knocks the system into another gear where the thumbnails show up correctly but this is only due to the html being the same as above (linking to hardcoded thumbnailsize) but the generated thumbnail images are now matching the hardcoded size ignoring the thumbnailsize attribute on the album directive.
+
+For me this behaviour is way beyond my skills to sort out (I'm no coder). The albumplugin ikiwiki combo is very attractive to me and the plugin i soo close to working!
+
+--kjs
+
+----
+
+## wishlist + patch: make clicking on the large image go to the next
+
+I've changed the behavior of the "slideshow" to show the next image when clicking the large image as downloading a full resolution image is a rare use case in a gallery of this type imho. The large clicktarget means you are likely to unnecessarily download large files otherwise. I can't quite follow the template, album.pm flow so I can't figure out how to put a "download full resolution" link on the viewer page which would be my next step. To achieve the next link i added ` link => ($nextpage or $album),` around line 454 in `my $img`
+
+--kjs
+
+> That seems reasonable. I'll consider that when I work on this
+> plugin again next. --[[smcv]]
+
+----
+
+## wishlist from kjs
+
+My wishlist for the plugin would include:
+
+- Reading exif info from the imagefile
+- ~~Keeping the full resolution image files out of version control~~ Solved this by simply creating a underlay for the images. Works out of the box for my non cgi workflow.
+- Being able to create new albums by tag or by manually picking images from other albums. Could be a simple comma separated list of viewer names, or even full urls, in the album directive.
+- A counter showing **current image/total number of images in album**. This would mean that you know how many images you have left to click through before you have seen all images in an album. This gives you enought info to decide weather to click through or go back/leave.
+
+--kjs
+
+> I want the first two of those too, perhaps one day I'll get round to
+> implementing them.
+>
+> For the third, you can get the same practical effect using an inline
+> as documented in the main page. --[[smcv]]
+>> The downside to current behaviour is that clicking an inlined thumbnail will take you to the original album context. Previous/Next image will not match the thumbnails in the inline but the thumbnails in the album. This is a bit confusing for users and prevents using the image in multiple contexts without duplicating the image. To achieve what I'm looking for there would have to be several AlbumViewer pages for a single image. --kjs
+
+----
+
+## suggested fix for thumbnail size bug
+
+I've tracked down the "always showing the 96x96 thumbnails" bug!
+
+The problem is in the pagetemplate function, which calls "thumbnail" to determine the name of the thumbnail image to use. As you know, the "img" method of generating thumbnails includes the size of the thumbnail as part of its name (to ensure that resizing thumbnails will create a new file of the correct size). The problem is... that in the pagetemplate function, the thumbnailsize is NOT passed in to the call to "thumbnail", so it always returns the default size, 96x96. Hence nothing that anyone can do will change the thumbnails to anything else. Oh, the different-sized thumbnail images ARE created, but they're never linked to.
+
+Here's a context-diff of my fix:
+
+<pre>
+*** /home/kat/files/repos/ikiwiki_smcv/IkiWiki/Plugin/album.pm 2013-12-18 14:50:06.861623226 +1100
+--- album.pm   2013-12-18 15:51:09.393582879 +1100
+***************
+*** 484,489 ****
+--- 484,490 ----
+               my $viewer = $params{page};
+               my $album = $pagestate{$viewer}{album}{album};
+               my $image = $pagestate{$viewer}{album}{image};
++                 my $thumbnailsize = $pagestate{$album}{album}{thumbnailsize};
+  
+               return unless defined $album;
+               return unless defined $image;
+***************
+*** 495,501 ****
+  
+               if ($template->query(name => 'thumbnail')) {
+                       $template->param(thumbnail =>
+!                              thumbnail($viewer, $params{destpage}));
+               }
+               if (IkiWiki::isinlinableimage($image)
+                       && ($template->query(name => 'imagewidth') ||
+--- 496,502 ----
+  
+               if ($template->query(name => 'thumbnail')) {
+                       $template->param(thumbnail =>
+!                              thumbnail($viewer, $params{destpage}, $thumbnailsize));
+               }
+               if (IkiWiki::isinlinableimage($image)
+                       && ($template->query(name => 'imagewidth') ||
+</pre>
+
+-- [[KathrynAndersen]]
+
+> I haven't tried this change, but it seems sane. I'll apply it
+> when I next work on this plugin.
+>
+> (OOI: why not a unified diff? The VCS world seems to have
+> settled on those as universal, and I find them easier to
+> read.)
+>
+> --[[smcv]]
+
+----
+
+## bug: inability to show more than 10 items
+
+I've found another bug. The album plugin doesn't allow one to have more than 10 items in an album section. This is because it uses "inline" to display album sections, and the default for inline is to show only 10 items. So it only shows 10 items.
+
+What would be good is if the album directive could have a "show" parameter which is passed on to preprocess_inline, so that users could decide how many items to show (including ALL of them, if they give show=0).
+
+-- [[KathrynAndersen]]
+
+> My intention was that all items would always be shown, so I would always pass
+> `show => 0` to `preprocess_inline` (as kjs suggested above), but that must have
+> got lost somewhere. I'll apply it next time I work on this plugin.
+>
+> An optional `show` parameter would be a possible enhancement beyond that,
+> although I don't know how useful it would be; if it isn't passed, the
+> default should be 0 (unlimited). --[[smcv]]