infocalypse

(djk)
2009-11-15: Support for activelink.png images.

Support for activelink.png images.

diff --git a/fniki/default_files/wikitext/FreenetOnlyFeatures b/fniki/default_files/wikitext/FreenetOnlyFeatures
--- a/fniki/default_files/wikitext/FreenetOnlyFeatures
+++ b/fniki/default_files/wikitext/FreenetOnlyFeatures
@@ -10,4 +10,18 @@ Images with links to Freenet URIs are su
 
 [[[freenet:USK@qd-hk0vHYg7YvK2BQsJMcUD5QSF0tDkgnnF6lnWUH0g,xTFOV9ddCQQk6vQ6G~jfL6IzRUgmfMcZJ6nuySu~NUc,AQACAAE/activelink-index-text/81/activelink.png|(alt tag for image)|(title tag for image]]]
 
+The file:
+
+{{{
+wiki_root/www/activelink.png
+}}}
+
+Is used for the Freenet active link image.
+
+There's a markup macro that allows you to embed it in any wiki page, like this:
+
+[[ActiveLink]]
+
+
+
 Use the edit text link below to view the markup for these features.
\ No newline at end of file
diff --git a/fniki/default_files/www/activelink.png b/fniki/default_files/www/activelink.png
new file mode 100644
index 0000000000000000000000000000000000000000..1a59c7e70d85eb78a387197513dbb91337a8c354
GIT binary patch
literal 2053
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

diff --git a/fniki/piki.py b/fniki/piki.py
--- a/fniki/piki.py
+++ b/fniki/piki.py
@@ -33,9 +33,11 @@ from cStringIO import StringIO
 
 PIKI_PNG = 'pikipiki-logo.png'
 PIKI_CSS = 'piki.css'
+ACTIVELINK = 'activelink.png'
+#FAVICON = 'favicon.ico'
 
 # HTTP server doesn't need to serve any other files to make piki work.
-PIKI_REQUIRED_FILES = (PIKI_PNG, PIKI_CSS)
+PIKI_REQUIRED_FILES = (PIKI_PNG, PIKI_CSS, ACTIVELINK)
 
 scrub_links = False
 def scrub(link_text, ss_class=None):
@@ -340,7 +342,8 @@ def _macro_RecentChanges():
 
     return buf.getvalue()
 
-
+def _macro_ActiveLink():
+    return '<img src="%s" />' % scrub('/' + ACTIVELINK)
 
 # ----------------------------------------------------------
 class PageFormatter:
@@ -466,7 +469,7 @@ class PageFormatter:
 
             + r"|(?P<pre>(\{\{\{|\}\}\}))"
             + r"|(?P<macro>\[\[(TitleSearch|FullSearch|WordIndex"
-                            + r"|TitleIndex|RecentChanges|GoTo)\]\])"
+                            + r"|TitleIndex|RecentChanges|ActiveLink|GoTo)\]\])"
             + r")")
         blank_re = re.compile("^\s*$")
         bullet_re = re.compile("^\s+\*")