noalyss  Version-6.7.2
 All Data Structures Namespaces Files Functions Variables Enumerations
Functions
user_common.php File Reference

Common functions. More...

Go to the source code of this file.

Functions

 check_parameter ($p_array, $p_needed)
 Check that all the index are in the array, used by function to check if the array contains the needed variables before an extract.
 CleanUrl ()
 Clean the url, remove the $_GET offset,step, page and size.
 isValid_deprecrated ($p_cn, $p_grpt_id)
 test if a jrn op is valid
 navigation_bar ($p_offset, $p_line, $p_size=0, $p_page=1, $p_javascript="")
 Create a navigation_bar (pagesize)
 redirect ($p_string, $p_time=0)
 toNumber ($p_num)
 remove the useless space, change comma by period and try to return a number

Detailed Description

Common functions.

Definition in file user_common.php.


Function Documentation

check_parameter ( p_array,
p_needed 
)

Check that all the index are in the array, used by function to check if the array contains the needed variables before an extract.

Parameters:
type$p_arrayarray to check
type$neededstring containing variable separated by comma
Exceptions:
Exception

Definition at line 236 of file user_common.php.

References $e, and $p_array.

Referenced by Acc_Ledger_Fin\verify(), Acc_Ledger_Purchase\verify(), and Acc_Ledger_Sold\verify().

{
    $needed =explode(',',$p_needed);
    for ($e=0;$e<count($needed);$e++) {
            if ( ! isset($p_array[$needed[$e]])) {
                throw new Exception (_('Paramètre manquant')." ".$needed[$e]);
            }
        }
}
CleanUrl ( )

Clean the url, remove the $_GET offset,step, page and size.

Parameters:
none
Returns:
the cleaned url

Definition at line 180 of file user_common.php.

References $_GET, $key, $name, $r_jrn, $url, and $value.

Referenced by Acc_Ledger\list_operation().

{
    // Compute the url
    $url="";
    $and="";
    $get=$_GET;
    if ( isset ($get) )
    {
        foreach ($get as $name=>$value )
        {
            // we clean the parameter offset, step, page and size
            if (  ! in_array($name,array('offset','step','page','size','s','o','r_jrn')))
            {
                $url.=$and.$name."=".$value;
                $and="&";
            }// if
        }//foreach
        if ( isset($_GET['r_jrn']))
        {
            $r_jrn=$_GET['r_jrn'];
            if (count($r_jrn) > 0 )
            {
                foreach ($r_jrn as $key=>$value)
                {
                    $url.=$and."r_jrn[$key]=".$value;
                    $and="&";
                }
            }
        }
    }// if
    return $url;
}
isValid_deprecrated ( p_cn,
p_grpt_id 
)

test if a jrn op is valid

Parameters:
$p_cndb
$p_grpt_id
Returns:
:
  • 1 is valid
  • 0 is not valid

Definition at line 44 of file user_common.php.

References $a, $Res, echo_error(), Database\fetch_array(), and Database\num_row().

{
    $Res=$p_cn->exec_sql("select jr_valid from jrn where jr_grpt_id=$p_grpt_id");

    if ( ( $M = Database::num_row($Res)) == 0 ) return 0;

    $a=Database::fetch_array($Res,0);

    if ( $a['jr_valid'] == 't') return 1;
    if ( $a['jr_valid'] == 'f') return 0;

    echo_error ("Invalid result = ".$a['result']);


}
navigation_bar ( p_offset,
p_line,
p_size = 0,
p_page = 1,
p_javascript = "" 
)

Create a navigation_bar (pagesize)

Parameters:
$p_offsetfirst record number
$p_linetotal of returned row
$p_sizecurrent g_pagesize user's preference
$p_pagenumber of the page where the user is
$p_javascriptjavascript code to add
Note:
example :
   $step=$_SESSION['g_pagesize'];
   $page=(isset($_GET['offset']))?$_GET['page']:1;
   $offset=(isset($_GET['offset']))?$_GET['offset']:0;

   list ($max_ligne,$list)=ListJrn($cn,$_GET['p_jrn'],$sql,null,$offset,1);
   $bar=navigation_bar($offset,$max_ligne,$step,$page);
Returns:
string with the nav. bar

Definition at line 81 of file user_common.php.

References $_GET, $e, $offset, $r, $sep, $step, $url, and if.

