<?php
/**
 *	Generated by miceCMS
 *	http://www.miceCMS.com/
 */
class installAction extends security_normal {
	
	function action(){	
		$smarty = new Smarty();
		if(!$_POST['MICE_URL']){
			$jsstring='Dialog.alert(\'系统设置错误\',function(){window.location.href="'.MICE_URL.'install.php";window.event.returnValue = false;},300,100,"返回文档列表");';
			MessageBox($jsstring);
			die();
		}

$config = sprintf("<?php
define('MICE_URL', '%s');\t\t//网址
define('MICE_TITLE', '%s');\t\t//网站标题
define('MICE_KW', '%s');\t\t//Meta Keywords
define('MICE_DP', '%s');\t\t//Meta Description


define('MICE_GMT', '%s');\t\t//系统时区
define('MICE_VERSION', 'miceCMS 5.0');\t\t//版本
define('MICE_SETUP', false);\t\t//安装状态
define('MICE_DEBUG', 0);\t\t//调试级别0-255


define('MICE_INISET', %s);\t\t//是否使用自带的php配置文件php.ini
define('MICE_CCIMG',%s);\t\t//是否启用图片验证码1-显示;0-不显示
define('MICE_REWRITE','%s');\t\t//是否启ReWrite功能,不启用:'index.php/';启用:''
define('MICE_HTML',%s);\t\t//HTML静态页面的生成方式:0-不生成;1-手动生成(纯静态);2-触发式生成
define('MICE_HTML_EXT','.html');\t\t//静态页面的扩展名
define('MICE_UPLOAD_FILE_NAME', '%s');\t\t//可上传的文件类型
define('MICE_UPLOAD_FILE_SIZE', %s);\t\t//单个文件上传最大容量单位KB


define('MICE_TPL','%s');\t\t//模板名称
define('MICE_EXT', '%s');\t\t//模板扩展名


define('MICE_DB', '%s');\t\t//数据库类型
define('MICE_DBHOST', '%s');\t\t//数据库服务器地址
define('MICE_DBNAME', '%s');\t\t//数据库名
define('MICE_DBUSERNAME', '%s');\t\t//数据库用户名
define('MICE_DBPASSWORD', '%s');\t\t//数据库密码
define('MICE_PREFIX', '%s');\t\t//数据表前缀
define('MICE_PRIVATE', 'private/');\t\t//私有文件夹,用于文本数据库存放
define('MICE_UID', '%s');\t\t//随机字符串,用来作sqlite数据的名称

?>",$_POST['MICE_URL'],$_POST['MICE_TITLE'],'','',$_POST['MICE_GMT'],$_POST['MICE_INISET'],$_POST['MICE_CCIMG'],$_POST['MICE_REWRITE'],$_POST['MICE_HTML'],$_POST['MICE_UPLOAD_FILE_NAME'],$_POST['MICE_UPLOAD_FILE_SIZE'],$_POST['MICE_TPL'],$_POST['MICE_EXT'],$_POST['MICE_DB'],$_POST['MICE_DBHOST'],$_POST['MICE_DBNAME'],$_POST['MICE_DBUSERNAME'],$_POST['MICE_DBPASSWORD'],$_POST['MICE_PREFIX'],RandomString(6));

		$fwriteerr='参数配置文件已写入,如果上一步中您的参数配置有误,请复制 "安装目录/install" 目录下的config.php覆盖 "安装目录/private" 目录下的config.php,然后重新安装';
		if(($fd = fopen(MICE_DIR.'private/config.php','w')) === FALSE){
			$fwriteerr='<font color="red">错误：配置文件写入失败</font>,请将上边文本框中的内容复制到 "安装目录/private/config.php" 文件,可能是miceCMS没有写入此文件的权限';
		}

		fwrite($fd,$config);
		fclose($fd);

		$path=MICE_PRIVATE.$_POST['MICE_DBNAME'].'/';
		if(!(file_exists($path) AND is_dir($path))){
			@mkdir($path,0777);
		}
		
		$dbstr='1';
		if($_POST['MICE_DB']=='txt' OR strstr($_POST['MICE_DB'],'sqlite')){
			if(!(file_exists($path) AND is_dir($path))){
				$dbstr='您选择的是PHP+'.$_POST['MICE_DB'].'数据库,"安装目录/private/'.MICE_DBNAME.'" 目录不存在,请建立此目录,并让miceCMS能在此目录下写入文件。';
			}else{
				if(($fd = fopen(MICE_DIR.'private/'.$_POST['MICE_DBNAME'].'/index.php','a+')) === FALSE){
					$dbstr='您选择的是PHP+'.$_POST['MICE_DB'].'数据库,"安装目录/private/'.$_POST['MICE_DBNAME'].'" 目录已存在,但miceCMS不能在此目录下写入文件,请修改此目录的写入权限。';
				}else{
					fwrite($fd,'<?php die();?>');
					fclose($fd);
					$dbstr='您选择的是PHP+'.$_POST['MICE_DB'].'数据库,"安装目录/private/'.$_POST['MICE_DBNAME'].'" 目录已存在且有写入文件的权限,数据库可正常使用。';
				}			
			}
		}elseif(strstr($_POST['MICE_DB'],'postgres')){
			$dbstr='您选择的是PostgresSQL数据库,miceCMS无法自动建立数据库,请确认数据库 <font color="red"><b>'.$_POST['MICE_DBNAME'].'</b></font> 是否存在,如不存在,请手动建立此数据库。';
		}
		
		$url="http://".$_SERVER['HTTP_HOST'].$_SERVER["SCRIPT_NAME"];
		$url=substr($url,0,strlen($url)-11);

		$smarty->load_filter('pre','micePreCompileInstall');
		$smarty->assign("title","第4步:正在安装—miceCMS5.0 安装向导");
		$smarty->assign("url",$url);
		$smarty->assign("fwriteerr",$fwriteerr);
		$smarty->assign("dbstr",$dbstr);
		$smarty->assign("config",$config);
		$filename = new getTPLFileName(__CLASS__);
		$smarty->display($filename->TPLFileName);
	}	
}
?>