1
kstan_79
Re: Xoop chat 1.5 on Xoops 2.0.18.2
  • 2009/9/24 13:51

  • kstan_79

  • Just popping in

  • Posts: 1

  • Since: 2007/5/9 1


Hi, currently I using xoopschat to communicate with my internal staff (with block). After some complain I'd do some changes of the code to make it more user friendly (Included some dynamic update, ajax, and hide post more older than 50). I feel quite satisfy with the changes and willing to share back with originator.
You can copy following code to replace source code in xoopschat/block folder.
Enjoy!
Quote:

// $Id: blockbottom.php,v 1.2 2003/09/03 coded by frankblack
// ------------------------------------------------------------------------- //
// German Xoops-Support-Site
// < http://www.myxoops.de >
// ------------------------------------------------------------------------- //
// Original Author : Pietro Lascari - http://www.cmq.it
// Modified for XOOPS 2 : Marko "Predator" Schmuck and frankblack
// Licence Type : Public GNU/GPL
// ------------------------------------------------------------------------- //


include("../../../mainfile.php");
include(XOOPS_ROOT_PATH."/header.php");
include(XOOPS_ROOT_PATH."/modules/xoopschat/include/xoopsuser.php");
include_once(XOOPS_ROOT_PATH."/modules/xoopschat/class/timestamp.php");
include(XOOPS_ROOT_PATH."/modules/xoopschat/include/functions.php");
include XOOPS_ROOT_PATH."/class/xoopsformloader.php";

if ( file_exists("../language/".$xoopsConfig['language']."/blocks.php") ) {
include("../language/".$xoopsConfig['language']."/blocks.php");
} else {
include("../language/english/blocks.php");
}

global $user;

//CheckIfBanned();
//$pchat = "false";
//if ($pchat == "false") {
//if ($room == "") {
$room = getDefaultRoom();
//}
//}

$iclass = new XchatTime();
$tstamp = $iclass->MakeTimeStamp();

echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "\r\n";

include(XOOPS_ROOT_PATH."/include/xoopscodes.php");

echo "\r\n";
echo "\r\n";
echo "
";
echo "";
echo "";
echo "";
echo "";

//echo "";
echo "";
echo "
";
echo "
"._BL_XCHAT_FONTBOLD." 
"._BL_XCHAT_FONTITALIC." 
"._BL_XCHAT_FONTUNDERL."
";

xoopsSmilies("msgtextbox");
//echo "
";

$thecolorarr = array(_BL_XCHAT_COLOR1,_BL_XCHAT_COLOR2,_BL_XCHAT_COLOR3,_BL_XCHAT_COLOR4,
_BL_XCHAT_COLOR5,_BL_XCHAT_COLOR6,_BL_XCHAT_COLOR7,_BL_XCHAT_COLOR8,
_BL_XCHAT_COLOR9,_BL_XCHAT_COLOR10,_BL_XCHAT_COLOR11);

$thecolornames = array(_BL_XCHAT_BLACK,_BL_XCHAT_DARKBLUE,_BL_XCHAT_BLUE,_BL_XCHAT_LGREEN,
_BL_XCHAT_GREEN,_BL_XCHAT_DARKRED,_BL_XCHAT_RED,_BL_XCHAT_ORANGE,
_BL_XCHAT_GOLD,_BL_XCHAT_SILVER,_BL_XCHAT_WHITE);

//echo "
";
echo ""._BL_XCHAT_SELECTCOLOR."
";
echo "
";
echo "";

if (isset($op)) {
if (!$HTTP_POST_VARS['msg'] == "") {
$message = $HTTP_POST_VARS['msg'];
if ($HTTP_POST_VARS['msg_underlined'] == "on") {
$message = "".$message."";
}

if ($HTTP_POST_VARS['msg_italic'] == "on") {
$message = "".$message."";
}

if ($HTTP_POST_VARS['msg_bold'] == "on") {
$message = "".$message."";
}

$mcolor = $HTTP_POST_VARS['colors'];

if ($mcolor == _BL_XCHAT_AUTO) {
$noformat = true;
} else {
$noformat = false;
$list = 0;
while($mcolor != $thecolornames[$list]) {
$list++;
}
}
$myts =& MyTextSanitizer::getInstance();
$messaggio_censurato = $myts->censorString($message);
if ($noformat == true) {
$messaggio = $messaggio_censurato;
} else {
$messaggio = ''.$messaggio_censurato.'';
}
} else {
exit();
}

switch ($pchat) {
case "false":
insertMessage($room, $messaggio, $userarray['nick'], $tstamp, $userarray['ipaddress']);
break;
}
}
echo "\r\n";
echo "";
//include(XOOPS_ROOT_PATH."/footer.php");

