* @author Andy.Ma  <*****@*****.**>
* @Created on 2005-2-18 10:29:49
* @$Id:$ 
**/
include_once OOO_APP_CLASSES . "/gen/DBinfo.php";
include_once OOO_APP_CLASSES . "/gen/Generator.php";
include_once OOO_CORE . '/form/Form.php';
include_once OOO_CORE . '/form/FormController.php';
include_once OOO_APP_THEMES . $config['theme']['dir'] . '/languages' . $config['lang']['dir'] . '/gen/main.php';
$DB =& ADONewConnection($_SESSION["session_dbtype"]);
$result = $DB->Connect($_SESSION["session_dbhostname"], $_SESSION["session_dbusername"], $_SESSION["session_dbpassword"], $_SESSION["session_dbname"]);
if (!$result) {
    echo "can not connect db";
    exit;
}
$dbinfo = new DBinfo($DB);
$arr_table = $_SESSION['session_Table'];
//print_r($arr_table);
$arr_field = array();
$current_table = 0;
for (; $current_table < count($arr_table); $current_table++) {
    if ($arr_table[$current_table]['is_gen'] == 0) {
        $arr_field = $dbinfo->getField($arr_table[$current_table]['name']);
        break;
    }
}
$form = new Form('form1', 'index.php', 'post');
$element1 =& $form->addElement('select');
$element1->setAttribute('id', 'form_type');
$element1->setAttribute('name', 'form_type[]');
$element1->setAttribute('option', $arr_gentype);
session_register("session_dbtype");
session_register("session_dbhostname");
session_register("session_dbusername");
session_register("session_dbpassword");
session_register("session_dbname");
$_SESSION["session_dbtype"] = $_POST["dbtype"];
$_SESSION["session_dbhostname"] = $_POST["dbhostname"];
$_SESSION["session_dbusername"] = $_POST["dbusername"];
$_SESSION["session_dbpassword"] = $_POST["dbpassword"];
$_SESSION["session_dbname"] = $_POST["dbname"];
$DB =& ADONewConnection($_SESSION["session_dbtype"]);
$result = $DB->Connect($_SESSION["session_dbhostname"], $_SESSION["session_dbusername"], $_SESSION["session_dbpassword"], $_SESSION["session_dbname"]);
if (!$result) {
    echo "can not connect db";
    exit;
}
$generator = new Generator();
$generator->db_name = $_SESSION["session_dbname"];
$generator->createDirStructure();
//echo $generator->gen_dir;
$dbinfo = new DBinfo($DB);
$arr_table = $dbinfo->getAllTables();
//print_r($arr_table);
for ($i = 0; $i < count($arr_table); $i++) {
    $arr_session[$i]['name'] = $arr_table[$i];
    $arr_session[$i]['is_gen'] = 0;
}
session_register("session_Table");
$_SESSION['session_Table'] = $arr_session;
//print_r($_SESSION['session_Table']);
header("Location: index.php?op=gen_input");
session_register("session_dbhostname");
session_register("session_dbusername");
session_register("session_dbpassword");
session_register("session_dbname");
$_SESSION["session_dbtype"] = $_POST["dbtype"];
$_SESSION["session_dbhostname"] = $_POST["dbhostname"];
$_SESSION["session_dbusername"] = $_POST["dbusername"];
$_SESSION["session_dbpassword"] = $_POST["dbpassword"];
$_SESSION["session_dbname"] = $_POST["dbname"];
$DB =& ADONewConnection($_SESSION["session_dbtype"]);
$result = $DB->Connect($_SESSION["session_dbhostname"], $_SESSION["session_dbusername"], $_SESSION["session_dbpassword"], $_SESSION["session_dbname"]);
if (!$result) {
    echo "can not connect db";
    exit;
}
$dbinfo = new DBinfo($DB);
$arr_table = $dbinfo->getAllTables();
for ($i = 0; $i < count($arr_table); $i++) {
    $arr_data[$i] = $dbinfo->getField($arr_table[$i]);
    //    $generator->arr_field = $dbinfo->getField($arr_table[$i]);
    //    $generator->table_name = $arr_table[$i];
    //    $generator->class_name = strtolower($arr_table[$i]);
    //    $generator->createTableDir();
    //    $generator->genClass();
    //    $generator->genGetValueofForm();
}
$smarty->assign('table', $arr_table);
$smarty->assign('field', $arr_data);
$smarty->assign('gentype_options', $arr_gentype);
$smarty->assign('gentype', '2');
$smarty->assign('INPUT_TITLE', INPUT_TITLE);
}
$gen_smarty = new Smarty();
$gen_smarty->compile_check = true;
$gen_smarty->debugging = false;
// note trailing / in dir name : Smarty syntax
$gen_smarty->config_dir = OOO_ROOT . '/lib/smarty/config/';
$gen_smarty->template_dir = OOO_APP_GEN_TEMPLATES;
$gen_smarty->compile_dir = OOO_APP_CACHE . '/templates_c/';
$gen_smarty->cache_dir = OOO_APP_CACHE . '/cache/';
$gen_smarty->left_delimiter = '<{';
$gen_smarty->right_delimiter = '}>';
$table_name = $_POST['table_name'];
$arr_formtype = $_POST['form_type'];
$arr_formlabel = $_POST['form_label'];
$arr_islist = $_POST['is_list'];
$dbinfo = new DBinfo($DB);
$arr_field = $dbinfo->getField($table_name);
for ($i = 0; $i < count($arr_field); $i++) {
    $arr_field[$i]['form_type'] = $arr_formtype[$i];
    $arr_field[$i]['form_label'] = $arr_formlabel[$i];
    if (is_array($arr_islist)) {
        if (in_array($arr_field[$i]['name'], $arr_islist)) {
            $arr_field[$i]['is_list'] = 1;
        } else {
            $arr_field[$i]['is_list'] = 0;
        }
    }
}
$generator = new Generator();
$generator->smarty =& $gen_smarty;
$generator->db_name = $_SESSION["session_dbname"];