0 date1 > date2 * - < 0 date1 < date2 */ function cmpDate ($p_date,$p_date_oth) { $l_date=isDate($p_date); $l2_date=isDate($p_date_oth); if ($l_date == null || $l2_date == null ) { echo "erreur date"; return null; } $l_adate=explode(".",$l_date); $l2_adate=explode(".",$l2_date); $l_mkdate=mktime(0,0,0,$l_adate[1],$l_adate[0],$l_adate[2]); $l2_mkdate=mktime(0,0,0,$l2_adate[1],$l2_adate[0],$l2_adate[2]); // si $p_date > $p_date_oth return > 0 return $l_mkdate-$l2_mkdate; } /* function IsNumber * purpose : check if the argument is a number * * parm : $p_int * * gen nothing * * return : * 1 it's a number * 0 it is not */ function isNumber($p_int) { if ( strlen (trim($p_int)) == 0 ) return 0; if (! ereg ("^-{0,1}[0-9]+.{0,1}[0-9]*$",$p_int) ) { return 0; } else { return 1; }// !ereg return $p_date; } /* function isDate * Purpose : Verifie qu'une date est bien formaté * en d.m.y et est valable * parm : * - $p_date * gen : * - rien * return: * - null si la date est invalide ou malformaté * - $p_date si tout est bon * */ function isDate ( $p_date) { if ( strlen (trim($p_date)) == 0 ) return null; if (! ereg ("^[0-9]{1,2}\.[0-9]{1,2}\.20[0-9]{2}",$p_date) ) { return null; } else { $l_date=explode(".",$p_date); if ( $l_date[2] > 2020 ) { return null; } if ( checkdate ($l_date[1],$l_date[0],$l_date[2]) == false) { return null; } }// !ereg return $p_date; } /* function formatDate($p_date) * Purpose : * * parm : * - * gen : * - * return: */ function formatDate($p_date) { if ( isDate($p_date)== null) return "null"; return "'".$p_date."'"; } /* function html_page_start * Purpose : Default page header for each page * * parm : * - default theme * - $p_script * gen : * - none * return: * none */ function html_page_start($p_theme,$p_script="") { include_once ("postgres.php"); $cn=DbConnect(); $bg='bgcolor="#EDF3FF"'; $Res=ExecSql($cn,"select the_filestyle from theme where the_name='".$p_theme."'"); if (pg_NumRows($Res)==0) $style="style.css"; else { $s=pg_fetch_array($Res,0); $style=$s['the_filestyle']; } echo ''; echo ""; echo " Gnu Accountancy "; echo ""; } /* function html_page_stop() * Purpose : * * parm : * - * gen : * - * return: */ function html_page_stop() { echo ""; echo ""; } /* function html_button_logout * Purpose : * * parm : * - * gen : * - * return: */ function html_button_logout() { echo " Logout "; } /* function NoAccess * Purpose : * * parm : * - * gen : * - * return: */ function NoAccess() { echo "





"; echo "

You haven't access

"; exit -1; } /* function FormatString($p_string) * Purpose : Fix the problem with the ' char * * parm : * - * gen : * - * return: */ function FormatString($p_string) { if ( !isset ($p_string) ) { echo_error("ac_common.php FormatString p_string empty"); return null; } $p_string=trim($p_string); if (strlen($p_string) == 0 ) return null; $p_string=str_replace("\'","'",$p_string); $p_string=str_replace("''","'",$p_string); $p_string=str_replace("'","\'",$p_string); return $p_string; } /* function GetUserType * Purpose : get the type of an user (compta,developper or user) * * parm : * - param $p_user user_login * gen : * - none * return: the type of the user */ function GetUserType($p_user) { $cn=DbConnect(); $Res=ExecSql($cn,"select use_usertype from ac_users where use_login='".$p_user."'"); if ( pg_NumRows($Res) == 0 ) return null; $Ret=pg_fetch_row($Res,0); return $Ret[0]; } /* function Redirect * Purpose : redirect following the user's profile * * parm : * - p_profile (ac_users.use_usertype) * - php_session PHPSESSID * gen : * - none * return: none */ function Redirect($p_profile,$php_session) { include_once("debug.php"); echo_debug(__FILE__,__LINE__,"Session is $php_session"); if ( $p_profile =="compta" ) { $URL="compta_login.php"; } else if ( $p_profile == "user") { $URL="user_login.php"; } else { echo_error ("Undefined profile"); exit (-1); } echo ""; } /* function ShowItem($p_array) */ /* purpose : store the string which print */ /* the content of p_array in a table */ /* used to display the menu */ /* parameter : array */ /* return : string */ function ShowItem($p_array,$p_dir='V',$class="mtitle",$class_ref="mtitle",$default="") { $ret=""; // direction Vertical if ( $p_dir == 'V') { foreach ($p_array as $all=>$href){ $ret.=''; } } //direction Horizontal else if ( $p_dir == 'H' ) { $ret.=""; foreach ($p_array as $all=>$href){ if ( $default== $href[0]) { $ret.=''; } else { $ret.=''; } } $ret.=""; } $ret.="
'.$href[1].'
'.$href[1].''.$href[1].'
"; return $ret; } /* function echo_warning * Purpose : warns * * parm : * - string * gen : * - none * return: * - none */ function echo_warning($p_string) { echo '

'.$p_string."

"; } /* function make_array($cn,$sql) ************************************************** * Purpose : make a array with the sql * * parm : * - $cn dbatabase connection * - $sql related sql * gen : * - none * return: a double array [value,label] */ function make_array($p_cn,$p_sql,$p_null=0) { $a=pg_exec($p_cn,$p_sql); $max=pg_NumRows($a); if ( $max==0) return null; for ($i=0;$i<$max;$i++) { $row=pg_fetch_row($a); $r[$i]['value']=$row[0]; $r[$i]['label']=$row[1]; } // add a blank item ? if ( $p_null == 1 ) { for ($i=$max;$i!=0;$i--) { $r[$i]['value']= $r[$i-1]['value']; $r[$i]['label']= $r[$i-1]['label']; } $r[0]['value']=-1; $r[0]['label']=" "; } // if ( $p_null == 1 ) return $r; } ?>