<?php
/*
\* ========================================================
\* 项目: CTB文本论坛
\* 版本: v1.2 Alpha
\* 团队: 实易数码
\* 小组: CTB文本论坛小组
\* 作者: 险情
\* 功能: CTB文本论坛安装模块
\* ========================================================
\* Copyright (c) 2002 
\* 团队主页: http://www.11cn.org
\* 团队信箱: ------------------
\* 创建日期: 2002/9/20/
\* 修改日期: 2002-12-29
\* 修改说明: ------------------
\* 版权声明: 这个程序是免费软件.
\* ========================================================
*/

//=============================================================================
if ($_GET) {
    @extract($_GET);
}
if ($_POST) {
    @extract($_POST);
}

//构造函数部分
  if (!$action) {
      show_install();
  }
  if ($action=="install_1") {
      install_1();
  }
  if ($action=="install_2") {
      install_2();
  }
    if ($action=="install_3") {
      install_3();
  }

//=============================================================================

//=============================================================================
function show_header($num)
//
{
     echo "<HTML><HEAD><TITLE>CTB安装程序</TITLE>
	      <meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\">
          <style type=\"text/css\">
          <!--
          A:link {text-decoration:none}
          A:visited {text-decoration:none}
          A:hover {  text-decoration:underline;  color:brown;}
          p,br,body,td,table,tr {color:black; font-size:9pt;}
          -->
          </style>
          </HEAD>
          <BODY bgcolor=\"f5f5f5\" text=\"000000\" leftmargin=\"10\"  marginwidth=\"10\" marginheight=\"10\" link=\"000000\" vlink=\"000000\" alink=\"000000\">
			  <br><center>

		  <br><br><table width=\"78%\" height=\"68%\"border=\"0\" cellspacing=\"1\" cellpadding=\"3\" bgcolor=\"6394bd\">
         <tr> 
          <td bgcolor=\"#6394bd\" colspan=\"6\"><font color=white><b>>>CTB安装程序第 $num 步<b></font></td>
         </tr>          
		  <tr>
          <td bgcolor=\"dee7ef\" align=center>
		  <table width=\"76%\"border=\"0\" cellspacing=\"0\" cellpadding=\"0\">        
		  <tr>
          <td align=\"left\">";
} // end func

//=============================================================================
function show_footer()
//
{
     echo "</td>
          </tr>
          </table><center><p>
          Copyright &copy; 2002 <a href=\"http://www.11cn.org\" target=_blank>实易数码=>>CTB开发小组</a>. All rights Reserved
          </center>    </td>
          </tr>
          </table>
          </BODY>
          </HTML>";   
} // end func
//=============================================================================
function show_install()
//进入安装程序主界面
{   
	show_header(1);
	if($getV=phpversion()){ 
        $getVInfo = explode(".",$getV);
		if($getVInfo[1]<2){
            die ("<center>您空间php版本需要大于4.2，请联系实易数码http://ctb.11cn.org");
		}
	}
    echo "<center><font size=3><b>CTB安装程序</b></font></center><p><center>
          <b>欢迎您使用实易数码的最新软件CTB</b><br><div align=left>进行安装前，请确认您<br><font color=red>1、已经将ctb所有程式文件所在的目录属性已经修改成777;<br>2、已经将include目录下面的config.php文件属性也已经修改成了777;<br>3、已经将admin目录下的tmp目录属性修改成了777;<br></div></font><br>
          <br><br>  此安装程式将引导您将CTB安装于您的服务器上 <br><br><b><a href=\"install.php?action=install_1\"> &gt;&gt; 点击此处执行下一步 &lt;&lt;</a></b>";
	show_footer();
} // end func

