Skip to content
Snippets Groups Projects
Commit 40294a43 authored by Patrick Barroca's avatar Patrick Barroca :grin:
Browse files

hotline #65042: keep comm params while updating standard

parent 183b8780
Branches
Tags
1 merge request!2348hotline #65042: keep comm params while updating standard
Pipeline #2526 failed with stage
in 20 minutes and 42 seconds
- ticket #65042 : Cosmogramme avec SIGB Nanook : Correction de la régénération des intégrations à partir de l'étalon
\ No newline at end of file
......@@ -164,24 +164,18 @@ class Class_Cosmogramme_Generator {
'visibilite' => Class_Bib::V_DATA])
->save();
if (!$int_bib = Class_IntBib::findFirstBy(['id_bib' => $bib->getIdSite()]))
$int_bib = Class_IntBib::newInstance(['id_bib' => $bib->getIdSite()]);
if (!$int_bib = Class_IntBib::findFirstBy(['id_bib' => $bib->getIdSite()])) {
$int_bib = Class_IntBib::newInstance(['id_bib' => $bib->getIdSite(),
'qualite' => 5,
'sigb' => $this->_params['type_sigb'],
'planif_mode' => 'r',
'planif_jours' => '1111111']);
}
$int_bib->updateAttributes(['nom' => $bib->getLibelle(),
'nom_court' => $bib->getLibelle(),
'qualite' => 5,
'sigb' => $this->_params['type_sigb'],
'planif_mode' => 'r',
'planif_jours' => '1111111',
'comm_sigb' => Class_IntBib::COM_PERGAME,
'comm_params' => serialize(['Autoriser_docs_disponibles' => '0',
'Max_par_carte' => '3',
'Max_par_document' => '3'])]);
'nom_court' => $bib->getLibelle()]);
if ($this->isNanook())
$int_bib
->setCommSigb(Class_IntBib::COM_NANOOK)
->setCommParams(serialize(['url_serveur' => $this->_params['service_nanook']]));
$this->_generateNewLibrary($int_bib);
$int_bib->save();
......@@ -189,6 +183,24 @@ class Class_Cosmogramme_Generator {
}
protected function _generateNewLibrary($int_bib)
{
if (!$int_bib->isNew())
return $int_bib;
if ($int_bib->isNanook())
return $int_bib
->setCommSigb(Class_IntBib::COM_NANOOK)
->setCommParams(serialize(['url_serveur' => $this->_params['service_nanook']]));
return $int_bib
->setCommSigb(Class_IntBib::COM_PERGAME)
->setCommParams(serialize(['Autoriser_docs_disponibles' => '0',
'Max_par_carte' => '3',
'Max_par_document' => '3']));
}
protected function _generateLibrariesBranches($libraries) {
if ('1' != $this->_params['creer_annexes']) {
$this->logTitle($this->_('2 - Création des annexes'));
......
......@@ -475,7 +475,8 @@ class PhasePrepareIntegrationsNanookStandardTest
$this->fixture('Class_IntBib', ['id' => 2,
'nom_court' => 'My library',
'sigb' => Class_IntBib::SIGB_NANOOK]);
'sigb' => Class_IntBib::SIGB_NANOOK,
'comm_params' => serialize(['provide_suggest' => 1])]);
$this->fixture('Class_Cosmogramme_Generator_FixedIdBib',
['id' => 2,
......@@ -602,6 +603,12 @@ class PhasePrepareIntegrationsNanookStandardTest
}
/** @test */
public function updatedLibraryShouldKeepCommParams() {
$this->assertEquals(1, Class_IntBib::find(2)->getCommParamsAsArray()['provide_suggest']);
}
/** @test */
public function updatedLibraryRunQueueShouldNotBeLost() {
$this->assertNotEmpty(Class_IntBib::find(2)->getIntegrations());
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment