Logo name

IpbWiki Paypal Extension

From IpbWiki

  • Currently5.00/5
Jump to: navigation, search

Contents

About

IpbWiki Paypal is a Mediawiki Extension which adds a new <paypal> tag which allows you to add a paypal button to your wiki pages.

Download Extension

Download the file IpbWiki_Paypal.php (Click on the download button on the bottom of the next screen)

Code for file IpbWiki_Paypal.php

If you have problems downloading the above file, then alternatively you can just copy and paste the below code and place it in a file named "IpbWiki_Paypal.php"

CODE
<?php
/* IpbWiki Paypal WikiMedia extension
** IpbWiki (c) 2006
** Installation Instructions: http://www.ipbwiki.com/IpbWiki_Paypal_Extension
*/

$wgExtensionFunctions[] = "wfPayPalExtension";

function wfPayPalExtension() {
   global $wgParser;
   global $ipbwiki_paypal;
   # register the extension with the WikiText parser
   $wgParser->setHook( "paypal", "renderPayPal" );

   $ipbwiki_paypal = array();
   # CHANGE THE LINES BELOW TO REFLECT TO YOUR PAYPAL BUTTONS!!! (there's no limit on the number of buttons you define)
   $ipbwiki_paypal[1] = '<form action="https://www.paypal.com/cgi-bin/webscr" method="post"><input type="hidden" name="cmd" value="_xclick"><input type="hidden" name="business" value="ipbwiki@gmail.com"><input type="hidden" name="item_name" value="IpbWiki PayPal"><input type="hidden" name="no_shipping" value="1"><input type="hidden" name="cn" value="Optional Comments"><input type="hidden" name="currency_code" value="EUR"><input type="hidden" name="tax" value="0"><input type="hidden" name="bn" value="PP-DonationsBF"><input type="image" src="https://www.paypal.com/en_US/i/btn/x-click-but04.gif" border="0" name="submit" alt="Make payments with PayPal - it\'s fast, free and secure!"></form>';
   $ipbwiki_paypal[2] = '<form action="https://... - it\'s fast, free and secure!"></form>';
}

# The callback function for converting the input text to HTML output
function renderPayPal( $input, $argv ) {
   global $ipbwiki_paypal;
   global $wgAuth;
   $pos_space=strpos($input,' ');
   if (!$pos_space) {
       if (is_numeric($input)) {  // format <paypal>number</paypal>
           $part1 = $input;
           $part2 = '';
           if (!$ipbwiki_paypal[$part1]) {
               print_r ('warning, specified paypal button not found, defaulting to button 1');
               $part1 = 1;
               $part2 = $input;
           }
       } else {                   // format <paypal>text</paypal> & format <paypal></paypal>
           $part1 = 1;
           $part2 = $input;
       }
   } else {                       // format <paypal>number text</paypal>
       $part1=substr($input,0,$pos_space);
       $part2=substr($input,$pos_space+1);
       if (is_numeric($part1)) {
           if (!$ipbwiki_paypal[$part1]) {
               print_r ('warning, specified paypal button not found, defaulting to button 1');
               $part1 = 1;
           }
       } else {                 // format <paypal>text</paypal>
           $part1 = 1;
           $part2 = $input;
       }
   }
   $form=$ipbwiki_paypal[$part1];
   // if the ipbwiki interface is available, then use the clean function which is defined there, otherwise just clean the necessities...
   if (class_exists ('ipbwiki')) {
       $input = $wgAuth->ipbwiki->ipbwiki->clean_value ($part2);
   } else {
       $part2 = str_replace( ">"            , "&gt;"          , $part2 );
       $part2 = str_replace( "<"            , "&lt;"          , $part2 );
       $part2 = str_replace( "\""           , "&quot;"        , $part2 );
       $part2 = str_replace( "!"            , "&#33;"         , $part2 );
       $part2 = str_replace( "'"            , "&#39;"         , $part2 );
       $input = $part2;
   }
   $output = '<table border=0><tr><td>'.$form.'</td><td valign=center>'.$input.'</td></tr></table>';
   return $output;
}

$wgExtensionCredits['parserhook'][] = array(
      'name' => 'IpbWiki PayPal',
      'version' => '1.0.2',
      'author' => 'Peter De Decker',
      'url' => 'http://www.ipbwiki.com/IpbWiki_Paypal_Extension',
      'description' => 'Mediawiki PayPal Extension'
);

?>

Note: be sure to change it's fast free and secure by it\'s fast free and secure, otherwise it will not work!

Installation

  • create a directory ipbwiki in the extensions directory
  • place IpbWiki_PayPal.php in the extensions/ipbwiki directory (see code below)
  • open the file LocalSettings.php, search for:
?>

and change this to:

    require_once('extensions/ipbwiki/IpbWiki_PayPal.php');  // IpbWiki PayPal Extension
?>
  • in the function wfPayPalExtension, place the code for your paypal-buttons in the variable $ipbwiki_paypal.

Usage

  • the tag <paypal> is translated to the button defined in $ipbwiki_paypal[1].
  • the tag <paypal>2</paypal> is translated to the button defined in $ipbwiki_paypal[2].
  • the tag <paypal>2 description</paypal> is translated to the button defined in $ipbwiki_paypal[2], additionaly the text 'description' is placed next to the paypal button.
  • the tag <paypal>description</paypal> is translated to the button defined in $ipbwiki_paypal[1], additionaly the text 'description' is placed next to the paypal button.

Donate

<paypal>1</paypal> If you find this extension usefull, then perhaps you can donate a few bucks? user posted image
This page was last modified on 5 September 2007, at 07:48.  This page has been accessed 5,589 times.  Content is available under GNU Free Documentation License 1.2Disclaimers