Difference between revisions of "Extension:VideoSectionLink"
(couple of traces) |
(commented out regexes, function is being called) |
||
Line 45: | Line 45: | ||
function magicVideosectionlink(&$parser) { | function magicVideosectionlink(&$parser) { | ||
− | + | /* global $egVideoSectionLinkMagic; | |
# Populate $argv with both named and numeric parameters | # Populate $argv with both named and numeric parameters | ||
$argv = array(); | $argv = array(); | ||
Line 67: | Line 67: | ||
'isHTML' => false | 'isHTML' => false | ||
); | ); | ||
+ | */ | ||
+ | $output = "brush"; | ||
+ | print_r($output); | ||
+ | return $output; | ||
+ | |||
+ | |||
+ | |||
Revision as of 00:05, 9 November 2008
<?php
Template:PhpCategory:Extensions created with Template:Extension
/**
* VideoSectionLink extension - An extension to enable users to link to defined sections of video. Made with Template:Extension * * See http://www.mediawiki.org/wiki/Extension:VideoSectionLink for installation and usage details * * @package MediaWiki * @subpackage Extensions * @author User:Jack * @copyright © 2008 User:Jack * @licence GNU General Public Licence 2.0 or later */
if (!defined('MEDIAWIKI')) die('Not an entry point.');
define('VIDEOSECTIONLINK_VERSION', '0.0.1, 2008-10-31');
$egVideoSectionLinkMagic = "videosectionlink"; $wgExtensionFunctions[] = 'efSetupVideoSectionLink'; $wgHooks['LanguageGetMagic'][] = 'efVideoSectionLinkLanguageGetMagic';
$wgExtensionCredits['parserhook'][] = array( 'name' => 'VideoSectionLink', 'author' => 'User:Jack', 'description' => 'An extension to enable users to link to defined sections of video. Made with Template:Extension', 'url' => 'http://www.organicdesign.co.nz/Extension:VideoSectionLink', 'version' => VIDEOSECTIONLINK_VERSION );
class VideoSectionLink {
/** * Constructor */ function __construct() { global $wgHooks, $wgParser, $egVideoSectionLinkMagic;
# Add the parser-function $wgParser->setFunctionHook($egVideoSectionLinkMagic, array($this, 'magicVideosectionlink'));
}
/** * Expand the videosectionlink-magic */ function magicVideosectionlink(&$parser) {
/* global $egVideoSectionLinkMagic; # Populate $argv with both named and numeric parameters $argv = array(); foreach (func_get_args() as $arg) if (!is_object($arg)) { if (preg_match('/^(.+?)\\s*=\\s*(.+)$/',$arg,$match)) $argv[$match[1]] = $match[2]; else $argv[] = $arg; }
# Build text of expanded result $args = ; foreach ($argv as $k => $v) $args .= "*$k: $v\n"; $args = htmlspecialchars($args); $text = "=== Magic $egVideoSectionLinkMagic(): ===\n$args";
# Return result with available parser flags return array( $text, 'found' => true, 'nowiki' => false, 'noparse' => false, 'noargs' => false, 'isHTML' => false ); */ $output = "brush"; print_r($output); return $output;
}
/** * Needed in some versions to prevent Special:Version from breaking */ function __toString() { return __CLASS__; }
}
/**
* Called from $wgExtensionFunctions array when initialising extensions */
function efSetupVideoSectionLink() { global $egVideoSectionLink; $egVideoSectionLink = new VideoSectionLink(); print_r("VSL instance: "); print_r($egVideoSectionLink);
}
/**
* Needed in MediaWiki >1.8.0 for magic word hooks to work properly */
function efVideoSectionLinkLanguageGetMagic(&$magicWords, $langCode = 0) { global $egVideoSectionLinkMagic; $magicWords[$egVideoSectionLinkMagic] = array($langCode, $egVideoSectionLinkMagic); print_r("LGM: "); print_r($magicWords[$egVideoSectionLinkMagic]); return true; }