diff --git a/upgrade.php b/upgrade.php index d264524..cb67d5a 100644 --- a/upgrade.php +++ b/upgrade.php @@ -16,67 +16,67 @@ $infos = $plugin->getInfos(); // 0.2.0 - Stock le contenu en json plutôt qu'en serialized if (version_compare($infos->version, '0.2.0', '<')) { - $r = (array) DB::getInstance()->get('SELECT * FROM plugin_facturation_factures'); - - foreach ($r as $e) { - $e->contenu =json_encode(unserialize((string) $e->contenu)); - $db->update('plugin_facturation_factures', $e, $db->where('id', (int)$e->id)); - } + $r = (array) DB::getInstance()->get('SELECT * FROM plugin_facturation_factures'); + + foreach ($r as $e) { + $e->contenu =json_encode(unserialize((string) $e->contenu)); + $db->update('plugin_facturation_factures', $e, $db->where('id', (int)$e->id)); + } } // 0.3.0 - Migration Facturation\Config vers la table plugins if (version_compare($infos->version, '0.3.0', '<')) { - $conf = $db->getAssoc('SELECT cle, valeur FROM plugin_facturation_config ORDER BY cle;'); - foreach($conf as $k=>$v) - { - if(!$plugin->setConfig($k, $v)) - { - throw new UserException('Erreur dans la conversion de la configuration pour la clé : '.$k); - } - } - $db->exec('DROP TABLE `plugin_facturation_config`;'); + $conf = $db->getAssoc('SELECT cle, valeur FROM plugin_facturation_config ORDER BY cle;'); + foreach($conf as $k=>$v) + { + if(!$plugin->setConfig($k, $v)) + { + throw new UserException('Erreur dans la conversion de la configuration pour la clé : '.$k); + } + } + $db->exec('DROP TABLE `plugin_facturation_config`;'); } // 0.4.0 - Migration Facturation\Config vers la table plugins if (version_compare($infos->version, '0.4.0', '<')) { - $db->exec(<<exec(<<version, '0.6.0', '<')) { - $r = $db->first('SELECT id, total FROM plugin_facturation_factures;'); - if (strpos($r->total,'.')) - { - // SQL -> total integer - $db->exec(<<first('SELECT id, total FROM plugin_facturation_factures;'); + if (strpos($r->total,'.')) + { + // SQL -> total integer + $db->exec(<<listAll() as $k=>$f) - { - foreach($f->contenu as $line => $content) - { - // Petit bug qui peut arriver avec des contenus mal enregistrés en db - if (is_int($content)) - { - continue; - } + ); + + foreach($factures = $facture->listAll() as $k=>$f) + { + foreach($f->contenu as $line => $content) + { + // Petit bug qui peut arriver avec des contenus mal enregistrés en db + if (is_int($content)) + { + continue; + } - $contenu[] = ['designation' => $content['designation'], - 'prix' => (int) ($content['prix'] * 100) ]; - } + $contenu[] = ['designation' => $content['designation'], + 'prix' => (int) ($content['prix'] * 100) ]; + } - $f->contenu = $contenu; - $data = (array) $f; - $data['total'] = (int) ($data['total'] * 100); - unset($data['id']); - unset($data['date_emission']); - unset($data['date_echeance']); - $facture->edit($f->id, $data); - unset($contenu); - } - } + $f->contenu = $contenu; + $data = (array) $f; + $data['total'] = (int) ($data['total'] * 100); + unset($data['id']); + unset($data['date_emission']); + unset($data['date_echeance']); + $facture->edit($f->id, $data); + unset($contenu); + } + } } \ No newline at end of file