<?

$thisprog="userbackup.php";

require("adminglobal.php");
require("datafile/config.php");

print "<tr><td bgcolor=#80809b colspan=2><font color=#FFFFFF>
            <b>欢迎来到讨论区管理程式 / 用户数据导入和导出</b>
            </td></tr>";

if (empty($action)) {
print <<<EOT
    <tr>
    <td bgcolor=#EEEEEE align=center colspan=2>
    <b>请选择动作</b>
    </td>
    </tr>          
                
    <tr>
    <td bgcolor=#FFFFFF colspan=2><br>$tab_top
    本程式使得文本用户数据可以象数据库一样方便的管理。<br>导出时不会在本地生成文件造成安全问题和还要FTP的麻烦，<br>在导入恢复时又不会破坏现有增加数据。
    $tab_bottom <br><br>
    <b><a href="dumpuser.php">导出用户数据库</a></b><br><br>
    $tab_top
    可以防止用户数据破坏，也可以方便转移用户库数据。<br>
    <br>&gt;&gt;<a href="dumpuser.php">点击这里生成并下载用户数据包</a>
    $tab_bottom
<br><br>
    <b>还原用户数据库</b><br><br>
<form method="post" action="$thisprog" enctype="multipart/form-data">    
    $tab_top
    转移用户库数据后，或者用户数据被破坏，就可以使用此功能把导入原有的用户库数据。<BR>
    注意：不同于 LeoBoard，这种导入<b>不会</b>影响导出后新注册的数据<BR><BR>
<input type="file" name="user_file">  <input type="submit" value="提 交"><br>
<input type=hidden name="action" value="restore">遇到相同名称用户：
<input type="radio" name="cover" checked value="no">跳过
<input type="radio" name="cover" value="yes">覆盖
    $tab_bottom
    </form>
    </td>
    </tr>
    </td></tr></table></body></html>
EOT;
	exit;
} else {
	$check=1;
	if(empty($user_file) || $user_file == "none" || !ereg("^php[0-9A-Za-z_.-]+$", basename($user_file))) {$check=0; $reason="请选择文件并导入"; }
	if ($check==1 && !ereg("(\.vib)$",$user_file_name)) { $check=0; $reason="请确定导入文件由 VIB 管理程序生成"; }
	
	if ($check==1) {
		if ($cover!="yes") $cover="no";
		$user_file=explode("\n",readfromfile($user_file));
		$count=count($user_file);
		$subcover=0;
		if (empty($user_file[$count-1])) unset($user_file[$count-1]);
		for ($i=0; $i<$count; $i++) {
			$user_detail=explode("|",$user_file[$i]);
			if (file_exists("$id_unique/$user_detail[0]")) {
				$subcover++;
			 	if ($cover=="no") continue;
			}
			#echo "$user_file[$i]<br>";
			writetofile("$id_unique/$user_detail[0]",$user_file[$i]);
		}
		$olduserdata=explode("|",readfromfile("datafile/newuser.php"));
		$olduserdata[1]=$olduserdata[1]+$count-$subcover;
		writetofile("datafile/newuser.php",$olduserdata[0]."|".$olduserdata[1]."|".$olduserdata[2]);

print <<<EOT
		<tr>
		<td bgcolor=#FFFFFF align=center colspan=2>
		<b>用户数据导入成功</b><br><br>
		$tab_top
		用户数据已经导入，详细数据列表：<br><br>
		总共导入用户 <b>$count</b> 名<br>
		覆盖/跳过 <b>$subcover</b> 名<br>
		目前共有用户 <b>$olduserdata[1]</b> 名<br>
		$tab_bottom
		</td></tr>
		</td></tr></table></body></html>
EOT;
		exit;
	} else {
	print <<<EOT
	<tr>
        <td bgcolor=#FFFFFF align=center colspan=2>
        <b>用户数据导入失败</b><br><br>
	$tab_top
        用户数据导入失败，详细情况：<br><br>
        $reason <br><br> 
        &gt;&gt; <a href="javascript:history.go(-1)">返回前页</a>
        $tab_bottom 
        </td></tr>
    </td></tr></table></body></html>
EOT;
	exit;
	}
}
