check_jrn($_REQUEST['p_jrn']) != 'W') { NoAccess(); exit - 1; } /* if a new invoice is encoded, we display a form for confirmation */ if (isset($_POST['view_invoice'])) { $Ledger = new Acc_Ledger_Purchase($cn, $_POST['p_jrn']); try { $Ledger->verify($_POST); } catch (Exception $e) { alert($e->getMessage()); $correct = 1; } // if correct is not set it means it is correct if (!isset($correct)) { echo '
'; echo h1('Confirmation',''); echo_warning("Attention, cette opération n'est pas encore sauvée : vous devez encore confirmer"); echo '
'; echo dossier::hidden(); echo $Ledger->confirm($_POST); echo HtmlInput::hidden('ac', $_REQUEST['ac']); echo '
'; echo Pre_operation::save_propose(); echo '
'; echo HtmlInput::submit("record", _("Enregistrement"), 'onClick="return verify_ca(\'\');"'); echo HtmlInput::submit('correct', _("Corriger")); echo '
'; echo '
'; echo ''; exit(); } } //------------------------------ /* Record the invoice */ //------------------------------ if (isset($_POST['record'])) { $Ledger = new Acc_Ledger_Purchase($cn, $_POST['p_jrn']); try { $Ledger->verify($_POST); } catch (Exception $e) { alert($e->getMessage()); $correct = 1; } // record the invoice if (!isset($correct)) { echo '
'; $Ledger = new Acc_Ledger_Purchase($cn, $_POST['p_jrn']); $internal = $Ledger->insert($_POST); /* Save the predefined operation */ if ( isset($_POST['opd_name']) && trim($_POST['opd_name']) != "" ) { $opd = new Pre_op_ach($cn); $opd->get_post(); $opd->save(); } /* Show button */ $jr_id = $cn->get_value('select jr_id from jrn where jr_internal=$1', array($internal)); echo '

Enregistrement

'; // echo "

" . _('Opération sauvée') . " $internal "; // if ($Ledger->pj != '') // echo ' Piece : ' . h($Ledger->pj); // echo "

"; // if (strcmp($Ledger->pj, $_POST['e_pj']) != 0) // { // echo '

' . _('Attention numéro pièce existante, elle a du être adaptée') . '

'; // } /* Save the additional information into jrn_info */ $obj = new Acc_Ledger_Info($cn); $obj->save_extra($Ledger->jr_id, $_POST); //printf('%s
', $jr_id, dossier::id(), $internal); // Feedback echo $Ledger->confirm($_POST, true); if (isset($Ledger->doc)) { echo '

Document

'; echo $Ledger->doc; } echo '
'; exit(); } } // ------------------------------ /* Display a blank form or a form with predef operation */ /* or a form for correcting */ // ------------------------------ echo '
'; // $array = (isset($_POST['correct']) || isset($correct)) ? $_POST : null; $Ledger = new Acc_Ledger_Purchase($cn, 0); if (!isset($_REQUEST ['p_jrn'])) { $def_ledger = $Ledger->get_first('ach',2); if ( empty ($def_ledger)) { exit('Pas de journal disponible'); } $Ledger->id = $def_ledger['jrn_def_id']; } else $Ledger->id = $_REQUEST ['p_jrn']; if (isset ($_REQUEST['p_jrn_predef'])){ $Ledger->id=$_REQUEST['p_jrn_predef']; } // pre defined operation // echo '
'; echo HtmlInput::hidden('p_jrn_predef', $Ledger->id); $op = new Pre_op_ach($cn); $op->set('ledger', $Ledger->id); $op->set('ledger_type', "ACH"); $op->set('direct', 'f'); $url=http_build_query(array('p_jrn_predef'=>$Ledger->id,'ac'=>$_REQUEST['ac'],'gDossier'=>dossier::id())); echo $op->form_get('do.php?'.$url); echo '
'; echo '
'; echo '
'; echo "
"; /* request for a predefined operation */ if ( isset($_REQUEST['pre_def']) && !isset($_POST['correct'])) { // used a predefined operation // $op = new Pre_op_ach($cn); $op->set_od_id($_REQUEST['pre_def']); $p_post = $op->compute_array(); $Ledger->id = $_REQUEST ['p_jrn_predef']; $p_post['p_jrn'] = $Ledger->id; echo $Ledger->input($p_post); echo '
'; echo $Ledger->input_paid(); echo '
'; echo ''; } else { echo $Ledger->input($array); echo HtmlInput::hidden("p_action", "ach"); echo HtmlInput::hidden("sa", "p"); echo '
'; echo $Ledger->input_paid(); echo '
'; echo ''; } echo '
'; echo HtmlInput::button('act', _('Actualiser'), 'onClick="compute_all_ledger();"'); echo HtmlInput::submit("view_invoice", _("Enregistrer")); echo HtmlInput::reset(_('Effacer ')); echo '
'; echo "
"; if (!isset($_POST['e_date']) && $g_parameter->MY_DATE_SUGGEST=='Y') echo create_script(" get_last_date()"); echo create_script(" update_name()"); echo '
'; exit(); // end record invoice ?>