Skype extension: Difference between revisions
Content deleted Content added
Thomas Klein (talk | contribs) No edit summary |
Beta |
||
Line 33: | Line 33: | ||
==Future== |
==Future== |
||
Allow the "balloon" or "Classic" design to be used using |
Allow the "balloon" or "Classic" design to be used using: |
||
*<skype>Skype-Username|style</skype> |
|||
*<skype style="style_name">Skype-Username</skype> (Beta) |
|||
==Beta== |
|||
<pre> |
|||
<?php |
|||
$wgExtensionFunctions[] = "wfskype"; |
|||
function wfSkype() { |
|||
global $wgParser; |
|||
$wgParser->setHook( "skype", "renderSkype" ); |
|||
} |
|||
# The callback function for converting the input text to HTML output |
|||
function renderSkype( $input, $argv ) { |
|||
# $argv is an array containing any arguments passed to the extension like <example argument="foo" bar>.. |
|||
if( !issent( $argv["style"] OR !$argv["style"] = "bigclassic" OR !$argv["style"] = "balloon" ){ |
|||
$style = "bigclassic" |
|||
} else { |
|||
$style = $argv["style"] |
|||
} |
|||
$output = '<!-- Skype "My status" button http://www.skype.com/go/skypebuttons -->'; |
|||
$output .= '<script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script>'; |
|||
$output .= '<a href="skype:'; |
|||
$output .= $input ; |
|||
$output .= '?call">'; |
|||
$output .= '<img src="http://mystatus.skype.com/'.$style.'/'; |
|||
$output .= $input ; |
|||
switch( $style ){ |
|||
case "balloon": |
|||
$output .= '" style="border: none;" width="150" height="60" alt="My status" /></a>'; |
|||
break; |
|||
case "bigclassic": |
|||
$output .= '" style="border: none;" width="182" height="44" alt="My status" /></a>'; |
|||
break; |
|||
} |
|||
return $output; |
|||
} |
|||
?> |
|||
</pre> |
|||
[[Category:MediaWiki extensions]] |
[[Category:MediaWiki extensions]] |
Revision as of 19:12, 11 May 2006
Skype Button
My first extension so sorry if there are errors. It will only get better with feedback
<?php $wgExtensionFunctions[] = "wfskype"; function wfSkype() { global $wgParser; $wgParser->setHook( "skype", "renderSkype" ); } # The callback function for converting the input text to HTML output function renderSkype( $input, $argv ) { # $argv is an array containing any arguments passed to the extension like <example argument="foo" bar>.. $output = '<!-- Skype "My status" button http://www.skype.com/go/skypebuttons -->'; $output .= '<script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script>'; $output .= '<a href="skype:'; $output .= $input ; $output .= '?call">'; $output .= '<img src="http://mystatus.skype.com/bigclassic/'; $output .= $input ; $output .= '" style="border: none;" width="182" height="44" alt="My status" /></a>'; return $output; } ?>
Installation
- Copy the code into a file (e.g. skype.php)
- Save the file in the extensions directory of your mediawiki folder
- Add the line
include('extensions/skype.php');
to the end of your LocalSettings.php file
Now you can use the extension with <skype>Skype-Username</skype> in the wiki
Future
Allow the "balloon" or "Classic" design to be used using:
- <skype>Skype-Username|style</skype>
- <skype style="style_name">Skype-Username</skype> (Beta)
Beta
<?php $wgExtensionFunctions[] = "wfskype"; function wfSkype() { global $wgParser; $wgParser->setHook( "skype", "renderSkype" ); } # The callback function for converting the input text to HTML output function renderSkype( $input, $argv ) { # $argv is an array containing any arguments passed to the extension like <example argument="foo" bar>.. if( !issent( $argv["style"] OR !$argv["style"] = "bigclassic" OR !$argv["style"] = "balloon" ){ $style = "bigclassic" } else { $style = $argv["style"] } $output = '<!-- Skype "My status" button http://www.skype.com/go/skypebuttons -->'; $output .= '<script type="text/javascript" src="http://download.skype.com/share/skypebuttons/js/skypeCheck.js"></script>'; $output .= '<a href="skype:'; $output .= $input ; $output .= '?call">'; $output .= '<img src="http://mystatus.skype.com/'.$style.'/'; $output .= $input ; switch( $style ){ case "balloon": $output .= '" style="border: none;" width="150" height="60" alt="My status" /></a>'; break; case "bigclassic": $output .= '" style="border: none;" width="182" height="44" alt="My status" /></a>'; break; } return $output; } ?>