Extension:IRC Chat/v2.01/Local Applet

From MediaWiki.org
Jump to: navigation, search

[edit] Changes to be made

  • Change YOUR-DOMAIN to your website's URL address. (Obvious) ;)
  • Change the host parameter value, if different.
  • Add <param name="Command1" value="/join #YourChannel"> under the useinfo parameter if you want your users to automatically join your channel.
  • Define colors of the applet for each skin. Color Parameter defaults and meanings can be found here.


Mandatory: In the /irc directory change all .lng files to .txt

[edit] includes/SpecialIRC.php

<?php
function wfSpecialIRC() {
        global $wgOut, $wgUser, $wfMsgHtml, $wgDefaultSkin, $wgScriptPath;
 
        if ($wgUser->mId<1) {
                $irc = wfMsg('ircnick');
                $ircSkin = $wgDefaultSkin;
        } else {
                $irc = $wgUser->mIrcNick;
 
                ob_start();
                var_export($wgUser->getSkin()->getSkinName());
                $ircSkinWithQuotes = ob_get_contents();
                ob_end_clean();
                $ircSkin = str_replace("'", "", $ircSkinWithQuotes);
        }
 
        if ($ircSkin == monobook) {
                $ircColors = '<param name="pixx:color0" value="000000" />
<param name="pixx:color1" value="FFFFFF" />
<param name="pixx:color2" value="868686" />
<param name="pixx:color3" value="808080" />
<param name="pixx:color4" value="D0D0D0" />
<param name="pixx:color5" value="336699" />
<param name="pixx:color6" value="084079" />
<param name="pixx:color7" value="003167" />
<param name="pixx:color8" value="A40000" />
<param name="pixx:color9" value="4B8ECE" />
<param name="pixx:color10" value="008000" />
<param name="pixx:color11" value="336699" />
<param name="pixx:color12" value="336699" />
<param name="pixx:color13" value="4040FF" />
<param name="pixx:color14" value="FF40FF" />
<param name="pixx:color15" value="336699" />
<param name="style:sourcecolorrule1" value="all all 0=FFFFFF 1=000000 2=00007F 3=009300 4=FF0000 5=7F0000 6=9C009C" />';
                $ircWidth = '640';
                $ircHeight = '400';
                $ircPre = '';
                $ircPost = '';
        } elseif ($ircSkin == skinname) {
                $ircColors = '';
                $ircWidth = '640';
                $ircHeight = '400';
                $ircPre = '';
                $ircPost = '';
        } else {
                $ircColors = '';
                $ircWidth = '640';
                $ircHeight = '400';
                $ircPre = '';
                $ircPost = '';
        }
 
        $ircRawFaq = 'http://' . $_SERVER["HTTP_HOST"] . $wgScriptPath . '/index.php?title=MediaWiki:ircfaq&action=render';
        $ircFaqTitle = wfMsg('ircfaqtitle');
        $ircRawRules = 'http://' . $_SERVER["HTTP_HOST"] . $wgScriptPath . '/index.php?title=MediaWiki:ircrules&action=render';
        $ircRulesTitle = wfMsg('ircrulestitle');
 
        $windowClose = wfMsg('closewindow');
 
        $faq = file_get_contents($ircRawFaq);
        $ircFaq = "<html><head><title>" . $ircFaqTitle . "</title></head><body style=\"font: 13px Verdana, Arial, Sans-Serif\">" . str_replace("\n", "", $faq);
 
        $rules = file_get_contents($ircRawRules);
        $ircRules = "<html><head><title>" . $ircRulesTitle . "</title></head><body style=\"font: 13px Verdana, Arial, Sans-Serif\">" . str_replace("\n", "", $rules);
 
        $ircInfo = '<script type="application/javascript">/* <![CDATA[ */
 
function ircFAQ() {
help = window.open("", "' . $ircFaqTitle . '", "width=450,height=550,resizable=no,scrollbars=yes,status=no,location=no,toolbar=no,menubar=no")
help.document.open()
help.document.write(\'' . str_replace("'", "\'", $ircFaq) . '<br /><center><form><input type="button" onClick="window.close()" value="' . $windowClose . '" /></form></center></body></html>\')
help.document.close()
}
function ircRules() {
rules = window.open("", "' . $ircRulesTitle . '", "width=450,height=550,resizable=no,scrollbars=yes,status=no,location=no,toolbar=no,menubar=no")
rules.document.open()
rules.document.write(\'' . str_replace("'", "\'", $ircRules) . '<br /><center><form><input type="button" onClick="window.close()" value="' . $windowClose . '" /></form></center></body></html>\')
rules.document.close()
}
 
/* ]]> */</script>';
 
        $ircApplet = $ircInfo . '<p><a href="javascript:ircFAQ()" title="' . $ircFaqTitle . '">FAQ</a> | <a href="javascript:ircRules()" title="' . $ircRulesTitle . '">Rules</a></p><br />' . $ircPre . '<applet codebase="http://YOUR-DOMAIN/irc/" code="IRCApplet.class" archive="irc.jar,pixx.jar" width="' . $ircWidth . '" height="' . $ircHeight . '">
<param name="CABINETS" value="irc.cab,securedirc.cab,pixx.cab" />
 
<param name="nick" value="'.$irc.'" />
<param name="alternatenick" value="Anon???" />
<param name="userid" value="wikichat" />
<param name="name" value="Wiki User" />
<param name="host" value="irc.freenode.net" />
<param name="port" value="6667" />
<param name="gui" value="pixx" />
 
<param name="quitmessage" value="PJIRC forever!" />
<param name="asl" value="true" />
<param name="useinfo" value="true" />
 
<param name="pixx:lngextension" value="txt" />
<param name="lngextension" value="txt" />
 
<param name="style:bitmapsmileys" value="true" />
 
<param name="style:smiley1" value=":) img/sourire.gif" />
<param name="style:smiley2" value=":-) img/sourire.gif" />
<param name="style:smiley3" value=":-D img/content.gif" />
<param name="style:smiley4" value=":d img/content.gif" />
<param name="style:smiley5" value=":-O img/OH-2.gif" />
<param name="style:smiley6" value=":o img/OH-1.gif" />
<param name="style:smiley7" value=":-P img/langue.gif" />
<param name="style:smiley8" value=":p img/langue.gif" />
<param name="style:smiley9" value=";-) img/clin-oeuil.gif" />
<param name="style:smiley10" value=";) img/clin-oeuil.gif" />
<param name="style:smiley11" value=":-( img/triste.gif" />
<param name="style:smiley12" value=":( img/triste.gif" />
<param name="style:smiley13" value=":-| img/OH-3.gif" />
<param name="style:smiley14" value=":| img/OH-3.gif" />
<param name="style:smiley15" value=":\'( img/pleure.gif" />
<param name="style:smiley16" value=":$ img/rouge.gif" />
<param name="style:smiley17" value=":-$ img/rouge.gif" />
<param name="style:smiley18" value="(H) img/cool.gif" />
<param name="style:smiley19" value="(h) img/cool.gif" />
<param name="style:smiley20" value=":-@ img/enerve1.gif" />
<param name="style:smiley21" value=":@ img/enerve2.gif" />
<param name="style:smiley22" value=":-S img/roll-eyes.gif" />
<param name="style:smiley23" value=":s img/roll-eyes.gif" />
<param name="style:floatingasl" value="true" />
 
<param name="pixx:timestamp" value="true"/>
<param name="pixx:highlight" value="true" />
<param name="pixx:highlightnick" value="true" />
<param name="pixx:nickfield" value="true" />
<param name="pixx:styleselector" value="true" />
<param name="pixx:setfontonstyle" value="true" />
 
' . $ircColors . '
 
<h1>No java support</h1>
<p>
<font color="green">Sorry, but you need a Java 1.4.x enabled browser to use PJIRC.</font></p>
</applet>' . $ircPost . '<br />';
 
        $wgOut->addHTML($ircApplet);
} 
?>
Personal tools
Namespaces

Variants
Actions
Navigation
Support
Download
Development
Communication
Print/export
Toolbox