三更论坛技术版『 聊室配置 』 → 碧聊配置介绍(2):聊天室配置及其功能完善和扩展,代码收藏


  共有54290人关注过本帖树形打印复制链接

主题:碧聊配置介绍(2):聊天室配置及其功能完善和扩展,代码收藏

帅哥哟,离线,有人找我吗?
荞麦
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
碧聊配置介绍(2):聊天室配置及其功能完善和扩展,代码收藏  发帖心情 Post By:2004-8-2 17:00:57 [只看该作者]

教你如何做房间的配置和维护

三更论坛收集、整理、介绍

 

寒江332脚本下载:寒江332.rar

寒江336脚本下载:寒江336.rar

配套的管理后台下载:manage.rar

 

  碧聊配置形式众多,但核心内容大同小异。其中,寒江配置就不错,众多聊天室都在使用。三更有梦目前一直都使用这种配置,先前使用的寒江3.32、336,现在是wg3.32(碧聊推出自动麦序以后,我们也在使用笑我文哥改编的wg332全自动麦序脚本)。

  本人就自己的理解,结合多年的配置经验,在后面的帖子中以三更的配置代码为例,介绍配置的基本方法,以提供给想做聊天室配置维护的室主、技术维护的朋友学习、借鉴。只要了解、掌握了那些需要自己修改、维护的部分,您就可以配置聊天室了。

  这个帖子,还将不断收藏一些有用的配置代码。

寒江3.36原配置:

碧聊聊天室界面配置
作者:寒江
时间:2004年09月13日
版本:3.36 040913



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
寒江3.36配置  发帖心情 Post By:2004-10-10 3:21:04 [只看该作者]

完整的便衣管理马甲代码——整理、调试君扬的代码得到

设置便衣管理马甲,可为聊天室管理提供一些便利,同时也让聊友有种新奇感。设置的时候,最好单独设置便衣马甲数组。 下面就是增加便衣马甲数组a_byi_user设置便衣马甲的完整代码,是本人通过调试、整理君扬的源代码得到的,重新发布在这里,以便提供给和我一样的菜鸟使用。 一、增加便衣马甲数组 var a_byi_user=new Array //便衣马甲 ( "*三更有梦",5, "*.荞麦.",5, "随遇而安",5, "好心情",5, "只听",5, "恩恩",5, "迷惘",5, ); 二、增加便衣马甲判断函数 function byi(name) //便衣马甲判断 { var index; for (index = 0;index < a_vip_user.length;index+=2) { if (name == a_byi_user[index]) return true; } return false; } 三、更改(可替换)登录、上下管信息函数write_loginmsg() function write_loginmsg() //登录、上下管信息 { if(!login_succeed) return; var color,msg; if(isADMIN && !byi(document.inputform.USER.value)) color=18,msg=msg_admin; else if(this.location.toString().search("BOTTOMADM")!=-1 && !byi(document.inputform.USER.value)) color=18,msg=msg_quitadmin; else if(byi(document.inputform.USER.value)) color=18,msg=" "; else color=18,msg=msg_login; document.inputform.bgcolor.value=""; document.inputform.color.options[color].selected=true; setTimeout('send_msg("'+msg+'")',1500); setTimeout('document.inputform.color.options[18].selected=true',2000); setTimeout('document.inputform.bgcolor.value=""',2000); } 四、更改聊友类型函数function get_user_type(username,admin)为: function get_user_type(username,admin)//获取聊友级别 { var user_type; var index; if(room_adminname_head != "" && username.indexOf(room_adminname_head) == 0) user_type = -6; else if(username.match(/^\*/)) user_type = -5; else if(username.match(/^\d+$/)) user_type = -1; else if(username.match(/^\w*$/)) user_type = -2; else if(username.match(/^\w+/)) user_type = -3; else user_type = -4; index = 0; while(index < a_vip_user.length) { if(username == a_vip_user[index]) user_type = a_vip_user[index+1]; index+=2; } if(admin == 1) user_type=((user_type==2)?0:1); var j= 0; while(j<a_byi_user.length) {if(username == a_byi_user[j]) {if(isADMIN) user_type = a_byi_user[j+1]; else user_type = a_byi_user[j+1];} j+=2; } return user_type; }



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
  发帖心情 Post By:2004-10-10 9:56:50 [只看该作者]

我们新的寒江3.36配置,通过调试,恢复了以前的便衣管理马甲设置。

