image image


Worknote: RubyFrontier und Flattr

Zwar bietet Flattr die Möglichkeit, manuell den Code für einen Button zu erzeugen, den man dann per Copy & Paste in seine Seiten einbinden kann, doch dies macht man entweder für die gesamte Site oder gar nicht.

Da ich jedoch Flattrs JavaScript-Variante des Buttons nicht mag (wer weiß, wieviel er nach Hause telephoniert), habe ich mich für die statische HTML-Version entschieden, bei der der Nutzer erst aktiv klicken muß, bevor irgend etwas zu Flattr übertragen wird.

image Aber auch diese benötigt natürlich einige Informationen über die Seite, die sie mit der URL bei einem Klick nach Flattr übermittelt. Verlangt ist die User ID (die ID meines Flattr-Accounts) und die URL der Seite, die geflattrt werden soll. Bei den optionalen Parametern habe ich mich entschieden, noch den Titel der Seite, die Sprache und die Kategorie (immer text) mit zu übergeben. Dafür habe ich ein kleines Ruby-Script geschrieben (flattr.rb, das wie immer im Ordner #tools abgelegt wird):

def flattr(po)
  title, path = html.getTitleAndPath(po)
  rootURL = "http://notizheft.kantel-chaos-team.de/"
  s = ""
  s << rootURL + path
  "<a href='https://flattr.com/submit/auto?user_id=kantel&url=#{s}&title=#{title}&language=de_de&
  category=text'><img src='https://api.flattr.com/button/flattr-badge-large.png' alt='Dieses Notizheft flattrn'
  title='#{title} bitte flattrn!' /></a>"
end

(Die Zeilenumbrüche der letzten Zeile ("<a href … </a>") sind nur der besseren Lesbarkeit geschuldet.)

So jetzt nur noch in passender Stelle (im Template) dieses Makro mit

<%= flattr(title) %>

einfügen und schon flutscht das mit Flattr und es erscheint der beliebte Button:

Dieses Notizheft flattrn

Da ich ja meine eigenen »Dings« nicht flattrn kann, dürft Ihr jetzt wie der Teufel auf dieses Knöpfchen klicken, damit ich verifizieren kann, daß auch wirklich alles funktioniert.

Wenn Ihr das Makro auf Euren eigenen Seiten verwenden wollt, müßt Ihr natürlich Eure eigene rootURL eingeben.



comments powered by Disqus