From: Simon McVittie <http://smcv.pseudorandom.co.uk/>
Date: Fri, 11 Jul 2008 22:57:47 +0000 (+0100)
Subject: meta plugin: if uuid looks like it is in fact a UUID, prepend "urn:uuid" (otherwise... 
X-Git-Tag: 2.54~124^2
X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/9c6444bf681ec48e3832282906d1d2cfad586cb5?ds=inline;hp=--cc

meta plugin: if uuid looks like it is in fact a UUID, prepend "urn:uuid" (otherwise leave it alone, so we can assign non-UUID <id>s to Atom items to avoid planet-flooding)
---

9c6444bf681ec48e3832282906d1d2cfad586cb5
diff --git a/IkiWiki/Plugin/meta.pm b/IkiWiki/Plugin/meta.pm
index 81355ef6d..02c99e9f6 100644
--- a/IkiWiki/Plugin/meta.pm
+++ b/IkiWiki/Plugin/meta.pm
@@ -85,7 +85,13 @@ sub preprocess (@) { #{{{
 		# fallthrough
 	}
 	elsif ($key eq 'uuid') {
-		$pagestate{$page}{meta}{uuid}=HTML::Entities::encode_numeric($value);
+		my $abs = $value;
+
+		if ($abs =~ m/^[[:xdigit:]]{8}-[[:xdigit:]]{4}-[[:xdigit]]{4}-[[:xdigit:]]{4}-[[:xdigit:]]{12}$/) {
+			$abs = lc "urn:uuid:$abs";
+		}
+
+		$pagestate{$page}{meta}{uuid}=HTML::Entities::encode_numeric($abs);
 		# fallthrough
 	}
 	elsif ($key eq 'license') {