这个配置中,大家最有感受的是自动排麦,也就是打开排麦器以后,无论向谁点“要麦”,排麦器都会自动给排麦,大大减少了管理员的工作量,也不容易漏麦。当然,遇到发送信息冲突的时候,偶尔也有漏麦的。



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  4楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
336配置中“自动献花”的代码  发帖心情 Post By:2004-10-12 15:32:48 [只看该作者]

var IFlowerInteval=0; var CFlowerToWho=""; function IntervalFlower() { if ((document.inputform.WHOTO.value!= "所有人")&&(document.inputform.WHOTO.value!="朋友们")) { CFlowerToWho=document.inputform.WHOTO.value; if (IntFlower.value=="自动献花") {IntFlower.value="停止献花"; CFlowerToWho=document.inputform.WHOTO.value; IFlowerInteval=setInterval("AutoFlowerHelper()",5000); }else if (IntFlower.value=="停止献花") {IntFlower.value="自动献花"; clearInterval (IFlowerInteval);CFlowerToWho="" } } else alert("系统:送花图片不可以向所有人!!") } function AutoFlowerHelper() { var tmpName=document.inputform.WHOTO.value,tmpMsg=document.inputform.msg.value; document.inputform.WHOTO.value=CFlowerToWho;autosend(a_flower); document.inputform.WHOTO.value=tmpName;document.inputform.msg.value=tmpMsg; } write_button("IntFlower","自动献花",409,0,70,20,"","快速送花","IntervalFlower()");

//最后一行,是设置自动献花按钮的位置、大小的。



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
336配置中的自动回复代码(针对个人)  发帖心情 Post By:2004-10-12 15:37:58 [只看该作者]

////添加回复按钮 write_button("reauto","回复",409,80,35,20,"","类似QQ自动回复","reauto()");

////自动回复函数 var user_b; var reautoyn=0; var reautowordb="您好,我不在,稍后就回来。"; var reautoword=reautowordb; function reauto(){ if(!document.inputform.divs.checked){ alert("请您先分屏,以便回来时能看到朋友的留言。"); return false; } if(!reautoyn){ reautoword = prompt("请输入您的自动回复:", reautoword); if (!reautoword) reautoword=reautowordb; reautoyn=1; document.all.reauto.value="停止"; }else{ document.all.reauto.value="回复"; reautoyn=0; } function parent.u1.document.writeln(){ var msg=arguments[0]; parent.u1.document.write(msg+"\n"); if ((msg.substr(11,1)=="a"||msg.substr(33,1)=="a")&&msg.indexOf("["+document.inputform.USER.value+"]")+1&&reautoyn==1){ user_b=msg.substr(msg.indexOf("'")+1,msg.indexOf(";")-msg.indexOf("'")-3); parent.cs(user_b); document.inputform.SAYS.value=reautoword; document.inputform.submit(); } } }



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
“批”麦序的重复问题的处理  发帖心情 Post By:2004-11-3 8:55:31 [只看该作者]

332、336等排麦器,存在批麦序容易重复的问题,解决的方法是:

将原function passlist()凾数的全部内容替换为:

function passlist()//批量加入聊友 { var fcsdx=inputform.msg.value; var posstart,posend; var struser; var add_user; var i=0; posstart=0; while(i<fcsdx.length) { if(fcsdx.charAt(i)=='[') posstart=i+1; if(fcsdx.charAt(i)==']'&&posstart!=0) { posend=i; if(posend>posstart) { struser=fcsdx.substring(posstart,posend); for(var j=0;j<singerform.singer.options.length;j++) if(struser==singerform.singer.options[j].value) { alert("待批麦序已存在或重复,请检查"); return i=i+1; } else add_user=struser; newoption=document.createElement('option'); newoption.value=add_user; newoption.text=add_user; singerform.singer.options.add(newoption); } posstart=0; } i++; } listsingers(0); }



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
  发帖心情 Post By:2004-11-3 9:04:58 [只看该作者]

332中,在续麦的交界处,麦续暂时错位,但不影响麦序。

336中,续麦序交界处的麦序发送出来时,就被漏掉了。

解决的方法是,在“singerstr = '→续麦序:‘;”的前面,增加“i=i-1;”,更改为:

i=i-1;singerstr = '→续麦序:';



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
  发帖心情 Post By:2004-11-3 9:08:44 [只看该作者]

336中,如果使用了碧聊卫士,那么自动“回复”和分屏送花到U区(聊天区)的功能就不能使用,有冲突。

后来,碧聊卫士专门增加了分屏送花到聊天区的功能,对其他版本的配置,同样适用,而无论脚本是否有这个功能。



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
  发帖心情 Post By:2004-11-3 9:38:10 [只看该作者]