?>


Quote:

// $Id: blockchat.php,v 1.2 2003/09/03 coded by frankblack
// ------------------------------------------------------------------------- //
// German Xoops-Support-Site
// < http://www.myxoops.de >
// ------------------------------------------------------------------------- //
// Original Author : Pietro Lascari - http://www.cmq.it
// Modified for XOOPS 2 : Marko "Predator" Schmuck and frankblack
// Licence Type : Public GNU/GPL
// ------------------------------------------------------------------------- //

include("../../../mainfile.php");
include(XOOPS_ROOT_PATH."/header.php");
include_once(XOOPS_ROOT_PATH."/modules/xoopschat/class/timestamp.php");
include(XOOPS_ROOT_PATH."/modules/xoopschat/include/functions.php");
include(XOOPS_ROOT_PATH."/modules/xoopschat/include/xoopsuser.php");

global $xoopsDB,$xoopsConfig,$xoopsTheme, $xoopsModuleConfig;

CheckIfBanned();
$room = getDefaultRoom();
$formatdate = new XchatTime();
getMessages($room);

echo "\n";
echo "";
echo "";
echo "\n";
echo "";
echo "";
echo "";
echo "";

include(XOOPS_ROOT_PATH."/include/xoopscodes.php");

echo "
";
$countmessages = 1;
$msglimit=30;
if (!$xoopsDB->getRowsNum($res) == 0) {
$countmessages = 0;
$messages_array = array();
while($r = $xoopsDB->fetchRow($res)) {
$msgdate = $formatdate->GetTime("H:i:s",$r[4]);
$isnew=$r[4]-time();
$myts =& MyTextSanitizer::getInstance();
$messaggio = $myts->smiley($r[2]);

if ($xoopsModuleConfig['html'] == 0) {
$messaggio = strip_tags($messaggio, '');
}



$messaggio = even_better_wordwrap($messaggio,$xoopsModuleConfig['blockwordwrap'],'');
if($isnew<1000)
$messaggio="".$messaggio;


$messages_array[] .= "".$msgdate." [".$r[3]."] : ".$messaggio."
";
$countmessages++;

}
$k=0;
for($x=$countmessages;$x>=0;$x--) {
if($k>=$msglimit)
break;

echo $messages_array[$x];
$k++;

}
} else {
echo "
";
}

if($countmessages == 0) {
echo "
";
}
echo "
";
echo "
";
echo ""._MI_XCHAT_NOMESSAGES."";
echo "
";
echo "[ "._BL_XCHAT_NOMSGSTODAY." ]";
echo "
Check more history here
";
echo <<< EOF

EOF;

echo "";
if ($xoopsModuleConfig['orderascdesc'] == 'DESC') {
echo "\n";
}
echo "";

?>


Quote:

// $Id: xchatblock.php,v 1.2 2003/09/03 coded by frankblack
// ------------------------------------------------------------------------- //
// German Xoops-Support-Site
// < http://www.myxoops.de >
// ------------------------------------------------------------------------- //
// Original Author : Pietro Lascari - http://www.cmq.it
// Modified for XOOPS 2 : Marko "Predator" Schmuck and frankblack
// Licence Type : Public GNU/GPL
// ------------------------------------------------------------------------- //

function xchat_show($options)
{
global $xoopsModuleConfig, $theroom, $modversion, $xoopsConfig, $config_handler, $module_handler;
//$content="";

$config_handler=xoops_gethandler('config');
$module_handler=xoops_gethandler('module');
$xoopsModule =& $module_handler->getByDirname("xoopschat");
$xoopsModuleConfig =& $config_handler->getConfigsByCat(0, $xoopsModule->getVar('mid'));
$refreshinterval=$xoopsModuleConfig["chatrefresh"]*1000;
$content = "





";

$block = array();
$block['content'] = $content;
$block['title'] = _XCHATBLOCKTITLE;
return $block;
}

function xchat_edit($options)
{
$form = _BL_XCHATWORDWRAP." 
";
$form .= _BL_XCHATBLMSGH." 
";
$form .= _BL_XCHATBLINPUTH." 
";
return $form;
}


?>





TopTop



Login

Who's Online

156 user(s) are online (139 user(s) are browsing Support Forums)


Members: 0


Guests: 156


more...

Donat-O-Meter

Stats
Goal: AU$15.00
Due Date: Jul 31
Gross Amount: AU$0.00
Net Balance: AU$0.00
Left to go: AU$15.00
Make donations with PayPal!

Latest GitHub Commits