auth->check_module_permissions('designer');
// Lade Template
$app->uses('tpl');
$app->tpl->newTemplate("form.tpl.htm");
$app->tpl->setInclude('content_tpl','templates/module_edit.htm');
// ID importieren
$id = $_REQUEST["id"];
if(!preg_match('/^[A-Za-z0-9_]{0,50}$/',$id)) die("id contains invalid chars.");
if(count($_POST) > 1) {
// Bestimme aktion
if($id != '') {
$action = 'UPDATE';
} else {
$action = 'INSERT';
}
if($error == '') {
$id = $_POST["module"]["name"];
if(!preg_match('/^[A-Za-z0-9_]{0,50}$/',$id)) die("id contains invalid chars.");
$filename = "../".$id."/lib/module.conf.php";
$module_new = $_POST["module"];
if(@is_file($filename)) {
include_once($filename);
$navi = $module["nav"];
unset($module);
$module_new["nav"] = $navi;
}
$m = "";
// creating the module directories
if(!@is_dir("../".$id)) mkdir("../".$id) or die("Cannot make directory: ../".$id);
if(!@is_dir("../".$id."/lib")) mkdir("../".$id."/lib") or die("Cannot make directory: ../".$id."/lib");
if(!@is_dir("../".$id."/lib/lang")) mkdir("../".$id."/lib/lang") or die("Cannot make directory: ../".$id."/lib/lang");
if(!@is_dir("../".$id."/form")) mkdir("../".$id."/form") or die("Cannot make directory: ../".$id."/form");
if(!@is_dir("../".$id."/list")) mkdir("../".$id."/list") or die("Cannot make directory: ../".$id."/list");
if(!@is_dir("../".$id."/templates")) mkdir("../".$id."/templates") or die("Cannot make directory: ../".$id."/templates");
// writing module.conf
if (!$handle = fopen($filename, 'w')) {
print "Cannot open file ($filename)";
exit;
}
if (!fwrite($handle, $m)) {
print "Cannot write to file ($filename)";
exit;
}
fclose($handle);
// writing admin conf
$admin_conf_filename = "../".$id."/lib/admin.conf.php";
if(!is_file($admin_conf_filename)) {
if (!$handle = fopen($admin_conf_filename, 'w')) {
print "Cannot open file ($admin_conf_filename)";
exit;
}
if (!fwrite($handle, "")) {
print "Cannot write to file ($admin_conf_filename)";
exit;
}
fclose($handle);
}
// zu Liste springen
header("Location: module_list.php");
exit;
} else {
$app->tpl->setVar("error","Fehler:
".$error);
$app->tpl->setVar($_POST);
}
}
if($id != '') {
// Datensatz besteht bereits
// bestehenden Datensatz anzeigen
if($error == '') {
// es liegt ein Fehler vor
include_once("../".$id."/lib/module.conf.php");
//$navi = $module["nav"];
unset($module["nav"]);
$record = $module;
} else {
// ein Fehler
$record = $_POST;
//$navi = $_POST["nav"];
unset($_POST["nav"]);
}
$record["readonly"] = 'style="background-color: #EEEEEE;" readonly';
} else {
// neuer datensatz
if($error == '') {
// es liegt ein Fehler vor
$record["template"] = "module.tpl.htm";
} else {
// ein Fehler
$record = $_POST;
//$navi = $_POST["nav"];
unset($_POST["nav"]);
}
$record["readonly"] = '';
}
$record["id"] = $id;
/*
// baue Modul navi
$content = "";
$n1 = 0;
$n2 = 0;
foreach($navi as $section) {
$content .= "