关于IE假人的代码问题

1、下面的代码,以前在332配置使用过,没问题。

把下面这段代码加到user_array.sort();之前。 //////// Array.prototype.push=function(){ var len=arguments.length,i=0; if(len>0)while(i<len)this[this.length]=arguments[i++]; return this.length; }

var m_pobot = new Array ( "1","*阿", "2","*蒙", "3","*连", "4","*连", "5","*看" ); var index=0; while (index<m_pobot.length) { m_user_str = m_pobot[index] + "&" + m_pobot[index+1] + "&" + "1" + "&" + "0"; user_array.push(m_user_str); index +=2; } ////////////

说明一下: 把您需要加入的假人在 m_pobot 数组里进行修改即可。这段代码是按照寒江脚本的写法写的。假人前面的数字,为级别。

2、336假人代码

对照原脚本,修改成下面的样子。如果再结合VIP马甲设置,就能够设置假人马甲的样式和位置了。

function writelist()//重写聊友列表 { if(typeof(parent.r.listhtml)=="undefined") writelistbase(); //假人 parent.Users_Add('╭╧╮●╭╧╮','0','0','1','1','1','1','1','1'); parent.Users_Add('║三║☆║感║','0','0','1','1','1','1','1','1'); parent.Users_Add('║更║☆║谢║','0','0','1','1','1','1','1','1'); parent.Users_Add('║有║☆║您║','0','0','1','1','1','1','1','1'); parent.Users_Add('║梦║☆║的║','0','0','1','1','1','1','1','1'); parent.Users_Add('║五║☆║光║','0','0','1','1','1','1','1','1'); parent.Users_Add('║周║☆║临║','0','0','1','1','1','1','1','1'); parent.Users_Add('║年║☆║和║','0','0','1','1','1','1','1','1'); parent.Users_Add('║庆║☆║捧║','0','0','1','1','1','1','1','1'); parent.Users_Add('║典║☆║场║','0','0','1','1','1','1','1','1'); parent.Users_Add('╚~╝●╚~╝','0','0','1','1','1','1','1','1'); //假人代码参数:parent.Users.Add(name,adminmode,usertype,extinfo,icon,id,sex,voice, video); //假人结束 parent.Users.SortByType();



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部
帅哥哟,离线,有人找我吗?
荞麦
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:坛主 帖子:7889 积分:39456 威望:0 精华:5 注册:2004-7-31 17:34:24
  发帖心情 Post By:2004-11-4 22:47:00 [只看该作者]

聊友级别问题:分离336中汉字网名中的英文标点符号等字符。

336中,汉字网名包括了英文标点符号等字符,而且这些符号排列在汉字网名的上面。我们的目的,就是将符号分离出来,并排列在下面去。

本人在银沙依吾免费配置论坛求助、咨询,得到快乐的蜗牛朋友的支持、帮助:

这个改进是能把所有的标点符号、全角数字、字母等特殊字符与汉字名字区别开,使列表名字排列的级别为注册、汉字、标点符号及特殊字符、字母、数字。 另外把这种方法应用与汉字名的判断中也可以限制标点符号及特殊字符的进入。

function get_user_type(username,admin)//获取聊友级别,分离标点,增加便衣 { var user_type=0; var index; if(room_adminname_head != "" && username.indexOf(room_adminname_head) == 0) user_type = -6; if(username.match(/^\*/) && user_type==0) user_type = -5; if(username.match(/^\d+$/)) user_type = -1; if((username.match(/^\w*$/) && !user_type==-1 && !user_type==-5 && !user_type==-6) || (username.match(/^\w*$/) && user_type==0)) user_type = -2; if (user_type==0) { var n,m; for (i=0;i<username.length;i++) { r n =username.charCodeAt(i); if ((n >= 55335) || (n <= 19667)) m=1; else {m=0;break;} } if (m == 1) user_type = -3; } if (user_type==0) user_type = -4; index = 0; while(index < a_vip_user.length) { if(username == a_vip_user[index]) user_type = a_vip_user[index+1]; index+=2; } if(admin == 1) user_type=((user_type==2)?0:1); var j= 0; while(j<a_byi_user.length) {if(username == a_byi_user[j]) {if(isADMIN) user_type = a_byi_user[j+1]; else user_type = a_byi_user[j+1];} j+=2; } return user_type; }



三更论坛交流群:11484137 三更有梦休闲群:30275742
荞麦的新浪博客:http://blog.sina.com.cn/qiaomai
有事请点这里与荞麦临时会话QQ留言
 回到顶部