<?php if (!empty($_POST['sql_host']) && !empty($_POST['sql_user']) && isset($_POST['sql_pass']) && !empty($_POST['sql_db'])) { try { if ($_POST['use_ftp']) { $writer = new writer_ftp($_POST['ftp_host'], $_POST['ftp_user'], $_POST['ftp_pass'], $_POST['ftp_dir']); } else { $writer = new writer_fs(); } // Test connections $db = new mysql_connection($_POST['sql_host'], $_POST['sql_user'], $_POST['sql_pass'], $_POST['sql_db']); // Install basic database initDb($db); // Write Config files if ($_POST['use_ftp']) { $writer->put('inc/ftp.config.php', sprintf("<?php\n\n\$ftp_host = '%s';\n\$ftp_user = '******';\n\$ftp_pass = '******';\n\$ftp_dir = '%s';\n", $_POST['ftp_host'], $_POST['ftp_user'], $_POST['ftp_pass'], $_POST['ftp_dir'])); } $writer->put('inc/database.config.php', sprintf("<?php\n\n\$db = new mysql_connection( '%s', '%s', '%s', '%s');\n\$db->set_charset('utf8');\n", $_POST['sql_host'], $_POST['sql_user'], $_POST['sql_pass'], $_POST['sql_db'])); $db->update_server->insert($server); // Redirect header('LOCATION: ' . IV_SELF); exit; } catch (Exception $e) { $error = $e->getMessage(); } }
if ($_POST['use_ftp']) { $writer = new writer_ftp($_POST['ftp_host'], $_POST['ftp_user'], $_POST['ftp_pass'], $_POST['ftp_dir']); } else { $writer = new writer_fs(); } // Test connections $writer->dir('db/'); if (!($db = new sqlite_connection('db/system.sqlite'))) { throw new Exception('Database connection failed!'); } // Install basic database $db->query("CREATE TABLE IF NOT EXISTS `update_server` (\n\t\t`id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n\t\t`name` varchar(100) NOT NULL,\n\t\t`url` text NOT NULL,\n\t\t`update_date` int(10) unsigned NOT NULL,\n\t\t`update_by` int(10) unsigned NOT NULL,\n\t\t`create_date` int(10) unsigned NOT NULL,\n\t\t`create_by` int(10) unsigned NOT NULL,\n\t\tPRIMARY KEY (`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); $db->query("CREATE TABLE IF NOT EXISTS `update_package` (\n\t\t`id` varchar(200) NOT NULL,\n\t\t`source` int(10) unsigned DEFAULT NULL,\n\t\t`version` int(10) unsigned NOT NULL,\n\t\t`update_date` int(10) unsigned NOT NULL,\n\t\t`update_by` int(10) unsigned NOT NULL,\n\t\t`create_date` int(10) unsigned NOT NULL,\n\t\t`create_by` int(10) unsigned NOT NULL,\n\t\tPRIMARY KEY (`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); $db->query("CREATE TABLE IF NOT EXISTS `update_file` (\n\t\t`path` varchar(255) NOT NULL,\n\t\t`package` varchar(200) NOT NULL,\n\t\t`version` int(10) unsigned NOT NULL,\n\t\t`hash` varchar(32) NULL,\n\t\t`content` LONGBLOB NULL,\n\t\tPRIMARY KEY (`path`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); $db->query("CREATE TABLE IF NOT EXISTS `update_migration` (\n\t\t`id` varchar(250) NOT NULL,\n\t\t`create_date` int(10) unsigned NOT NULL,\n\t\t`create_by` int(10) unsigned NOT NULL,\n\t\tPRIMARY KEY (`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); $db->query("CREATE TABLE IF NOT EXISTS `update_dependency` (\n\t\t`id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n\t\t`package` varchar(200) NOT NULL,\n\t\t`required` varchar(200) NOT NULL,\n\t\t`version` int(10) unsigned NOT NULL,\n\t\tPRIMARY KEY (`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); $db->query("CREATE TABLE IF NOT EXISTS `update_share` (\n\t\t`id` int(10) unsigned NOT NULL AUTO_INCREMENT,\n\t\t`package` varchar(200) NOT NULL,\n\t\t`comment` varchar(200) NOT NULL,\n\t\t`pattern` varchar(200) NOT NULL,\n\t\tPRIMARY KEY (`id`)\n\t) ENGINE=InnoDB DEFAULT CHARSET=utf8;"); // Write Config files if ($_POST['use_ftp']) { $writer->put('inc/ftp.config.php', sprintf("<?php\n\n\$ftp_host = '%s';\n\$ftp_user = '******';\n\$ftp_pass = '******';\n\$ftp_dir = '%s';\n", $_POST['ftp_host'], $_POST['ftp_user'], $_POST['ftp_pass'], $_POST['ftp_dir'])); } $writer->put('inc/database.config.php', "<?php\n\n\$db = new sqlite_connection( 'db/system.sqlite' );\n\n"); $db->update_server->insert($server); // Redirect header('LOCATION: ' . IV_SELF); exit; } catch (sqlite_exception $e) { $error = $e->getError() . $e->getSql(); } catch (Exception $e) { $error = $e->getMessage(); }