From 4f77db758fc8620f5c84305b7e3755a39885f599 Mon Sep 17 00:00:00 2001 From: Dany De Bontridder Date: Sat, 14 Sep 2019 12:10:50 +0200 Subject: [PATCH] =?UTF-8?q?task=20#0001705:=20Lettrage=20-=20garder=20p?= =?UTF-8?q?=C3=A9riode=20de=20d=C3=A9part=20pour=20choix=20des=20op=C3=A9r?= =?UTF-8?q?ations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- html/js/acc_ledger.js | 9 ++--- include/ajax/ajax_display_letter.php | 43 ++++++++++++++---------- include/class/lettering.class.php | 1 + include/lettering.account.inc.php | 49 +++++++++++++--------------- include/lettering.card.inc.php | 42 ++++++++++++------------ include/template/letter_all.php | 16 ++++++--- 6 files changed, 87 insertions(+), 73 deletions(-) diff --git a/html/js/acc_ledger.js b/html/js/acc_ledger.js index b221dbd9c..2c7315e1b 100644 --- a/html/js/acc_ledger.js +++ b/html/js/acc_ledger.js @@ -980,12 +980,13 @@ function dsp_letter(obj) { try { - var queryString = 'gDossier=' + obj.gDossier + '&j_id=' + obj.j_id + '&op=dl' + '&ot=' + obj.obj_type; + //var queryString = 'gDossier=' + obj.gDossier + '&j_id=' + obj.j_id + '&op=dl' + '&ot=' + obj.obj_type+'&start='+obj.start; + var action = new Ajax.Request( "ajax_misc.php", { method: 'get', - parameters: queryString, + parameters: obj, onFailure: error_dsp_letter, onSuccess: success_dsp_letter } @@ -1046,8 +1047,8 @@ function search_letter(obj) str_query = 'gDossier=' + obj.elements['gDossier'].value; if (obj.elements['j_id']) str_query += '&j_id=' + obj.elements['j_id'].value; - if (obj.elements['ot']) - str_query += '&ot=' + obj.elements['ot'].value; + if (obj.elements['obj_type']) + str_query += '&obj_type=' + obj.elements['obj_type'].value; if (obj.elements['op']) str_query += '&op=' + obj.elements['op'].value; if (obj.elements['min_amount']) diff --git a/include/ajax/ajax_display_letter.php b/include/ajax/ajax_display_letter.php index c5032437f..7e8f8007c 100644 --- a/include/ajax/ajax_display_letter.php +++ b/include/ajax/ajax_display_letter.php @@ -28,6 +28,20 @@ if (!defined('ALLOWED')) die('Appel direct ne sont pas permis'); +$http=new HttpInput(); + +try { + $obj_type=$http->get("obj_type"); + $j_id=$http->get("j_id","number"); + $op=$http->get("op"); + +}catch (Exception $e ) +{ + record_log($e->getMessage()); + record_log($e->getTraceAsString()); + return; +} + require_once NOALYSS_INCLUDE.'/class/lettering.class.php'; $exercice=$g_user->get_exercice(); if ($g_user->check_module("LETCARD")==0 && $g_user->check_module("LETACC")==0) @@ -60,14 +74,15 @@ $r.='
'; // needed hidden var $r.=dossier::hidden(); if (isset($_REQUEST['ac'])) - $r.=HtmlInput::hidden('ac', $_REQUEST['ac']); + $r.=HtmlInput::hidden('ac', $http->request('ac')); if (isset($_REQUEST['sa'])) - $r.=HtmlInput::hidden('sa', $_REQUEST['sa']); + $r.=HtmlInput::hidden('sa', $http->request('sa')); if (isset($_REQUEST['acc'])) - $r.=HtmlInput::hidden('acc', $_REQUEST['acc']); + $r.=HtmlInput::hidden('acc', $http->request('acc')); + $r.=HtmlInput::hidden('j_id', $j_id); $r.=HtmlInput::hidden('op', $op); -$r.=HtmlInput::hidden('ot', $ot); +$r.=HtmlInput::hidden('obj_type', $obj_type); $r.=''; //min amount @@ -88,6 +103,7 @@ $r.=tr($line); $date_error=""; // start date $start=new IDate('search_start'); +$search_start=$http->get("search_start"); /* check if date are valid */ if (isset($search_start)&&isDate($search_start)==null) @@ -104,6 +120,8 @@ $line=td(_('Date Début')).td($start->input()); // end date $end=new IDate('search_end'); /* check if date are valid */ +$search_end=$http->get("search_end","date"); + if (isset($search_end)&&isDate($search_end)==null) { ob_start(); @@ -165,22 +183,11 @@ $form='
'; $form.='
'; $form.=dossier::hidden(); -if (isset($_REQUEST['p_action'])) - $form.=HtmlInput::hidden('p_action', $_REQUEST['p_action']); -if (isset($_REQUEST['sa'])) - $form.=HtmlInput::hidden('sa', $_REQUEST['sa']); -if (isset($_REQUEST['acc'])) - $form.=HtmlInput::hidden('acc', $_REQUEST['acc']); -if (isset($_REQUEST['sc'])) - $form.=HtmlInput::hidden('sc', $_REQUEST['sc']); -if (isset($_REQUEST['sb'])) - $form.=HtmlInput::hidden('sb', $_REQUEST['sb']); -if (isset($_REQUEST['f_id'])) - $form.=HtmlInput::hidden('f_id', $_REQUEST['f_id']); +$form.=HtmlInput::array_to_hidden(['p_action','sa','acc','sc','sb','f_id'],$_REQUEST); // display a list of operation from the other side + box button -if ($ot=='account') +if ($obj_type=='account') { $obj=new Lettering_Account($cn, $row['j_poste']); if (isset($search_start)) @@ -196,7 +203,7 @@ if ($ot=='account') $form.=$obj->show_letter($j_id); } -else if ($ot=='card') +else if ($obj_type=='card') { $obj=new Lettering_Card($cn, $row['j_qcode']); if (isset($search_start)) diff --git a/include/class/lettering.class.php b/include/class/lettering.class.php index daac89d0a..3c00227a7 100644 --- a/include/class/lettering.class.php +++ b/include/class/lettering.class.php @@ -43,6 +43,7 @@ class Lettering "sql_ledger"=>"sql_ledger" /* the sql clause to filter on the available ledgers */ ) ; + /** * constructor *@param $p_init resource to database diff --git a/include/lettering.account.inc.php b/include/lettering.account.inc.php index d08e20e48..d659fc295 100644 --- a/include/lettering.account.inc.php +++ b/include/lettering.account.inc.php @@ -26,11 +26,13 @@ if ( ! defined ('ALLOWED') ) die('Appel direct ne sont pas permis'); require_once NOALYSS_INCLUDE.'/class/lettering.class.php'; +$http=new HttpInput(); echo '
'; echo '
'; @@ -45,7 +46,7 @@ $poste->set_callback('filter_card'); -if (isset($_GET['acc'])) $poste->value=strtoupper(trim($_GET['acc'])); +if (isset($_GET['acc'])) $poste->value=strtoupper(trim($http->get('acc'))); $poste_span=new ISpan('account_label'); $r= td(_('Lettrage pour la fiche ')). td($poste->input().$poste->search()). @@ -56,28 +57,29 @@ $exercice=$g_user->get_exercice(); $periode=new Periode($cn); list($first_per,$last_per)=$periode->get_limit($exercice); +// date limit $start=new IDate('start'); -if ( isset ($_GET['start']) && isDate($_GET['start']) == null ) -{ - echo alert(_('Date malformée, désolé')); - $_GET['start']=$first_per->first_day(); - +$end=new IDate('end'); +try { + $start_value=$http->get("start","date",$first_per->first_day()); + $end_value=$http->get("end","date",$last_per->last_day()); + $start->value=$start_value; + $end->value=$end_value; +}catch (Exception $e) { + $start_value=$first_per->first_day(); + $end_value=$last_per->last_day(); + echo ''._('Date malformée, désolé').''; } -$start->value=(isset($_GET['start']))?$_GET['start']:$first_per->first_day(); + +$start->value=$start_value; +$end->value=$end_value; $r=td(_('Date début')); $r.=td($start->input()); echo tr($r); -$end=new IDate('end'); -if ( isset($_GET['end']) && isDate($_GET['end']) == null ) -{ - echo alert(_('Date malformée, désolé')); - $_GET['end']=$last_per->last_day(); -} -$end->value=(isset($_GET['end']))?$_GET['end']:$last_per->last_day(); $r=td(_('Date fin')); $r.=td($end->input()); @@ -91,9 +93,9 @@ $sel->value=array( array('value'=>3,'label'=>_('Opérations lettrées montants différents')), array('value'=>2,'label'=>_('Opérations NON lettrées')) ); -if (isset($_GET['type_let'])) $sel->selected=$_GET['type_let']; +$sel->selected=$http->get("type_let","number",0); -$r= td("Filtre "). +$r= td(_("Filtre")). td($sel->input()); echo tr($r); @@ -119,10 +121,10 @@ echo '
'; $letter=new Lettering_Card($cn); -$quick_code=strtoupper(trim($_GET['acc'])); +$quick_code=strtoupper(trim($http->get('acc'))); $letter->set_parameter('quick_code',$quick_code); -$letter->set_parameter('start',$_GET['start']); -$letter->set_parameter('end',$_GET['end']); +$letter->set_parameter('start',$start->value); +$letter->set_parameter('end',$end->value); if ( $sel->selected == 0 ) echo $letter->show_list('all'); diff --git a/include/template/letter_all.php b/include/template/letter_all.php index 0239ead61..811f3d43b 100644 --- a/include/template/letter_all.php +++ b/include/template/letter_all.php @@ -51,13 +51,19 @@ $class= ( ($i % 2) == 0 ) ? "odd":"even";
content[$i]['letter']==-1)?_("aucun lettrage"):strtoupper(base_convert($this->content[$i]['letter'],10,36)); -$js="this.gDossier=".dossier::id(). - ";this.j_id=".$this->content[$i]['j_id']. - ";this.obj_type='".$this->object_type."'". - ";dsp_letter(this)"; + +$object=sprintf('{ gDossier : %s , j_id : %s , obj_type:\'%s\',search_start:\'%s\',search_end:\'%s\',op:\'dl\'} ', + $gDossier, + $this->content[$i]['j_id'], + $this->object_type, + $this->get_parameter('start'), + $this->get_parameter('end') + ); + +$js=sprintf("dsp_letter(%s)",$object); ?> - + content[$i]['letter_diff'] != 0) echo $g_failed; ?>