<?php
//框架生成文件
//建立后台管理目录
if(!file_exists("install.lock"))
{	
umkdir("../admin/ctrl");//建立后台控制文件
umkdir("../admin/model");//建立后台模型文件
umkdir("../attach");//建立附件文件<br />
umkdir("../ctrl");//建立前台控制文件
umkdir("../model");//建立后台控制文件<br />
umkdir("../data/cache/js");
umkdir("../data/cache/css");
umkdir("../data/cache/file");
umkdir("../data/cache/tpl");
umkdir("../tpl/admin");
umkdir("../tpl/default");
umkdir("../js");
umkdir("../plugin");
//建立文件
//首页引导文件
$str="";

file_put_contents("../index.php","<?php\r\n".''."\r\n?>");
//首页引导文件结束

file_put_contents("../admin.php","<?php\r\n\r\n?>");
//配置文件
$str="";
$str.='define("MYSQL_HOST","localhost");'."\r\n";
$str.='define("MYSQL_USER","root");'."\r\n";
$str.='define("MYSQL_PWD","123");'."\r\n";
$str.='define("MYSQL_DB","skymvc");'."\r\n";
$str.='define("MYSQL_CHARSET","gb2312");'."\r\n";
$str.='define("TABLE_PRE","skymvc_");'."\r\n";
file_put_contents("../data/config.php","<?php\r\n{$str}\r\n?>");
//配置文件结束
//生成引导页文件 index.php
$str='<?php
require "data/config.php";//加载配置文件
require("skymvc/skymvc.php");//引用框架文件
//判断控制器是否合法
$_GET[\'m\']=isset($_GET[\'m\']) && in_array($_GET[\'m\'],array(\'index\'))?$_GET[\'m\']:\'index\';
//判断结束
require_once(CTRL_DIR."/{$_GET[\'m\']}.ctrl.php");
$classname = $_GET[\'m\'].\'Control\';
$control = new $classname();
//配置伪静态的
$control->tpl->rewrite=false;
$control->tpl->rewrite_rule=array(array("/index.php/i"),array("index.html"));
//配置伪静态结束
$method=isset($_GET[\'a\']) && method_exists($control,\'on\'.$_GET[\'a\'])? \'on\'.$_GET[\'a\']:"onDefault";
$control->$method();


?>';
file_put_contents("../index.php",$str);
$str='<?php
require "data/config.php";
require("skymvc/skymvc.php");
$_GET[\'m\']=isset($_GET[\'m\']) && in_array($_GET[\'m\'],array(\'index\',\'article\'))?$_GET[\'m\']:\'index\';
require_once(ADMIN_DIR."/".CTRL_DIR."/{$_GET[\'m\']}.ctrl.php");
$classname = $_GET[\'m\'].\'Control\';
$control = new $classname();
//配置伪静态的
$control->tpl->tplid="admin";
$control->tpl->currdir="admin";
$control->tpl->rewrite_on=true;
$control->tpl->rewrite_rule=array(array("/index.php/","index.html"));
$method=isset($_GET[\'a\']) && method_exists($control,\'on\'.$_GET[\'a\'])? \'on\'.$_GET[\'a\']:"onDefault";
$control->$method();

?>';
file_put_contents("../admin.php",$str);
//控制文件 index.ctrl.php
$str='<?php
class indexControl extends skymvc
{
	function __construct()
	{
		$this->indexControl();
	}
	
	function indexControl()
	{
		parent::__construct();//父类厨师话
		$this->loadModel("index");
	}
	function onDefault()
	{
		
		$this->tpl->assign("welcome","欢迎使用skymvc，让我们共同努力！");
		$this->tpl->assign("who",$_ENV[\'indexModel\']->test());
		$this->tpl->display("index");
	}
}

?>';
file_put_contents("../ctrl/index.ctrl.php",$str);
$str='<?php
class indexControl extends skymvc
{
	function __construct()
	{
		$this->indexControl();
	}
	
	function indexControl()
	{
		parent::__construct();//父类厨师话
		$this->loadAdminModel("index");
	}
	function onDefault()
	{
		
		$this->tpl->assign("welcome","欢迎使用skymvc，让我们共同努力！");
		$this->tpl->assign("who",$_ENV[\'admin_indexModel\']->test());
		$this->tpl->display("index");
	}
}

?>';
file_put_contents("../admin/ctrl/index.ctrl.php",$str);

//模型文件  index.model.php
$str='<?php
class indexModel
{
	public $base;
	function __construct(&$base)
	{
		$this->indexModel($base);
	}
	function indexModel(&$base)
	{
		$this->base=$base;
		$this->db=$base->db;
	}
	function test()
	{
		$arr=array(
		"我是谁",
		"我是一只飞翔的鸟",
		"我盘旋在无际的天边",
		"观赏着美丽的大地"
		);
		return $arr;
	}
	
}

?>';
file_put_contents("../model/index.model.php",$str);
file_put_contents("../admin/model/index.model.php",$str);
//生成模板文件 index.html
$str='<html>
<body>
<div style="width:600px; text-align:center; margin: 0 auto; background-color:#C4E6A2; margin-top:100px; height:400px; line-height:40px; ">
<h1 style="height:80px; line-height:80px;">{$welcome}</h1>

{loop $who $w}
{$w}<br>
{/loop}


</div>

</body>

</html>';
file_put_contents("../tpl/default/index.htm",$str);
file_put_contents("../tpl/admin/index.htm",$str);


file_put_contents("install.lock","");
echo "欢迎使用skyMVC框架";
}else
{
	echo "请先删除 install.lock";
}
function umkdir($dir)
{
	$arr=explode("/",$dir);
	foreach($arr as $key=>$val)
	{
		$d="";
		for($i=0;$i<=$key;$i++)
		{
			$d.=$arr[$i]."/";
		}
		if(!file_exists($d) && (strpos($val,":")==false))
		{
			mkdir($d,0777);
			file_put_contents($d."/index.html","die access ");
		}
	}
}
?>