X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=admin%2Fcreate_coy.php;h=a54ef45f1e08c486d00484f27679c3b27af465ba;hb=d7dde51cf888dfc7e049fefed38e786a369b9b38;hp=b43224abce6724db30095f0790540ca9cf0eee4b;hpb=1273d798e494986d5d35b885ccbd0ccaaa0c2695;p=fa-stable.git diff --git a/admin/create_coy.php b/admin/create_coy.php index b43224ab..a54ef45f 100644 --- a/admin/create_coy.php +++ b/admin/create_coy.php @@ -11,7 +11,7 @@ include_once($path_to_root . "/includes/ui.inc"); page(_("Create/Update Company")); -$comp_subdirs = array('images', 'pdf_files', 'backup','js_cache'); +$comp_subdirs = array('images', 'pdf_files', 'backup','js_cache', 'reporting'); //--------------------------------------------------------------------------------------------- @@ -30,6 +30,26 @@ else function check_data() { + global $db_connections, $tb_pref_counter; + + if ($_POST['name'] == "" || $_POST['host'] == "" || $_POST['dbuser'] == "" || $_POST['dbname'] == "") + return false; + foreach($db_connections as $id=>$con) + { + if ($_POST['host'] == $con['host'] && $_POST['dbname'] == $con['dbname']) + { + if ($_POST['tbpref'] == $con['tbpref']) + { + display_error(_("This database settings are already used by another company.")); + return false; + } + if ($_POST['tbpref'] == 0 || $con['tbpref'] == '') + { + display_error(_("You cannot have table set without prefix together with prefixed sets in the same database.")); + return false; + } + } + } return true; } @@ -68,9 +88,10 @@ function handle_submit() $db_connections[$id]['dbname'] = $_POST['dbname']; if (isset($_GET['ul']) && $_GET['ul'] == 1) { - if (is_numeric($_POST['tbpref']) && $_POST['tbpref'] == 1) + if (is_numeric($_POST['tbpref'])) { - $db_connections[$id]['tbpref'] = $tb_pref_counter."_"; + $db_connections[$id]['tbpref'] = $_POST['tbpref'] == 1 ? + $tb_pref_counter."_" : ''; $new = true; } else if ($_POST['tbpref'] != "") @@ -113,19 +134,22 @@ function handle_submit() display_error(_("Cannot write to the configuration file - ") . $path_to_root . "/config_db.php"); else if ($error == -3) display_error(_("The configuration file ") . $path_to_root . "/config_db.php" . _(" is not writable. Change its permissions so it is, then re-run the operation.")); - if ($error != 0) { + if ($error != 0) + { return false; } $index = ""; - - if ($new) { - $cdir = $comp_path.'/'.($tb_pref_counter-1); - @mkdir($cdir); + + if ($new) + { + $cdir = $comp_path.'/'.$id; + @mkdir($cdir); save_to_file($cdir.'/'.'index.php', 0, $index); - - foreach($comp_subdirs as $dir) { - @mkdir($cdir.'/'.$dir); - save_to_file($cdir.'/'.$dir.'/'.'index.php', 0, $index); + + foreach($comp_subdirs as $dir) + { + @mkdir($cdir.'/'.$dir); + save_to_file($cdir.'/'.$dir.'/'.'index.php', 0, $index); } } return true; @@ -139,10 +163,6 @@ function handle_delete() $id = $_GET['id']; - $pref = $db_connections[$id]['tbpref']; - if($pref!='') - $pref = substr($pref, 0, strlen($pref)-1); - $err = remove_connection($id); if ($err == 0) display_error(_("Error removing Database: ") . $dbase . _(", please remove it manuallly")); @@ -159,13 +179,14 @@ function handle_delete() if ($error != 0) return; - $cdir = $comp_path.'/'.$pref; + $cdir = $comp_path.'/'.$id; flush_dir($cdir); - if (!rmdir($cdir)) { + if (!rmdir($cdir)) + { display_error(_("Cannot remove company data directory ") . $cdir); return; } - + meta_forward($_SERVER['PHP_SELF']); } @@ -290,7 +311,7 @@ function display_company_edit($selected_id) end_table(); display_note(_("Choose from Database scripts in SQL folder. No Datase is created without a script."), 0, 1); - echo "
"; + echo "
"; end_form();