Model of operation in a DIV
This commit is contained in:
parent
f241ffc1c4
commit
65b7553fa2
10 changed files with 88 additions and 78 deletions
|
|
@ -28,21 +28,39 @@ var layer=1;
|
|||
/**
|
||||
* @brief update the list of available predefined operation when we change the ledger.
|
||||
*/
|
||||
function update_predef(p_type,p_direct)
|
||||
function update_predef(p_type,p_direct,p_ac)
|
||||
{
|
||||
var jrn=g("p_jrn").value;
|
||||
var dossier=g("gDossier").value;
|
||||
var querystring='gDossier='+dossier+'&l='+jrn+'&t='+p_type+'&d='+p_direct+"&op=up_predef";
|
||||
var querystring='gDossier='+dossier+'&l='+jrn+'&t='+p_type+'&d='+p_direct+"&op=up_predef&ac="+p_ac;
|
||||
g("p_jrn_predef").value=jrn;
|
||||
var action=new Ajax.Request(
|
||||
"ajax_misc.php",
|
||||
{
|
||||
method:'get',
|
||||
parameters:querystring,
|
||||
onFailure:error_get_predef,
|
||||
onSuccess:success_get_predef
|
||||
}
|
||||
);
|
||||
var action = new Ajax.Request(
|
||||
"ajax_misc.php",
|
||||
{
|
||||
method: 'get',
|
||||
parameters: querystring,
|
||||
onFailure: error_get_predef,
|
||||
onSuccess: function(req) {
|
||||
try {
|
||||
$('info_div').innerHTML = "ok";
|
||||
var answer = req.responseXML;
|
||||
var a = answer.getElementsByTagName('code');
|
||||
var html = answer.getElementsByTagName('value');
|
||||
if (a.length == 0)
|
||||
{
|
||||
var rec = req.responseText;
|
||||
alert('erreur :' + rec);
|
||||
}
|
||||
var code_html = getNodeText(html[0]);
|
||||
code_html = unescape_xml(code_html);
|
||||
// document.getElementsByName(name_ctl)[0].value = code_html;
|
||||
$('modele_op_div').innerHTML=code_html;
|
||||
} catch (e) {
|
||||
$('info_div').innerHTML = e.getMessage;
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -76,25 +94,6 @@ function update_name()
|
|||
{
|
||||
$('jrn_name').innerHTML=$('p_jrn').options[$('p_jrn').selectedIndex].innerHTML;
|
||||
}
|
||||
/**
|
||||
* @brief update the field predef
|
||||
*/
|
||||
function success_get_predef(request,json)
|
||||
{
|
||||
var i=0;
|
||||
var answer=request.responseText.evalJSON(true);
|
||||
obj=g("pre_def");
|
||||
obj.innerHTML='';
|
||||
if ( answer.count == 0 ) return;
|
||||
|
||||
for ( i = 0 ; i < answer.count;i++)
|
||||
{
|
||||
value=answer['value'+i];
|
||||
label=answer['label'+i];
|
||||
obj.options[obj.options.length]=new Option(label,value);
|
||||
}
|
||||
|
||||
}
|
||||
/**
|
||||
* @brief update the field predef
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1252,4 +1252,17 @@ textarea.itextarea{
|
|||
border:solid blue 1px;
|
||||
width:90%;
|
||||
margin-left:5%;
|
||||
}
|
||||
div#modele_op_div{
|
||||
display: none;
|
||||
background-color:#e4e7ed;
|
||||
font-family:arial,verdana,sans-serif,helvetica;
|
||||
padding:0;
|
||||
margin:0;
|
||||
overflow:hidden;
|
||||
z-index:3;
|
||||
position:absolute;
|
||||
left:10%;
|
||||
width:60%;
|
||||
border:1px solid darkblue;
|
||||
}
|
||||
|
|
@ -48,21 +48,21 @@ $op=new Pre_operation_detail($cn);
|
|||
$op->set('ledger',$l);
|
||||
$op->set('ledger_type',$t);
|
||||
$op->set('direct',$d);
|
||||
$array=$op->get_operation();
|
||||
$string='{"count":"'.count($array).'"';
|
||||
$idx=0;
|
||||
if (! empty($array))
|
||||
foreach ($array as $a)
|
||||
{
|
||||
$string.=',"value'.$idx.'":"'.$a['value'].'",';
|
||||
$string.='"label'.$idx.'":"'.$a['label'].'"';
|
||||
$idx++;
|
||||
}
|
||||
$string.="}";
|
||||
$url=http_build_query(array('action'=>'use_opd','p_jrn_predef'=>$l,'ac'=>$_GET['ac'],'gDossier'=>dossier::id()));
|
||||
$html="";
|
||||
|
||||
header("Content-type: text/json; charset: utf8",true);
|
||||
echo $string;
|
||||
$html.=HtmlInput::title_box("Modèle d'opérations ", 'modele_op_div', 'hide');
|
||||
$html.=$op->show_button('do.php?'.$url);
|
||||
|
||||
$html=escape_xml($html);
|
||||
header('Content-type: text/xml; charset=UTF-8');
|
||||
echo <<<EOF
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<data>
|
||||
<code></code>
|
||||
<value>$html</value>
|
||||
</data>
|
||||
EOF;
|
||||
|
||||
?>
|
||||
|
||||
|
|
|
|||
|
|
@ -1586,7 +1586,7 @@ class Acc_Ledger extends jrn_def_sql
|
|||
$wLedger = $this->select_ledger('ODS', 2);
|
||||
if ($wLedger == null)
|
||||
exit(_('Pas de journal disponible'));
|
||||
$wLedger->javascript = "onChange='update_name();update_predef(\"ods\",\"t\");$add_js'";
|
||||
$wLedger->javascript = "onChange='update_name();update_predef(\"ods\",\"t\",\"".$_REQUEST['ac']."\");$add_js'";
|
||||
$label = " Journal " . HtmlInput::infobulle(2);
|
||||
|
||||
$ret.=$label . $wLedger->input();
|
||||
|
|
|
|||
|
|
@ -985,7 +985,7 @@ class Acc_Ledger_Purchase extends Acc_Ledger
|
|||
|
||||
$wLedger=$this->select_ledger('ACH',2);
|
||||
if ($wLedger == null) exit (_('Pas de journal disponible'));
|
||||
$wLedger->javascript="onChange='update_predef(\"ach\",\"f\");$add_js'";
|
||||
$wLedger->javascript="onChange='update_predef(\"ach\",\"f\",\"".$_REQUEST['ac']."\");$add_js'";
|
||||
$wLedger->table=1;
|
||||
$f_jrn=$wLedger->input();
|
||||
|
||||
|
|
|
|||
|
|
@ -1051,7 +1051,7 @@ class Acc_Ledger_Sold extends Acc_Ledger {
|
|||
if ($wLedger == null)
|
||||
exit(_('Pas de journal disponible'));
|
||||
$wLedger->table = 1;
|
||||
$wLedger->javascript = "onChange='update_predef(\"ven\",\"f\");$add_js'";
|
||||
$wLedger->javascript = "onChange='update_predef(\"ven\",\"f\",\"".$_REQUEST['ac']."\");$add_js'";
|
||||
$wLedger->label = " Journal " . HtmlInput::infobulle(2);
|
||||
|
||||
$f_jrn = $wLedger->input();
|
||||
|
|
|
|||
|
|
@ -221,14 +221,16 @@ class Pre_operation_detail
|
|||
|
||||
/*!\brief show a form to use pre_op
|
||||
*/
|
||||
function form_get ()
|
||||
function form_get ($p_url)
|
||||
{
|
||||
|
||||
$r=HtmlInput::button_action("Modèle d'opérations", ' $(\'modele_op_div\').style.display=\'block\';$(\'lk_modele_op_tab\').focus();');
|
||||
$r.='<div id="modele_op_div">';
|
||||
$r.=HtmlInput::title_box("Modèle d'opérations ", 'modele_op_div', 'hide');
|
||||
$hid=new IHidden();
|
||||
$r=$hid->input("action","use_opd");
|
||||
$r.=$hid->input("action","use_opd");
|
||||
$r.=$hid->input("jrn_type",$this->get("ledger_type"));
|
||||
$r.= HtmlInput::submit('use_opd','Utilisez une opération prédéfinie','','smallbutton');
|
||||
$r.= $this->show_button();
|
||||
$r.= $this->show_button($p_url);
|
||||
$r.='</div>';
|
||||
return $r;
|
||||
|
||||
}
|
||||
|
|
@ -242,15 +244,21 @@ class Pre_operation_detail
|
|||
return $a;
|
||||
}
|
||||
/*!\brief show the button for selecting a predefined operation */
|
||||
function show_button()
|
||||
function show_button($p_url)
|
||||
{
|
||||
|
||||
$select=new ISelect();
|
||||
|
||||
$value=$this->get_operation();
|
||||
// if ( empty($value)==true) return "";
|
||||
$select->value=$value;
|
||||
$r=$select->input("pre_def");
|
||||
$r="";
|
||||
$r.='<h2>Choississez un modèle</h2>';
|
||||
$r.='Filtrer '.HtmlInput::filter_table('modele_op_tab', '0', '0');
|
||||
$r.='<table style="width:100%" id="modele_op_tab">';
|
||||
for ($i=0;$i<count($value);$i++) {
|
||||
$r.='<tr class="'.(($i%2==0)?"even":"odd").'">';
|
||||
$r.='<td>';
|
||||
$r.=sprintf('<a href="%s&pre_def=%s" onclick="waiting_box()">%s</a>',$p_url,$value[$i]['value'],$value[$i]['label']);
|
||||
$r.='</td>';
|
||||
$r.='</tr>';
|
||||
}
|
||||
$r.='</table>';
|
||||
return $r;
|
||||
}
|
||||
public function get_operation()
|
||||
|
|
|
|||
|
|
@ -179,23 +179,20 @@ if (isset ($_REQUEST['p_jrn_predef'])){
|
|||
// pre defined operation
|
||||
//
|
||||
echo '<div id="predef_form">';
|
||||
echo '<form method="GET" action="do.php">';
|
||||
echo dossier::hidden();
|
||||
echo HtmlInput::hidden('p_jrn_predef', $Ledger->id);
|
||||
echo HtmlInput::hidden('ac', $_REQUEST['ac']);
|
||||
$op = new Pre_op_ach($cn);
|
||||
$op->set('ledger', $Ledger->id);
|
||||
$op->set('ledger_type', "ACH");
|
||||
$op->set('direct', 'f');
|
||||
echo $op->form_get();
|
||||
echo '</form>';
|
||||
$url=http_build_query(array('p_jrn_predef'=>$Ledger->id,'ac'=>$_REQUEST['ac'],'gDossier'=>dossier::id()));
|
||||
echo $op->form_get('do.php?'.$url);
|
||||
echo '</div>';
|
||||
echo '</div>';
|
||||
|
||||
echo '<div class="content">';
|
||||
echo "<FORM class=\"print\"NAME=\"form_detail\" METHOD=\"POST\" >";
|
||||
/* request for a predefined operation */
|
||||
if (isset($_GET['use_opd']) && isset($_REQUEST['pre_def']) && !isset($_POST['correct']))
|
||||
if ( isset($_REQUEST['pre_def']) && !isset($_POST['correct']))
|
||||
{
|
||||
// used a predefined operation
|
||||
//
|
||||
|
|
|
|||
|
|
@ -165,7 +165,7 @@ global $g_parameter;
|
|||
//
|
||||
// pre defined operation
|
||||
//
|
||||
|
||||
echo '<div class="content">';
|
||||
if ( !isset($_REQUEST ['p_jrn']) )
|
||||
{
|
||||
$def_ledger=$Ledger->get_first('ven',2);
|
||||
|
|
@ -181,17 +181,14 @@ global $g_parameter;
|
|||
$Ledger->id=$_REQUEST['p_jrn_predef'];
|
||||
}
|
||||
|
||||
echo '<div id="predef_form">';
|
||||
echo '<form style="display:inline" method="GET" >';
|
||||
echo HtmlInput::hidden('ac',$_REQUEST['ac']);
|
||||
echo dossier::hidden();
|
||||
echo HtmlInput::hidden('p_jrn_predef',$Ledger->id);
|
||||
echo '<div id="predef_form">';
|
||||
echo HtmlInput::hidden('p_jrn_predef', $Ledger->id);
|
||||
$op=new Pre_op_ven($cn);
|
||||
$op->set('ledger',$Ledger->id);
|
||||
$op->set('ledger_type',"VEN");
|
||||
$op->set('direct','f');
|
||||
echo $op->form_get();
|
||||
echo '</form>';
|
||||
$url=http_build_query(array('p_jrn_predef'=>$Ledger->id,'ac'=>$_REQUEST['ac'],'gDossier'=>dossier::id()));
|
||||
echo $op->form_get('do.php?'.$url);
|
||||
echo '</div>';
|
||||
|
||||
echo '<div class="content">';
|
||||
|
|
|
|||
|
|
@ -45,18 +45,14 @@ if ( $g_user->check_jrn($ledger->id)=='X')
|
|||
}
|
||||
echo '<div class="content">';
|
||||
echo '<div id="predef_form">';
|
||||
echo '<form method="GET" action="do.php">';
|
||||
echo HtmlInput::hidden("action", "use_opd");
|
||||
echo HtmlInput::hidden("ac",$_REQUEST['ac']);
|
||||
echo dossier::hidden();
|
||||
echo HtmlInput::hidden('p_jrn_predef', $ledger->id);
|
||||
$op = new Pre_op_ods($cn);
|
||||
$op->set('ledger', $ledger->id);
|
||||
$op->set('ledger_type', "ODS");
|
||||
$op->set('direct', 't');
|
||||
echo $op->form_get();
|
||||
$url=http_build_query(array('action'=>'use_opd','p_jrn_predef'=>$ledger->id,'ac'=>$_REQUEST['ac'],'gDossier'=>dossier::id()));
|
||||
echo $op->form_get('do.php?'.$url);
|
||||
|
||||
echo '</form>';
|
||||
echo '</div>';
|
||||
echo '<div id="jrn_name_div">';
|
||||
echo '<h2 id="jrn_name" style="display:inline">' . $ledger->get_name() . '</h2>';
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue