Skype extension: Difference between revisions

From Meta, a Wikimedia project coordination wiki
Content deleted Content added
No edit summary
TheBigGuy (talk | contribs)
mNo edit summary
Line 203: Line 203:


[[Category:MediaWiki extensions]]
[[Category:MediaWiki extensions]]
[[Category:Parser_extensions]]

Revision as of 22:21, 5 June 2006

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

Skype Button

The Skype Button rendered inside MediaWiki using the simple syntax of

"<skype>user_name</skype>"


Skype Privacy: To enable your status to be shown online please select
Tools->Options->Privacy there is a button called "Allow my status to be shown on the web". Enable it

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



see Talk:Skype_extension for more information on the 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 ) {

     if( !isset( $argv['style'] ) ){
          $skype_style = "bigclassic" ;
     } else {
          $skype_style = $argv['style'] ;
     }

     switch( $skype_style ){

          case "balloon":    
               $skype_width = 150 ;
	       $skype_height = 60 ;
          break;

          case "bigclassic":
               $skype_width = 182 ;
	       $skype_height = 44 ;
          break;

          case "smallclassic":
               $skype_width = 114 ;
	       $skype_height = 20 ;
          break;

	  default:
               $skype_style = "bigclassic" ;
               $skype_width = 182 ;
	       $skype_height = 44 ;

     }

     $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:'.$input.'?call">';
     $output .= '<img src="http://mystatus.skype.com/'.$skype_style.'/'.$input.'" ' ;
     $output .= 'style="border: none; width: '.$skype_width.'px; height: '.$skype_height.'px;" alt="My status" /></a>';
     $output .= '<!-- end of skype button -->';

     return $output;
 }
?>

User Submitted Variation

Template:Extension Allow user to define button action and associated button style. Valid actions are 'call','chat', and 'add'.

"<skype action="specified_action">Skype-Username</skype>"



see Talk:Skype_extension for more information on the 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 ) {

     if( !isset( $argv['action'] ) ){
          $skype_action = "call" ;
     } else {
          $skype_action = $argv['action'] ;
     }

     switch( $skype_action ){

          case "call":    
               $skype_width = 70 ;
               $skype_height = 23 ;
	       $skype_style="call_blue_transparent_70x23.png";
          break;

          case "add":
               $skype_width = 118 ;
               $skype_height = 23 ;
	       $skype_style="add_blue_transparent_118x23.png";
          break;

          case "chat":
               $skype_width = 97 ;
               $skype_height = 23 ;
	       $skype_style="chat_blue_transparent_97x23.png";
          break;

          default:
               $skype_action = "call" ;
               $skype_width = 70 ;
               $skype_height = 23 ;
	       $skype_style="call_blue_transparent_70x23.png";

     }


     $output = '<!-- Skype buttons 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:'.$input.'?'.$skype_action.'">';
     $output .= '<img src="http://download.skype.com/share/skypebuttons/buttons/'.$skype_style.'" ' ;
     $output .= 'style="border: none; width: '.$skype_width.'px; height: '.$skype_height.'px;" alt="Skype me" 

/></a>';
     $output .= '<!-- end of skype button -->';

     return $output;
 }
?>