0.2.0: securité (json_encode) + petite améliorations
This commit is contained in:
parent
1b7017a2ee
commit
e41129b0b7
7 changed files with 64 additions and 57 deletions
|
|
@ -55,40 +55,34 @@ class Facture
|
|||
throw new UserException("$k est de valeur non-attendue ($data).");
|
||||
}
|
||||
break;
|
||||
case 'receveur_id':
|
||||
if (!is_numeric($datas[$k]) || $datas[$k] < 0 )
|
||||
{
|
||||
throw new UserException("L'id du receveur est non-attendu ($data).");
|
||||
case 'receveur_id':
|
||||
if (!is_numeric($datas[$k]) || $datas[$k] < 0) {
|
||||
throw new UserException("L'id du receveur est non-attendu ($data).");
|
||||
}
|
||||
break;
|
||||
case 'date_emission':
|
||||
if (!strtotime($datas[$k]))
|
||||
{
|
||||
throw new UserException("La date d'émission est non-attendue ($data).");
|
||||
case 'date_emission':
|
||||
if (!strtotime($datas[$k])) {
|
||||
throw new UserException("La date d'émission est non-attendue ($data).");
|
||||
}
|
||||
break;
|
||||
case 'date_echeance':
|
||||
if (!strtotime($datas[$k]))
|
||||
{
|
||||
throw new UserException("La date d'émission est non-attendue ($data).");
|
||||
case 'date_echeance':
|
||||
if (!strtotime($datas[$k])) {
|
||||
throw new UserException("La date d'émission est non-attendue ($data).");
|
||||
}
|
||||
if (isset($datas['date_emission']) && (strtotime($datas[$k]) <= strtotime($datas['date_emission']) ) )
|
||||
{
|
||||
if (isset($datas['date_emission']) && (strtotime($datas[$k]) <= strtotime($datas['date_emission']))) {
|
||||
throw new UserException("La date d'échéance est antérieure ou égale à la date d'émission ($data).");
|
||||
}
|
||||
break;
|
||||
case 'moyen_paiement':
|
||||
$cats = new \Garradin\Compta\Categories;
|
||||
if(!array_key_exists($datas[$k], $cats->listMoyensPaiement()))
|
||||
{
|
||||
throw new UserException("Le moyen de paiement ne correspond pas à la liste interne ($data).");
|
||||
case 'moyen_paiement':
|
||||
$cats = new \Garradin\Compta\Categories;
|
||||
if (!array_key_exists($datas[$k], $cats->listMoyensPaiement())) {
|
||||
throw new UserException("Le moyen de paiement ne correspond pas à la liste interne ($data).");
|
||||
}
|
||||
unset($cats);
|
||||
break;
|
||||
case 'contenu':
|
||||
if(!is_array($datas[$k]) || empty($datas[$k]))
|
||||
{
|
||||
throw new UserException("Le contenu du document est vide ($data).");
|
||||
case 'contenu':
|
||||
if (!is_array($datas[$k]) || empty($datas[$k])) {
|
||||
throw new UserException("Le contenu du document est vide ($data).");
|
||||
}
|
||||
$total = 0;
|
||||
$vide = 1;
|
||||
|
|
@ -108,12 +102,11 @@ case 'contenu':
|
|||
{
|
||||
throw new UserException("Toutes les désignations/prix sont vides.");
|
||||
}
|
||||
$datas[$k] = serialize($datas[$k]);
|
||||
$datas[$k] = json_encode($datas[$k]);
|
||||
break;
|
||||
case 'total':
|
||||
if(!isset($datas['contenu']))
|
||||
{
|
||||
throw new UserException("Pas de contenu fourni pour vérifier le total.");
|
||||
case 'total':
|
||||
if (!isset($datas['contenu'])) {
|
||||
throw new UserException("Pas de contenu fourni pour vérifier le total.");
|
||||
}
|
||||
if ($total != $datas[$k])
|
||||
{
|
||||
|
|
@ -151,7 +144,7 @@ case 'total':
|
|||
throw new UserException("Pas de facture retournée avec cet id.");
|
||||
}
|
||||
|
||||
$r->contenu = unserialize($r->contenu);
|
||||
$r->contenu = json_decode($r->contenu, true);
|
||||
|
||||
return $r;
|
||||
}
|
||||
|
|
@ -164,7 +157,7 @@ case 'total':
|
|||
|
||||
foreach ($r as $e)
|
||||
{
|
||||
$e->contenu = unserialize((string)$e->contenu);
|
||||
$e->contenu = json_decode((string)$e->contenu, true);
|
||||
}
|
||||
|
||||
return $r;
|
||||
|
|
@ -206,7 +199,7 @@ case 'total':
|
|||
|
||||
foreach ($r as $e)
|
||||
{
|
||||
$e->contenu = unserialize((string)$e->contenu);
|
||||
$e->contenu = json_decode((string)$e->contenu, true);
|
||||
}
|
||||
|
||||
return empty($r)?false:$r;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue