COA selected form preiously uploaded charts.
authorJanusz Dobrowolski <janusz@frontaccounting.eu>
Thu, 5 Aug 2010 10:05:22 +0000 (10:05 +0000)
committerJanusz Dobrowolski <janusz@frontaccounting.eu>
Thu, 5 Aug 2010 10:05:22 +0000 (10:05 +0000)
admin/create_coy.php

index badd946a1c525362bcc29486b835a8b582b58ae0..21861a0f83c8bb9343f4be3fb3956824b89ef3c2 100644 (file)
@@ -42,11 +42,7 @@ function check_data()
 
        if ($_POST['name'] == "" || $_POST['host'] == "" || $_POST['dbuser'] == "" || $_POST['dbname'] == "")
                return false;
-       if ($selected_id == -1 && (!isset($_GET['ul']) || $_GET['ul'] != 1))
-       {
-               display_error(_("When creating a new company, you must provide a Database script file."));
-               return false;
-       }
+
        foreach($db_connections as $id=>$con)
        {
         if($id != $selected_id && $_POST['host'] == $con['host'] 
@@ -85,75 +81,52 @@ function remove_connection($id) {
 function handle_submit()
 {
        global $db_connections, $def_coy, $tb_pref_counter, $db,
-           $comp_subdirs, $path_to_root;
+           $comp_subdirs, $path_to_root, $selected_id;
 
        $error = false;
        if (!check_data())
                return false;
 
-       $id = $_GET['id'];
-       $new = !isset($db_connections[$id]);
-
-       $db_connections[$id]['name'] = $_POST['name'];
-       $db_connections[$id]['host'] = $_POST['host'];
-       $db_connections[$id]['dbuser'] = $_POST['dbuser'];
-       $db_connections[$id]['dbpassword'] = $_POST['dbpassword'];
-       $db_connections[$id]['dbname'] = $_POST['dbname'];
-       if (isset($_GET['ul']) && $_GET['ul'] == 1)
+       if ($selected_id==-1)
+               $selected_id = count($db_connections);
+
+       $new = !isset($db_connections[$selected_id]);
+
+       $db_connections[$selected_id]['name'] = $_POST['name'];
+       $db_connections[$selected_id]['host'] = $_POST['host'];
+       $db_connections[$selected_id]['dbuser'] = $_POST['dbuser'];
+       $db_connections[$selected_id]['dbpassword'] = $_POST['dbpassword'];
+       $db_connections[$selected_id]['dbname'] = $_POST['dbname'];
+       if (is_numeric($_POST['tbpref']))
        {
-               if (is_numeric($_POST['tbpref']))
-               {
-                       $db_connections[$id]['tbpref'] = $_POST['tbpref'] == 1 ?
-                         $tb_pref_counter."_" : '';
-               }
-               else if ($_POST['tbpref'] != "")
-                       $db_connections[$id]['tbpref'] = $_POST['tbpref'];
-               else
-                       $db_connections[$id]['tbpref'] = "";
+               $db_connections[$selected_id]['tbpref'] = $_POST['tbpref'] == 1 ?
+                 $tb_pref_counter."_" : '';
        }
+       else if ($_POST['tbpref'] != "")
+               $db_connections[$selected_id]['tbpref'] = $_POST['tbpref'];
+       else
+               $db_connections[$selected_id]['tbpref'] = "";
+
        if ((bool)$_POST['def'] == true)
-               $def_coy = $id;
-       if (isset($_GET['ul']) && $_GET['ul'] == 1)
-       {
-               $conn = $db_connections[$id];
-               if (($db = db_create_db($conn)) == 0)
-               {
-                       display_error(_("Error creating Database: ") . $conn['dbname'] . _(", Please create it manually"));
-                       $error = true;
-               } else {
+               $def_coy = $selected_id;
 
-                       $filename = $_FILES['uploadfile']['tmp_name'];
-                       if (is_uploaded_file ($filename))
-                       {
-                               if (!db_import($filename, $conn, $id)) {
-                                       display_error(_('Cannot create new company due to bugs in sql file.'));
-                                       $error = true;
-                               } else
-                               if (isset($_POST['admpassword']) && $_POST['admpassword'] != "")
-                                       update_admin_password($conn, md5($_POST['admpassword']));
-                       }
-                       else
-                       {
-                               display_error(_("Error uploading Database Script, please upload it manually"));
-                               $error = true;
-                       }
-               }
-               set_global_connection();
-               if ($error) {
-                       remove_connection($id);
-                       return false;
-               }
+       $conn = $db_connections[$selected_id];
+       if (($db = db_create_db($conn)) == 0)
+       {
+               display_error(_("Error creating Database: ") . $conn['dbname'] . _(", Please create it manually"));
+               $error = true;
        } else {
-               if ($_GET['c'] = 'u') {
-                       $conn = $db_connections[$id];
-                       if (($db = db_create_db($conn)) == 0)
-                       {
-                               display_error(_("Error connecting to Database: ") . $conn['dbname'] . _(", Please correct it"));
-                               $error = true;
-                       } elseif ($_POST['admpassword'] != "") {
-                               db_query("UPDATE ".$conn['tbpref']."users set password = '".md5($_POST['admpassword']). "' WHERE user_id = 'admin'");
-                       }
-               }
+               if (!db_import($path_to_root.'/sql/'.get_post('coa'), $conn, $selected_id)) {
+                       display_error(_('Cannot create new company due to bugs in sql file.'));
+                       $error = true;
+               } else
+                       if (isset($_POST['admpassword']) && $_POST['admpassword'] != "")
+                               update_admin_password($conn, md5($_POST['admpassword']));
+       }
+       set_global_connection();
+       if ($error) {
+               remove_connection($selected_id);
+               return false;
        }
        $error = write_config_db($new);
        if ($error == -1)
@@ -169,10 +142,10 @@ function handle_submit()
 
        if ($new)
        {
-               create_comp_dirs(company_path($id), $comp_subdirs);
+               create_comp_dirs(company_path($selected_id), $comp_subdirs);
        }
        $exts = get_company_extensions();
-       write_extensions($exts, $id);
+       write_extensions($exts, $selected_id);
        display_notification($new ? _('New company has been created.') : _('Company has been updated.'));
        return true;
 }
@@ -313,20 +286,7 @@ function display_company_edit($selected_id)
        else
                $n = count($db_connections);
 
-       start_form(true);
-
-       echo "
-               <script language='javascript'>
-               function updateCompany() {
-                       if (document.forms[0].uploadfile.value!='' && document.forms[0].dbname.value!='') {
-                               document.forms[0].action='create_coy.php?c=u&ul=1&id=" . $n . "&fn=' + document.forms[0].uploadfile.value
-                       }
-                       else {
-                               document.forms[0].action='create_coy.php?c=u&id=" . $n . "'
-                       }
-                       document.forms[0].submit()
-               }
-               </script>";
+       start_form();
 
        start_table(TABLESTYLE2);
 
@@ -362,13 +322,13 @@ function display_company_edit($selected_id)
                label_row(_("Table Pref"), $_POST['tbpref']);
        yesno_list_row(_("Default"), 'def', null, "", "", false);
 
-       file_row(_("Database Script"), "uploadfile");
+       coa_list_row(_("Database Script"), 'coa');
 
        text_row_ex(_("New script Admin Password"), 'admpassword', 20);
+       end_table(1);
 
-       end_table();
-       display_note(_("Choose from Database scripts in SQL folder. No Database is created without a script."), 0, 1);
-       echo "<center><input onclick='javascript:updateCompany()' type='button' style='width:150px' value='". _("Save"). "'></center>";
+       submit_center('save', _("Save"));
+//     echo "<center><input type='button' style='width:150px' value='". _("Save"). "'></center>";
 
 
        end_form();
@@ -382,10 +342,10 @@ if (isset($_GET['c']) && $_GET['c'] == 'df') {
        $selected_id = -1;
 }
 
-if (isset($_GET['c']) && $_GET['c'] == 'u')
+if (get_post('save')) {
        if (handle_submit())
                $selected_id = -1;
-
+}
 
 //---------------------------------------------------------------------------------------------