Chat loading ...
Please wait

The source code

/Library/WebServer/Documents/phpfreechat/1.3/demo/demo34_add_a_link_on_nicknames.php


<?php

require_once dirname(__FILE__)."/../src/phpfreechat.class.php";

$params["serverid"]      = md5(__FILE__); // calculate a unique id for this chat
$params["title"]         = "A chat with a customized nickname list";
$params["theme_path"]    = dirname(__FILE__)."/demo34_add_a_link_on_nicknames";
$params["theme"]         = "mytheme";
$chat = new phpFreeChat$params );

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>phpFreeChat demo</title>

    <?php $chat->printJavascript(); ?>
    <?php $chat->printStyle(); ?>
  </head>

  <body>
    <?php $chat->printChat(); ?>
<?php
  
// print the current file
  
echo "<h2>The source code</h2>";
  
$filename __FILE__;
  echo 
"<p><code>".$filename."</code></p>";
  echo 
"<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">";
  
$content file_get_contents($filename);
  
highlight_string($content);
  echo 
"</pre>";
?>

<?php
  $filename 
dirname(__FILE__)."/demo34_add_a_link_on_nicknames/mytheme/customize.js.php";
  echo 
"<p><code>".$filename."</code></p>";
  echo 
"<pre style=\"margin: 0 50px 0 50px; padding: 10px; background-color: #DDD;\">";
  
$content file_get_contents($filename);
  
highlight_string($content);
  echo 
"</pre>";
?>

  </body>
</html>

/Library/WebServer/Documents/phpfreechat/1.3/demo/demo34_add_a_link_on_nicknames/mytheme/customize.js.php


pfcClient.prototype.buildNickItem = function(nickid)
{
    var className = (! is_ie) ? 'class' : 'className';

    var nick = this.getUserMeta(nickid, 'nick');
    var isadmin = this.getUserMeta(nickid, 'isadmin');
    if (isadmin == '') isadmin = false;

    var li = document.createElement('li');

    var a = document.createElement('a');
    a.pfc_nick   = nick;
    a.pfc_nickid = nickid;
    a.setAttribute('target','_blank');
    a.setAttribute('href','http://www.google.com/search?q='+nick);
    /*
    a.onclick = function(evt){
      var d = pfc.getNickWhoisBox(this.pfc_nickid);
      document.body.appendChild(d);
      d.style.display = 'block';
      d.style.zIndex = '400';
      d.style.position = 'absolute';
      d.style.left = (mousePosX(evt)-5)+'px';
      d.style.top  = (mousePosY(evt)-5)+'px';
      return false;
    }
    */
    li.appendChild(a);

    var img = document.createElement('img');
    if (isadmin)
      img.setAttribute('src', this.res.getFileUrl('images/user-admin.gif'));
    else
      img.setAttribute('src', this.res.getFileUrl('images/user.gif'));
    img.style.marginRight = '5px';
    img.setAttribute(className, 'pfc_nickbutton');
    a.appendChild(img);

    // nobr is not xhtml valid but it's a workeround 
    // for IE which doesn't support 'white-space: pre' css rule
    var nobr = document.createElement('nobr');
    var span = document.createElement('span');
    span.setAttribute(className, 'pfc_nickmarker pfc_nick_'+nickid);
    span.appendChild(document.createTextNode(nick));
    nobr.appendChild(span);
    a.appendChild(nobr);

    return li;
}