Skip to content
Snippets Groups Projects
Commit 780c9454 authored by Ghislain Loas's avatar Ghislain Loas
Browse files

hotline #54764 : reindex script

parent 82dd1d9a
5 merge requests!2080Sandbox detach zf from storm,!2061Master,!2024Master,!2023Stable,!2020Hotline#54764 probleme de filtre sur les bibliotheques de chambery
Pipeline #433 passed with stage
in 12 minutes and 34 seconds
<?php
/**
* @see #54764 : branch code reindex after escaping for fulltext compatibility
*/
require 'console.php';
echo "\nstarting at " . date('c');
$annexes = new Storm_Model_Collection(Class_CodifAnnexe::findAll());
$id_origines = $annexes->collect('id_origine')->getArrayCopy();
$escaped = $annexes->collect('code')->getArrayCopy();
echo "\n\nProfils " . date('c');
foreach(Class_Profil::findAllBy(['parent_id' => null,
'sel_annexe not' => '']) as $model) {
$codes = $old = $model->getSelAnnexe();
$codes = str_replace($id_origines, $escaped, $codes);
echo "\n" . $model->getId() . ' ' . $codes;
if ($old != $codes)
$model->setSelAnnexe($codes)->save();
}
echo "\n\nDomaines " . date('c');
foreach(Class_Catalogue::findAllBy(['annexe not' => '']) as $model) {
$codes = $old = $model->getAnnexe();
$codes = str_replace($id_origines, $escaped, $codes);
echo "\n" . $model->getId() . ' ' . $codes;
if ($old != $codes)
$model->setAnnexe($codes)->save();
}
echo "\n\nItems " . date('c');
$adapter = Zend_Db_Table_Abstract::getDefaultAdapter();
foreach($annexes as $annexe)
$adapter->query(sprintf('UPDATE exemplaires set annexe="%s" where annexe="%s"',
$annexe->getCode(),
$annexe->getIdOrigine()));
echo "\n\nRecords " . date('c');
Class_CosmoVar::setValueOf('date_maj_facettes', '');
$phase = Class_Cosmogramme_Integration_Phase::fromLegacyState(6,
[],
true,
false,
[]);
$append_log = function($content) { echo "\n" . $content . "\n"; };
$log = (new Class_Entity())
->whenCalledDo('addError', $append_log)
->whenCalledDo('addSuccess', $append_log)
->whenCalledDo('addInfo', $append_log)
->whenCalledDo('ecrire', $append_log);
(new Class_Cosmogramme_Integration_PhaseItemFacets($phase,
$log,
new Class_Cosmogramme_Integration_Chronometre()))
->run();
?>
\ No newline at end of file
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