//=============================================================================
function install_1()
//检测文件，并提供目录输入框
{
   $filecheck=array('forumdisplay.php','main.php','member.php','moderate.php','modetopic.php','others.php','post.php','search.php','topicdisplay.php','usermgs.php','userread.php'); 
   $correct='<font color=green>OK</font>';
   $incorrect='<font color=red>不行，检测不通过</font>';
   $check=1; 
	show_header(2);
	echo "<br>检查组件，并且测试是否可以建立存储文件目录。<br><HR>";
   for ($i=0; $i<count($filecheck); $i++) {
	echo $filecheck[$i]." ....... ";
	if (file_exists("mods/".$filecheck[$i])) 
		echo $correct;
	else { 
		echo $incorrect; 
		$check=0; 
		}
		echo "<br>";
   }
	if (file_exists("index.php")) 
		echo "index.php ....... ".$correct;
	else { 
		echo "index.php  ....... ".$incorrect; 
		$check=0; 
		}
	//测试是否可以建立文件夹
		@rmdir("datatest");
	if (mkdir("datatest",0777) and $check==1) {
		rmdir("datatest");
		echo "</td>
          </tr><tr><td align=right><br><a href=\"install.php?action=install_2\"> &gt;&gt; 点击此处执行下一步 &lt;&lt;</a>";    
	}
	else {
	     echo "</tr><tr><td align=right><br>您的空间没有建立目录权限或着由于缺少文件，程序不能执行下一步";  
	}
	
   	show_footer();
} // end func



//=============================================================================
function install_2()
//
{
    show_header(3);
	echo "<br>建立文本数据库目录并创建超级管理员。<br><HR><table width=100%><tr>
	  <FORM action=install.php?action=install_3 method=post>
	 <td align='left' colspan=2>&nbsp;&nbsp;<b>建立文本数据库目录</b></td></tr><tr>
	 <td align='left' width='40%'>&nbsp;&nbsp;请输入您指定目录名称</td>
	 <td align='left' width='60%'><input type='text' name='data_dir' value='data'> 只需填写英文字母</td>
	</tr><table><br>";
	echo "<table width=100%><tr>
	 <td align='left' colspan=2>&nbsp;&nbsp;<b>建立超级用户</b></td></tr><tr>
	 <td align='left' width='40%'>&nbsp;&nbsp;请输入您的登陆名</td>
	 <td align='left' width='60%'><input type='text' name='admin_login'></td>
	</tr><tr>
	 <td align='left' width='40%'>&nbsp;&nbsp;请输入您的用户名</td>
	 <td align='left' width='60%'><input type='text' name='admin_name'></td>
	</tr><tr>
	 <td align='left' width='40%'>&nbsp;&nbsp;请输入您的密码</td>
	 <td align='left' width='60%'><input type='text' name='admin_pass'></td>
	</tr><tr>
	 <td  align='left' width='40%'>&nbsp;&nbsp;请重复输入密码</td>
	 <td  align='left' width='60%'><input type='text' name='admin_pass2'></td>
	</tr><tr>
	 <td  align='left' width='40%'>&nbsp;&nbsp;您的EMAIL 地址</td>
	 <td  align='left' width='60%'><input type='text' name='email'></td>
	</tr><tr>
	 <td  align='left' width='40%'>&nbsp;&nbsp;重复您的EMAIL 地址</td>
	 <td  align='left' width='60%'><input type='text' name='email2'></td>
	</tr>
		<tr><td colspan=2 align=right><br><input type='submit' value='执行下一步，请点击这里。' >
		 </td></form></tr> 
	 <table>";
	 show_footer();
} // end func



