remove flattr buttons after flattr ToS change
authorRoland Hieber <rohieb@rohieb.name>
Wed, 8 Nov 2017 23:39:44 +0000 (00:39 +0100)
committerRoland Hieber <rohieb@rohieb.name>
Wed, 8 Nov 2017 23:39:44 +0000 (00:39 +0100)
plugins/IkiWiki/Plugin/flattrthing.pm [deleted file]

diff --git a/plugins/IkiWiki/Plugin/flattrthing.pm b/plugins/IkiWiki/Plugin/flattrthing.pm
deleted file mode 100644 (file)
index c917ed4..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/perl
-
-# This plugin allows your page templates to include Flattr buttons, so
-# Flattr buttons are automatically added on every page that uses the template.
-# If you don't specify a thing ID with the flattrthing directive, it adds
-# auto-submit buttons so things are created when the button is clicked the first
-# time.
-#
-# The plugin is customizable through the following configuration options:
-# - flattrthing_pagespec: allows you to specify a pagespec on which pages the
-#   plugin is active. If empty, no Flattr buttons are generated at all.
-# - flattrthing_defaultuser: sets the default user that owns the Flattr things
-#   which are created by the auto-submit buttons.
-#
-# Also, the plugin adds the flattrthing directive, which allows you to customize
-# the behaviour for one page. It knows the following parameters:
-# - id: the Flattr thing ID (like in http://flattr.com/thing/12341234). If you
-#   specify this option, a button with a thing URL is generated instead of an
-#   auto-submit button. This allows you to link to things which already exist
-#   by the time you create your page.
-# - user: a Flattr username that owns the thing created by the generated
-#   auto-submit button. This parameter has no effect when an ID is specified,
-#   since in this case, the owner is already known to Flattr.
-#
-# This plugin sets the following template variables which your templates should
-# process and generate the according buttons with the right URLs:
-# - FLATTR_ENABLE: contains a truthful value if the page matches the pagespec
-#   configured with flattrthing_pagespec. You can use it with TMPL_IF to
-#   generate code specific to pages which have a Flattr button.
-# - FLATTR_THING_ID: if a thing ID was specified with the flattrthing directive,
-#   this variable contains the ID that was given in the directive.
-# - FLATTR_THING_ID_SET: contains a thurthful value if FLATTR_THING_ID is set.
-# - FLATTR_USER: contains the username that was specified with the flattrthing
-#   directive, or if that was not the case, the username that was configured
-#   with flattrthing_defaultuser in your setup file.
-# - FLATTR_THING_URL: contains the full URL to the page.
-
-package IkiWiki::Plugin::flattrthing;
-
-use warnings;
-use strict;
-use IkiWiki 3.00;
-
-sub import {
-       hook(type => "getsetup", id => "flattrthing", call => \&getsetup);
-       hook(type => "scan", id => "flattrthing", call => \&scan);
-       hook(type => "preprocess", id => "flattrthing", call => \&preprocess);
-       hook(type => "pagetemplate", id => "flattrthing", call => \&pagetemplate);
-}
-
-sub getsetup () {
-       return
-               plugin => {
-                       safe => 1,
-                       rebuild => undef,
-                       section => "widget",
-               },
-               flattrthing_pagespec => {
-                       type => "pagespec",
-                       example => "!*/Discussion",
-                       description => "Pages on which flattr button should be inserted. If empty, flattr buttons are not shown on any page.",
-                       link => "ikiwiki/PageSpec",
-                       safe => 1,
-                       rebuild => undef,
-               },
-               flattrthing_defaultuser => {
-                       type => "string",
-                       example => "!*/Discussion",
-                       description => "Default flattr user that owns a thing if the username is not changed with the flattrthing directive",
-                       safe => 1,
-                       rebuild => undef,
-               },
-}
-
-sub scan {
-       my %params = @_;
-       my $page = $params{page};
-       my $destpage = $params{destpage};
-       my $baseurl = $config{url};
-       $baseurl .= "/" unless substr($baseurl, -1) eq "/";
-       if($destpage) {
-               $baseurl .= $destpage;
-       } else {
-               $baseurl .= $page;
-       }
-       $pagestate{$page}{flattrthing}{url} = $baseurl;
-
-       if(exists $config{flattrthing_defaultuser} &&
-                length $config{flattrthing_defaultuser}) {
-               $pagestate{$page}{flattrthing}{user} = $config{flattrthing_defaultuser};
-       } else {
-               return error("Please set flattrthing_defaultuser in configuration!");
-       }
-}
-
-sub preprocess {
-       return "" unless @_;
-       my %params = @_;
-
-       return error("flattrthing: please specify id or user") unless ($params{id}
-               or $params{user});
-
-       my $page = $params{page};
-       $pagestate{$page}{flattrthing}{id} = int($params{id}) if $params{id};
-       $pagestate{$page}{flattrthing}{user} = int($params{user}) if $params{user};
-
-       return "";
-}
-
-sub pagetemplate {
-       my %params = @_;
-       my $page = $params{page};
-       my $template = $params{template};
-
-       if(exists $config{flattrthing_pagespec} &&
-                length $config{flattrthing_pagespec} &&
-                exists $pagestate{$page}{flattrthing}{user} &&
-                length $pagestate{$page}{flattrthing}{user} &&
-                pagespec_match($params{page}, $config{flattrthing_pagespec})) {
-               $template->param(FLATTR_ENABLED => 1);
-               $template->param(
-                       FLATTR_THING_URL => $pagestate{$page}{flattrthing}{url},
-                       FLATTR_USER => $pagestate{$page}{flattrthing}{user},
-                       );
-
-               if(exists $pagestate{$page}{flattrthing}{id}) {
-                       $template->param(
-                               FLATTR_THING_ID_SET => 1,
-                               FLATTR_THING_ID => $pagestate{$page}{flattrthing}{id},
-                               );
-               }
-       }
-}
-
-1;
This page took 0.027908 seconds and 4 git commands to generate.