Skype extension

From Meta, a Wikimedia project coordination wiki
This is an archived version of this page, as edited by TheBigGuy (talk | contribs) at 19:30, 12 May 2006 (→‎Beta). It may differ significantly from the current version.

Hopefully a collection of Skype extensions. To start off with the Skype Button. Fell free to add, edit and talk

Skype Button

Template:Extension

The Skype Button rendered inside MediaWiki using the simple syntax of

"<skype>user_name</skype>"





<?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

  1. Copy the code into a file (e.g. skype.php)
  2. Save the file in the extensions directory of your mediawiki folder
  3. 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

Beta

Template:Extension Allow the "balloon" or "Classic" design to be used using:

"<skype style="style_name">Skype-Username</skype>"





<?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"] ){
          $style = "bigclassic" ;
     } else {
          $style = $argv["style"] ;
     }

     switch( $style ){
          case "balloon":    
               $css .= '" style="border: none;" width="150" height="60" alt="My status" /></a>';
          break;
          default:     // covers "bigclassic" and if user has misspelled a style
               $style = "bigclassic" ;
               $css .= '" style="border: none;" width="182" height="44" alt="My status" /></a>';
          break;
     }

     $output = '<!-- Skype "My status" button http://www.skype.com/go/skypebuttons -->';
     $output = '<!-- MediaWiki extension http://meta.wikimedia.org/w/index.php?title=Skype_extension -->';
     $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 ;
     $output .= $css ;
     $output = '<!-- end of skype button -->';

     return $output;
 }
?>