<?php
/**********************************************************************
***********************************************************************/
$page_security = 'SA_ASSET_CATEGORIES';
$path_to_root = "../..";
include($path_to_root . "/includes/session.inc");
add_access_extensions();
set_ext_domain('/asset_register');

page(_($help_context = "Asset Types"));

include_once($path_to_root . "/assets/includes/db/asset_categories_db.inc");
include_once($path_to_root . "/includes/ui.inc");
//include_once($path_to_root . "/includes/ui/ui_lists_custom.inc");
//include_once($path_to_root . "/assets/includes/db/asset_groups_db.inc");
simple_page_mode(true);
//-----------------------------------------------------------------------------------

if($Mode == 'ADD_ITEM' || $Mode == 'UPDATE_ITEM')
{
	//initialise no input errors assumed initially before we test
	$input_error = 0;
        
    if(strlen($_POST['description']) == 0)
    {
        $input_error = 1;
        display_error("Description is mandertery");
        set_focus('category');           
    }

    if(!(check_num('rate',0,100)))
    {
        $input_error = 1;
        display_error("The depreciation rate should be between 0 and 100");
        set_focus('rate');           
    }

	if ($input_error != 1) 
	{
            if ($selected_id != -1) 
            {

                update_asset_categories($selected_id, $_POST['description'], $_POST['rate'],                                   
                                        $_POST['asset_account'], $_POST['depreciation_account'], 
                                        $_POST['accumulated_account'], $_POST['valuation_account'], 
                                        $_POST['disposal_account'], $_POST['asset_adjustment_account']);
                            display_notification(_('Selected asset type has been updated'));
            } 
            else 
            {
                add_asset_categories($_POST['description'], $_POST['rate'], $_POST['asset_account'],
                                        $_POST['depreciation_account'], $_POST['accumulated_account'], 
                                        $_POST['valuation_account'], $_POST['disposal_account'], 
                                        $_POST['asset_adjustment_account']);
                            display_notification(_('New Asset type has been added'));
                            
                           
            }
    	
             
	}
       $Mode = 'RESET';    
} 
 
//-----------------------------------------------------------------------------------

function can_delete($selected_id)
{
	if (asset_categories_in_assets($selected_id))
	{
		display_error(_("Cannot delete this asset type because assets transactions have been created referring to it."));
		return false;
	}
	
	return true;
}

//-----------------------------------------------------------------------------------

if ($Mode == 'Delete')
{
	if (can_delete($selected_id))
	{
            delete_asset_categories($selected_id);
		display_notification(_('Selected asset type has been deleted'));
	}
	$Mode = 'RESET';
}

if ($Mode == 'RESET')
{
	$selected_id = -1;
	$sav = get_post('show_inactive');
	unset($_POST);
	$_POST['show_inactive'] = $sav;
}
//-----------------------------------------------------------------------------------

$result = get_all_asset_categories(check_value('show_inactive'));
global $asset_groups;
start_form();
start_table(TABLESTYLE, "width=90%");

$th = array(("Description"),_("Depreciation <br>Rate"),_("Asset <br>Account"),
            _("Depreciation <br>Account"),_("Accumulated <br>Depreciation"),
            _("Asset Revaluation <br>Account"),_("Asset Disposal <br>Account"),
            _("Asset Adjustment <br>Account"), 
            "", "");
inactive_control_column($th);
table_header($th);
$k = 0;
while ($myrow = db_fetch($result)) 
{
	alt_table_row_color($k);	

	label_cell($myrow["description"]);       
	label_cell($myrow["depreciation_rate"]);
        label_cell($myrow["asset_account"]);
        label_cell($myrow["depreciation_account"]);
	label_cell($myrow["accumulated_account"]);
        label_cell($myrow["valuation_account"]);
	label_cell($myrow["disposal_account"]);
        label_cell($myrow["asset_adjustment_account"]);
	inactive_control_cell($myrow["id"], $myrow["inactive"], 'selected_id', 'id');
 	edit_button_cell("Edit".$myrow['id'], _("Edit"));
 	delete_button_cell("Delete".$myrow['id'], _("Delete"));
	end_row();
}

inactive_control_row($th);
end_table(1);

//-----------------------------------------------------------------------------------

start_table(TABLESTYLE2);

if ($selected_id != -1) 
{
 	if ($Mode == 'Edit') {
		//editing an existing status code

		$myrow = get_asset_category($selected_id);

		$_POST['description'] = $myrow["description"];                              
                $_POST['rate'] = $myrow["depreciation_rate"];
		$_POST['asset_account'] = $myrow["asset_account"];
		$_POST['asset_adjustment_account'] = $myrow["asset_adjustment_account"];
		$_POST['depreciation_account'] = $myrow["depreciation_account"];
		$_POST['accumulated_account'] = $myrow["accumulated_account"];
		$_POST['valuation_account'] = $myrow["valuation_account"];
		$_POST['disposal_account'] = $myrow["disposal_account"];
	}
        
	hidden('selected_id', $selected_id);

} 

text_row(("Description:"), 'description', null, 40, 30);           
percent_row(_("Depreciation Rate:"), 'rate', null, 50, 50);
gl_all_accounts_list_row(_("Asset Account:"), 'asset_account');
gl_all_accounts_list_row(_("Depreciation Account:"), 'depreciation_account');
gl_all_accounts_list_row(_("Accumulated Depreciation:"), 'accumulated_account');
gl_all_accounts_list_row(_("Asset Revaluation Account:"), 'valuation_account');
gl_all_accounts_list_row(_("Disposal Account:"), 'disposal_account');
gl_all_accounts_list_row(_("Asset Adjustment Account:"), 'asset_adjustment_account');

end_table(1);

submit_add_or_update_center($selected_id == -1,'','', 'both');

end_form();

//------------------------------------------------------------------------------------

end_page();

?>
