really fix diff display to not show both types of diff
authorJoey Hess <joey@kitenet.net>
Tue, 16 Oct 2012 14:35:53 +0000 (10:35 -0400)
committerJoey Hess <joey@kitenet.net>
Tue, 16 Oct 2012 14:59:00 +0000 (10:59 -0400)
12fa9c031f7a9dc25dba628aa91fc347586e4ab6 porported to fix this, but failed

IkiWiki/Plugin/recentchanges.pm
debian/changelog
templates/change.tmpl

index 8ce9474be631dbd8ae428304e25d1d1d2adac3df..4c186325562cad93869ea4b0fe49ab305dcdf2cc 100644 (file)
@@ -165,6 +165,7 @@ sub store ($$$) {
        # Limit pages to first 10, and add links to the changed pages.
        my $is_excess = exists $change->{pages}[10];
        delete @{$change->{pages}}[10 .. @{$change->{pages}}] if $is_excess;
+       my $has_diffurl=0;
        $change->{pages} = [
                map {
                        if (length $config{cgiurl}) {
@@ -180,6 +181,9 @@ sub store ($$$) {
                        else {
                                $_->{link} = pagetitle($_->{page});
                        }
+                       if (defined $_->{diffurl}) {
+                               $has_diffurl=1;
+                       }
 
                        $_;
                } @{$change->{pages}}
@@ -227,6 +231,8 @@ sub store ($$$) {
                wikiname => $config{wikiname},
        );
        
+       $template->param(has_diffurl => 1) if $has_diffurl;
+
        $template->param(permalink => urlto($config{recentchangespage})."#change-".titlepage($change->{rev}))
                if exists $config{url};
        
index b87d6f9eb091b3d689639198181dbf5fd7275801..051b3048ac0e56beb98e799339aafc22ed163a64 100644 (file)
@@ -12,6 +12,9 @@ ikiwiki (3.20120726) UNRELEASED; urgency=low
     To enable this protection, set cgi_overload_delay to the number of
     seconds to wait. This is not enabled by default.
   * Add back a 1em margin between archivepage divs.
+  * recentchangesdiff: Correct broken template that resulted in duplicate
+    diff icons being displayed, and bloated the recentchanges page with
+    inline diffs when the configuration should have not allowed them.
 
  -- Joey Hess <joeyh@debian.org>  Thu, 30 Aug 2012 11:56:12 -0400
 
index 2b7b058c06151b67a067ce77bca8aad6236d80da..989315a8d0a9e38a1d3087f7ee14239c89cb4d43 100644 (file)
@@ -9,9 +9,11 @@
 <div id="change-<TMPL_VAR REV>" class="metadata">
 <span class="desc"><br />Changed pages:</span>
 <span class="pagelinks">
+<TMPL_UNLESS HAS_DIFFURL>
 <TMPL_IF DIFF>
 <a href="#diff-<TMPL_VAR REV>" class="toggle" title="diff" rel="nofollow">[[diff|wikiicons/diff.png]]</a>
 </TMPL_IF>
+</TMPL_UNLESS>
 <TMPL_LOOP PAGES>
 <TMPL_IF DIFFURL><a href="<TMPL_VAR DIFFURL>" title="diff" rel="nofollow">[[diff|wikiicons/diff.png]]</a><TMPL_VAR LINK>
 <TMPL_ELSE><TMPL_VAR LINK></TMPL_IF>
@@ -41,7 +43,7 @@
 </TMPL_IF>
 </TMPL_LOOP>
 </div>
-<TMPL_UNLESS DIFFURL>
+<TMPL_UNLESS HAS_DIFFURL>
 <TMPL_IF DIFF>
 <div class="toggleable" id="diff-<TMPL_VAR REV>">
 <pre>