Qual: Suppression des methodes select sur les classes paiements car double emploi avec la methode select_types_paiements

This commit is contained in:
Laurent Destailleur 2006-06-24 20:29:06 +00:00
parent 31bbeb0368
commit 5c88262985
6 changed files with 40 additions and 120 deletions

View File

@ -31,11 +31,13 @@ require_once("./pre.inc.php");
require_once(DOL_DOCUMENT_ROOT."/don.class.php");
require_once(DOL_DOCUMENT_ROOT."/paiement.class.php");
$langs->load("companies");
$langs->load("donations");
$langs->load("bills");
$mesg="";
/*
* Actions
*/
@ -195,12 +197,10 @@ if ($_GET["action"] == 'create')
print '<td rowspan="'.$nbrows.'" valign="top">'.$langs->trans("Comments").' :<br>';
print "<textarea name=\"comment\" wrap=\"soft\" cols=\"40\" rows=\"15\"></textarea></td></tr>";
print "<tr><td>".$langs->trans("PaymentMode")."</td><td>\n";
$paiement = new Paiement($db);
$paiement->select("modepaiement","CRDT");
$form = new Form($db);
$form->select_types_paiements('', 'modepaiement', 'CRDT', 0);
print "</td></tr>\n";
if ($conf->projet->enabled)
@ -216,7 +216,6 @@ if ($_GET["action"] == 'create')
$html->selectyesno("public",1,1);
print "</td></tr>\n";
$langs->load("companies");
print "<tr>".'<td>'.$langs->trans("Company").'</td><td><input type="text" name="societe" size="40"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Firstname").'</td><td><input type="text" name="prenom" size="40"></td></tr>';
print "<tr>".'<td>'.$langs->trans("Lastname").'</td><td><input type="text" name="nom" size="40"></td></tr>';
@ -310,8 +309,8 @@ if ($_GET["rowid"] && $_GET["action"] == 'edit')
print "<tr>".'<td>'.$langs->trans("Amount").'</td><td><input type="text" name="amount" size="10" value="'.$don->amount.'"> '.$langs->trans("Currency".$conf->monnaie).'</td></tr>';
print "<tr><td>".$langs->trans("PaymentMode")."</td><td>\n";
$paiement = new Paiement($db);
$paiement->select("modepaiement","CRDT");
$form = new Form($db);
$form->select_types_paiements('', 'modepaiement', 'CRDT', 0);
print "</td></tr>\n";
print "<tr>".'<td>'.$langs->trans("Status").'</td><td>'.$don->getLibStatut().'</td></tr>';

View File

