',urldecode($_REQUEST['url'])); $h_url=sprintf('',urldecode($_REQUEST['url'])); } else { $retour=""; $h_url=""; } $sub_action=(isset($_REQUEST['sa']))?$_REQUEST['sa']:""; //////////////////////////////////////////////////////////////////////////////// // If a list of invoice is asked // if ( $sub_action == "list") { // show the menu with the list item selected echo '
'; echo ShowMenuJrnUser($_SESSION['g_dossier'],'VEN',$p_jrn,'Liste'); echo '
'; // Ask to update payment if ( isset ( $_GET['paid'])) { // reset all the paid flag because the checkbox is post only // when checked foreach ($_GET as $name=>$paid) { list($ad) = sscanf($name,"set_jr_id%d"); if ( $ad == null ) continue; $sql="update jrn set jr_rapt='' where jr_id=$ad"; $Res=ExecSql($cn,$sql); } // set a paid flag for the checked box foreach ($_GET as $name=>$paid) { list ($id) = sscanf ($name,"rd_paid%d"); if ( $id == null ) continue; // echo "Mise à jour $id"; $paid=($paid=='on')?'paid':''; $sql="update jrn set jr_rapt='$paid' where jr_id=$id"; $Res=ExecSql($cn,$sql); } } echo '
'; echo '
'; $hid=new widget("hidden"); $hid->name="p_action"; $hid->value="facture"; echo $hid->IOValue(); $hid->name="sa"; $hid->value="list"; echo $hid->IOValue(); $w=new widget("select"); $periode_start=make_array($cn,"select p_id,to_char(p_start,'DD-MM-YYYY') from parm_periode order by p_id"); // User is already set User=new cl_user($cn); $current=(isset($_GET['p_periode']))?$_GET['p_periode']:$User->GetPeriode(); $w->selected=$current; echo 'Période '.$w->IOValue("p_periode",$periode_start).$w->Submit('gl_submit','Valider'); $qcode=(isset($_GET['qcode']))?$_GET['qcode']:""; printf ('Tiers QuickCode: ', $qcode); echo $retour; // Show list of sell // Date - date of payment - Customer - amount $sql=SQL_LIST_ALL_INVOICE." and jr_tech_per=".$current." and jr_def_type='VEN'" ; $step=$_SESSION['g_pagesize']; $page=(isset($_GET['offset']))?$_GET['page']:1; $offset=(isset($_GET['offset']))?$_GET['offset']:0; $l=""; // check if qcode contains something if ( $qcode != "" ) { // add a condition to filter on the quick code $l=" and jr_grpt_id in (select j_grpt from jrnx where j_qcode='$qcode') "; } list($max_line,$list)=ListJrn($cn,0,"where jrn_def_type='VEN' and jr_tech_per=$current $l " ,null,$offset,1); $bar=jrn_navigation_bar($offset,$max_line,$step,$page); echo "
$bar"; echo $list; echo "$bar
"; if ( $max_line !=0 ) echo $hid->Submit('paid','Mise à jour paiement'); echo '
'; echo '
'; exit(); } //////////////////////////////////////////////////////////////////////////////// echo '
'; echo ShowMenuJrnUser($_SESSION['g_dossier'],'VEN',$p_jrn,'Liste'); echo '
'; //////////////////////////////////////////////////////////////////////////////// // if we request to add an item // the $_POST['add_item'] is set // or if we ask to correct the invoice if ( isset ($_POST['add_item']) || isset ($_POST["correct_new_invoice"]) ) { $nb_item=$_POST['nb_item']; $nb_item++; $form=FormVenInput($cn,$_GET['p_jrn'],$User->GetPeriode(),$_POST,false,$nb_item); echo '
'; echo $form; echo '
'; exit(); } //////////////////////////////////////////////////////////////////////////////// // we want to save the invoice and to generate a invoice // if ( isset($_POST['record_and_print_invoice'])) { // First we save the invoice RecordInvoice($cn,$_POST,$User,$p_jrn); $form=FormVenteView($cn,$_GET['p_jrn'],$User->GetPeriode(),$_POST,$_POST['nb_item'],'noform',''); // $form=FormVenInput($cn,$_GET['p_jrn'],$User->GetPeriode(),$_POST,true,$_POST['nb_item']); echo '
'; echo $form; echo '
'; // Show the details of the encoded invoice // and the url of the invoice if ( isset($_POST['gen_invoice'])) { $doc=new Document($cn); $doc->f_id=$_POST['e_client']; $doc->md_id=$_POST['gen_doc']; $doc->ag_id=0; $str_file=$doc->Generate(); echo $str_file; } echo ''; exit(); } //////////////////////////////////////////////////////////////////////////////// // we show the confirmation screen it is proposed here to generate the // invoice if ( isset ($_POST['view_invoice']) ) { $nb_number=$_POST["nb_item"]; if ( form_verify_input($cn,$_GET['p_jrn'],$User->GetPeriode(),$HTTP_POST_VARS,$nb_number) == true) { $form=FormVenteView($cn,$_GET['p_jrn'],$User->GetPeriode(),$HTTP_POST_VARS,$nb_number); } else { // Check failed : invalid date or quantity echo_error("Cannot validate "); $form=FormVenInput($cn,$_GET['p_jrn'],$User->GetPeriode(),$HTTP_POST_VARS,false,$nb_number); } echo '
'; echo $form; echo '
'; exit(); } //////////////////////////////////////////////////////////////////////////////// // By default we add a new invoice if ( $p_jrn != -1 ) { $jrn=new jrn($cn, $p_jrn); echo_debug('user_action_ven.php',__LINE__,"Blank form"); // Show an empty form of invoice $form=FormVenInput($cn,$_GET['p_jrn'],$User->GetPeriode(),null,false,$jrn->GetDefLine('cred')); echo '
'; echo $form; echo '
'; }