X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=gl%2Fmanage%2Fgl_account_classes.php;h=238ffa0a2018c2f3efdd7c7b984934613872779e;hb=107a22ab168c1102f3f534a22cd5b8290331f17d;hp=cfdff8a817d09e35b90437b1245f59b2b9d0e804;hpb=da8311619dd73feae101d246a1957b972e00cbd2;p=fa-stable.git diff --git a/gl/manage/gl_account_classes.php b/gl/manage/gl_account_classes.php index cfdff8a8..238ffa0a 100644 --- a/gl/manage/gl_account_classes.php +++ b/gl/manage/gl_account_classes.php @@ -1,59 +1,68 @@ . +***********************************************************************/ +$page_security = 'SA_GLACCOUNTCLASS'; +$path_to_root = "../.."; include($path_to_root . "/includes/session.inc"); -page(_("GL Account Classes")); +page(_($help_context = "GL Account Classes")); include($path_to_root . "/gl/includes/gl_db.inc"); include($path_to_root . "/includes/ui.inc"); -if (isset($_GET['selected_id'])) -{ - $selected_id = $_GET['selected_id']; -} -elseif(isset($_POST['selected_id'])) -{ - $selected_id = $_POST['selected_id']; -} -else - $selected_id = -1; +simple_page_mode(false); //----------------------------------------------------------------------------------- function can_process() { + global $use_oldstyle_convert; - if (strlen($_POST['name']) == 0) + if (strlen(trim($_POST['id'])) == 0) + { + display_error( _("The account class ID cannot be empty.")); + set_focus('id'); + return false; + } + if (strlen(trim($_POST['name'])) == 0) { display_error( _("The account class name cannot be empty.")); + set_focus('name'); return false; } - + if (isset($use_oldstyle_convert) && $use_oldstyle_convert == 1) + $_POST['Balance'] = check_value('Balance'); return true; } //----------------------------------------------------------------------------------- -if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) +if ($Mode=='ADD_ITEM' || $Mode=='UPDATE_ITEM') { if (can_process()) { - if ($selected_id != -1) + if ($selected_id != "") { - - update_account_class($selected_id, $_POST['name'], $_POST['Balance']); - + if(update_account_class($selected_id, $_POST['name'], $_POST['ctype'])) + display_notification(_('Selected account class settings has been updated')); } else { - - add_account_class($_POST['id'], $_POST['name'], $_POST['Balance']); + if(add_account_class($_POST['id'], $_POST['name'], $_POST['ctype'])) { + display_notification(_('New account class has been added')); + $Mode = 'RESET'; + } } - meta_forward($_SERVER['PHP_SELF']); } } @@ -61,13 +70,9 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) function can_delete($selected_id) { - if ($selected_id == -1) + if ($selected_id == "") return false; - $sql= "SELECT COUNT(*) FROM ".TB_PREF."chart_types - WHERE class_id=$selected_id"; - $result = db_query($sql, "could not query chart master"); - $myrow = db_fetch_row($result); - if ($myrow[0] > 0) + if (key_in_foreign_table($selected_id, 'chart_types', 'class_id')) { display_error(_("Cannot delete this account class because GL account types have been created referring to it.")); return false; @@ -79,22 +84,33 @@ function can_delete($selected_id) //----------------------------------------------------------------------------------- -if (isset($_GET['delete'])) +if ($Mode == 'Delete') { if (can_delete($selected_id)) { delete_account_class($selected_id); - meta_forward($_SERVER['PHP_SELF']); + display_notification(_('Selected account class has been deleted')); } + $Mode = 'RESET'; } +//----------------------------------------------------------------------------------- +if ($Mode == 'RESET') +{ + $selected_id = ""; + $_POST['id'] = $_POST['name'] = $_POST['ctype'] = ''; +} //----------------------------------------------------------------------------------- -$result = get_account_classes(); +$result = get_account_classes(check_value('show_inactive')); -start_table($table_style); -$th = array(_("Class ID"), _("Class Name"), _("Balance Sheet"), "", ""); +start_form(); +start_table(TABLESTYLE); +$th = array(_("Class ID"), _("Class Name"), _("Class Type"), "", ""); +if (isset($use_oldstyle_convert) && $use_oldstyle_convert == 1) + $th[2] = _("Balance Sheet"); +inactive_control_column($th); table_header($th); $k = 0; @@ -103,42 +119,41 @@ while ($myrow = db_fetch($result)) alt_table_row_color($k); - if ($myrow["balance_sheet"] == 0) - { - $bs_text = _("No"); - } - else - { - $bs_text = _("Yes"); - } label_cell($myrow["cid"]); label_cell($myrow['class_name']); - label_cell($bs_text); - edit_link_cell("selected_id=" . $myrow["cid"]); - delete_link_cell("selected_id=" . $myrow["cid"]. "&delete=1"); + if (isset($use_oldstyle_convert) && $use_oldstyle_convert == 1) + { + $myrow['ctype'] = ($myrow["ctype"] >= CL_ASSETS && $myrow["ctype"] < CL_INCOME ? 1 : 0); + label_cell(($myrow['ctype'] == 1 ? _("Yes") : _("No"))); + } + else + label_cell($class_types[$myrow["ctype"]]); + inactive_control_cell($myrow["cid"], $myrow["inactive"], 'chart_class', 'cid'); + edit_button_cell("Edit".$myrow["cid"], _("Edit")); + delete_button_cell("Delete".$myrow["cid"], _("Delete")); end_row(); } - -end_table(); - +inactive_control_row($th); +end_table(1); //----------------------------------------------------------------------------------- -hyperlink_no_params($_SERVER['PHP_SELF'], _("New Account Class")); - -start_form(); - -start_table($table_style2); +start_table(TABLESTYLE2); -if ($selected_id != -1) +if ($selected_id != "") { - //editing an existing status code - - $myrow = get_account_class($selected_id); - - $_POST['id'] = $myrow["cid"]; - $_POST['name'] = $myrow["class_name"]; - $_POST['Balance'] = $myrow["balance_sheet"]; - hidden('selected_id', $selected_id); + if ($Mode == 'Edit') { + //editing an existing status code + $myrow = get_account_class($selected_id); + + $_POST['id'] = $myrow["cid"]; + $_POST['name'] = $myrow["class_name"]; + if (isset($use_oldstyle_convert) && $use_oldstyle_convert == 1) + $_POST['ctype'] = ($myrow["ctype"] >= CL_ASSETS && $myrow["ctype"] < CL_INCOME ? 1 : 0); + else + $_POST['ctype'] = $myrow["ctype"]; + hidden('selected_id', $selected_id); + } + hidden('id'); label_row(_("Class ID:"), $_POST['id']); } @@ -148,13 +163,16 @@ else text_row_ex(_("Class ID:"), 'id', 3); } -text_row_ex(_("Class Name:"), 'name', 50); +text_row_ex(_("Class Name:"), 'name', 50, 60); -yesno_list_row(_("Balance Sheet:"), 'Balance', null, "", "", false); +if (isset($use_oldstyle_convert) && $use_oldstyle_convert == 1) + check_row(_("Balance Sheet"), 'ctype', null); +else + class_types_list_row(_("Class Type:"), 'ctype', null); end_table(1); -submit_add_or_update_center($selected_id == -1); +submit_add_or_update_center($selected_id == "", '', 'both'); end_form();