//=============================================================================
function install_3()
//
{    global $data_dir,$admin_name,$admin_pass,$admin_pass2,$email,$email2,$admin_login;

     //
    $data_dir=trim($data_dir);
	$admin_name=trim($admin_name);
    $admin_pass=trim($admin_pass);
    $admin_pass2=trim($admin_pass2);
	$email=trim($email);
	$email2=trim($email2);
	$admin_login=trim($admin_login);
	if (!$data_dir or !$admin_name or !$admin_pass or !$admin_pass2 or !$email or !$email2 or !$admin_login or $admin_pass!=$admin_pass2 or $email!=$email2) {
	    show_header(4);
        echo "<center>CTB安装程序</center><p><center>
          <b>欢迎您使用实易数码的最新软件CTB</b><br>
          <br><br>  <font color=red>您添入的数据不完整</font><br><br><b><a href=\"install.php?action=install_2\"> &gt;&gt; 点击此处返回上一步 &lt;&lt;</a></b>";
	    show_footer();
	    exit();	    
	}

	 $admin_pass=md5($admin_pass);
     //建立目录
	 if (file_exists($data_dir) or !is_writeable("./include/config.php")) {
	    show_header(4);
        echo "<center>CTB安装程序</center><p><center>
          <b>欢迎您使用实易数码的最新软件CTB</b><br>
          <br><br>  <font color=red>您想建立的数据目录文件已经存在，或config.php存在文件没有可写权限。</font><br><br><b><a href=\"install.php?action=install_2\"> &gt;&gt; 点击此处返回上一步 &lt;&lt;</a></b>";
	    show_footer();
	    exit();
	     
	 }
     
	 //建立程序存储主目录
	 mkdir($data_dir,0777);
	 mkdir($data_dir."/tmp",0777);
	 mkdir($data_dir."/users",0777);
	 mkdir($data_dir."/upface",0777);
	 mkdir($data_dir."/upfile",0777);
	 mkdir($data_dir."/bak",0777);

	 mkdir($data_dir."/1",0777);
     $fp=fopen("./".$data_dir."/1/status.php","w");
     fclose($fp);
     @chmod("./".$data_dir."/1/status.php",0777);


	 //创建头衔存储文件
	 $membertitle_txt = array("<?die();?>","5","侠客","pips2.gif","99999","\n<?die();?>","0","新手上路","pips1.gif","00000","\n");
	 add_line("./".$data_dir."/membertitle.php",$membertitle_txt);
	 
	 //创建封值在线数据文件
 	 $fp=fopen("./".$data_dir."/toponline.php","w");
     fclose($fp);    
     @chmod("./".$data_dir."/toponline.php",0777);
     
	 //创建在线数据文件
	 $fp=fopen("./".$data_dir."/online.php","w");
     fclose($fp);
     @chmod("./".$data_dir."/online.php",0777);
     
	 //创建禁止用户列表文件
	 $fp=fopen("./".$data_dir."/bluser.php","w");
     fclose($fp);
     @chmod("./".$data_dir."/bluser.php",0777);
	 
	 //向创建的版块中写入数据
	 $statusArray = array("<?die();?>","0","0","0","0","0","0","0","0","0","0","0");
	 add_line("./".$data_dir."/status.php",$statusArray);




     //创建摸版文件并写入文件
	 $template_txt = array("<?die();?>","ctb","CTB论坛默认模版","","\n");
	 add_line("./".$data_dir."/templates.php",$template_txt);
	 //创建超级管理员
	 $adminuser_txt = array("<?die();?>","1",$admin_login,$admin_name,$admin_pass,"1","","\n");
	 add_line("./".$data_dir."/adminuser.php",$adminuser_txt);
	 //
	 $userlist = array("<?die();?>","1","1","1",$admin_name,"");
	 add_line("./".$data_dir."/member.php",$userlist);
	 $member = array("<?die();?>","1",$admin_login,$admin_name,"1",$email,"","","","","",time(),time(),"0","no_portait.gif","","管理员","pips00.gif","0","","","","","","","","");
	 add_line("./".$data_dir."/users/1.php",$member);
	
	 $userlist2 = array("<?die();?>","1",$admin_login,$admin_pass,$admin_name,"1","","\n");
	 add_line("./".$data_dir."/users/list.php",$userlist2);
	
    //创建不良词语过滤列表文件
	$fp=fopen("./".$data_dir."/badword.php","w");
     fclose($fp);
     @chmod("./".$data_dir."/badword.php",0777);
    
	//创建日志文件
	$fp=fopen("./".$data_dir."/log_userlogin.php","w");
     fclose($fp);
    //
	$fp=fopen("./".$data_dir."/log_adminlogin.php","w");
     fclose($fp);
    //
	$fp=fopen("./".$data_dir."/log_manage.php","w");
     fclose($fp);
	//创建论坛版块目录
	$forum_list = array("<?die();?>","cat","24343534","CTB主论坛","说明","","","","\n<?die();?>","forum","1","谈天说地大家随便聊聊：）增加彼此了解。","0","0","0","","\n");
	 add_line("./".$data_dir."/forums.php",$forum_list);
	 //
	    //系统数据正式写入系统
	    $new_system="<?php
/*
\* ========================================================
\* 项目: CTB文本论坛
\* 版本: v1.2
\* 团队: 实易数码
\* 小组: CTB文本论坛开发组
\* 作者: windnets,16hot,险情
\* 功能: CTB论坛属性设置
\* ========================================================
\* Copyright (c) 2002 
\* 团队主页: http://www.11cn.org
\* 技术论坛: http://ctb.11cn.org
\* 创建日期: 2002/5/1/
\* 修改日期: ------
\* 修改说明: ------
\* 版权声明: 这个程序是免费软件.
\* ========================================================
*/

//=============================================================================
//设置论坛名称
\$set[ctbTitle] = \"CTB文本论坛\";  //论坛名字

//+---------------------------------------------------------
//数据文件路径
\$set[dataPath] = \"./$data_dir\"; //数据存储路径

//+---------------------------------------------------------
//模板文件路径
\$set[tplMode] = \"ctb\";  //模版路径
\$set[tplRoot] = \"./templates/\";  //模版文件夹

//+---------------------------------------------------------
//ctb所在url
\$set[webPath] = \"http://ctb.11cn.org/\";  //ctb的web地址

//+---------------------------------------------------------
//日期格式设定
\$set[dateformat] = \"Y-m-d H:i:s\"; //发表主题限制 秒数

//+---------------------------------------------------------
//版块文章分页显示
\$set[topicList] = \"18\"; //每页显示的主题数量 
\$set[postList] = \"10\"; //主题分页每页显示帖子
\$set[pageLimit] = \"10\"; //页数s

//+---------------------------------------------------------
//注册用户显示
\$set[userList] = \"30\"; //每页显示的主题数量 

//+---------------------------------------------------------
//短信息显示
\$set[msgList] = \"8\"; //每页显示的主题数量 
\$set[msgMax] = \"40\" ; //最大消息数量

//+---------------------------------------------------------
//防止灌水时间设定
\$set[limitReplyTime] = \"1\"; //回复限制 秒数
\$set[limitPostTime] = \"3\"; //发表主题限制 秒数

//+---------------------------------------------------------
//论坛标题截取
\$set[postTopicWidth] = \"80\";  //发表文章标题长度
\$set[postCommonWidth] = \"10000\"; //发表文章内容长度
\$set[showIndexTopicWidth] = \"42\"; //首页标题截取
\$set[showForumTopicWidth] = \"80\"; //文章列表标题截取

//+---------------------------------------------------------
//是否显示联盟论坛
\$set[showLinkForum] = \"N\"; //Y滚动N不显示
\$set[rollLinkForum] = \"N\"; //Y显示N不滚动

//+---------------------------------------------------------
//是否显示版块在线
\$set[refreshLimit] = \"N\";  //防止恶意刷新
\$set[refreshLimitTime] = \"2\";  //防止恶意刷新时间
\$set[showOnlineTime] = \"900\";  //多长时间为在线
\$set[showIndexOnline] = \"Y\";  //Y显示N不显示（首页）
\$set[showForumOnline] = \"Y\";  //Y显示N不显示（分类）

//+---------------------------------------------------------
//是否允许上传附件
\$set[allowUploadFile] = \"Y\";  //是否允许上传附件
\$set[uploadFileLimit] = \"2\";  //上传附件最小发帖子数量
\$set[downloadFileLimit] = \"2\";//下载附件最小发帖子数量
\$set[uploadFileType] = \"jpg|gif|zip|txt|rar|html|htm|bmp|png|dot|ppt\";  //允许上传文件类型
\$set[uploadFileSize] = \"5000\";  //允许上传文件大小

//+---------------------------------------------------------
//是否允许上传个人头像
\$set[allowUploadPhoto] = \"Y\";  //是否允许上传头像
\$set[uploadPhotoLimit] = \"0\";  //上传投降最小发帖子数量
\$set[uploadPhotoType] = \"jpg|gif|bmp|png\";  //允许上传图片类型
\$set[uploadPhotoSize] = \"50000\";  //允许上传图片大小
\$set[uploadPhotoHeight] = \"160\";  //允许上传图片高
\$set[uploadPhotoWidth] = \"120\";  //允许上传图片宽

//+---------------------------------------------------------
//加密版块设置
\$set[forumHide] = \"N\"; //Y显示N隐藏

//+---------------------------------------------------------
//联盟论坛设置
\$set[showLinkForum] = \"N\"; //Y显示N不显示      
\$set[rollLinkForum] = \"N\"; //Y显示N不滚动  

//+---------------------------------------------------------
//邮件属性设置
\$set[emailAdmin] = \"$email\"; //管理员的邮件地址   
\$set[emailMode] = \"mail\"; //选择邮件发送类型（smtp，mail） 

//+---------------------------------------------------------
//邮件属性设置
\$set[smtpHost] = \"smtp\"; //smtp服务器地址    
\$set[smtpUserName] = \"smtp\"; //信箱名称        
\$set[smtpPassWord] = \"smtp\"; //信箱密码       

//==========================================================
//+---------------------------------------------------------
//论坛注册设置
\$set[allowRegister] = \"Y\"; //是否允许注册
\$set[registerLimitIp] = \"Y\"; //是否限制同一ip注册用户
\$set[registerLimitTime] = \"3600\"; //限制同一ip注册时间
\$set[registerSentPass] = \"N\"; //是否进行注册认证
\$set[registerEmailSubmit] = \"email\"; //邮件确认

//+---------------------------------------------------------
//论坛是否关闭
\$set[openLimit] = \"N\";  //Y开启N关闭，开启后将对访问进行限制
\$set[openLimitGuest] = \"N\";  //Y开启N关闭，开启后将禁止防客访问
\$set[openLimitShow] = \"本论坛只对注册用户开放:本论坛正在测试中。\";  //论坛限制开启理由
\$set[boardClose] = \"N\";  //Y关闭N开启
\$set[boardCloseShow] = \"CTB文本论坛数据正在整理中，暂停访问，谢谢合作！\"; //关闭理由

//+---------------------------------------------------------
//其他选项
\$set[enableZip] = \"N\";  //Y是N否，是否使用网页压缩输出
\$set[replaceWhenPost] = \"Y\";  //Y是N否，是否在发表时进行脏话过滤
\$set[logRecord] = \"Y\";  //Y是N否，是否打开论坛日志
\$set[logRecordSize] = \"200\";  //当论坛日志达到最大时自动清除

//+---------------------------------------------------------

//=============================================================================
?".">";
    $fp=fopen("./include/config.php","w");
    fwrite($fp, $new_system);
    fclose($fp);
     @chmod("./include/config.php",0755);

	show_header(5);
    echo "<center>CTB安装程序</center><p><center>
          <b>欢迎您使用实易数码的最新软件CTB</b><br>
          <br><br>  <font color=red>您已经成功将CTB安装在您的网站上了 </font><br><br><b><a href=\"admin/main.php?mod=login\"> &gt;&gt; 点击此处进入管理面版 &lt;&lt;</a></b>";
	show_footer();
    unlink("install.php");

} // end func


//=============================================================================
	function add_line($filename,$array) {  
		$s=implode("\x0E",$array);    
		$f=fopen($filename,"w");    
		flock($f,LOCK_EX);
		fputs($f,$s);       
		fclose($f); 
         @chmod($filename,0777);
	}   




















//=============================================================================
?>