@ -198,30 +198,6 @@ class PaiementFourn
}
}
/**
* \brief Affiche la liste des modes de paiement possible
* \param name nom du champ select
* \param filtre filtre sur un sens de paiement particulier, norme ISO (CRDT=Mode propre à un crédit, DBIT=mode propre à un débit)
* \param id ???
*/
function select($name, $filtre='', $id='')
{
$form = new Form($this->db);
if ($filtre == 'CRDT' || $filtre == 'crédit')
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 AND type IN (0,2) ORDER BY libelle';
}
elseif ($filtre == 'DBIT' || $filtre == 'débit')
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 AND type IN (1,2) ORDER BY libelle';
}
else
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 ORDER BY libelle';
}
$form->select($name, $sql, $id);
}
/**
* \brief Supprime un paiement ainsi que les lignes qu'il a généré dans comptes

View File

@ -270,13 +270,11 @@ class Form
if ($resql)
{
$i = 0;
$num = $this->db->num_rows();
$num = $this->db->num_rows($resql);
while ($i < $num)
{
$row = $this->db->fetch_row();
$listemethodes[$row[0]] = $row[1];
$obj = $this->db->fetch_object($resql);
$listemethodes[$obj->rowid] = $obj->libelle;
$i++;
}
}
@ -1103,9 +1101,13 @@ class Form
function select_types_paiements($selected='',$htmlname='paiementtype',$filtertype='',$format=0)
{
global $langs;
dolibarr_syslog("html.form.class.php::select_type_paiements $selected, $htmlname, $filtertype, $format",LOG_DEBUG);
$filterarray=array();
if ($filtertype && $filtertype != '-1') $filterarray=split(',',$filtertype);
if ($filtertype == 'CRDT') $filterarray=array(0,2);
elseif ($filtertype == 'DBIT') $filterarray=array(1,2);
elseif ($filtertype != '-1') $filterarray=split(',',$filtertype);
$this->load_cache_types_paiements();
@ -2150,39 +2152,6 @@ class Form
}
/**
* \brief Affiche liste déroulante depuis requete SQL
* \param name Nom de la zone select
* \param sql Requete sql
* \param id Id présélectionné
*/
function select($name, $sql, $id='')
{
$resql = $this->db->query($sql);
if ($resql)
{
print '<select class="flat" name="'.$name.'">';
$num = $this->db->num_rows($resql);
$i = 0;
while ($i < $num)
{
$row = $this->db->fetch_row($resql);
print '<option value="'.$row[0].'"';
if ($id != '' && $id == $row[0])
{
print ' selected="true"';
}
print '>'.$row[1].'</option>';
$i++;
}
print "</select>\n";
}
else
{
dolibarr_print_error($this->db);
}
}
/**
\brief Affiche un select à partir d'un tableau
\param htmlname Nom de la zone select

View File

@ -344,6 +344,18 @@ class DoliDb
return $ret;
}
/**
\brief Renvoie la ligne courante (comme un objet) pour le curseur resultset.
\param resultset Curseur de la requete voulue
\return resource
*/
function fetch_object($resultset=0)
{
// Si le resultset n'est pas fourni, on prend le dernier utilisé sur cette connexion
if (! is_resource($resultset)) { $resultset=$this->results; }
return mysql_fetch_object($resultset);
}
// Next function are not required. Only minor features use them.
@ -481,18 +493,6 @@ class DoliDb
}
/**
\brief Renvoie la ligne courante (comme un objet) pour le curseur resultset.
\param resultset Curseur de la requete voulue
\return resource
*/
function fetch_object($resultset=0)
{
// Si le resultset n'est pas fourni, on prend le dernier utilisé sur cette connexion
if (! is_resource($resultset)) { $resultset=$this->results; }
return mysql_fetch_object($resultset);
}
/**
\brief Renvoie les données dans un tableau.
\param resultset Curseur de la requete voulue

View File

@ -277,6 +277,18 @@ class DoliDb
return $ret;
}
/**
\brief Renvoie la ligne courante (comme un objet) pour le curseur resultset.
\param resultset Curseur de la requete voulue
\return resource
*/
function fetch_object($resultset=0)
{
// Si le resultset n'est pas fourni, on prend le dernier utilisé sur cette connexion
if (! is_resource($resultset)) { $resultset=$this->results; }
return pg_fetch_object($resultset);
}
@ -337,18 +349,6 @@ class DoliDb
return $ret;
}
/**
\brief Renvoie la ligne courante (comme un objet) pour le curseur resultset.
\param resultset Curseur de la requete voulue
\return resource
*/
function fetch_object($resultset=0)
{
// Si le resultset n'est pas fourni, on prend le dernier utilisé sur cette connexion
if (! is_resource($resultset)) { $resultset=$this->results; }
return pg_fetch_object($resultset);
}
/**
\brief Renvoie les données dans un tableau.
\param resultset Curseur de la requete voulue

View File

@ -194,30 +194,6 @@ class Paiement
}
}
/**
* \brief Affiche la liste des modes de paiement possible
* \param name nom du champ select
* \param filtre filtre sur un sens de paiement particulier, norme ISO (CRDT=Mode propre à un crédit, DBIT=mode propre à un débit)
* \param id ???
*/
function select($name, $filtre='', $id='')
{
$form = new Form($this->db);
if ($filtre == 'CRDT')
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 AND type IN (0,2) ORDER BY libelle';
}
elseif ($filtre == 'DBIT')
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 AND type IN (1,2) ORDER BY libelle';
}
else
{
$sql = 'SELECT id, libelle FROM '.MAIN_DB_PREFIX.'c_paiement WHERE active=1 ORDER BY libelle';
}
$form->select($name, $sql, $id);
}
/**
* \brief Supprime un paiement ainsi que les lignes qu'il a généré dans comptes