Moved all SQL statements from PHP files into relevant *_db.inc files.
[fa-stable.git] / includes / date_functions.inc
index 24f3b8f8b78bb1e52be9cd8056aa6bc77de457f4..182e09c86be43b1a8563ed5293e94c432cf1b1d0 100644 (file)
@@ -1,23 +1,25 @@
 <?php
 /**********************************************************************
     Copyright (C) FrontAccounting, LLC.
-       Released under the terms of the GNU Affero General Public License,
-       AGPL, as published by the Free Software Foundation, either version 
-       of the License, or (at your option) any later version.
+       Released under the terms of the GNU General Public License, GPL, 
+       as published by the Free Software Foundation, either version 3 
+       of the License, or (at your option) any later version.
     This program is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
-    See the License here <http://www.gnu.org/licenses/agpl-3.0.html>.
+    See the License here <http://www.gnu.org/licenses/gpl-3.0.html>.
 ***********************************************************************/
 /*
 date validation and parsing functions
 
 These functions refer to the global variable defining the date format
-The date format is defined in config.php called DefaultDateFormat
+The date format is defined in config.php called dateformats
 this can be a string either "d/m/Y" for UK/Australia/New Zealand dates or
-"m/d/Y" for US/Canada format dates
+"m/d/Y" for US/Canada format dates depending on setting in preferences.
 
 */
+if(function_exists("date_default_timezone_set") && function_exists("date_default_timezone_get"))
+       @date_default_timezone_set(@date_default_timezone_get());
 
 function __date($year, $month, $day)
 {
@@ -141,11 +143,24 @@ function Now()
        else
                return date("H:i");
 }
+//
+//     Retrieve and optionaly set default date for new document.
+//
+function new_doc_date($date=null)
+{
+       if (isset($date))
+               $_SESSION['_default_date'] = $date;
+
+       if (!isset($_SESSION['_default_date']) || !sticky_doc_date())
+               $_SESSION['_default_date'] = Today();
+
+       return $_SESSION['_default_date'];
+}
 
 function is_date_in_fiscalyear($date, $convert=false)
 {
        global $path_to_root;
-       include_once($path_to_root . "/admin/db/company_db.inc");
+       include_once($path_to_root . "/admin/db/fiscalyears_db.inc");
 
        $myrow = get_current_fiscalyear();
        if ($myrow['closed'] == 1)
@@ -166,7 +181,7 @@ function is_date_in_fiscalyear($date, $convert=false)
 function begin_fiscalyear()
 {
        global $path_to_root;
-       include_once($path_to_root . "/admin/db/company_db.inc");
+       include_once($path_to_root . "/admin/db/fiscalyears_db.inc");
 
        $myrow = get_current_fiscalyear();
        return sql2date($myrow['begin']);
@@ -175,7 +190,7 @@ function begin_fiscalyear()
 function end_fiscalyear()
 {
        global $path_to_root;
-       include_once($path_to_root . "/admin/db/company_db.inc");
+       include_once($path_to_root . "/admin/db/fiscalyears_db.inc");
 
        $myrow = get_current_fiscalyear();
        return sql2date($myrow['end']);
@@ -347,9 +362,11 @@ and converts to a yyyy/mm/dd format */
                        $year = substr($date_,0,4);
                }
        }
+       else
+               $year = $month = $day = 0;
 
 //to modify assumption in 2030
-       if ($date_system == 0)
+       if ($date_system == 0 || $date_system == 3)
        {
                if ((int)$year < 60)
                {
@@ -403,7 +420,7 @@ function date1_greater_date2 ($date1, $date2)
 }
 
 
-function date_diff ($date1, $date2, $period) 
+function date_diff2 ($date1, $date2, $period) 
 {
 
 /* expects dates in the format specified in $DefaultDateFormat - period can be one of 'd','w','y','m'