<?php if ($acao == "criar_projeto") { ?> <?php $criarprojeto = post("project"); ?> <?php if (Oraculum_Scaffolding::validate_project($criarprojeto)) { ?> Este já existe! <?php } else { ?> <form method="post" action="?"> <label for=""> Projeto </label> <br /> <input type="text" name="project" id="project" value="<?php echo $criarprojeto; ?> " /> <br /> <label for=""> Diretório do Servidor </label> <br /> <input type="text" name="dir_server" id="dir_server" value="<?php echo dirname(__FILE__) . "/../";
</ul> <?php if (get("action") == "criar_classes") { include "./elements/actions/generate.php"; } ?> <div class="msg"> <?php if ($atualizar) { ?> Você precisa atualizar as classes referentes ao seu banco de dados. <?php } ?> <?php if (Oraculum_Scaffolding::permissao(dirname(__FILE__) . "/../../apps/" . $projectselected . "/models/entidades")) { ?> Para gerar as classes clique no link abaixo<br /> <a href="?a=databases&project=<?php echo $projectselected; ?> &table=<?php echo $table; ?> &action=criar_classes"> Gerar Classes </a> <?php } else { ?> Você precisa ter permissão na pasta
echo $projectselected; ?> &c=v&module=<?php echo $moduleselected; ?> &page=<?php echo $page; ?> "> <?php echo $page; ?> </a> <?php if ($pageselected == $page) { Oraculum_Scaffolding::load_page($projectselected, "v", $moduleselected, $pageselected); } ?> </li> <?php } ?> </ul> </div> <?php } ?> </li> <?php } ?>
<?php spl_autoload_register(array("Doctrine", "autoload")); //$conn=Doctrine_Manager::connection(); $dirdb = dirname(__FILE__) . "/../../../tmp/db/" . $project; if (file_exists($dirdb)) { Oraculum_Scaffolding::rmdirrec($dirdb); } mkdir($dirdb); if (Doctrine::generateModelsFromDb($dirdb)) { $dirdbdest = dirname(__FILE__) . "/../../../apps/" . $project . "/models/entidades"; if (file_exists($dirdbdest)) { Oraculum_Scaffolding::rmdirrec($dirdbdest); } if (rename(dirname(__FILE__) . "/../../../tmp/db/" . $project, $dirdbdest)) { echo "Classes geradas com sucesso!"; } else { echo "Classes geradas com sucesso!"; echo "<br />Porém não foi possível move-las para a pasta do projeto"; echo "<br />Copie o conteúdo da pasta <code>./tmp/db/" . $project . "</code> para "; echo "<code>./apps/" . $project . "/models/entidades</code>"; } } else { echo "Não foi possível gerar as classes da camada de modelo do projeto!"; }
if (Oraculum_Scaffolding::savefile($deletefilec, $deletec, true)) { echo "Controlador de exclusão de registros da entidade " . $crudtable; echo " gerado com sucesso<br />\n"; } else { echo "Não foi possível gravar o arquivo " . $retrievefilec . "<br />\n"; } } /* Home */ $homec = file_get_contents("./elements/actions/crud.tpl/home.php"); $homec = str_replace("[TABLE]", $ccrudtable, $homec); $homec = str_replace("[lTABLE]", $lcrudtable, $homec); $homefilec = dirname(__FILE__) . "/../../../apps/" . $projectselected; $homefilec .= "/controllers/modulos/" . $crudtable . "/home.php"; if (Oraculum_Scaffolding::savefile($homefilec, $homec, true)) { echo "Controlador da página principal da entidade " . $crudtable . " gerado com sucesso<br />\n"; } else { echo "Não foi possível gravar o arquivo " . $homefilec . "<br />\n"; } /* Home */ $homev = file_get_contents("./elements/actions/crud.tpl/home.shtml"); $homev = str_replace("[TABLE]", $ccrudtable, $homev); $homev = str_replace("[lTABLE]", $lcrudtable, $homev); $homev = str_replace("[URL]", $constanteurl, $homev); $homev = $top . $homev . $bottom; $homefilev = dirname(__FILE__) . "/../../../apps/" . $projectselected . "/views/modulos/" . $crudtable . "/home.shtml"; if (Oraculum_Scaffolding::savefile($homefilev, $homev, true)) { echo "Controlador da página principal da entidade " . $crudtable . " gerado com sucesso<br />\n"; } else { echo "Não foi possível gravar o arquivo " . $homefilev . "<br />\n"; } }
if (class_exists("Doctrine_Manager")) { ?> <form method="post" action="?a=crud&project=<?php echo $projectselected; ?> "> Entidade:<br /> <select name="table" id="table"> <?php $oldtable = null; ?> <?php $crudtable = isset($crudtable) ? $crudtable : 'null'; ?> <?php foreach (Oraculum_Scaffolding::listtables() as $table) { ?> <?php if ($oldtable == $crudtable) { ?> <option value="<?php echo $table; ?> " selected="selected"> <?php } else { ?> <option value="<?php echo $table; ?> ">
<h1>Painel Geral</h1> <div class="block"> <h2>Permissões</h2> Criar novos projetos: <?php echo Oraculum_Scaffolding::permissao("../apps") ? "<span class=\"yes\">Sim</span>" : "<span class=\"no\">Não</span>"; ?> <br /> Armazenar logs: <?php echo Oraculum_Scaffolding::permissao("../logs") ? "<span class=\"yes\">Sim</span>" : "<span class=\"yes\">Não</span>"; ?> <br /> Armazenar arquivos temporários: <?php echo Oraculum_Scaffolding::permissao("../tmp") ? "<span class=\"yes\">Sim</span>" : "<span class=\"yes\">Não</span>"; ?> <br /> </div> <?php include "./elements/projects.php";
public static function rmdirrec($dir) { $dirc = scandir($dir); if ($dirc !== FALSE) { foreach ($dirc as $entry) { if (!in_array($entry, array('.', '..'))) { $entry = $dir . '/' . $entry; if (!is_dir($entry)) { unlink($entry); } else { Oraculum_Scaffolding::rmdirrec($entry); } } } } rmdir($dir); }
<?php $projects = Oraculum_Scaffolding::load_projects(); $projectselected = get("project"); $workspaceselected = get("workspace"); $projectselected = Oraculum_Scaffolding::validate_project($projectselected); //Oraculum_Scaffolding::allow_project($projectselected); // Verificando permissao $workspaces = Oraculum_Scaffolding::load_workspaces($projectselected); $projectinfo = Oraculum_Scaffolding::load_project($projectselected); $tableselected = get("table"); $fieldselected = get("field"); $moduleselected = get("module"); $pageselected = get("page"); $c = get("c");