case 'create-schema': $success = true; $log = ''; $data = json_decode($_REQUEST['data']['connection']); $dbUser = $data->user; $dbPass = $data->password; $dbHost = $data->host; $dbName = $data->name; $dbConnection = mysqli_connect($dbHost, $dbUser, $dbPass) or $success = false; if ($success) { $sql = "CREATE DATABASE IF NOT EXISTS `" . $dbName . "`"; $result = mysqli_query($dbConnection, $sql) or $success = false; if ($success) { mysqli_select_db($dbConnection, $dbName) or $success = false; if ($success) { $success = generateSchema($dbConnection, $createSchemaScript); } } else { $log .= mysqli_error($dbConnection); } } if ($success) { jecho($success); mysqli_close($dbConnection); } else { error_500($log); } break; /** * Inserting cameras in database */
//clear folder delFolderTree($folder, false); } //load definitions (USE CACHE) $dtStructs = getAllDetailTypeStructures(false); $dtTerms = getTerms(false); $ind_parentid = $dtTerms['fieldNamesToIndex']['trm_ParentTermID']; $ind_label = $dtTerms['fieldNamesToIndex']['trm_Label']; $ind_descr = $dtTerms['fieldNamesToIndex']['trm_Description']; // $unsupported was original specification, but this will stuff up if new types are added $supported = array('freetext', 'blocktext', 'integer', 'date', 'year', 'boolean', 'enum', 'float', 'file', 'resource'); //$unsupported = array('relmarker','relationtype','separator','calculated','fieldsetmarker','urlinclude','geo'); // Note: Geos are supported, but FAIMS uses a different methodology for recording them, that is they are an implicit part of every record $content_a16n = null; //file_put_contents($folder."/project.settings", $projname." and basic information 3"); file_put_contents($folder . "/data_schema.xml", generateSchema($projname, $rt_toexport, $rt_geoenabled)); file_put_contents($folder . "/ui_schema.xml", generate_UI_Schema($projname, $rt_toexport, $rt_geoenabled)); file_put_contents($folder . "/arch16N.properties", arrToProps()); file_put_contents($folder . "/ui_logic.bsh", generate_Logic($projname, $rt_toexport, $rt_toexport_toplevel, $rt_geoenabled)); file_put_contents($folder . "/style.css", getStyling()); //copy("ui_logic.bsh", $folder."/ui_logic.bsh"); //this is a Java beanshell file which provides the operational logic for the tablet interface //CREATE ZIPFILE if (file_exists($folder . ".zip")) { unlink($folder . ".zip"); } $cmdline = "zip -r -j " . $folder . ".zip " . $folder; $res1 = 0; $output1 = exec($cmdline, $output, $res1); if ($res1 != 0) { echo "<p class='error'>Exec error code {$res1}: Unable to create zip file {$folder}.zip> <br>"; echo $output;