Ajax additions.
[fa-stable.git] / gl / manage / exchange_rates.php
index e2be27d991abccb52f6c76cc0909ccd2f59e2cba..6dfe221d9c88c8cecc53edc2139987a887eb1df8 100644 (file)
@@ -4,18 +4,21 @@ $page_security = 9;
 $path_to_root="../..";
 include_once($path_to_root . "/includes/session.inc");
 
-page(_("Exchange Rates"));
-
 include_once($path_to_root . "/includes/date_functions.inc");
 include_once($path_to_root . "/includes/ui.inc");
 include_once($path_to_root . "/includes/banking.inc");
 
+$js = "";
+if ($use_date_picker)
+       $js .= get_js_date_picker();
+page(_("Exchange Rates"), false, false, "", $js);
+
 //---------------------------------------------------------------------------------------------
 
 if (isset($_GET['selected_id']))
 {
        $selected_id = $_GET['selected_id'];
-} 
+}
 elseif (isset($_POST['selected_id']))
 {
        $selected_id = $_POST['selected_id'];
@@ -23,22 +26,24 @@ elseif (isset($_POST['selected_id']))
 else
        $selected_id = "";
 //---------------------------------------------------------------------------------------------
-
 function check_data()
 {
-       if (!is_date($_POST['date_'])) 
+       if (!is_date($_POST['date_']))
        {
                display_error( _("The entered date is invalid."));
+               set_focus('date_');
                return false;
        }
-       if (!is_numeric($_POST['BuyRate']))
+       if (!check_num('BuyRate', 0))
        {
-               display_error( _("The exchange rate must be numeric."));
+               display_error( _("The exchange rate must be numeric and greater than zero."));
+               set_focus('BuyRate');
                return false;
        }
        if ($_POST['BuyRate'] <= 0)
        {
                display_error( _("The exchange rate cannot be zero or a negative number."));
+               set_focus('BuyRate');
                return false;
        }
 
@@ -54,17 +59,17 @@ function handle_submit()
        if (!check_data())
                return false;
 
-       if ($selected_id != "") 
+       if ($selected_id != "")
        {
 
-               update_exchange_rate($_POST['curr_abrev'], $_POST['date_'], $_POST['BuyRate'],
-                       $_POST['BuyRate']);
-       } 
-       else 
+               update_exchange_rate($_POST['curr_abrev'], $_POST['date_'],
+                input_num('BuyRate'), input_num('BuyRate'));
+       }
+       else
        {
 
-               add_exchange_rate($_POST['curr_abrev'], $_POST['date_'], $_POST['BuyRate'],
-                       $_POST['BuyRate']);
+               add_exchange_rate($_POST['curr_abrev'], $_POST['date_'],
+                   input_num('BuyRate'), input_num('BuyRate'));
        }
 
        return true;
@@ -98,7 +103,7 @@ function display_rates($curr_code)
 
     $k = 0; //row colour counter
 
-    while ($myrow = db_fetch($result)) 
+    while ($myrow = db_fetch($result))
     {
 
                alt_table_row_color($k);
@@ -125,29 +130,29 @@ function display_rate_edit()
 
        if (isset($_POST['get_rate']))
        {
-               $_POST['BuyRate'] = get_ecb_rate($_POST['curr_abrev']);
-               $_POST['BuyRate'] = number_format($_POST['BuyRate'], user_exrate_dec());
-       }       
-       if ($selected_id != "") 
+               $_POST['BuyRate'] = exrate_format(get_ecb_rate($_POST['curr_abrev']));
+       }
+       if ($selected_id != "")
        {
-               //editing an existing payment terms
+               //editing an existing exchange rate
 
                $myrow = get_exchange_rate($selected_id);
 
                $_POST['date_'] = sql2date($myrow["date_"]);
-               $_POST['BuyRate'] = $myrow["rate_buy"];
+               $_POST['BuyRate'] = exrate_format($myrow["rate_buy"]);
 
                hidden('selected_id', $selected_id);
                hidden('date_', $_POST['date_']);
                hidden('curr_abrev', $_POST['curr_abrev']);
 
                label_row(_("Date to Use From:"), $_POST['date_']);
-       } 
-       else 
+       }
+       else
        {
                date_row(_("Date to Use From:"), 'date_');
        }
-       text_row(_("Exchange Rate:"), 'BuyRate', null, 15, 12, "", submit('get_rate',_("Get"), false));
+       small_amount_row(_("Exchange Rate:"), 'BuyRate', null, '',
+               submit('get_rate',_("Get"), false), user_exrate_dec());
 
        end_table(1);
 
@@ -167,10 +172,10 @@ function clear_data()
 
 //---------------------------------------------------------------------------------------------
 
-if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM'])) 
+if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
 {
 
-       if (handle_submit()) 
+       if (handle_submit())
        {
                meta_forward($_SERVER['PHP_SELF']);
        }
@@ -178,7 +183,7 @@ if (isset($_POST['ADD_ITEM']) || isset($_POST['UPDATE_ITEM']))
 
 //---------------------------------------------------------------------------------------------
 
-if (isset($_GET['delete'])) 
+if (isset($_GET['delete']))
 {
 
        handle_delete();
@@ -186,17 +191,18 @@ if (isset($_GET['delete']))
 
 //---------------------------------------------------------------------------------------------
 
-echo "<center>";
 start_form(false, true);
 
 if (!isset($_POST['curr_abrev']))
        $_POST['curr_abrev'] = get_global_curr_code();
 
+echo "<center>";
 echo _("Select a currency :") . "  ";
 currencies_list('curr_abrev', $_POST['curr_abrev'], true);
+echo "</center>";
 
 // if currency sel has changed, clear the form
-if ($_POST['curr_abrev'] != get_global_curr_code()) 
+if ($_POST['curr_abrev'] != get_global_curr_code())
 {
        clear_data();
        $selected_id = "";
@@ -204,13 +210,13 @@ if ($_POST['curr_abrev'] != get_global_curr_code())
 
 set_global_curr_code($_POST['curr_abrev']);
 
-if (is_company_currency($_POST['curr_abrev'])) 
+if (is_company_currency($_POST['curr_abrev']))
 {
 
        display_note(_("The selected currency is the company currency."), 2);
        display_note(_("The company currency is the base currency so exchange rates cannot be set for it."), 1);
-} 
-else 
+}
+else
 {
 
     display_rates($_POST['curr_abrev']);