插件名称: 邀请注册插件(金钱购买版)
插件说明:用论坛金钱购买邀请量的邀请注册插件
开发作者:ThunderBird
完成时间:2005-04-24
程序版本:1.0
修改难度:中等
所属插件分类:扩展类
演示地址
============================================
============================================
执行SQL语句:
注意,在运行SQL语句前,请确定数据表的前缀!修改 mxb_ 为你现在的数据库的表的前缀!
代码:
CREATE TABLE `mxb_invitehash` (
`invitehash` varchar(32) NOT NULL default '',
`email` varchar(255) NOT NULL default '',
`timeout` int(10) NOT NULL default '0'
) TYPE=MyISAM;
CREATE TABLE `mxb_invitelist` (
`userid` int(10) NOT NULL default '0',
`email` varchar(255) NOT NULL default '',
`invitetime` int(10) NOT NULL default '0'
) TYPE=MyISAM;
ALTER TABLE `mxb_userextra` ADD `invitetotal` INT(3) NOT NULL;
ALTER TABLE `mxb_userextra` ADD `inviteleft` INT(3) NOT NULL;
INSERT INTO `mxb_setting` VALUES ('', '是否使用邀请注册插件', '如果选择“否”的话,将关闭使用邀请注册功能。', 19, 'yes_no', 'caninvite', '', '1', '', 1, 1);
INSERT INTO `mxb_setting` VALUES ('', '购买邀请注册的花费', '购买一个邀请用户注册所需要的花费', 19, 'input', 'buyinvitecose', '', '2000', '', 2, 1);
INSERT INTO `mxb_setting` VALUES ('', '最多一次可以购买数量', '最多一次可以购买多少个邀请用户注册的数量', 19, 'input', 'buyinviteonce', '', '5', '', 3, 1);
INSERT INTO `mxb_setting` VALUES ('', '邀请注册码有效时间 (单位: 小时)', '发送后的邀请注册码有效时间,如果超过了注册码的有效时间,注册码将会失效!', 19, 'input', 'invitetimeout', '', '24', '', 4, 1);
INSERT INTO `mxb_settinggroup` VALUES ('', '邀请注册', '邀请用户注册基本设置', 5);
INSERT INTO `mxb_template` VALUES ('', 2, 'invite', 'invite_index', '<div class=''pformstrip''>{$lang[''sendinvitetitle'']}</div>\n<div style=''padding:4px''>\n<table width=''100%'' border="0" cellspacing="1" cellpadding="4" id=''ttable''>\n<tr>\n<td width=''20%'' class=''row2''>{$lang[''invitetotal'']}:</td>\n<td width=''80%'' class=''row3''> {$userinviteleft}</td>\n</tr>\n<tr>\n<td width=''20%'' class=''row2''>{$lang[''invited'']}:</td>\n<td width=''80%'' class=''row3''> {$userinvitetotal}</td>\n</tr>\n<tr>\n<td width=''20%'' class=''row2''>{$lang[''buyinvitecost'']}:</td>\n<td width=''80%'' class=''row3''><font color=''red''>{$bboptions[''buyinvitecose'']}</font></td>\n</tr>\n<tr>\n<td width=''20%'' class=''row2''>{$lang[''buyinvite'']}:</td>\n<td width=''80%'' class=''row3''>\n<form name=''buyinvite'' method=''post'' action='./../../&'#039;'invite.php?do=buyinvite''>\n<table><tr><td>\n<input type=''text'' size=''5'' name=''buynum'' value=''1'' class=''bginput'' />\n<input type=''submit'' class=''button'' value=''{$lang[''buy'']}'' />\n{$buynote}\n</td></tr></table>\n</form>\n</td>\n</tr>\n<tr>\n<td width=''20%'' class=''row2''>{$lang[''sendinvite'']}:</td>\n<td width=''80%'' class=''row3''>\n<form name=''sendinvite'' method=''post'' action='./../../&'#039;'invite.php?do=sendinvite''>\n<table><tr><td>\n<input type=''text'' size=''50'' name=''emailaddress'' value='''' class=''bginput'' />\n<input type=''submit'' class=''button'' value=''{$lang[''send'']}'' /><br />\n{$sendnote}\n</td></tr></table>\n</form>\n</td>\n</tr>\n</table>\n</div>\n\n<div class=''pformstrip''>{$lang[''noacceptlist'']}</div>\n<div style=''padding:4px''>\n<table width=''100%'' border="0" cellspacing="1" cellpadding="4" id=''ttable''>\n<tr class=''tcat''>\n<td align=center width=10%>{$lang[''sentmail'']}</td>\n<td align=center width=10%>{$lang[''sendtime'']}</td>\n<td align=center width=10%>{$lang[''option'']}</td>\n</tr>\n<foreach="$listdata AS $list">\n<#CODEBEGIN#>\n$senddate = gmdate(''Y-m-d'',$list[''invitetime'']);\n<#CODEEND#>\n<tr>\n<td align=''center'' class=''row2''>{$list[''email'']}</td>\n<td align=''center'' class=''row3''>{$senddate}</td>\n<td align=''center'' class=''row2''><input type=''button'' class=''button'' value=''{$lang[''resend'']}'' onclick=javascript:window.location="invite.php?do=resend&email={$list[''email'']}" />\n</td>\n</tr>\n</foreach>\n</table>\n</div>\n\n</td>\n</tr>\n</table>\n<br clear="all" />');
INSERT INTO `mxb_template` VALUES ('', 2, 'invite', 'invite_error', '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> \n<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"> \n<head>\n<title>{$lang[''error'']}</title>\n{CACHE_CSS}\n</head>\n<body>\n<div style=''margin: 200px auto 0 auto;''>\n<table align=''center'' width=''40%'' cellpadding=''0'' cellspacing=''0'' border=''0'' class="ttable">\n<tr> \n<td class=''thead''>\n{$title}\n</td>\n</tr>\n<tr> \n<td class="tablepad" width=''100%'' align=''center''>\n<br /><p>{$text}</p>\n<p>\n(<a href=''javascript:history.back(0)''>{$lang[''url'']}</a>)\n</p>\n</td>\n</tr>\n</table>\n</div>\n</body>\n</html>');
INSERT INTO `mxb_template` VALUES ('', 2, 'invite', 'invite_code', '<div id=''maintable''>\n<table width=''100%'' cellpadding=''0'' cellspacing=''0''>\n<tr>\n<td id="ucpmenu" valign="top">\n<div class=''maintitle'' align=''center''>\n{$lang[''entercode'']}\n</div>\n<table width=''100%'' border="0" cellspacing="1" cellpadding="4" id=''ttable''>\n<tr>\n<td class=''row2''>{$lang[''inputinvitecode'']}:</td>\n<td class=''row3''>\n<form name=''checkcode'' method=''post'' action='./../../&'#039;'invite.php?do=invited''>\n<table><tr><td>\n<input type=''text'' size=''100'' name=''code'' value='''' class=''bginput'' />\n<input type=''submit'' class=''button'' value=''{$lang[''ok'']}'' />\n</td></tr></table>\n</form>\n</td>\n</tr>\n</td>\n</tr>\n</table>\n</td>\n</tr>\n</table>\n</div>');
INSERT INTO `mxb_template` VALUES ('', 2, 'invite', 'invite_register', '<script type="text/javascript" src='./../../&'#039;'./clientscripts/register.js''></script>\n<if="!$_INPUT[''step'']">\n<form action=''invite.php?do=invited'' name=''terms'' method=''post'' onsubmit=''return agree_terms()''>\n<input type=''hidden'' name=''step'' value=''2'' />\n<input type=''hidden'' name=''code'' value=''{$code}'' />\n<input type=''hidden'' name=''s'' value=''{sessionid}'' />\n<table width=''100%'' cellpadding=''4'' cellspacing=''1'' id=''ttable''>\n<tr> \n<td colspan=''2'' class=''thead''>\n{$lang[''registerterms'']}\n</td>\n</tr>\n<tr>\n<td class=''pformstrip''>{$lang[''registertermsdesc'']}:</td>\n</tr>\n<tr>\n<td class=''tablepad'' width=''100%'' align=''center''>\n<div style=''width:80%;border:1px black solid;padding:6px;text-align:left;height:200px;overflow:auto''>{$text}</div>\n<label for=''agree_cbox''><input type=''checkbox'' style=''vertical-align:middle'' id=''agree_cbox'' name=''agree_to_terms'' value=''1'' /> <strong>{$lang[''agreetoterms'']}</strong></label>\n</div>\n<br /><br />\n<input type="submit" value="{$lang[''continuestep'']} > >" style=''font-weight:bold;font-size:14px'' class="button" />\n</td>\n</tr>\n</table>\n</form>\n<else>\n<form action="invite.php?do=invited" method="post" name=''REG'' onsubmit=''return validate()''>\n<input type=''hidden'' name=''code'' value=''{$code}'' />\n<input type=''hidden'' name=''step'' value=''3'' />\n<input type=''hidden'' name=''agree_to_terms'' value=''1'' />\n<input type=''hidden'' name=''do'' value=''invited'' />\n<table width=''100%'' cellpadding=''4'' cellspacing=''1'' id=''ttable''>\n<tr> \n<td colspan=''2'' class=''thead''>\n<img src=''images/<#IMAGE#>/nav_m.gif'' border=''0'' alt='''' /> {$lang[''register'']}\n</td>\n</tr>\n<tr>\n<td class=''tablepad''>\n<table cellpadding=''0'' cellspacing=''0'' width=''100%''>\n<tr>\n<td width=''50%'' valign=''top'' style=''padding:10px''>\n<fieldset>\n<legend><strong>{$lang[''_username'']}:</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td>{$lang[''namedesc'']} <span style=''color:#555''>(<a href=''#'' style=''cursor:help;color:#555'' title=''{$lang[''namefaq'']}''>?</a>)</span></td>\n</tr>\n<tr>\n<td><input type=''text'' size=''50'' maxlength=''64'' value=''{$_POST[''username'']}'' name=''username'' class=''bginput'' /></td>\n</tr>\n</table>\n</fieldset>\n<br />\n<fieldset>\n<legend><strong>{$lang[''_password'']}:</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td width=''1%'' nowrap=''nowrap''>{$lang[''passworddesc'']} <span style=''color:#555''>(<a href=''#'' style=''cursor:help;color:#555'' title=''{$lang[''passwordfaq'']}''>?</a>)</span></td>\n<td width=''100%''>{$lang[''confirmpassword'']} <span style=''color:#555''>(<a href=''#'' style=''cursor:help;color:#555'' title=''{$lang[''confirmpasswordfaq'']}''>?</a>)</span></td>\n</tr>\n<tr>\n<td><input type=''password'' size=''25'' maxlength=''32'' value=''{$_POST[''password'']}'' name=''password'' class=''bginput'' /></td>\n<td><input type=''password'' size=''25'' maxlength=''32'' value=''{$_POST[''passwordconfirm'']}'' name=''passwordconfirm'' class=''bginput'' /></td>\n</tr>\n</table>\n</fieldset>\n<br />\n<fieldset>\n<legend><strong>{$lang[''_email'']}:</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td width=''1%'' nowrap=''nowrap''>{$lang[''_email'']} <span style=''color:#555''>(<a href=''#'' style=''cursor:help;color:#555'' title=''{$lang[''emailfaq'']}''>?</a>)</span></td>\n<td width=''100%''>{$lang[''confirmemail'']} <span style=''color:#555''>(<a href=''#'' style=''cursor:help;color:#555'' title=''{$lang[''confirmemailfaq'']}''>?</a>)</span></td>\n</tr>\n<tr>\n<td><input type=''text'' size=''25'' maxlength=''50'' value=''{$_POST[''email'']}'' name=''email'' class=''bginput'' /></td>\n<td><input type=''text'' size=''25'' maxlength=''50'' value=''{$_POST[''emailconfirm'']}'' name=''emailconfirm'' class=''bginput'' /></td>\n</tr>\n<if="$show[''extra'']">\n<tr>\n<td width=''100%'' colspan=''2''>{$lang[''emailextra'']}</td>\n</tr>\n</if>\n</table>\n</fieldset>\n<if="$show[''gd'']">\n<br />\n<input type=''hidden'' name=''regimagehash'' value=''{$regimagehash}'' />\n<fieldset>\n<legend><strong>{$lang[''affirmimagehash'']}</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td width=''1%'' style=''line-height:120%''>\n{$lang[''affirmimagehash'']}<div class=''desc''>{$lang[''inputimagecode'']}</div>\n<input type=''text'' size=''30'' maxlength=''32'' name=''imagestamp'' class=''bginput'' />\n</td>\n<td align=''center''><img src=''register.php?{sessionurl}do=showimage&rc={$regimagehash}'' border=''0'' alt='''' /></td>\n </tr>\n </table>\n</fieldset>\n<elseif="$show[''gif'']">\n<br />\n<input type=''hidden'' name=''regimagehash'' value=''{$regimagehash}'' />\n<fieldset>\n<legend><strong>{$lang[''affirmimagehash'']}</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td width=''1%'' style=''line-height:120%''>\n{$lang[''affirmimagehash'']}<div class=''desc''>{$lang[''inputimagecode'']}</div>\n<input type=''text'' size=''30'' maxlength=''32'' name=''imagestamp'' class=''bginput'' />\n</td>\n<td align=''center''>{$image}</td>\n </tr>\n </table>\n</fieldset>\n</if>\n</td>\n<td width=''50%'' valign=''top'' style=''padding:10px''>\n<fieldset>\n<legend><strong>{$lang[''optional'']}</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td>{$lang[''optionaldesc'']}</td>\n</tr>\n<tr>\n<td>\n<input type=''checkbox'' name=''showsignatures'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$showsignatures} /> {$lang[''showsignatures'']}<br />\n<input type=''checkbox'' name=''showimages'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$showimages} /> {$lang[''showimages'']}<br />\n<input type=''checkbox'' name=''showavatars'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$showavatars} /> {$lang[''showavatars'']}<br />\n<input type=''checkbox'' name=''usepm'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$usepm} /> {$lang[''usepm'']}<br />\n<input type=''checkbox'' name=''pmpop'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$pmpop} /> {$lang[''pmpop'']}<br />\n<input type=''checkbox'' name=''emailonpm'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$emailonpm} /> {$lang[''emailonpm'']}<br />\n<input type=''checkbox'' name=''usewysiwyg'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$usewysiwyg} /> {$lang[''usewysiwyg'']}<br />\n<input type=''checkbox'' name=''hideemail'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$hideemail} /> {$lang[''hideemail'']}<br />\n<input type=''checkbox'' name=''allowadmin'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$allowadmin} /> {$lang[''allowadmin'']}<br />\n</td>\n</tr>\n</table>\n</fieldset>\n<br />\n<fieldset>\n<legend><strong>{$lang[''gender'']}</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td>{$lang[''genderdesc'']}</td>\n</tr>\n<tr>\n<td>\n<input type="radio" name="gender" value="" checked="checked"> {$lang[''unknowgender'']} \n<input type="radio" name="gender" value="1"> {$lang[''male'']} \n<input type="radio" name="gender" value="2"> {$lang[''famale'']}\n</td>\n</tr>\n</table>\n</fieldset>\n<br />\n<fieldset>\n<legend><strong>{$lang[''timezone'']}</strong></legend>\n<table width=''100%'' cellpadding=''4'' cellspacing=''0''>\n<tr>\n<td>{$lang[''timezonedesc'']}</td>\n</tr>\n<tr>\n<td>\n{$time_select}\n<br /><br />\n<input type=''checkbox'' name=''dst'' value=''1'' style=''vertical-align:middle'' class=''checkbox'' {$dst_checked} /> {$lang[''usedst'']}\n</td>\n</tr>\n</table>\n</fieldset>\n</td>\n</tr>\n<tr>\n<td colspan=''2'' align=''center''>\n<input type=''button'' style=''font-weight:bold;font-size:14px'' class=''button'' value=''{$lang[''moreinfo'']}'' onclick=''toggleview("more");''> <input type="submit" value="{$lang[''finalregister'']} > >" style=''font-weight:bold;font-size:14px'' class="button" />\n</tr>\n</table>\n</td></tr>\n</table>\n<div style=''display:none'' id=''more''>\n<br />\n<table width=''100%'' cellpadding=''4'' cellspacing=''1'' id=''ttable''>\n<tr> \n<td class=''thead''>\n{$lang[''contactinfo'']}\n</td>\n</tr>\n<tr>\n<td class=''tablepad''>\n <div align=''center''>\n <table cellspacing=''0'' cellpadding=''4'' width=''100%''>\n <tr>\n <td width=''100%'' valign=''top''>\n <fieldset style=''padding:12px;''>\n <legend><strong>{$lang[''website'']}</strong></legend>\n <input type=''text'' size=''70'' name=''website'' value=''{$_POST[''website'']}'' class=''bginput'' />\n </fieldset>\n </td>\n </tr>\n </table>\n<table cellspacing=''0'' cellpadding=''4'' width=''100%''>\n<tr>\n<td width=''100%'' valign=''top''>\n<fieldset style=''padding:12px;''>\n<legend><strong>{$lang[''instantmessages'']}</strong></legend>\n<table cellspacing=''0'' cellpadding=''4'' width=''100%''>\n<tr>\n<td width=''40%'' align=''left''>{$lang[''qq'']}</td>\n<td width=''60%'' align=''left''><input type=''text'' size=''20'' name=''qq'' value=''{$_POST[''qq'']}'' class=''bginput'' /></td>\n</tr>\n<tr>\n<td align=''left''>{$lang[''msn'']}</td>\n<td align=''left''><input type=''text'' size=''20'' name=''msn'' value=''{$_POST[''msn'']}'' class=''bginput'' /></td>\n</tr>\n<tr>\n<td align=''left''>{$lang[''aim'']}</td>\n<td align=''left''><input type=''text'' size=''20'' name=''aim'' value=''{$_POST[''aim'']}'' class=''bginput'' /></td>\n</tr>\n<tr>\n<td align=''left''>{$lang[''yahoo'']}</td>\n<td align=''left''><input type=''text'' size=''20'' name=''yahoo'' value=''{$_POST[''yahoo'']}'' class=''bginput'' /></td>\n</tr>\n<tr>\n<td align=''left''>{$lang[''icq'']}</td>\n<td align=''left''><input type=''text'' size=''20'' name=''icq'' value=''{$_POST[''icq'']}'' class=''bginput'' /></td>\n</tr>\n</table>\n</fieldset>\n</td>\n</tr>\n</table>\n<input type="submit" value="{$lang[''finalregister'']} > >" style=''font-weight:bold;font-size:14px'' class="button" />\n</div>\n</td>\n</tr>\n</table>\n</div> \n</form>\n</if>');
INSERT INTO `mxb_templategroup` VALUES ('', 'invite_index', '<<<usercp_menu>>>\n<<<invite_index>>>\n', 0);
INSERT INTO `mxb_templategroup` VALUES ('', 'invite_error', '<<<invite_error>>>\n', 1);
INSERT INTO `mxb_templategroup` VALUES ('', 'invite_code', '<<<invite_code>>>\n', 0);
INSERT INTO `mxb_templategroup` VALUES ('', 'invite_register', '<<<invite_register>>>\n', 0);
============================================
============================================
文件修改:
1。打开lang/global.php文件
找到:
'subscribedthread' => '以来的订阅主题',
在后面添加:
'invite' => '邀请会员注册',
2.修改模版 usercp_menu
找到:
代码:
<img src='images/<#IMAGE#>/arrow.gif' border='0' alt='' /> <a href='usercp.php?{sessionurl}do=editavatar'>{$lang['editavatar']}</a><br />
在后面添加:
代码:
<if="$bboptions['caninvite']">
<img src='images/<#IMAGE#>/arrow.gif' border='0' alt='' /> <a href='invite.php?{sessionurl}'>{$lang['invite']}</a><br />
</if>
============================================
============================================
备注说明:
1.安装完后请更新风格缓存
2.更新缓存管理的settings 或者 设置一下 常规设置->邀请注册
3.所有设置都在 常规设置 中
此帖由 非凡猪 在 2005-05-18 12:13 进行编辑...