Referenced by Stock\history(), Anc_Operation\html_table(), Fiche_Def\myList(), Follow_Up\myList(), Acc_Ledger_Fin\show_ledger(), Acc_Ledger_Sold\show_unpaid(), Acc_Ledger_Purchase\show_unpaid_deprecated(), contact\Summary(), and Fiche\Summary().

{
    // if the pagesize is unlimited return ""
    // in that case there is no nav. bar
    if ( $_SESSION['g_pagesize'] == -1  ) return "";
    if ( $p_size==0)
    {
        $p_size= $_SESSION['g_pagesize'];
    }
    // if there is no row return an empty string
    if ( $p_line == 0 ) return "";

    // Clean url, cut away variable coming frm here
    $url=cleanUrl();
    // action to clean
    $url=str_replace('&p_action=delete','',$url);

    // compute max of page
    $nb_page=($p_line-($p_line%$p_size))/$p_size;
    // if something remains
    if ( $p_line % $p_size != 0 ) $nb_page+=1;

    // if max page == 1 then return a empty string
    if ( $nb_page == 1) return "";

    // restore the sort
    if ( isset($_GET['o']))
        $url=$url.'&o='.$_GET['o'];

    $r="";
    // previous
    if ($p_page !=1)
    {
        $e=$p_page-1;
        $step=$p_size;
        $offset=($e-1)*$step;

        $r='<A class="mtitle" href="'.basename($_SERVER['SCRIPT_FILENAME'])."?".$url."&offset=$offset&step=$step&page=$e&size=$step".'" '.$p_javascript.'>';
        $r.="   &larr;";
        // $r.='<INPUT TYPE="IMAGE" width="12" SRC="image/go-previous.png">';
        $r.="</A>&nbsp;&nbsp;";
    }
    //----------------------------------------------------------------------
    // Create a partial bar
    // if current page < 11 show 1 to 20
    // otherwise            show $p_page -10 to $p_page + 10
    //----------------------------------------------------------------------
    $start_bar=($p_page < 11 )?1:$p_page-10;
    $end_bar  =($p_page < 11 )?20:$p_page+10;
    $end_bar  =($end_bar > $nb_page )?$nb_page:$end_bar;

        $sep="";
    // Create the bar
    for ($e=$start_bar;$e<=$end_bar;$e++)
    {
        // do not included current page
        if ( $e != $p_page )
        {
            $step=$p_size;
            $offset=($e-1)*$step;

            $go=$_SERVER['PHP_SELF']."?".$url."&offset=$offset&step=$step&page=$e&size=$step";
                        $r.=$sep;
            $r.=sprintf('<A class="nav" HREF="%s"  %s >%d</A>&nbsp;',$go,$p_javascript,$e);
                        $sep=" &#8231;  ";
        }
        else
        {
                        $r.=$sep;
            $r.="<b> [ $e ] </b>";
                        $sep=" &#8231;  ";
        } //else
    } //for
    // next

    if ($p_page !=$nb_page)
    {
        // If we are not at the last page show the button next
        $e=$p_page+1;
        $step=$p_size;
        $offset=($e-1)*$step;

        $r.='&nbsp;<A class="mtitle" href="'.$_SERVER['PHP_SELF']."?".$url."&offset=$offset&step=$step&page=$e&size=$step".'" '.$p_javascript.' >';
        $r.="&rarr;";
        //$r.='<INPUT TYPE="IMAGE" width="12" SRC="image/go-next.png">';
        $r.="</A>";
    }


    return $r;
}
redirect ( p_string,
p_time = 0 
)

Definition at line 212 of file user_common.php.

References echo.

Referenced by User\Check(), and User\User().

{
    echo '<HTML><head><META HTTP-EQUIV="REFRESH" content="'.$p_time.';url='.$p_string.'"></head><body> Connecting... </body></html>';
}
toNumber ( p_num)

remove the useless space, change comma by period and try to return a number

Parameters:
$p_numnumber to format
Returns:
the formatted number

Definition at line 221 of file user_common.php.

References trim().

Referenced by Acc_Ledger\build_search_sql().

{
    $p_num=trim($p_num);
    if ($p_num=='') return 0;
    $p_num=str_replace("'",'',$p_num);
    $p_num=str_replace(',','.',$p_num);
    return $p_num;
}
 All Data Structures Namespaces Files Functions Variables Enumerations